if (typeof (thumbid) != 'undefined') {
    var slideShow = function() {
        var bxs, bxe, fxs, fxe, ys, ye, ta, ia, ie, st, ss, ft, fs, xp, yp, ci, t, tar, tarl;

        ta = document.getElementById(thumbid); ia = document.getElementById(imgid);
        t = ta.getElementsByTagName('li'); ie = document.all ? true : false;
        st = 3; ss = 3; ft = 10; fs = 5; xp, yp = 0;
        return {
            init: function() {
                document.onmousemove = this.pos; window.onresize = function() { setTimeout("slideShow.lim()", 125) };
                ys = this.toppos(ta); ye = ys + ta.offsetHeight;
                len = t.length; tar = [];
                for (i = 0; i < len; i++) {
                    var id = t[i].value; tar[i] = id;
                    t[i].onclick = new Function("slideShow.getimg('" + id + "')");
                    if (i == 0) { this.getimg(id) }
                }
                tarl = tar.length;
            },
            scrl: function(d) {
                clearInterval(ta.timer);
                var l = (d == -1) ? 0 : (t[tarl - 1].offsetLeft - (ta.parentNode.offsetWidth - t[tarl - 1].offsetWidth) + 10)
                ta.timer = setInterval(function() { slideShow.mv(d, l) }, st);
            },
            mv: function(d, l) {
                ta.style.left = ta.style.left || '0px';
                var left = ta.style.left.replace('px', '');
                if (d == 1) {
                    if (l - Math.abs(left) <= ss) {
                        this.cncl(ta.id); ta.style.left = '-' + l + 'px';
                    } else { ta.style.left = left - ss + 'px' }
                } else {
                    if (Math.abs(left) - l <= ss) {
                        this.cncl(ta.id); ta.style.left = l + 'px';
                    } else { ta.style.left = parseInt(left) + ss + 'px' }
                }
            },
            cncl: function() { clearTimeout(ta.timer) },
            getimg: function(id) {
                if (auto) { clearTimeout(ia.timer) }
                if (ci != null) {
                    var ts, tsl, x;
                    ts = ia.getElementsByTagName('img'); tsl = ts.length; x = 0;
                    for (x; x < tsl; x++) {
                        if (ci.id != id) { var o = ts[x]; clearInterval(o.timer); o.timer = setInterval(function() { slideShow.fdout(o) }, fs) }
                    }
                }
                if (!document.getElementById(id)) {
                    var i = document.createElement('img');
                    ia.appendChild(i);
                    i.id = id; i.av = 0; i.style.opacity = 0;
                    i.style.filter = 'alpha(opacity=0)';
                    i.src = picFolder + picKey + '/' + id + '_' + imgdir + imgext;
                } else {
                    i = document.getElementById(id); clearInterval(i.timer);
                }
                i.timer = setInterval(function() { slideShow.fdin(i) }, fs);
            },
            nav: function(d) {
                var c = 0;
                for (key in tar) { if (tar[key] == ci.id) { c = key } }
                if (tar[parseInt(c) + d]) {
                    this.getimg(tar[parseInt(c) + d]);
                } else {
                    if (d == 1) {
                        this.getimg(tar[0]);
                    } else { this.getimg(tar[tarl - 1]) }
                }
            },
            auto: function() { ia.timer = setInterval(function() { slideShow.nav(1) }, autodelay * 1000) },
            fdin: function(i) {
                if (i.complete) { i.av = i.av + fs; i.style.opacity = i.av / 100; i.style.filter = 'alpha(opacity=' + i.av + ')' }
                if (i.av >= 100) { if (auto) { this.auto() }; clearInterval(i.timer); ci = i }
            },
            fdout: function(i) {
                i.av = i.av - fs; i.style.opacity = i.av / 100;
                i.style.filter = 'alpha(opacity=' + i.av + ')';
                if (i.av <= 0) { clearInterval(i.timer); if (i.parentNode) { i.parentNode.removeChild(i) } }
            },
            lim: function() {
                var taw, taa, len; taw = ta.parentNode.offsetWidth; taa = taw / 4;
                bxs = slideShow.leftpos(ta); bxe = bxs + taa; fxe = bxs + taw; fxs = fxe - taa;
            },
            pos: function(e) {
                xp = ie ? event.clientX + document.documentElement.scrollLeft : e.pageX;
                yp = ie ? event.clientY + document.documentElement.scrollTop : e.pageY;
                if (xp > bxs && xp < bxe && yp > ys && yp < ye) {
                    slideShow.scrl(-1);
                } else if (xp > fxs && xp < fxe && yp > ys && yp < ye) {
                    slideShow.scrl(1);
                } else { slideShow.cncl() }
            },
            leftpos: function(t) {
                var l = 0;
                if (t.offsetParent) {
                    while (1) { l += t.offsetLeft; if (!t.offsetParent) { break }; t = t.offsetParent }
                } else if (t.x) { l += t.x }
                return l;
            },
            toppos: function(t) {
                var p = 0;
                if (t.offsetParent) {
                    while (1) { p += t.offsetTop; if (!t.offsetParent) { break }; t = t.offsetParent }
                } else if (t.y) { p += t.y }
                return p;
            }
        };

    } ();

    window.onload = function() { slideShow.init(); slideShow.lim() };
}