var slideMenu = function() {
    var sa, m, l, pw;
    return {
        build: function(sm, w, h, sw) {
            m = document.getElementById(sm);
            pw = sw;
            m.style.width = w + 'px';
            m.style.height = h + 'px';
            m.style.overflow = 'hidden';
            sa = m.getElementsByTagName('li');
            l = sa.length;
            for (i = 0; i < l; i++) {
                var s = sa[i];
                s.style.width = m.style.width;
                s.style.left = i * pw + 'px';
                s.six = i;
                slideMenu.timer(s);
            }
        },
        timer: function(s) { s.onmouseover = function() { clearInterval(m.timer); m.timer = setInterval(function() { slideMenu.slide(s) }, 10) } },
        slide: function(s) {
            var open = parseInt(s.style.left, '10') <= (s.six * pw) + 1;
            var six = parseInt(s.six);
            var le;
            if (open) {
                for (ix = six + 1; ix < l; ix++) {
                    var f = 840 - (l * pw) + (ix * pw);
                    le = parseInt(sa[ix].style.left, '10');
                    le += (f - le) * 0.05;
                    if (le > f) { le = f + 'px'; clearInterval(m.timer); }
                    sa[ix].style.left = le + 'px';
                }
            }
            else {
                for (ix = six; ix >= 0; ix--) {
                    var f = ix * pw;
                    var le = parseInt(sa[ix].style.left, '10');
                    le -= (le - f) * 0.05;
                    if (le < f) { le = f + 'px'; clearInterval(m.timer); }
                    sa[ix].style.left = le + 'px';
                }
            }
        }
    };
} ();
