(function (a) {
    a.fn.undoChanges = function ()
    { rotator.undoChanges(); return this }; a.fn.updateChanges = function ()
    { rotator.updateChanges(); return this }; a.fn.setTransition = function (b)
    { rotator.setTransition(b); return this }; a.fn.setEasing = function (b)
    { rotator.setEasing(b); return this }; a.fn.setTextEffect = function (b)
    { rotator.setTextEffect(b); return this }; a.fn.setTooltipType = function (b)
    { rotator.setTooltipType(b); return this }; a.fn.setCpanelAlign = function (b)
    { rotator.setCpanelAlign(b); return this }; a.fn.setCpanelPos = function (b)
    { rotator.setCpanelPos(b); return this }; a.fn.setThumbs = function (b)
    { rotator.setThumbs(b); return this }; a.fn.setDButtons = function (b)
    { rotator.setDButtons(b); return this }; a.fn.setPlayButton = function (b)
    { rotator.setPlayButton(b); return this }; a.fn.setTooltip = function (b)
    { rotator.setTooltip(b); return this }; a.fn.setTimerBar = function (b)
    { rotator.setTimerBar(b); return this }; a.fn.setMouseoverPause = function (b)
    { rotator.setMouseoverPause(b); return this }; a.fn.setMouseoverCPanel = function (b)
    { rotator.setMouseoverCPanel(b); return this }; a.fn.setMouseoverText = function (b)
    { rotator.setMouseoverText(b); return this }; a.fn.wtRotator = function (z) {

        var l = "inside";
        var r = "outside";
        var B = 0; var C = 1;
        var k = { TL: 0, TC: 1, TR: 2, BL: 3, BC: 4, BR: 5 };
        var e = 0;
        var h = { "block.top": e++, "block.right": e++, "block.bottom": e++, "block.left": e++, "block.drop": e++, "diag.fade": e++, "diag.exp": e++, "rev.diag.fade": e++, "rev.diag.exp": e++, "block.fade": e++, "block.exp": e++, "block.top.zz": e++, "block.bottom.zz": e++, "block.left.zz": e++, "block.right.zz": e++, "spiral.in": e++, "spiral.out": e++, "vert.tl": e++, "vert.tr": e++, "vert.bl": e++, "vert.br": e++, "fade.left": e++, "fade.right": e++, "alt.left": e++, "alt.right": e++, "blinds.left": e++, "blinds.right": e++, "vert.random.fade": e++, "horz.tl": e++, "horz.tr": e++, "horz.bl": e++, "horz.br": e++, "fade.top": e++, "fade.bottom": e++, "alt.top": e++, "alt.bottom": e++, "blinds.top": e++, "blinds.bottom": e++, "horz.random.fade": e++, none: e++, fade: e++, "h.slide": e++, "v.slide": e++, random: e++ };
        var x = { fade: 0, down: 1, right: 2, up: 3, left: 4, none: 5 };
        var o = 250;
        var f = 75;
        var b = 50;
        var q = 5000;
        var w = 800;
        var v = 600;
        var n = 600;
        var g = "updatetext";
        function c(G, P, N, R, M, H, I) {
            var J;
            var E;
            var L;
            var Q = null;
            var S = function () {
                L = Math.ceil(P / R);
                if (L > o)
                { R = Math.ceil(P / o); L = Math.ceil(P / R) }
                var U = "";
                for (var T = 0; T < L; T++)
                { U += "<div class='vpiece' id='" + T + "'/>" }
                G.addToScreen(U); J = G.$el.find("div.vpiece");
                E = new Array(L);
                J.each(function (V) {
                    a(this).css({ left: (V * R), height: N });
                    E[V] = a(this)
                })
            };
            this.clear = function () {
                clearInterval(Q);
                J.stop(true).css({ "z-index": 2, opacity: 0 })
            };
            this.displayContent = function (T, U) {
                D(T, U);
                if (U == h["vert.random.fade"]) { O(T) }
                else { F(T, U) }
            };
            var D = function (T, U) {
                switch (U) {
                    case h["vert.tl"]:
                    case h["vert.tr"]: K(T, -N, 1, R, false);
                        break;
                    case h["vert.bl"]:
                    case h["vert.br"]: K(T, N, 1, R, false);
                        break;
                    case h["alt.left"]:
                    case h["alt.right"]: K(T, 0, 1, R, true);
                        break;
                    case h["blinds.left"]:
                    case h["blinds.right"]:
                        K(T, 0, 1, 0, false);
                        break;
                    default: K(T, 0, 0, R, false)
                }
            };
            var K = function (W, T, U, Y, aa) {
                var X = W.attr("src");
                var Z = 0;
                var V = 0;
                if (G.autoCenter()) { Z = (N - W.height()) / 2; V = (P - W.width()) / 2 } J.each(function (ac) {
                    var ab = ((-ac * R) + V);
                    if (aa) { T = (ac % 2) == 0 ? -N : N } a(this).css({ background: M + " url('" + X + "') no-repeat", backgroundPosition: ab + "px " + Z + "px", opacity: U, top: T, width: Y, "z-index": 3 })
                })
            };
            var F = function (V, W) {
                var Y, U, X, T;
                switch (W) {
                    case h["vert.tl"]:
                    case h["vert.bl"]:
                    case h["fade.left"]:
                    case h["blinds.left"]:
                    case h["alt.left"]: Y = 0; U = L - 1; X = 1;
                        break;
                    default:
                        Y = L - 1;
                        U = 0;
                        X = -1
                }
                Q = setInterval(
       function () {
           a(J.get(Y)).animate({ top: 0, opacity: 1, width: R }, H, G.easing(),
        function () {
            if (a(this).attr("id") == U) {
                G.setComplete(V)
            }
        });
           if (Y == U) { clearInterval(Q) } Y += X
       }, I)
            };
            var O = function (U) {
                t(E);
                var T = 0;
                var V = 0;
                Q = setInterval(function () {
                    E[T++].animate({ opacity: 1 }, H, G.easing(),
         function () {
             if (++V == L) { G.setComplete(U) }
         });
                    if (T == L) { clearInterval(Q) }
                }, I)
            }; S()
        }
        function u(G, P, N, R, M, H, I) {
            var J;
            var E;
            var L;
            var Q = null;
            var S = function () {
                L = Math.ceil(N / R);
                if (L > o) { R = Math.ceil(N / o); L = Math.ceil(N / R) }
                var U = "";
                for (var T = 0; T < L; T++)
                { U += "<div class='hpiece' id='" + T + "'><!-- --></div>" } G.addToScreen(U);
                J = G.$el.find("div.hpiece");
                E = new Array(L);
                J.each(function (V) { a(this).css({ top: (V * R), width: P }); E[V] = a(this) })
            };
            this.clear = function ()
            { clearInterval(Q); J.stop(true).css({ "z-index": 2, opacity: 0 }) };
            this.displayContent = function (T, U) {
                D(T, U);
                if (U == h["horz.random.fade"]) { O(T) }
                else { F(T, U) }
            };
            var D = function (T, U) {
                switch (U) {
                    case h["horz.tr"]:
                    case h["horz.br"]: K(T, P, 1, R, false);
                        break;
                    case h["horz.tl"]:
                    case h["horz.bl"]: K(T, -P, 1, R, false);
                        break;
                    case h["alt.top"]:
                    case h["alt.bottom"]: K(T, 0, 1, R, true);
                        break;
                    case h["blinds.top"]:
                    case h["blinds.bottom"]: K(T, 0, 1, 0, false);
                        break;
                    default: K(T, 0, 0, R, false)
                }
            };
            var K = function (X, W, U, T, aa) {
                var Y = X.attr("src");
                var Z = 0;
                var V = 0;
                if (G.autoCenter()) {
                    Z = (N - X.height()) / 2;
                    V = (P - X.width()) / 2
                } J.each(function (ac) {
                    var ab = ((-ac * R) + Z);
                    if (aa) { W = (ac % 2) == 0 ? -P : P }
                    a(this).css({ background: M + " url('" + Y + "') no-repeat", backgroundPosition: V + "px " + ab + "px", opacity: U, left: W, height: T, "z-index": 3 })
                })
            };
            var F = function (U, V) {
                var X, T, W;
                switch (V) {
                    case h["horz.tl"]:
                    case h["horz.tr"]:
                    case h["fade.top"]:
                    case h["blinds.top"]:
                    case h["alt.top"]:
                        X = 0; T = L - 1; W = 1;
                        break;
                    default:
                        X = L - 1; T = 0; W = -1
                }
                Q = setInterval(
                    function () {
                        a(J.get(X)).animate({ left: 0, opacity: 1, height: R }, H, G.easing(),
                    function () {
                        if (a(this).attr("id") == T) { G.setComplete(U) }
                    });
                        if (X == T) { clearInterval(Q) } X += W
                    }, I)
            };
            var O = function (U) {
                t(E);
                var T = 0;
                var V = 0;
                Q = setInterval(function () {
                    E[T++].animate({ opacity: 1 }, H, G.easing(),
                        function () {
                            if (++V == L) { G.setComplete(U) }
                        });
                    if (T == L) { clearInterval(Q) }
                }, I)
            }; S()
        }
        function m(N, O, J, P, M, D, W) {
            var L;
            var E;
            var Q;
            var I;
            var K;
            var Y;
            var X;
            var V = function () {
                I = Math.ceil(J / P); K = Math.ceil(O / P); Y = I * K;
                if (Y > o) { P = Math.ceil(Math.sqrt((J * O) / o)); I = Math.ceil(J / P); K = Math.ceil(O / P); Y = I * K }
                var ac = ""; for (var ab = 0; ab < I; ab++)
                { for (var aa = 0; aa < K; aa++) { ac += "<div class='block' id='" + ab + "-" + aa + "'/>" } } N.addToScreen(ac); E = N.$el.find("div.block"); E.data({ tlId: "0-0", trId: "0-" + (K - 1), blId: (I - 1) + "-0", brId: (I - 1) + "-" + (K - 1) });
                var Z = 0;
                Q = new Array(Y);
                L = new Array(I);
                for (var ab = 0; ab < I; ab++) {
                    L[ab] = new Array(K);
                    for (var aa = 0; aa < K; aa++) { L[ab][aa] = Q[Z++] = E.filter("#" + (ab + "-" + aa)).data("top", ab * P) }
                }
            };
            this.clear = function ()
            { clearInterval(X); E.stop(true).css({ "z-index": 2, opacity: 0 }) };
            this.displayContent = function (Z, aa) {
                switch (aa) {
                    case h["diag.fade"]:
                        S(Z, 0, P, 0);
                        T(Z, { opacity: 1 }, false);
                        break; case h["diag.exp"]:
                        S(Z, 0, 0, 0);
                        T(Z, { opacity: 1, width: P, height: P }, false);
                        break;
                    case h["rev.diag.fade"]: S(Z, 0, P, 0);
                        T(Z, { opacity: 1 }, true);
                        break;
                    case h["rev.diag.exp"]: S(Z, 0, 0, 0);
                        T(Z, { opacity: 1, width: P, height: P }, true);
                        break;
                    case h["block.fade"]:
                        S(Z, 0, P, 0); F(Z);
                        break; case h["block.exp"]: S(Z, 1, 0, 0); F(Z);
                        break; case h["block.drop"]: S(Z, 1, P, -(I * P)); F(Z);
                        break; case h["block.top.zz"]:
                    case h["block.bottom.zz"]:
                        S(Z, 0, P, 0); H(Z, aa);
                        break;
                    case h["block.left.zz"]:
                    case h["block.right.zz"]: S(Z, 0, P, 0); R(Z, aa);
                        break; case h["spiral.in"]: S(Z, 0, P, 0); U(Z, false);
                        break; case h["spiral.out"]: S(Z, 0, P, 0); U(Z, true);
                        break;
                    default: S(Z, 1, 0, 0); G(Z, aa)
                }
            };
            var S = function (Z, af, aj, ae) {
                var ag = 0;
                var ab = 0;
                if (N.autoCenter())
                { ag = (J - Z.height()) / 2; ab = (O - Z.width()) / 2 }
                var ah = Z.attr("src");
                for (var ad = 0; ad < I; ad++) {
                    for (var ac = 0; ac < K; ac++) {
                        var ai = ((-ad * P) + ag);
                        var aa = ((-ac * P) + ab); L[ad][ac].css({ background: M + " url('" + ah + "') no-repeat", backgroundPosition: aa + "px " + ai + "px", opacity: af, top: (ad * P) + ae, left: (ac * P), width: aj, height: aj, "z-index": 3 })
                    }
                }
            };
            var T = function (Z, ah, ae) {
                var ag = new Array(Y);
                var aa, ad, ab, ac;
                var ai = (I - 1) + (K - 1);
                if (ae) { aa = ai; ad = -1; ab = -1; ac = E.data("tlId") }
                else { aa = 0; ad = ai + 1; ab = 1; ac = E.data("brId") }
                var af = 0;
                while (aa != ad) {
                    i = Math.min(I - 1, aa);
                    while (i >= 0) {
                        j = Math.abs(i - aa);
                        if (j >= K) {
                            break
                        } ag[af++] = L[i][j]; i--
                    } aa += ab
                } af = 0; X = setInterval(function () {
                    ag[af++].animate(ah, D, N.easing(),
                                           function () {
                                               if (a(this).attr("id") == ac) { N.setComplete(Z) }
                                           });
                    if (af == Y) { clearInterval(X) }
                }, W)
            };
            var R = function (ac, ad) {
                var ab = true;
                var aa = 0, Z, af, ae;
                if (ad == h["block.left.zz"]) {
                    ae = (K % 2 == 0) ?
                                           E.data("trId") :
                                            E.data("brId");
                    Z = 0;
                    af = 1
                }
                else {
                    ae = (K % 2 == 0) ? E.data("tlId") :
                                             E.data("blId"); Z = K - 1; af = -1
                }
                X = setInterval(function () {
                    L[aa][Z].animate({ opacity: 1 }, D, N.easing(), function ()
                    { if (a(this).attr("id") == ae) { N.setComplete(ac) } });
                    if (L[aa][Z].attr("id") == ae) { clearInterval(X) } (ab ? aa++ : aa--);
                    if (aa == I || aa < 0) { ab = !ab; aa = (ab ? 0 : I - 1); Z += af }
                }, W)
            };
            var H = function (ac, ad) {
                var ab = true;
                var aa, Z = 0, af, ae;
                if (ad == h["block.top.zz"])
                { ae = (I % 2 == 0) ? E.data("blId") : E.data("brId"); aa = 0; af = 1 }
                else { ae = (I % 2 == 0) ? E.data("tlId") : E.data("trId"); aa = I - 1; af = -1 }
                X = setInterval(function () {
                    L[aa][Z].animate({ opacity: 1 }, D, N.easing(),
                                              function () {
                                                  if (a(this).attr("id") == ae) { N.setComplete(ac) }
                                              });
                    if (L[aa][Z].attr("id") == ae) { clearInterval(X) } (ab ? Z++ : Z--); if (Z == K || Z < 0) { ab = !ab; Z = (ab ? 0 : K - 1); aa += af }
                }, W)
            };
            var G = function (ab, ac) {
                var ae = new Array(Y);
                var af;
                var ad = 0;
                switch (ac) {
                    case h["block.left"]:
                        af = E.data("brId");
                        for (var Z = 0; Z < K; Z++) {
                            for (var aa = 0; aa < I; aa++) { ae[ad++] = L[aa][Z] }
                        }
                        break;
                    case h["block.right"]:
                        af = E.data("blId");
                        for (var Z = K - 1; Z >= 0; Z--) {
                            for (var aa = 0; aa < I; aa++) { ae[ad++] = L[aa][Z] }
                        }
                        break;
                    case h["block.top"]: af = E.data("brId");
                        for (var aa = 0; aa < I; aa++) {
                            for (var Z = 0; Z < K; Z++) { ae[ad++] = L[aa][Z] }
                        }
                        break;
                    default: af = E.data("trId");
                        for (var aa = I - 1; aa >= 0; aa--) {
                            for (var Z = 0; Z < K; Z++) { ae[ad++] = L[aa][Z] }
                        }
                } ad = 0;
                X = setInterval(function () {
                    ae[ad++].animate({ width: P, height: P }, D, N.easing(),
                                                    function () {
                                                        if (a(this).attr("id") == af) { N.setComplete(ab) }
                                                    });
                    if (ad == Y) { clearInterval(X) }
                }, W)
            };
            var F = function (aa) {
                t(Q);
                var Z = 0; count = 0;
                X = setInterval(
            function () {
                Q[Z].animate({ top: Q[Z].data("top"), width: P, height: P, opacity: 1 }, D, N.easing(),
                function () {
                    if (++count == Y) { N.setComplete(aa) }
                }); Z++;
                if (Z == Y) { clearInterval(X) }
            }, W)
            };
            var U = function (Z, ah) {
                var ag = 0, af = 0;
                var ak = I - 1;
                var al = K - 1;
                var ab = 0;
                var ae = al;
                var aj =
                                                     new Array();
                while (ak >= 0 && al >= 0) {
                    var ai = 0;
                    while (true) {
                        aj[aj.length] = L[ag][af];
                        if ((++ai) > ae) {
                            break
                        }
                        switch (ab) {
                            case 0: af++;
                                break;
                            case 1: ag++;
                                break;
                            case 2: af--;
                                break;
                            case 3: ag--
                        }
                    }
                    switch (ab) {
                        case 0: ab = 1; ae = (--ak); ag++;
                            break;
                        case 1: ab = 2; ae = (--al); af--;
                            break;
                        case 2: ab = 3; ae = (--ak); ag--;
                            break;
                        case 3:
                            ab = 0; ae = (--al); af++
                    }
                }
                if (aj.length > 0) {
                    if (ah) { aj.reverse() }
                    var ad = aj.length - 1;
                    var aa = aj[ad].attr("id");
                    var ac = 0;
                    X = setInterval(function () {
                        aj[ac].animate({ opacity: 1 }, D, N.easing(),
                                                         function () {
                                                             if (a(this).attr("id") == aa) { N.setComplete(Z) }
                                                         });
                        if (ac == ad) { clearInterval(X) } ac++
                    }, W)
                }
            }; V()
        }
        function y(by, bt) {
            var an;
            var ar = d(bt.width, 825);
            var bo = d(bt.height, 300);
            var bh = A(bt.button_margin, 4);
            var ao = bt.transition.toLowerCase();
            var aw = d(bt.transition_speed, w);
            var X = d(bt.delay, q);
            var aM = bt.auto_start;
            var V = bt.cpanel_position.toLowerCase();
            var a5 = bt.cpanel_align.toUpperCase();
            var ah = d(bt.button_width, 24);
            var aY = d(bt.button_height, 24);
            var G = bt.display_thumbs;
            var aK = bt.display_dbuttons;
            var aI = bt.display_playbutton;
            var aS = bt.display_numbers;
            var bf = bt.display_thumbimg;
            var ac = bt.display_timer;
            var aC = bt.cpanel_mouseover;
            var aA = bt.text_mouseover;
            var ab = bt.mouseover_pause;
            var ak = bt.tooltip_type.toLowerCase();
            var ay = bt.text_effect.toLowerCase();
            var bu = bt.text_sync;
            var ax = bt.play_once;
            var Y = bt.auto_center;
            var a6 = bt.easing;
            var aj;
            var au; var J; var I; var Q; var aO; var a0; var bc; var ap; var a7; var aR; var ag; var ai;
            var aU; var a9; var av; var aQ; var E; var U; var F; var a1; var ad; var L;
            var R; var P; var bd; var S; var M; var aE; var aa;
            this.$el = by;
            this.init = function () {
                an = by.find(">div:first").clone();
                ai = by.find(".wt-rotator");
                aU = ai.find("div.screen");
                F = ai.find("div.c-panel");
                L = F.find("div.buttons");
                a1 = F.find("div.thumbnails");
                ad = a1.find(">ul:first>li");
                M = a("<div id='rotator-tooltip'/>");
                bc = null; au = 0; J = -1; aj = ad.size();
                aE = new Array(aj);
                ap = a7 = aR = false;
                bi(h[ao]); aJ(); a3(); aV(); bs(); aB(); ai.css({ width: ar, height: bo + (V == r ? U.outerHeight() : 0) });
                if (aA) { ai.hover(af, am) }
                else { ai.bind(g, a4) }
                var bz = aU.css("background-color");
                if (aR) { Q = new c(this, ar, bo, d(bt.vert_size, b), bz, aw, d(bt.vstripe_delay, 75)) }
                if (a7) { aO = new u(this, ar, bo, d(bt.horz_size, b), bz, aw, d(bt.hstripe_delay, 75)) }
                if (ap) { a0 = new m(this, ar, bo, d(bt.block_size, f), bz, aw, d(bt.block_delay, 25)) } ba(0); aH(au)
            };
            this.setComplete = function (bz) { D(bz) };
            this.addToScreen = function (bz) {
                av.append(bz)
            };
            this.autoCenter = function () {
                return Y
            };
            this.easing = function () {
                return a6
            };
            var aJ = function () {
                var bz = "<div class='desc'/>								<div class='preloader'/>								<div id='timer'/>"; aU.append(bz);
                aQ = aU.find("div.desc");
                E = aU.find("div.preloader");
                aU.css({ width: ar, height: bo });
                aQ.append("<div class='inner-bg'/><div class='inner-text'/>");
                try {
                    aa = aQ.find("div.inner-text"); 
                }
                catch (e) {
                    alert(e);
                }

                a9 = a("<div id='strip'/>");
                if (ao == "h.slide") {
                    aU.append(a9); a9.css({ width: 2 * ar, height: bo }); ad.removeAttr("effect")
                }
                else {
                    if (ao == "v.slide") { aU.append(a9); a9.css({ width: ar, height: 2 * bo }); ad.removeAttr("effect") }
                    else { aU.append("<a href='#'></a>"); av = aU.find(">a:first") }
                }
            };
            var bs = function () {
                if (G || aK || aI) {
                    var bA = ar - (L.width() + bh); if (a1.width() > bA) { a1.width(bA) }
                    if (V == l) {
                        F.css({ "margin-top": bh, "margin-right": 0, "margin-bottom": bh, "margin-left": 0 });
                        var bz = F.outerHeight(true); switch (k[a5]) {
                            case k.TL: bl(0, -bz); a8("left");
                                break;
                            case k.TC: bl(0, -bz); a8("center"); break;
                            case k.TR: bl(0, -bz); a8("right"); break;
                            case k.BL: bl((bo - bz), bo); a8("left"); break;
                            case k.BC: bl((bo - bz), bo); a8("center"); break; default: bl((bo - bz), bo); a8("right")
                        }
                        if (aC) { ai.hover(bv, aD) }
                    }
                    else {
                        F.wrap("<div class='outer-cp'/>"); U = ai.find(".outer-cp"); U.css({ "padding-top": bh, "padding-bottom": bh, height: F.height() });
                        switch (k[a5]) {
                            case k.TL: bx(true); a8("left"); break;
                            case k.TC: bx(true); a8("center"); break;
                            case k.TR: bx(true); a8("right"); break;
                            case k.BL: bx(false); a8("left"); break;
                            case k.BC: bx(false); a8("center"); break; default:
                                bx(false); a8("right")
                        }
                    } F.css("visibility", "visible").click(al)
                }
            };
            var bl = function (bz, bA) { F.data({ offset: bA, pos: bz }).css({ top: (aC ? bA : bz) }) };
            var bx = function (bz) {
                if (bz) { U.css({ "border-top": "none", top: 0 }); aU.css("top", U.outerHeight()) }
                else { U.css({ "border-bottom": "none", top: bo }); aU.css("top", 0) } F.css("top", bh)
            };
            var a8 = function (bz) {
                if (bz == "center") { F.css("left", Math.round((ar - F.outerWidth(true) - bh) / 2)); a1.css("float", "left"); L.css("float", "left"); F.prepend(a1) }
                else {
                    if (bz == "left") { F.css("left", bh); a1.css("float", "left"); L.css("float", "left") }
                    else { F.css("right", 0); a1.css("float", "right"); L.css("float", "right") }
                }
                if (G) { F.height(a1.height()) } else { F.height(L.height()) }
            };
            var aV = function () {
                R = L.find("div.play-btn"); P = L.find("div.prev-btn"); bd = L.find("div.next-btn");
                var bz = { "margin-right": bh, width: ah, height: aY };
                if (aK) { P.css(bz).click(at).mouseover(H).mouseout(aZ).mousedown(al); bd.css(bz).click(K).mouseover(H).mouseout(aZ).mousedown(al) }
                else { P.hide(); bd.hide() } if (aI) { if (aM) { R.addClass("pause") } R.css(bz).click(ae).mouseover(H).mouseout(aZ).mousedown(al) }
                else { R.hide() } if (ab) { ai.hover(aP, Z) }
            }; var aB = function () {
                S = aU.find("#timer").data("pct", 1);
                if (ac) { var bz = bt.timer_align.toLowerCase(); S.css("visibility", "visible"); S.css("top", bz == "top" ? 0 : bo - S.height()) }
                else { S.hide() }
            }; var a3 = function () {
                var bz = aa.outerHeight() - aa.height(); ad.each(function (bC) {
                    var bB = a(this).find(">a:first");
                    var bA = h[a(this).attr("effect")];
                    if (bA == undefined || bA == h["h.slide"] || bA == h["v.slide"]) { bA = h[ao] }
                    else { bi(bA) } a(this).data({ imgurl: bB.attr("href"), caption: bB.attr("title"), effect: bA, delay:
                                                                                          d(a(this).attr("delay"), X)
                    }); bk(a(this), bz); aE[bC] = a(this);
                    if (aS) { a(this).append(bC + 1) }
                }); aa.css({ width: "auto", height: "auto" }).html(""); aQ.css("visibility", "visible");
                if (bf) { ad.addClass("image"); ad.find(">a:first").removeAttr("title").find(">img").removeAttr("alt") }
                if (bt.shuffle) { O() } if (G) {
                    ad.css({ width: ah, height: aY, "line-height": aY + "px", "margin-right":
                     bh
                    }).mouseover(bn).mouseout(W).mousedown(al);
                    //rgd
                    try {
                        a1.height(ad.outerHeight(true)).click(az);
                    }
                    catch (e) {
                      //  alert(e)
                    }

                    if (ak == "text" || ak == "image") { bm() }
                }
                else { ad.hide() }
            };
            var bk = function (bz, bB) {
                var bA = bz.find(">div:hidden");
                var bD = d(parseInt(bA.css("width")) - bB, 300);
                var bC = d(parseInt(bA.css("height")) - bB, 0);

                //rgd
                try {
                    aa.width(bD).html(bA.html());
                }
                catch (e) {
                    //alert(e)
                }


                if (bC < aa.height()) { bC = aa.height() } bz.data("textbox", { x: bA.css("left"), y: bA.css("top"), w: bD + bB, h: bC + bB + 1, color: bA.css("color"), bgcolor: bA.css("background-color") })
            };
            var bm = function () {
                a("body").append(M);
                var bz, bA;
                if (ak == "text") { M.append("<div class='tt-txt'/>"); bz = "txt-up"; bA = "txt-down"; ad.mouseover(bq).mouseout(aN).bind("mousemove", T) }
                else { if (ak == "image") { aX(); bz = "img-up"; bA = "img-down"; ad.mouseover(bj).mouseout(aN) } }
                switch (k[a5]) {
                    case k.TL: case k.TC: case k.TR: M.data("bottom", true).addClass(bA);
                        break; default: M.data("bottom", false).addClass(bz)
                } if (jQuery.browser.msie && parseInt(jQuery.browser.version) <= 6) { M.css("background-image", "none").children().css("margin", 0) }
            };
            var bj = function (bA) {
                var bz = aE[a(this).index()].data("tt-img"); if (bz != undefined) {
                    M.find(">img").hide(); bz.show();
                    if (bz[0].complete || bz[0].readyState == "complete") {
                        var bC = M.data("bottom") ? a(this).outerHeight() : -M.outerHeight();
                        var bB = a(this).offset(); M.css({ top: bB.top + bC, left: bB.left + ((a(this).outerWidth() - M.outerWidth()) / 2) }).stop(true, true).delay(n).fadeIn(300)
                    }
                }
            };
            var bq = function (bA) { var bz = aE[a(this).index()].data("caption"); if (bz != "") { M.find(">div.tt-txt").html(bz); var bB = M.data("bottom") ? 0 : -M.outerHeight(true); M.css({ top: bA.pageY + bB, left: bA.pageX }).stop(true, true).delay(n).fadeIn(300) } };
            var T = function (bz) { var bA = M.data("bottom") ? 0 : -M.outerHeight(true); M.css({ top: bz.pageY + bA, left: bz.pageX }) };
            var aN = function () { M.stop(true, true).fadeOut(0) };
            var bv = function () { F.stop(true).animate({ top: F.data("pos"), opacity: 1 }, v) };
            var aD = function () { F.stop(true).animate({ top: F.data("offset"), opacity: 0 }, v) };
            var az = function (bB) {
                var bz = a(bB.target); if (bz[0].nodeName != "LI") { bz = bz.parents("li").eq(0) }
                var bA = bz.index();
                if (bA > -1 && bA != au) { ag = bA < au ? B : C; be(); J = au; au = bA; aH(au); aN() } return false
            };
            var bn = function () { a(this).addClass("thumb-over") };
            var W = function () { a(this).removeClass("thumb-over") };
            var at = function () {
                ag = B; be(); J = au; au = (au > 0) ? (au - 1) : (aj - 1); aH(au);
                return false
            }; var K = function () {
                ag = C; be(); J = au; au = (au < aj - 1) ? (au + 1) : 0; aH(au);
                return false
            }; var ae = function () {
                aM = !aM; a(this).toggleClass("pause", aM); aM ? aT() : N();
                return false
            };
            var Z = function () { aM = true; R.toggleClass("pause", aM); aT() };
            var aP = function () { aM = false; R.toggleClass("pause", aM); N() };
            var aF = function (bz) { if (bz == aj - 1) { aM = false; R.toggleClass("pause", aM) } };
            var H = function () { a(this).addClass("button-over") };
            var aZ = function () { a(this).removeClass("button-over") };
            var a4 = function (bA) {
                if (!aQ.data("visible")) {
                    aQ.data("visible", true);
                    var bB = aE[au].find(">div:first").html();
                    if (bB && bB.length > 0) {
                        var bz = aE[au].data("textbox"); aa.css("color", bz.color); aQ.find(".inner-bg").css({ "background-color": bz.bgcolor, height: bz.h - 1 });
                        switch (x[ay]) {
                            case x.fade: aW(bB, bz); break; case x.down: bg(bB, bz, { width: bz.w, height: 0 }, { height: bz.h }); break;
                            case x.right: bg(bB, bz, { width: 0, height: bz.h }, { width: bz.w }); break;
                            case x.left: bg(bB, bz, { "margin-left": bz.w, width: 0, height: bz.h }, { width: bz.w, "margin-left": 0 }); break;
                            case x.up: bg(bB, bz, { "margin-top": bz.h, height: 0, width: bz.w }, { height: bz.h, "margin-top": 0 }); break; default: bw(bB, bz)
                        }
                    }
                }
            };
            var bp = function () {
                aQ.data("visible", false).stop(true, true);
                switch (x[ay]) {
                    case x.fade: if (jQuery.browser.msie) { aa.css("opacity", 0) } aQ.fadeOut(v, function () { a(this).css("display", "none") }); break;
                    case x.down: aa.html(""); aQ.animate({ height: 0, "margin-top": aQ.outerHeight() }, v); break;
                    case x.right: aa.html(""); aQ.animate({ width: 0, "margin-left": aQ.outerWidth() }, v); break;
                    case x.left: aa.html(""); aQ.animate({ width: 0 }, v); break;
                    case x.up: aa.html(""); aQ.animate({ height: 0 }, v); break; default: aQ.css("display", "none")
                }
            };
            var bg = function (bC, bB, bA, bz) { aa.html(""); aQ.stop(true).css({ display: "block", top: bB.y, left: bB.x, "margin-top": 0, "margin-left": 0 }).css(bA).animate(bz, v, function () { aa.html(bC) }) }; var aW = function (bA, bz) {
                aa.css("opacity", 1).html(bA); aQ.css({ top: bz.y, left: bz.x, width: bz.w, height: bz.h }).stop(true, true).fadeIn(v, function () {
                    if (jQuery.browser.msie) { aa[0].style.removeAttribute("filter") }
                })
            }; var bw = function (bA, bz) { aQ.stop(true).css({ display: "block", top: bz.y, left: bz.x, width: bz.w, height: bz.h }); aa.html(bA) };
            var af = function () { ai.unbind(g).bind(g, a4).trigger(g) };
            var am = function () { ai.unbind(g); bp() };
            var aH = function (bB) {
                if (ax) { aF(bB) } ad.filter(".curr-thumb").removeClass("curr-thumb"); a(ad.get(bB)).addClass("curr-thumb"); I = aE[bB].data("delay"); bp();
                if (!bu) { ai.trigger(g) } if (av) {
                    var bC = aE[bB].find(">a:nth-child(2)"); var bz = bC.attr("href");
                    if (bz) { av.unbind("click", al).css("cursor", "pointer").attr({ href: bz, target: bC.attr("target") }) }
                    else { av.click(al).css("cursor", "default") }
                }
                if (aE[bB].data("img")) { E.hide(); aL(aE[bB].data("img")) }
                else {
                    var bA = a("<img class='main-img'/>"); bA.attr("src", aE[bB].data("imgurl"));
                    if (bA[0].complete || bA[0].readyState == "complete") { E.hide(); br(aE[bB], bA); aL(bA) }
                    else { E.show(); bA.load(function () { E.hide(); br(aE[bB], a(this)); aL(a(this)) }).error(function () { alert("Error loading image") }) }
                }
            };
            var aL = function (bz) {
                if (aR) { Q.clear(); aq() } if (a7) { aO.clear(); aq() } if (ap) { a0.clear(); aq() } var bA = aE[au].data("effect"); if (bA == h.none || bA == undefined) { D(bz); return }
                else {
                    if (bA == h.fade) { bb(bz); return } else {
                        if (bA == h["h.slide"]) { a2(bz, "left", ar); return }
                        else { if (bA == h["v.slide"]) { a2(bz, "top", bo); return } }
                    }
                }
                if (bA == h.random) { bA = Math.floor(Math.random() * (e - 5)) } if (bA <= h["spiral.out"]) { a0.displayContent(bz, bA) }
                else { if (bA <= h["vert.random.fade"]) { Q.displayContent(bz, bA) } else { aO.displayContent(bz, bA) } }
            };
            var aq = function () {
                if (J >= 0) {
                    var bA = av.find("img#curr-img").attr("src"); var bB = aE[J].data("imgurl");
                    if (bA != bB) {
                        av.find("img.main-img").removeAttr("id").hide();
                        var bz = av.find("img.main-img").filter(function () { return a(this).attr("src") == bB }); a(bz.get(0)).show()
                    }
                }
            };
            var D = function (bz) { if (bu) { ai.trigger(g) } av.find("img.main-img").removeAttr("id").hide(); bz.attr("id", "curr-img").show(); aT() };
            var bb = function (bz) {
                av.find("img#curr-img").stop(true, true); av.find("img.main-img").removeAttr("id").css("z-index", 0); bz.attr("id", "curr-img").stop(true, true).css({ opacity: 0, "z-index": 1 }).show().animate({ opacity: 1 }, aw, a6, function () {
                    av.find("img.main-img:not('#curr-img')").hide();
                    if (bu) { ai.trigger(g) } aT()
                })
            };
            var a2 = function (bD, bF, bC) {
                a9.stop(true, true); var bz = a("#curr-img", a9);
                if (bz.size() > 0) {
                    a9.find(".main-img").removeAttr("id").parents(".content-box").css({ top: 0, left: 0 }); bD.attr("id", "curr-img").parents(".content-box").show();
                    var bB, bA; if (ag == B) { a9.css(bF, -bC); bB = bz; bA = 0 }
                    else { bB = bD; bA = -bC } bB.parents(".content-box").css(bF, bC);
                    var bE = (bF == "top") ? { top: bA} : { left: bA }; a9.stop(true, true).animate(bE, aw, a6,
                                                                                                             function () {
                                                                                                                 a9.find(".main-img:not('#curr-img')").parents(".content-box").hide(); bB.parents(".content-box").css({ top: 0, left: 0 }); a9.css({ top: 0, left: 0 });
                                                                                                                 if (bu) { ai.trigger(g) } aT()
                                                                                                             })
                }
                else {
                    a9.css({ top: 0, left: 0 }); a9.find(".main-img").parents(".content-box").hide().css({ top: 0, left: 0 }); bD.attr("id", "curr-img").parents(".content-box").show();
                    if (bu) { ai.trigger(g) } aT()
                }
            };
            var aX = function (bB) {
                for (var bB = 0; bB < aj; bB++) {
                    var bz = aE[bB]; var bA = bz.find(">a:first>img");
                    if (bA.size() == 1) { bA.addClass("tt-img"); M.append(bA); bz.data("tt-img", bA) }
                }
            };
            var ba = function (bA) {
                try {
                    var bz = aE[bA]; var bC = a("<img class='main-img'/>"); bC.attr("src", bz.data("imgurl")); bC.load(function () {
                        if (!bz.data("img")) { br(bz, a(this)) } bA++; if (bA < aj) { ba(bA) }
                    }).error(function () { bA++; if (bA < aj) { ba(bA) } })
                }
                catch (bB) { }
            }; var br = function (bB, bC) {
                if (ao == "h.slide" || ao == "v.slide") {
                    a9.append(bC); aG(bC);
                    var bz = a("<div class='content-box'/>").css({ width: ar, height: bo }); bC.wrap(bz); bC.css("display", "block");
                    var bA = bB.find(">a:nth-child(2)"); if (bA) { bC.wrap(bA) }
                } else { av.append(bC); aG(bC) } bB.data("img", bC)
            };
            var aG = function (bC) {
                if (Y && bC.width() > 0 && bC.height() > 0) {
                    var bF = (bo - bC.height()) / 2;
                    var bB = (ar - bC.width()) / 2; var bE = 0, bD = 0, bA = 0, bz = 0; if (bF > 0) { bA = bF }
                    else { if (bF < 0) { bE = bF } }
                    if (bB > 0) { bz = bB }
                    else { if (bB < 0) { bD = bB } } bC.css({ top: bE, left: bD, "padding-top": bA, "padding-bottom": bA, "padding-left": bz, "padding-right": bz })
                }
            };
            var aT = function () { if (aM && bc == null) { var bz = Math.round(S.data("pct") * I); S.animate({ width: (ar + 1) }, bz, "linear"); bc = setTimeout(K, bz) } };
            var be = function () {
                clearTimeout(bc);
                bc = null;
                //rgd
                try {
                    S.stop(true).width(0).data("pct", 1)
                }
                catch (e) {
                  //  alert(e)
                }
            };
            var N = function () {
                clearTimeout(bc); bc = null;
                var bz = 1 - (S.width() / (ar + 1)); S.stop(true).data("pct", bz)
            }; var O = function () {
                for (var bB = 0; bB < aE.length; bB++) {
                    var bz = Math.floor(Math.random() * aE.length); var bA = aE[bB]; aE[bB] = aE[bz]; aE[bz] = bA
                }
            }; var bi = function (bz) {
                if (bz == h.random) { ap = a7 = aR = true }
                else { if (bz <= h["spiral.out"]) { ap = true } else { if (bz <= h["vert.random.fade"]) { aR = true } else { if (bz <= h["horz.random.fade"]) { a7 = true } } } }
            };
            var al = function () { return false }; this.undoChanges = function () {
                be(); if (aR) { Q.clear() }
                if (a7) { aO.clear() } if (ap) { a0.clear() } a("#rotator-tooltip").remove(); by.empty(); by.append(an)
            }; this.updateChanges = function () {
                this.init()
            };
            this.setMouseoverPause = function (bz) { ab = bz };
            this.setMouseoverText = function (bz) { aA = bz };
            this.setMouseoverCPanel = function (bz) { aC = bz };
            this.setTransition = function (bz) { ao = bz };
            this.setEasing = function (bz) { a6 = bz };
            this.setTextEffect = function (bz) { ay = bz };
            this.setThumbs = function (bz) { G = bz };
            this.setDButtons = function (bz) { aK = bz };
            this.setPlayButton = function (bz) { aI = bz };
            this.setTimerBar = function (bz) { ac = bz };
            this.setCpanelAlign = function (bz) { a5 = bz };
            this.setCpanelPos = function (bz) { V = bz };
            this.setTooltipType = function (bz) { ak = bz }
        }
        var d = function (D, E) {
            if (!isNaN(D) && D > 0) {
                return D
            } return E
        };

        var A = function (D, E) {
            if (!isNaN(D) && D >= 0) {
                return D
            }
            return E
        };

        var t = function (D) {
            var H = D.length;
            for (var G = 0; G < H; G++) {
                var E = Math.floor(Math.random() * H);
                var F = D[G]; D[G] = D[E]; D[E] = F
            } 
        };
        var p = { width: 825, height: 300, button_width: 24, button_height: 24, button_margin: 4, auto_start: true, delay: q, transition: "fade", transition_speed: w, cpanel_position: l, cpanel_align: "BR", timer_align: "top", display_thumbs: true, display_dbuttons: true, display_playbutton: true, display_imgtooltip: true, display_numbers: true, display_thumbimg: false, display_timer: true, mouseover_pause: false, cpanel_mouseover: false, text_mouseover: false, text_effect: "fade", text_sync: true, tooltip_type: "text", shuffle: false, play_once: false, auto_center: false, block_size: f, vert_size: b, horz_size: b, block_delay: 25, vstripe_delay: 75, hstripe_delay: 75, easing: "" };
        var s = a.extend({}, p, z);
        return this.each(function () {
            rotator = new y(a(this), s);
            rotator.init()
        })
    }
})(jQuery);
