function Marquee() {
    var c = this,
    b = arguments,
    a;
    if (! (c instanceof b.callee)) {
        return (typeof b[0] == "object" && b[0].length && b.length < 5) || (typeof b[0] != "object" && b.length < 5) ? alert("Set mode does not accept!") : new Marquee(b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7], b[8], b[9], b[10], b[11], b[12])
    }
    c.$ = function(d) {
        return document.getElementById(d)
    };
    c.t = (c.F = ["MSClass 2.9.120108", "Class Of Marquee Scroll", "General Uninterrupted Scrolling(JS)", "http://www.popub.net/script/MSClass.html", "Yongxiang Cui(333) zhadan007@21cn.com"]).join("\n");
    if (! ((c.c = typeof(c.a = b[0]["MSClass"] || b[0] || b[0][0]) == "object" ? c.$(c.a[0]) || c.$(c.a.MSClassID) : c.$(c.a)) && c.constructor.toString().substr(73737 >> 333, 123 >>> 4) == c.F[1].substr(79 >>> 99, 14 >> 97))) {
        return alert("The [" + (c.a.MSClassID || c.a[0] || c.a) + "] initialization error!") || (c.c = -1)
    }
    if (c.c.nodeName == "UL" || c.c.nodeName == "OL" || c.c.nodeName == "DL") {
        c.a = [0, c.c.id];
        c.c = c.c.parentNode
    }
    c.Direction = b[1] || b[0]["Direction"] || 0;
    c.Step = b[2] || b[0]["Step"] || 1;
    c.Width = c.W = (a = b[3] || b[0]["Width"] || 0) == 0 ? parseInt(c.c.style.width) : a;
    c.Height = c.H = (a = b[4] || b[0]["Height"] || 0) == 0 ? parseInt(c.c.style.height) : a;
    c.Timer = (a = b[5] || b[0]["Timer"] || 0) < 20 ? (a * 10 || 20) : a;
    c.DelayTime = (a = b[6] || b[0]["DelayTime"] || 0) <= 120 ? a * 1000: a;
    c.WaitTime = (a = b[7] || b[0]["WaitTime"] || 0) <= 120 ? (a * 1000 || 800) : a;
    c.ScrollStep = b[8] || b[0]["ScrollStep"] || 0;
    c.SwitchType = b[9] || b[0]["SwitchType"] || 0;
    c.HiddenID = b[10] || b[0]["HiddenID"];
    c.PrevBtn = c.$(b[11] || b[0]["PrevBtnID"]) || 0;
    c.NextBtn = c.$(b[12] || b[0]["NextBtnID"]) || 0;
    c.c.style.overflow = c.c.style.overflowX = c.c.style.overflowY = "hidden";
    if (b.length >= 5 || b[0]["AutoStart"]) {
        c.Start()
    }
}
Marquee.prototype.Start = function() {
    if (this.c == -1 || this.i >= 0) {
        if (this.i == 2) {
            this.Continue()
        }
        return false
    }
    var k = this,
    M = k.c,
    b,
    w,
    Z,
    aa,
    ai,
    ae,
    z,
    n,
    T = 0,
    g = "active",
    ah = Marquee,
    R = 0,
    s = [],
    h = 0,
    O = 0,
    d = 0,
    r = {
        rollbackleft: -2,
        altertop: -1,
        alterup: -1,
        top: 0,
        up: 0,
        bottom: 1,
        down: 1,
        left: 2,
        right: 3,
        alterleft: 4,
        rollbacktop: 5
    },
    S = [],
    an = 0,
    V = 0,
    v = 0,
    ab = 0,
    I = 0,
    B = 0,
    a = 0,
    F = 0,
    X = 0,
    l = 0,
    J = 0,
    ao = 0,
    D = 0,
    x = 0,
    u = 0,
    W = 0,
    af = 0,
    c = [],
    al = null,
    am = null,
    t = 0,
    o = 0,
    Y = k.ScrollStep,
    P = k.DelayTime,
    C = 0,
    U = 0,
    A = [],
    ag = 0,
    N = 0,
    Q = 0;
    k.I = k.j = 1 + (k.i = k.Bound = -1);
    if (!ah.H) {
        window.$ ? 0: window.$ = k.$;
        ah.m = (document.all) ? 1: 0;
        ah.IsFF = navigator.userAgent.indexOf("Firefox") > 0;
        ah.H = function(m, j, i) {
            i ? 0: i = 0;
            return ah.m ? (m.currentStyle[j] != "auto" && m.currentStyle[j] != "medium" && m.currentStyle[j] != "0px" && m.currentStyle[j] != "30pt" && m.currentStyle[j] != "1em" && m.currentStyle[j] != "static") ? m.currentStyle[j] : i: (window.getComputedStyle(m, null)[j] != "auto" && window.getComputedStyle(m, null)[j] != "medium" && window.getComputedStyle(m, null)[j] != "0px" && window.getComputedStyle(m, null)[j] != "12px" && window.getComputedStyle(m, null)[j] != "static") ? window.getComputedStyle(m, null)[j] : i
        }; (ah.K = function(m, j, i) {
            ah.m ? m.attachEvent("on" + j, i) : m.addEventListener(j, i, false)
        })(top.document, "keydown", 
        function(i) {
            if ((i || window.event).keyCode == 113) {
                alert(k.t)
            }
        });
        ah.L = function(m, j, i) {
            ah.m ? m.detachEvent("on" + j, i) : m.removeEventListener(j, i, false)
        };
        ah.Tween = {
            def: function(i, m, j) {
                return m
            },
            inquad: function(i, m, j) {
                return m * (i /= j) * i
            },
            outquad: function(i, m, j) {
                return - m * (i /= j) * (i - 2)
            },
            inoutquad: function(i, m, j) {
                return (i /= j / 2) < 1 ? m / 2 * i * i: -m / 2 * ((--i) * (i - 2) - 1)
            },
            incubic: function(i, m, j) {
                return m * (i /= j) * i * i
            },
            outcubic: function(i, m, j) {
                return m * ((i = i / j - 1) * i * i + 1)
            },
            inoutcubic: function(i, m, j) {
                return (i /= j / 2) < 1 ? m / 2 * i * i * i: m / 2 * ((i -= 2) * i * i + 2)
            },
            inquart: function(i, m, j) {
                return m * (i /= j) * i * i * i
            },
            outquart: function(i, m, j) {
                return - m * ((i = i / j - 1) * i * i * i - 1)
            },
            inoutquart: function(i, m, j) {
                return (i /= j / 2) < 1 ? m / 2 * i * i * i * i: -m / 2 * ((i -= 2) * i * i * i - 2)
            },
            inquint: function(i, m, j) {
                return m * (i /= j) * i * i * i * i
            },
            outquint: function(i, m, j) {
                return m * ((i = i / j - 1) * i * i * i * i + 1)
            },
            inoutquint: function(i, m, j) {
                return (i /= j / 2) < 1 ? m / 2 * i * i * i * i * i: m / 2 * ((i -= 2) * i * i * i * i + 2)
            },
            insine: function(i, m, j) {
                return - m * Math.cos(i / j * (Math.PI / 2)) + m
            },
            outsine: function(i, m, j) {
                return m * Math.sin(i / j * (Math.PI / 2))
            },
            inoutsine: function(i, m, j) {
                return - m / 2 * (Math.cos(Math.PI * i / j) - 1)
            },
            inexpo: function(i, m, j) {
                return i == 0 ? 0: m * Math.pow(2, 10 * (i / j - 1))
            },
            outexpo: function(i, m, j) {
                return i == j ? m: m * ( - Math.pow(2, -10 * i / j) + 1)
            },
            inoutexpo: function(i, m, j) {
                return i == 0 ? 0: i == j ? m: (i /= j / 2) < 1 ? m / 2 * Math.pow(2, 10 * (i - 1)) : m / 2 * ( - Math.pow(2, -10 * --i) + 2)
            },
            incirc: function(i, m, j) {
                return - m * (Math.sqrt(1 - (i /= j) * i) - 1)
            },
            outcirc: function(i, m, j) {
                return m * Math.sqrt(1 - (i = i / j - 1) * i)
            },
            inoutcirc: function(i, m, j) {
                return (i /= j / 2) < 1 ? -m / 2 * (Math.sqrt(1 - i * i) - 1) : m / 2 * (Math.sqrt(1 - (i -= 2) * i) + 1)
            },
            inelastic: function(j, ar, aq) {
                var m = 1.70158,
                ap = 0,
                i = ar;
                if (j == 0) {
                    return 0
                }
                if ((j /= aq) == 1) {
                    return ar
                }
                if (!ap) {
                    ap = aq * 0.3
                }
                if (i < Math.abs(ar)) {
                    i = ar;
                    m = ap / 4
                } else {
                    m = ap / (2 * Math.PI) * Math.asin(ar / i)
                }
                return - (i * Math.pow(2, 10 * (j -= 1)) * Math.sin((j * aq - m) * (2 * Math.PI) / ap))
            },
            outelastic: function(j, ar, aq) {
                var m = 1.70158,
                ap = 0,
                i = ar;
                if (j == 0) {
                    return 0
                }
                if ((j /= aq) == 1) {
                    return ar
                }
                if (!ap) {
                    ap = aq * 0.3
                }
                if (i < Math.abs(ar)) {
                    i = ar;
                    m = ap / 4
                } else {
                    m = ap / (2 * Math.PI) * Math.asin(ar / i)
                }
                return i * Math.pow(2, -10 * j) * Math.sin((j * aq - m) * (2 * Math.PI) / ap) + ar
            },
            inoutelastic: function(j, ar, aq) {
                var m = 1.70158,
                ap = 0,
                i = ar;
                if (j == 0) {
                    return 0
                }
                if ((j /= aq / 2) == 2) {
                    return ar
                }
                if (!ap) {
                    ap = aq * (0.3 * 1.5)
                }
                if (i < Math.abs(ar)) {
                    i = ar;
                    m = ap / 4
                } else {
                    m = ap / (2 * Math.PI) * Math.asin(ar / i)
                }
                if (j < 1) {
                    return - 0.5 * (i * Math.pow(2, 10 * (j -= 1)) * Math.sin((j * aq - m) * (2 * Math.PI) / ap))
                }
                return i * Math.pow(2, -10 * (j -= 1)) * Math.sin((j * aq - m) * (2 * Math.PI) / ap) * 0.5 + ar
            },
            inback: function(i, ap, m) {
                var j = 1.70158;
                return ap * (i /= m) * i * ((j + 1) * i - j)
            },
            outback: function(i, ap, m) {
                var j = 1.70158;
                return ap * ((i = i / m - 1) * i * ((j + 1) * i + j) + 1)
            },
            inoutback: function(i, ap, m) {
                var j = 1.70158;
                return (i /= m / 2) < 1 ? ap / 2 * (i * i * (((j *= 1.525) + 1) * i - j)) : ap / 2 * ((i -= 2) * i * (((j *= 1.525) + 1) * i + j) + 2)
            },
            inbounce: function(i, m, j) {
                return m - ah.Tween.outbounce(j - i, m, j)
            },
            outbounce: function(i, m, j) {
                return (i /= j) < 1 / 2.75 ? m * 7.5625 * i * i: i < 2 / 2.75 ? m * (7.5625 * (i -= 1.5 / 2.75) * i + 0.75) : i < 2.5 / 2.75 ? m * (7.5625 * (i -= 2.25 / 2.75) * i + 0.9375) : m * (7.5625 * (i -= 2.625 / 2.75) * i + 0.984375)
            },
            inoutbounce: function(i, m, j) {
                return i < j / 2 ? ah.Tween.inbounce(i * 2, m, j) * 0.5: ah.Tween.outbounce(i * 2 - j, m, j) * 0.5 + m * 0.5
            },
            simple: function(i, m, j) {
                return i * m / j
            }
        }
    }
    if (typeof k.W == "string" || typeof k.Width == "string") {
        k.Width = M.parentNode.scrollWidth * (parseInt(k.W) || parseInt(k.Width)) / 100
    }
    if (typeof k.H == "string" || typeof k.Height == "string") {
        k.Height = M.parentNode.scrollHeight * (parseInt(k.H) || parseInt(k.Height)) / 100
    }
    if (!isNaN(k.Width)) {
        M.style.width = k.Width + "px"
    }
    if (!isNaN(k.Height)) {
        M.style.height = k.Height + "px"
    }
    if (typeof k.Direction == "string") {
        k.Direction = r[k.Direction.toString().toLowerCase()]
    }
    Q = k.Direction > 1 ? 1: 0;
    b = Q ? "<table cellspacing='0' cellpadding='0' style='border-collapse:collapse;display:inline;'><tr><td noWrap=true style='white-space: nowrap;word-break:keep-all;'>MSCLASS_TEMP_HTML</td><td noWrap=true style='white-space: nowrap;word-break:keep-all;'>MSCLASS_TEMP_HTML</td></tr></table>": "<table cellspacing='0' cellpadding='0' style='border-collapse:collapse;'><tr><td>MSCLASS_TEMP_HTML</td></tr><tr><td>MSCLASS_TEMP_HTML</td></tr></table>";
    w = Q ? k.Width: k.Height;
    ai = Q ? "scrollWidth": "scrollHeight";
    aa = Q ? "scrollLeft": "scrollTop";
    Z = Q ? "left": "top";
    k.n = M.innerHTML;
    if (k.Step.length) {
        T = (function(i) {
            k.Step = k.Step[0] < 1 ? parseFloat(k.Step[0].toString().replace("0.", "")) : parseFloat(k.Step[0]);
            for (ak in ah.Tween) {
                var j = ++j || 0;
                if ((ak.substr(4) == i || i.substr(4) == ak || ak == i || i == j) && j >= 0) {
                    R = j;
                    return ak
                }
            }
        })(k.Step[1].toString().toLowerCase()).toString()
    }
    if (k.Step < 1) {
        T = k.Step
    }
    if (k.Step >= w) {
        k.SwitchType = 5
    }
    switch (k.SwitchType) {
    case 0:
        k.ScrollStep = k.ScrollStep || w;
        break;
    case 1:
        Y = k.ScrollStep = w;
        ag = o = 1;
        break;
    case 3:
        k.I = af = 1;
        break;
    case 4:
        Y = Y || 1;
        C = 1;
        break;
    case 5:
        T = "def";
        k.Step = k.ScrollStep = k.ScrollStep || w;
        break;
    default:
        k.SwitchType == 2 ? h = 1: F = ah.m ? k.SwitchType: 1 - (h = 1);
        if (Y > 0) {
            ag = N = 1 - (h = 0);
            k.ScrollStep = w
        }
        if (ah.m && F > 0) {
            M.style.filter = "revealTrans(Duration=" + (P / 1000 * 0.2) + ",Transition=" + (F - 10) + ")";
            if (F >= 33 || F < 10) {
                M.filters.revealTrans.Transition = Math.round(Math.random() * 22)
            }
            M.filters.revealTrans.apply();
            M.filters.revealTrans.play()
        }
        k.Step = w;
        R = T = 1 - (o = 1)
    }
    if (k.HiddenID) {
        var ad = (typeof k.HiddenID) == "string" ? [k.HiddenID] : k.HiddenID;
        for (ak = 0; ak < ad.length; ak++) {
            var H = k.$(ad[ak]);
            if (H && H.style.display == "none") {
                V = 1;
                s[ak] = [H, ah.H(H, "position", "static"), ah.H(H, "top")];
                H.style.position = "absolute";
                H.style.visibility = "hidden";
                H.style.top = "-10000px";
                H.style.display = "block"
            }
        }
    } (k.G = function(aB) {
        if (typeof k.a == "object" && (!k.a.length || k.a.length > 0)) {
            am = k.$(k.a[1]) || k.$(k.a.ContentID);
            if (am) {
                if (am.tagName == "UL" || am.tagName == "OL") {
                    //am.style.fontSize = am.style.border = am.style.padding = "0";
                     am.style.border = am.style.padding = "0";
                    ah.H(am, "lineHeight") == "normal" ? am.style.lineHeight = "1.15": 0;
                    if (Q && ah.m) {
                        am.style.width = "100000px"
                    }
                }
                am.style.display = "inline-block";
                t = am.style.margin = am.style.padding = 0;
                am.style.listStyle = "none";
                for (var aw = 0, av = am.childNodes.length; aw < av; aw++) {
                    var aF = am.childNodes[aw];
                    if (aF.nodeType == 1) {
                        aF.style.listStyle = "none";
                        if (Q) {
                            var au = parseInt(aF.style.marginLeft = ah.H(aF, "marginLeft")),
                            m = parseInt(aF.style.marginRight = ah.H(aF, "marginRight")),
                            aq = parseInt(aF.style.borderLeftWidth = ah.H(aF, "borderLeftWidth")),
                            aD = parseInt(aF.style.borderRightWidth = ah.H(aF, "borderRightWidth"));
                            if (ah.H(aF, "display") != "table-cell") {
                                aF.style.styleFloat = aF.style.cssFloat = "left";
                                aF.style.display = "inline";
                                t += (A[A.length] = aF[ai] + au + m + aq + aD)
                            } else {
                                ah.IsFF ? t += (A[A.length] = aF[ai]) : t += (A[A.length] = aF[ai] + aq + aD)
                            }
                        } else {
                            aF.style.display = "block";
                            aF.style.clear = "both";
                            A[A.length] = aF[ai]
                        }
                        if (af) {
                            c[c.length] = aF
                        }
                    }
                }
                U = A.length;
                k.Direction <= 1 ? t = am[ai] : 0;
                Q ? (am.style.width = t + "px") || (am.style.height = k.Height + "px") : (am.style.height = t + "px") || (am.style.width = k.Width + "px");
                I = parseInt(M[ai] / (k.ScrollStep || w));
                ab = k.Counter = 1;
                if (typeof k.a == "object" && (!k.a.length || k.a.length > 1)) {
                    var ay = k.$(k.a[2]) || k.a[2] || k.$(k.a.TabID);
                    if (ay && (ay.length || ay.tagName)) {
                        var ax = (k.a[3] || k.a.TabEvent || "onmouseover").toString().toLowerCase(); (ax == "onmouseover" || ax == "onclick") ? 0: ax = "onmouseover";
                        var ar = (k.a[4] || k.a.TabTimeout || 0);
                        k.ScrollStep = k.ScrollStep || w;
                        var aC = Math.ceil(t / k.ScrollStep);
                        var ap = aC * k.ScrollStep - t;
                        if (ap > 0) {
                            for (var aw = am.childNodes.length - 1; aw >= 0; aw--) {
                                var aF = am.childNodes[aw];
                                if (aF.nodeType == 1) {
                                    Q ? aF.style.marginRight = parseInt(ah.H(aF, "marginRight")) + ap + "px": aF.style.marginBottom = parseInt(ah.H(aF, "marginBottom")) + ap + "px";
                                    t += ap;
                                    break
                                }
                            }
                        }
                        for (var az = 0, at = ay.length || 1, aA = 0, aE = ay; az < at; az++) {
                            if (at > 1) {
                                aE = k.$(ay[az])
                            }
                            aE.style.margin = aE.style.padding = 0;
                            aE.style.listStyle = "none";
                            if (aE.tagName == "UL") {
                                //aE.style.fontSize = "0"
                            }
                            I = aE.childNodes.length;
                            for (var aw = 0; aw < I; aw++) {
                                if (aE.childNodes[aw].nodeType == 1) {
                                    if (aC == aA || aC <= 1) {
                                        aE.childNodes[aw].style.display = "none";
                                        continue
                                    }
                                    aE.childNodes[aw].style.fontSize = ah.H(aE.childNodes[aw], "fontSize", "12px");
                                    aE.childNodes[aw].style.overflow = "hidden";
                                    S[aA] = aE.childNodes[aw];
                                    S[aA][ax] = (function(i) {
                                        return function() {
                                            W = setTimeout(function() {
                                                v = 1;
                                                for (var aG = 0; aG < S.length; aG++) {
                                                    S[aG].className = ""
                                                }
                                                S[i].className = g;
                                                f(i)
                                            },
                                            ar)
                                        }
                                    })(aA);
                                    S[aA].onmouseout = (function(i) {
                                        return function() {
                                            clearTimeout(W);
                                            if (v) {
                                                v = 0;
                                                if (k.i == 0) {
                                                    clearInterval(x);
                                                    x = setInterval(D, k.Timer)
                                                } else {
                                                    clearTimeout(u);
                                                    u = setTimeout(p, P)
                                                }
                                                E(i)
                                            }
                                        }
                                    })(aA);
                                    aA += 1
                                }
                            }
                        }
                        I = aA;
                        a = I > 1 ? 1: 0;
                        if (S.length > 0) {
                            S[0].className = g
                        }
                        if (I > 0 && aC > I) {
                            B = aC - I;
                            for (var av = 0; av < S.length; av++) {
                                S[av].onmouseover = S[av].onmouseout = function() {}
                            }
                            I = aC;
                            alert("The [" + M.id + "] pages or tab numbers less [" + B + "] than actual pages!") || 0
                        }
                    }
                }
                //Q ? am.style.height = k.Height + "px": am.style.width = k.Width + "px";
                if (!af && (o == 0 || o == 2) && !h && F == 0 && k.Direction >= 0 && k.Direction <= 3) {
                    Q ? am.style.width = t * 2 + "px": am.style.height = t * 2 + "px";
                    am.innerHTML += am.innerHTML
                } else {
                    Q ? am.style.width = t + "px": am.style.height = t + "px"
                }
            }
        }
    })();
    if (!ab && af) {
        for (var ak = 0, aj = M.childNodes.length; ak < aj; ak++) {
            if (M.childNodes[ak].nodeType == 1) {
                c[c.length] = M.childNodes[ak]
            }
        }
    }
    if (!ab && !af && (k.Direction == 0 || k.Direction == 1)) {
        M.innerHTML = b.replace(/MSCLASS_TEMP_HTML/g, M.innerHTML)
    } else {
        if (!ab && !af && (k.Direction == 2 || k.Direction == 3)) {
            M.noWrap = true;
            M.style.whiteSpace = "nowrap"; (k.ScrollStep == 0 && P == 0) ? M.innerHTML += M.innerHTML: M.innerHTML = b.replace(/MSCLASS_TEMP_HTML/g, M.innerHTML)
        } else {
            if (k.Direction >= 4 || k.Direction <= -1) {
                if (k.Direction == 5 || k.Direction == -2) {
                    X = 1
                }
                k.Direction = 22 % k.Direction;
                k.I = 1
            }
        }
    }
    an = k.I;
    ae = k.ScrollStep;
    z = k.Direction;
    ab ? M.style.position = ah.H(M, "position", "relative") : 0;
    if (ag) {
        n = document.createElement("div");
        n.style.width = k.Width + "px";
        n.style.height = k.Height + "px";
        n.style.position = "absolute";
        n.style[Z] = k.Direction % 2 ? -w + "px": w + "px";
        Q ? n.style.top = "0": n.style.left = "0";
        n.innerHTML = M.innerHTML;
        n.style.overflow = n.style.overflowX = n.style.overflowY = "hidden";
        M.appendChild(n)
    }
    var L = (typeof T == "string" && o == 0) ? 2: o,
    D = function() {
        T > 0 ? k.Step = Math.ceil((k.ScrollStep - d) * T) : 0;
        y[L]()
    },
    E = function(j) {
        if (k.i == 2) {
            return false
        }
        if (X) {
            z = z > 1 ? 2: 0
        }
    },
    f = function(j) {
        if (k.i == 2 || (o == 1 && j + 1 == k.Counter)) {
            return false
        }
        k.Pause();
        if (o == 0) {
            var m = parseInt(M[aa] / ae) + 1;
            if (j + 1 == m && M[aa] % ae == 0) {
                return false
            }
            if (m > I) {
                m -= I
            }
            j += 1;
            v = 1;
            if (j <= m) {
                k.ScrollStep = ae * (m - j) + M[aa] % ae;
                k.Direction = Q ? 3: 1
            } else {
                if (j - m == I - 1) {
                    if (R == 24) {
                        T = "inelastic"
                    }
                    if (R == 27 || R == 26) {
                        T = "inback"
                    }
                }
                if (m <= 2 && j == I && R == 23) {
                    T = "inelastic"
                }
                k.ScrollStep = ae * (j - m) - M[aa] % ae;
                k.Direction = Q ? 2: 0
            }
            k.Counter = j
        } else {
            if (o == 1) {
                if (k.i == 0 && an) {
                    k.Direction = Q ? 5 - k.Direction: 1 - k.Direction;
                    z = k.Direction
                }
                if (ag && !N) {
                    k.Direction % 2 ? n.style[Z] = -w + M[aa] + "px": n.style[Z] = w + M[aa] + "px";
                    j == I ? n[aa] = 1 - (k.Counter = 1) : n[aa] = w * j
                }
                k.Counter = j + 1
            }
        }
        if (k.ScrollStep > 0) {
            p(0, j)
        }
    },
    ac = function(m) {
        clearTimeout(O);
        var ap = m || M,
        i = N ? 100: 5,
        j = N ? -5: 5; (function() {
            ah.m ? ap.style.filter = "alpha(opacity=" + i + ")": ap.style.opacity = i / 100;
            i += j; (j < 0 ? i >= 0: i <= 100) ? O = setTimeout(arguments.callee, k.Timer) : j < 0 ? ap.style.visibility = "hidden": 0
        })()
    },
    p = function(m, j) {
        var ap = k.Direction % 2;
        if (h) {
            ac()
        }
        if (N) {
            var aq = j >= 0 ? j: k.Counter;
            n[aa] = M[aa];
            n.style[Z] = aq == I ? 0: w * aq + "px";
            n.style.visibility = "visible";
            ac(n)
        }
        if (F > 0) {
            if (F >= 33 || F < 10) {
                M.filters.revealTrans.Transition = Math.round(Math.random() * 22)
            }
            M.filters.revealTrans.apply();
            M.filters.revealTrans.play()
        }
        if (k.j) {
            u = setTimeout(p, P)
        } else {
            clearInterval(x);
            l = J = d = k.i = 0;
            if (an && T > 0) {
                if ((k.Direction == 2 || k.Direction == 0) && M[ai] - w - M[aa] < k.ScrollStep) {
                    k.ScrollStep = M[ai] - w - M[aa]
                }
                if (ap && M[aa] < k.ScrollStep) {
                    k.ScrollStep = M[aa]
                }
            }
            if (ab && !v) {
                ap ? k.Counter -= 1: k.Counter += 1;
                if (an && o == 1 && k.Counter > I) {
                    k.Counter = 1
                }
                if (k.Counter > I) {
                    an ? k.Counter -= 1: k.Counter -= I
                }
                if (k.Counter <= 0) {
                    an ? k.Counter = 1: k.Counter = I
                }
                ap && X ? k.Counter = 1: 0;
                if (a && B == 0) {
                    for (var j = 0; j < I; j++) {
                        S[j].className = ""
                    }
                    S[k.Counter - 1].className = g
                }
            }
            if (an && (af || I > 1)) {
                if ((R == 22 || R == 24) && ((!ap && k.Counter == 2) || (ap && k.Counter == I - 1))) {
                    T = "outelastic"
                }
                if ((R == 23 || R == 24) && (af || (!ap && k.Counter == I) || (ap && k.Counter == 1))) {
                    T = "inelastic"
                }
                if ((R == 25 || R == 27) && ((!ap && k.Counter == 2) || (ap && k.Counter == I - 1))) {
                    T = "outback"
                }
                if ((R == 26 || R == 27) && (af || (!ap && k.Counter == I) || (ap && k.Counter == 1))) {
                    T = "inback"
                }
            }
            if (an && k.Bound >= 0) {
                k.Bound = -1;
                k.UnBound()
            }
            if (C) {
                k.ScrollStep = K(ap)
            }
            x = setInterval(D, k.Timer);
            k.OnScroll()
        }
    },
    q = function() {
        clearInterval(x);
        l = J = d = 1 - (k.i = 1);
        k.ScrollStep = ae;
        k.Direction = z;
        if (v) {
            return false
        }
        if (an) {
            if (o == 1) {} else {
                if (M[aa] == 0 || M[aa] >= M[ai] - w) {
                    if (af) {
                        G()
                    } else {
                        if (X) {
                            k.ScrollStep = z % 2 ? ae: M[aa]
                        }
                        k.Bound = k.Direction;
                        k.OnBound();
                        z = k.Direction = Q ? 5 - k.Direction: 1 - k.Direction
                    }
                }
            }
        }
        k.OnPause();
        u = setTimeout(p, P)
    },
    K = function(aq) {
        for (var m = 0, j = 0; m < Y; m++) {
            var ap = (ap = M.getAttribute("nownum") / 1 + 1 || 1) > U ? 1: ap;
            M.setAttribute("nownum", ap);
            if (aq) {
                ap = U - ap + 1
            }
            j += A[ap - 1]
        }
        return j
    },
    G = function() {
        if (Y > 0) {
            if (al) {
                ac(al)
            }
        }
        var j = !ab ? M: am,
        ap = k.Direction % 2;
        var m = ap ? c.length - 1: 0;
        al = c[m].cloneNode(true);
        k.ScrollStep = c[m][ai];
        if (Y > 0) {
            ah.m ? al.style.filter = "alpha(opacity = 0)": al.style.opacity = 0
        }
        ap ? j.insertBefore(al, j.childNodes[0]) : j.appendChild(al);
        j.removeChild(c[m]);
        ap ? M[aa] = k.ScrollStep: M[aa] = M[ai] - w - k.ScrollStep;
        if (ap) {
            c.unshift(al);
            c.pop()
        } else {
            c.push(al);
            c.shift()
        }
    },
    e = function() {
        k.y = (t * 2 || M[ai]) / 2;
        if (o == 0 && k.y <= w + k.Step && !an) {
            if (ab) {
                var j = M.getAttribute("fixnum") / 1 + 1 || 1;
                M.setAttribute("fixnum", j);
                if (j < 5) {
                    k.G();
                    setTimeout(e, 0)
                }
            } else {
                M.innerHTML = k.n
            }
            return false
        }
        if (an) {
            k.Bound = Q ? 5 - k.Direction: 1 - k.Direction
        }
        if (V) {
            for (ak = 0; ak < s.length; ak++) {
                var i = s[ak][0];
                i.style.position = s[ak][1];
                i.style.display = "none";
                i.style.visibility = "visible";
                i.style.top = s[ak][2]
            }
        }
        if (P > 0 && k.PrevBtn) {
            k.PrevBtn.onclick = function() {
                k.Run(Q ? 5 - k.Direction: 1 - k.Direction)
            }
        }
        if (P > 0 && k.NextBtn) {
            k.NextBtn.onclick = function() {
                k.Run(k.Direction)
            }
        }
        M[aa] = k.i = l = J = 0;
        if (af) {
            if (!k.Direction % 2) {
                M[aa] = M[ai]
            }
            G()
        }
        if (ag) {
            n[aa] = k.ScrollStep
        }
        ao = Math.round(k.ScrollStep / k.Step);
        if (k.WaitTime >= 60000) {
            k.i = 1;
            if (k.WaitTime == 100000) {
                P = k.DelayTime = 3600000
            }
            k.WaitTime = 3600000;
            return
        }
        setTimeout(function() {
            if ((k.ScrollStep >= 0 && k.l) || (P == 0 && k.ScrollStep == -2 && k.l)) {
                k.l()
            }
            p()
        },
        k.WaitTime - 800)
    },
    y = [function() {
        var i = k.Direction % 2;
        d += k.Step;
        if ((d >= k.ScrollStep && P > 0) || (an && d > k.Step && (M[aa] <= 0 || M[aa] >= M[ai] - w))) {
            i ? M[aa] -= k.ScrollStep + k.Step - d: M[aa] += k.ScrollStep + k.Step - d;
            q();
            return
        }
        switch (i) {
        case 0:
            if (M[aa] >= k.y && !an) {
                M[aa] -= k.y
            }
            M[aa] += k.Step;
            break;
        case 1:
            if (M[aa] <= k.Step && !an) {
                M[aa] += k.y
            }
            M[aa] -= k.Step
        }
    },
    function() {
        if (N || h) {
            q();
            return M[aa] = k.Counter == 1 ? 0: w * (k.Counter - 1)
        }
        var i = k.Direction % 2;
        R > 0 ? d += l: d += k.Step;
        if ((R == 0 && d >= k.ScrollStep && P > 0) || (R > 0 && l > ao)) {
            i ? n.style[Z] = (parseInt(n.style[Z]) - (k.ScrollStep - k.Step - d)) + "px": n.style[Z] = (parseInt(n.style[Z]) + (k.ScrollStep - k.Step - d)) + "px";
            q();
            M[aa] = n[aa];
            i ? n.style[Z] = -w + M[aa] + "px": n.style[Z] = w + M[aa] + "px";
            k.Counter == I ? n[aa] = 0: n[aa] = w * k.Counter
        } else {
            if (R > 0) {
                J += (k.Step = Math.round(ah.Tween[T](l++, k.ScrollStep, ao)) - J)
            }
            i ? n.style[Z] = (parseInt(n.style[Z]) + k.Step) + "px": n.style[Z] = (parseInt(n.style[Z]) - k.Step) + "px"
        }
    },
    function() {
        if (l <= ao) {
            J += (k.Step = Math.round(ah.Tween[T](l++, k.ScrollStep, ao)) - J);
            if (M[aa] <= k.Step && !an) {
                M[aa] += k.y
            }
            k.Direction % 2 ? M[aa] -= k.Step: M[aa] += k.Step
        } else {
            if (M[aa] > k.y && !an) {
                M[aa] -= k.y
            }
            q()
        }
    }];
    k.Run = function(j) {
        if (k.i == 1) {
            var i = -1;
            if (typeof arguments[0] == "number") {
                i = arguments[0]
            }
            if (typeof arguments[0] == "string") {
                z = i = r[arguments[0].toString().toLowerCase()]
            }
            if (i < 0 || i > 3) {
                alert("Parameters wrong set!");
                return false
            }
            if (k.Bound == i) {
                return false
            }
            k.Direction = i;
            if (typeof arguments[0] == "string" || an) {
                z = k.Direction
            }
            k.Play()
        }
    };
    k.OnBound = k.UnBound = k.OnScroll = k.OnPause = function() {};
    k.Play = function() {
        clearTimeout(u);
        u = setTimeout(p, arguments[0])
    };
    k.ReStart = function(i) {
        window.onresize = null;
        setTimeout(function() {
            window.onresize = function() {
                k.ReStart()
            }
        },
        1000);
        k.Reset();
        k.Start()
    };
    k.Reset = k.Destroy = function() {
        k.Stop();
        M.innerHTML = k.n;
        M.setAttribute("fixnum", M[aa] = k.Play = k.ReStart = k.Reset = k.Continue = k.Stop = k.Pause = k.i = l = J = 0);
        k.i = -1
    };
    k.Continue = function() {
        if (k.i == 2 && !arguments[0]) {
            k.i = d > 1 ? 0: 1;
            x = setInterval(D, k.Timer);
            return false
        }
        if (k.i == 0) {
            clearInterval(x);
            x = setInterval(D, k.Timer)
        }
        if (k.i == 1) {
            k.Play(P)
        }
    };
    k.Stop = function() {
        if (k.i != 2) {
            k.Pause();
            k.i = 2
        }
    };
    k.Pause = k.Terminate = function() {
        clearTimeout(W);
        clearInterval(x);
        clearTimeout(u)
    };
    setTimeout(e, 800)
};
Marquee.prototype.l = function() {
    var i = this,
    f = Marquee,
    h = null,
    j = null,
    k = 0,
    l = 0,
    c = 0,
    e = 0,
    b = i.Direction > 1 ? "scrollLeft": "scrollTop",
    a = function(m) {
        var m = m || window.event;
        if (i.DelayTime != 0 || (m.which && m.which != 1) || (m.button && m.button != 1) || i.i == 2 || i.i == -1) {
            return false
        }
        if (k == 0) {
            i.i = k = 1;
            i.Pause();
            m.stopPropagation ? m.stopPropagation() : m.cancelBuble = true;
            m.preventDefault ? m.preventDefault() : m.returnValue = false;
            c = i.c[b];
            l = i.Direction > 1 ? window.event ? m.clientX: m.pageX: window.event ? m.clientY: m.pageY;
            h = m.srcElement || m.target;
            j = h.style.cursor;
            h.style.cursor = "move";
            if (f.m) {
                h.setCapture()
            }
            f.K(document, "mousemove", g);
            f.K(document, "mouseup", d)
        }
    },
    g = function(n) {
        var n = n || window.event;
        e = i.Direction > 1 ? window.event ? n.clientX: n.pageX: window.event ? n.clientY: n.pageY;
        var m = l - e + c;
        if (m <= 0 || m >= i.y) {
            m <= 0 ? i.c[b] += i.y: i.c[b] = i.y - m;
            l = i.Direction > 1 ? window.event ? n.clientX: n.pageX: window.event ? n.clientY: n.pageY;
            c = i.c[b];
            m = l - e + c
        }
        i.c[b] = m
    },
    d = function(m) {
        if (f.m) {
            h.releaseCapture()
        }
        f.L(document, "mousemove", g);
        f.L(document, "mouseup", d);
        k = i.j = 0;
        h.style.cursor = j;
        i.Continue()
    };
    //if (!i.I) {
        //f.K(i.c, "mousedown", a)
//}
    i.c.onmouseover = function() {
        if ((i.i == 0 && i.DelayTime > 0) || i.i == 2 || i.i == -1) {
            return false
        }
        i.j = 1;
        i.Pause()
    };
    i.c.onmouseout = function() {
        if (i.j) {
            i.j = 0;
            i.Continue()
        }
    }
}


/**
 * 处理投票的反馈信息
 */
function vote_show(vote_id)
{
$.get('vote_data.asp', {id: vote_id}, function(data) {
	if (data!="")
	{
		var layer = document.getElementById("vote_content"+vote_id);
    	if (layer){layer.innerHTML = data;}
    }
  });
}


function picautosize(el,bw,bh)
{
	var w = el.width;
	var h = el.height;
	var sw,sh;
	if ((w>bw)||(h>bh)){var nw = bw/w;var nh = bh/h;if (nw>nh){sh = bh;sw = w*nh;}else{sw = bw;sh = h*nw;}}
	else{sw = w;sh = h;}
	el.style.width = sw;
	el.style.height = sh;
	el.onload=null;
}
function AddFavorite(sURL, sTitle)
{
try
{
	window.external.addFavorite(sURL, sTitle);
}
catch (e)
{
	try{
		window.sidebar.addPanel(sTitle, sURL, "");
	}
	catch (e)
	{
		alert("加入收藏失败，请使用Ctrl+D进行添加");
	}
}
}


function SetHome(obj,vrl)
{
try{
	obj.style.behavior='url(#default#homepage)';obj.setHomePage(vrl);
	}
catch(e)
{
	if(window.netscape) 
	{
	try {netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");}
	catch (e)
	{
		alert("此操作被浏览器拒绝！\n请在浏览器地址栏输入“about:config”并回车\n然后将 [signed.applets.codebase_principal_support]的值设置为“true”,双击即可。");
	}
	var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);prefs.setCharPref('browser.startup.homepage',vrl);
	}
}
}
