(function(d) {
    d.tools = d.tools || {};
    d.tools.tabs = {
        version: "1.0.4",
        conf: {
            tabs: "a",
            current: "current",
            onBeforeClick: null,
            onClick: null,
            effect: "default",
            initialIndex: 0,
            event: "click",
            api: false,
            rotate: false
        },
        addEffect: function(e, f) {
            c[e] = f
        }
    };
    var c = {
        "default": function(f, e) {
            this.getPanes().hide().eq(f).show();
            e.call()
        },
        fade: function(g, e) {
            var f = this.getConf(),
            j = f.fadeOutSpeed,
            h = this.getPanes();
            if (j) {
                h.fadeOut(j)
            } else {
                h.hide()
            }
            h.eq(g).fadeIn(f.fadeInSpeed, e)
        },
        slide: function(f, e) {
            this.getPanes().slideUp(200);
            this.getPanes().eq(f).slideDown(400, e)
        },
        ajax: function(f, e) {
            this.getPanes().eq(0).load(this.getTabs().eq(f).attr("href"), e)
        }
    };
    var b;
    d.tools.tabs.addEffect("horizontal",
    function(f, e) {
        if (!b) {
            b = this.getPanes().eq(0).width()
        }
        this.getCurrentPane().animate({
            width: 0
        },
        function() {
            d(this).hide()
        });
        this.getPanes().eq(f).animate({
            width: b
        },
        function() {
            d(this).show();
            e.call()
        })
    });
    function a(g, h, f) {
        var e = this,
        j = d(this),
        i;
        d.each(f,
        function(k, l) {
            if (d.isFunction(l)) {
                j.bind(k, l)
            }
        });
        d.extend(this, {
            click: function(k, n) {
                var o = e.getCurrentPane();
                var l = g.eq(k);
                if (typeof k == "string" && k.replace("#", "")) {
                    l = g.filter("[href*=" + k.replace("#", "") + "]");
                    k = Math.max(g.index(l), 0)
                }
                if (f.rotate) {
                    var m = g.length - 1;
                    if (k < 0) {
                        return e.click(m, n)
                    }
                    if (k > m) {
                        return e.click(0, n)
                    }
                }
                if (!l.length) {
                    if (i >= 0) {
                        return e
                    }
                    k = f.initialIndex;
                    l = g.eq(k)
                }
                if (k === i) {
                    return e
                }
                n = n || d.Event();
                n.type = "onBeforeClick";
                j.trigger(n, [k]);
                if (n.isDefaultPrevented()) {
                    return
                }
                c[f.effect].call(e, k,
                function() {
                    n.type = "onClick";
                    j.trigger(n, [k])
                });
                n.type = "onStart";
                j.trigger(n, [k]);
                if (n.isDefaultPrevented()) {
                    return
                }
                i = k;
                g.removeClass(f.current);
                l.addClass(f.current);
                return e
            },
            getConf: function() {
                return f
            },
            getTabs: function() {
                return g
            },
            getPanes: function() {
                return h
            },
            getCurrentPane: function() {
                return h.eq(i)
            },
            getCurrentTab: function() {
                return g.eq(i)
            },
            getIndex: function() {
                return i
            },
            next: function() {
                return e.click(i + 1)
            },
            prev: function() {
                return e.click(i - 1)
            },
            bind: function(k, l) {
                j.bind(k, l);
                return e
            },
            onBeforeClick: function(k) {
                return this.bind("onBeforeClick", k)
            },
            onClick: function(k) {
                return this.bind("onClick", k)
            },
            unbind: function(k) {
                j.unbind(k);
                return e
            }
        });
        g.each(function(k) {
            d(this).bind(f.event,
            function(l) {
                e.click(k, l);
                return false
            })
        });
        if (location.hash) {
            e.click(location.hash)
        } else {
            if (f.initialIndex === 0 || f.initialIndex > 0) {
                e.click(f.initialIndex)
            }
        }
        h.find("a[href^=#]").click(function(k) {
            e.click(d(this).attr("href"), k)
        })
    }
    d.fn.tabs = function(i, f) {
        var g = this.eq(typeof f == "number" ? f: 0).data("tabs");
        if (g) {
            return g
        }
        if (d.isFunction(f)) {
            f = {
                onBeforeClick: f
            }
        }
        var h = d.extend({},
        d.tools.tabs.conf),
        e = this.length;
        f = d.extend(h, f);
        this.each(function(l) {
            var j = d(this);
            var k = j.find(f.tabs);
            if (!k.length) {
                k = j.children()
            }
            var m = i.jquery ? i: j.children(i);
            if (!m.length) {
                m = e == 1 ? d(i) : j.parent().find(i)
            }
            g = new a(k, m, f);
            j.data("tabs", g)
        });
        return f.api ? g: this
    }
})(jQuery); (function(c) {
    var d = [];
    c.tools = c.tools || {};
    c.tools.tooltip = {
        version: "1.1.3",
        conf: {
            effect: "toggle",
            fadeOutSpeed: "fast",
            tip: null,
            predelay: 0,
            delay: 30,
            opacity: 1,
            lazy: undefined,
            position: ["top", "center"],
            offset: [0, 0],
            cancelDefault: true,
            relative: false,
            oneInstance: true,
            events: {
                def: "mouseover,mouseout",
                input: "focus,blur",
                widget: "focus mouseover,blur mouseout",
                tooltip: "mouseover,mouseout"
            },
            api: false
        },
        addEffect: function(e, g, f) {
            b[e] = [g, f]
        }
    };
    var b = {
        toggle: [function(e) {
            var f = this.getConf(),
            g = this.getTip(),
            h = f.opacity;
            if (h < 1) {
                g.css({
                    opacity: h
                })
            }
            g.show();
            e.call()
        },
        function(e) {
            this.getTip().hide();
            e.call()
        }],
        fade: [function(e) {
            this.getTip().fadeIn(this.getConf().fadeInSpeed, e)
        },
        function(e) {
            this.getTip().fadeOut(this.getConf().fadeOutSpeed, e)
        }]
    };
    function a(f, g) {
        var p = this,
        k = c(this);
        f.data("tooltip", p);
        var l = f.next();
        if (g.tip) {
            l = c(g.tip);
            if (l.length > 1) {
                l = f.nextAll(g.tip).eq(0);
                if (!l.length) {
                    l = f.parent().nextAll(g.tip).eq(0)
                }
            }
        }
        function o(u) {
            var t = g.relative ? f.position().top: f.offset().top,
            s = g.relative ? f.position().left: f.offset().left,
            v = g.position[0];
            t -= l.outerHeight() - g.offset[0];
            s += f.outerWidth() + g.offset[1];
            var q = l.outerHeight() + f.outerHeight();
            if (v == "center") {
                t += q / 2
            }
            if (v == "bottom") {
                t += q
            }
            v = g.position[1];
            var r = l.outerWidth() + f.outerWidth();
            if (v == "center") {
                s -= r / 2
            }
            if (v == "left") {
                s -= r
            }
            return {
                top: t,
                left: s
            }
        }
        var i = f.is(":input"),
        e = i && f.is(":checkbox, :radio, select, :button"),
        h = f.attr("type"),
        n = g.events[h] || g.events[i ? (e ? "widget": "input") : "def"];
        n = n.split(/,\s*/);
        if (n.length != 2) {
            throw "Tooltip: bad events configuration for " + h
        }
        f.bind(n[0],
        function(r) {
            if (g.oneInstance) {
                c.each(d,
                function() {
                    this.hide()
                })
            }
            var q = l.data("trigger");
            if (q && q[0] != this) {
                l.hide().stop(true, true)
            }
            r.target = this;
            p.show(r);
            n = g.events.tooltip.split(/,\s*/);
            l.bind(n[0],
            function() {
                p.show(r)
            });
            if (n[1]) {
                l.bind(n[1],
                function() {
                    p.hide(r)
                })
            }
        });
        f.bind(n[1],
        function(q) {
            p.hide(q)
        });
        if (!c.browser.msie && !i && !g.predelay) {
            f.mousemove(function() {
                if (!p.isShown()) {
                    f.triggerHandler("mouseover")
                }
            })
        }
        if (g.opacity < 1) {
            l.css("opacity", g.opacity)
        }
        var m = 0,
        j = f.attr("title");
        if (j && g.cancelDefault) {
            f.removeAttr("title");
            f.data("title", j)
        }
        c.extend(p, {
            show: function(r) {
                if (r) {
                    f = c(r.target)
                }
                clearTimeout(l.data("timer"));
                if (l.is(":animated") || l.is(":visible")) {
                    return p
                }
                function q() {
                    l.data("trigger", f);
                    var t = o(r);
                    if (g.tip && j) {
                        l.html(f.data("title"))
                    }
                    r = r || c.Event();
                    r.type = "onBeforeShow";
                    k.trigger(r, [t]);
                    if (r.isDefaultPrevented()) {
                        return p
                    }
                    t = o(r);
                    l.css({
                        position: "absolute",
                        top: t.top,
                        left: t.left
                    });
                    var s = b[g.effect];
                    if (!s) {
                        throw 'Nonexistent effect "' + g.effect + '"'
                    }
                    s[0].call(p,
                    function() {
                        r.type = "onShow";
                        k.trigger(r)
                    })
                }
                if (g.predelay) {
                    clearTimeout(m);
                    m = setTimeout(q, g.predelay)
                } else {
                    q()
                }
                return p
            },
            hide: function(r) {
                clearTimeout(l.data("timer"));
                clearTimeout(m);
                if (!l.is(":visible")) {
                    return
                }
                function q() {
                    r = r || c.Event();
                    r.type = "onBeforeHide";
                    k.trigger(r);
                    if (r.isDefaultPrevented()) {
                        return
                    }
                    b[g.effect][1].call(p,
                    function() {
                        r.type = "onHide";
                        k.trigger(r)
                    })
                }
                if (g.delay && r) {
                    l.data("timer", setTimeout(q, g.delay))
                } else {
                    q()
                }
                return p
            },
            isShown: function() {
                return l.is(":visible, :animated")
            },
            getConf: function() {
                return g
            },
            getTip: function() {
                return l
            },
            getTrigger: function() {
                return f
            },
            bind: function(q, r) {
                k.bind(q, r);
                return p
            },
            onHide: function(q) {
                return this.bind("onHide", q)
            },
            onBeforeShow: function(q) {
                return this.bind("onBeforeShow", q)
            },
            onShow: function(q) {
                return this.bind("onShow", q)
            },
            onBeforeHide: function(q) {
                return this.bind("onBeforeHide", q)
            },
            unbind: function(q) {
                k.unbind(q);
                return p
            }
        });
        c.each(g,
        function(q, r) {
            if (c.isFunction(r)) {
                p.bind(q, r)
            }
        })
    }
    c.prototype.tooltip = function(e) {
        var f = this.eq(typeof e == "number" ? e: 0).data("tooltip");
        if (f) {
            return f
        }
        var g = c.extend(true, {},
        c.tools.tooltip.conf);
        if (c.isFunction(e)) {
            e = {
                onBeforeShow: e
            }
        } else {
            if (typeof e == "string") {
                e = {
                    tip: e
                }
            }
        }
        e = c.extend(true, g, e);
        if (typeof e.position == "string") {
            e.position = e.position.split(/,?\s/)
        }
        if (e.lazy !== false && (e.lazy === true || this.length > 20)) {
            this.one("mouseover",
            function(h) {
                f = new a(c(this), e);
                f.show(h);
                d.push(f)
            })
        } else {
            this.each(function() {
                f = new a(c(this), e);
                d.push(f)
            })
        }
        return e.api ? f: this
    }
})(jQuery); (function(b) {
    b.tools = b.tools || {};
    b.tools.scrollable = {
        version: "1.1.2",
        conf: {
            size: 5,
            vertical: false,
            speed: 400,
            keyboard: true,
            keyboardSteps: null,
            disabledClass: "disabled",
            hoverClass: null,
            clickable: true,
            activeClass: "active",
            easing: "swing",
            loop: false,
            items: ".items",
            item: null,
            prev: ".prev",
            next: ".next",
            prevPage: ".prevPage",
            nextPage: ".nextPage",
            api: false
        }
    };
    var c;
    function a(o, m) {
        var r = this,
        p = b(this),
        d = !m.vertical,
        e = o.children(),
        k = 0,
        i;
        if (!c) {
            c = r
        }
        b.each(m,
        function(s, t) {
            if (b.isFunction(t)) {
                p.bind(s, t)
            }
        });
        if (e.length > 1) {
            e = b(m.items, o)
        }
        function l(t) {
            var s = b(t);
            return m.globalNav ? s: o.parent().find(t)
        }
        o.data("finder", l);
        var f = l(m.prev),
        h = l(m.next),
        g = l(m.prevPage),
        n = l(m.nextPage);
        b.extend(r, {
            getIndex: function() {
                return k
            },
            getClickIndex: function() {
                var s = r.getItems();
                return s.index(s.filter("." + m.activeClass))
            },
            getConf: function() {
                return m
            },
            getSize: function() {
                return r.getItems().size()
            },
            getPageAmount: function() {
                return Math.ceil(this.getSize() / m.size)
            },
            getPageIndex: function() {
                return Math.ceil(k / m.size)
            },
            getNaviButtons: function() {
                return f.add(h).add(g).add(n)
            },
            getRoot: function() {
                return o
            },
            getItemWrap: function() {
                return e
            },
            getItems: function() {
                return e.children(m.item)
            },
            getVisibleItems: function() {
                return r.getItems().slice(k, k + m.size)
            },
            seekTo: function(s, w, t) {
                if (s < 0) {
                    s = 0
                }
                if (k === s) {
                    return r
                }
                if (b.isFunction(w)) {
                    t = w
                }
                if (s > r.getSize() - m.size) {
                    return m.loop ? r.begin() : this.end()
                }
                var u = r.getItems().eq(s);
                if (!u.length) {
                    return r
                }
                var v = b.Event("onBeforeSeek");
                p.trigger(v, [s]);
                if (v.isDefaultPrevented()) {
                    return r
                }
                if (w === undefined || b.isFunction(w)) {
                    w = m.speed
                }
                function x() {
                    if (t) {
                        t.call(r, s)
                    }
                    p.trigger("onSeek", [s])
                }
                if (d) {
                    e.animate({
                        left: -u.position().left
                    },
                    w, m.easing, x)
                } else {
                    e.animate({
                        top: -u.position().top
                    },
                    w, m.easing, x)
                }
                c = r;
                k = s;
                v = b.Event("onStart");
                p.trigger(v, [s]);
                if (v.isDefaultPrevented()) {
                    return r
                }
                f.add(g).toggleClass(m.disabledClass, s === 0);
                h.add(n).toggleClass(m.disabledClass, s >= r.getSize() - m.size);
                return r
            },
            move: function(u, t, s) {
                i = u > 0;
                return this.seekTo(k + u, t, s)
            },
            next: function(t, s) {
                return this.move(1, t, s)
            },
            prev: function(t, s) {
                return this.move( - 1, t, s)
            },
            movePage: function(w, v, u) {
                i = w > 0;
                var s = m.size * w;
                var t = k % m.size;
                if (t > 0) {
                    s += (w > 0 ? -t: m.size - t)
                }
                return this.move(s, v, u)
            },
            prevPage: function(t, s) {
                return this.movePage( - 1, t, s)
            },
            nextPage: function(t, s) {
                return this.movePage(1, t, s)
            },
            setPage: function(t, u, s) {
                return this.seekTo(t * m.size, u, s)
            },
            begin: function(t, s) {
                i = false;
                return this.seekTo(0, t, s)
            },
            end: function(t, s) {
                i = true;
                var u = this.getSize() - m.size;
                return u > 0 ? this.seekTo(u, t, s) : r
            },
            reload: function() {
                p.trigger("onReload");
                return r
            },
            focus: function() {
                c = r;
                return r
            },
            click: function(u) {
                var v = r.getItems().eq(u),
                s = m.activeClass,
                t = m.size;
                if (u < 0 || u >= r.getSize()) {
                    return r
                }
                if (t == 1) {
                    if (m.loop) {
                        return r.next()
                    }
                    if (u === 0 || u == r.getSize() - 1) {
                        i = (i === undefined) ? true: !i
                    }
                    return i === false ? r.prev() : r.next()
                }
                if (t == 2) {
                    if (u == k) {
                        u--
                    }
                    r.getItems().removeClass(s);
                    v.addClass(s);
                    return r.seekTo(u, time, fn)
                }
                if (!v.hasClass(s)) {
                    r.getItems().removeClass(s);
                    v.addClass(s);
                    var x = Math.floor(t / 2);
                    var w = u - x;
                    if (w > r.getSize() - t) {
                        w = r.getSize() - t
                    }
                    if (w !== u) {
                        return r.seekTo(w)
                    }
                }
                return r
            },
            bind: function(s, t) {
                p.bind(s, t);
                return r
            },
            unbind: function(s) {
                p.unbind(s);
                return r
            }
        });
        b.each("onBeforeSeek,onStart,onSeek,onReload".split(","),
        function(s, t) {
            r[t] = function(u) {
                return r.bind(t, u)
            }
        });
        f.addClass(m.disabledClass).click(function() {
            r.prev()
        });
        h.click(function() {
            r.next()
        });
        n.click(function() {
            r.nextPage()
        });
        if (r.getSize() < m.size) {
            h.add(n).addClass(m.disabledClass)
        }
        g.addClass(m.disabledClass).click(function() {
            r.prevPage()
        });
        var j = m.hoverClass,
        q = "keydown." + Math.random().toString().substring(10);
        r.onReload(function() {
            if (j) {
                r.getItems().hover(function() {
                    b(this).addClass(j)
                },
                function() {
                    b(this).removeClass(j)
                })
            }
            if (m.clickable) {
                r.getItems().each(function(s) {
                    b(this).unbind("click.scrollable").bind("click.scrollable",
                    function(t) {
                        if (b(t.target).is("a")) {
                            return
                        }
                        return r.click(s)
                    })
                })
            }
            if (m.keyboard) {
                b(document).unbind(q).bind(q,
                function(t) {
                    if (t.altKey || t.ctrlKey) {
                        return
                    }
                    if (m.keyboard != "static" && c != r) {
                        return
                    }
                    var u = m.keyboardSteps;
                    if (d && (t.keyCode == 37 || t.keyCode == 39)) {
                        r.move(t.keyCode == 37 ? -u: u);
                        return t.preventDefault()
                    }
                    if (!d && (t.keyCode == 38 || t.keyCode == 40)) {
                        r.move(t.keyCode == 38 ? -u: u);
                        return t.preventDefault()
                    }
                    return true
                })
            } else {
                b(document).unbind(q)
            }
        });
        r.reload()
    }
    b.fn.scrollable = function(d) {
        var e = this.eq(typeof d == "number" ? d: 0).data("scrollable");
        if (e) {
            return e
        }
        var f = b.extend({},
        b.tools.scrollable.conf);
        d = b.extend(f, d);
        d.keyboardSteps = d.keyboardSteps || d.size;
        this.each(function() {
            e = new a(b(this), d);
            b(this).data("scrollable", e)
        });
        return d.api ? e: this
    }
})(jQuery); (function(b) {
    var a = b.tools.scrollable;
    a.plugins = a.plugins || {};
    a.plugins.circular = {
        version: "0.5.1",
        conf: {
            api: false,
            clonedClass: "cloned"
        }
    };
    b.fn.circular = function(e) {
        var d = b.extend({},
        a.plugins.circular.conf),
        c;
        b.extend(d, e);
        this.each(function() {
            var i = b(this).scrollable(),
            n = i.getItems(),
            k = i.getConf(),
            f = i.getItemWrap(),
            j = 0;
            if (i) {
                c = i
            }
            if (n.length < k.size) {
                return false
            }
            n.slice(0, k.size).each(function(o) {
                b(this).clone().appendTo(f).click(function() {
                    i.click(n.length + o)
                }).addClass(d.clonedClass)
            });
            var l = b.makeArray(n.slice( - k.size)).reverse();
            b(l).each(function(o) {
                b(this).clone().prependTo(f).click(function() {
                    i.click( - o - 1)
                }).addClass(d.clonedClass)
            });
            var m = f.children(k.item);
            var h = k.hoverClass;
            if (h) {
                m.hover(function() {
                    b(this).addClass(h)
                },
                function() {
                    b(this).removeClass(h)
                })
            }
            function g(o) {
                var p = m.eq(o);
                if (k.vertical) {
                    f.css({
                        top: -p.position().top
                    })
                } else {
                    f.css({
                        left: -p.position().left
                    })
                }
            }
            g(k.size);
            b.extend(i, {
                move: function(s, r, p, q) {
                    var u = j + s + k.size;
                    var t = u > i.getSize() - k.size;
                    if (u <= 0 || t) {
                        var o = j + k.size + (t ? -n.length: n.length);
                        g(o);
                        u = o + s
                    }
                    if (q) {
                        m.removeClass(k.activeClass).eq(u + Math.floor(k.size / 2)).addClass(k.activeClass)
                    }
                    if (u === j + k.size) {
                        return self
                    }
                    return i.seekTo(u, r, p)
                },
                begin: function(p, o) {
                    return this.seekTo(k.size, p, o)
                },
                end: function(p, o) {
                    return this.seekTo(n.length, p, o)
                },
                click: function(p, r, q) {
                    if (!k.clickable) {
                        return self
                    }
                    if (k.size == 1) {
                        return this.next()
                    }
                    var s = p - j,
                    o = k.activeClass;
                    s -= Math.floor(k.size / 2);
                    return this.move(s, r, q, true)
                },
                getIndex: function() {
                    return j
                },
                setPage: function(p, q, o) {
                    return this.seekTo(p * k.size + k.size, q, o)
                },
                getPageAmount: function() {
                    return Math.ceil(n.length / k.size)
                },
                getPageIndex: function() {
                    if (j < 0) {
                        return this.getPageAmount() - 1
                    }
                    if (j >= n.length) {
                        return 0
                    }
                    var o = (j + k.size) / k.size - 1;
                    return o
                },
                getVisibleItems: function() {
                    var o = j + k.size;
                    return m.slice(o, o + k.size)
                }
            });
            i.onStart(function(p, o) {
                j = o - k.size;
                return false
            });
            i.getNaviButtons().removeClass(k.disabledClass)
        });
        return d.api ? c: this
    }
})(jQuery); (function(b) {
    var a = b.tools.scrollable;
    a.plugins = a.plugins || {};
    a.plugins.autoscroll = {
        version: "1.0.1",
        conf: {
            autoplay: true,
            interval: 3000,
            autopause: true,
            steps: 1,
            api: false
        }
    };
    b.fn.autoscroll = function(d) {
        if (typeof d == "number") {
            d = {
                interval: d
            }
        }
        var e = b.extend({},
        a.plugins.autoscroll.conf),
        c;
        b.extend(e, d);
        this.each(function() {
            var g = b(this).scrollable();
            if (g) {
                c = g
            }
            var i,
            f,
            h = true;
            g.play = function() {
                if (i) {
                    return
                }
                h = false;
                i = setInterval(function() {
                    g.move(e.steps)
                },
                e.interval);
                g.move(e.steps)
            };
            g.pause = function() {
                i = clearInterval(i)
            };
            g.stop = function() {
                g.pause();
                h = true
            };
            if (e.autopause) {
                g.getRoot().add(g.getNaviButtons()).hover(function() {
                    g.pause();
                    clearInterval(f)
                },
                function() {
                    if (!h) {
                        f = setTimeout(g.play, e.interval)
                    }
                })
            }
            if (e.autoplay) {
                setTimeout(g.play, e.interval)
            }
        });
        return e.api ? c: this
    }
})(jQuery); (function(b) {
    var a = b.tools.scrollable;
    a.plugins = a.plugins || {};
    a.plugins.navigator = {
        version: "1.0.2",
        conf: {
            navi: ".navi",
            naviItem: null,
            activeClass: "active",
            indexed: false,
            api: false,
            idPrefix: null
        }
    };
    b.fn.navigator = function(d) {
        var e = b.extend({},
        a.plugins.navigator.conf),
        c;
        if (typeof d == "string") {
            d = {
                navi: d
            }
        }
        d = b.extend(e, d);
        this.each(function() {
            var i = b(this).scrollable(),
            f = i.getRoot(),
            l = f.data("finder").call(null, d.navi),
            g = null,
            k = i.getNaviButtons();
            if (i) {
                c = i
            }
            i.getNaviButtons = function() {
                return k.add(l)
            };
            function j() {
                if (!l.children().length || l.data("navi") == i) {
                    l.empty();
                    l.data("navi", i);
                    for (var m = 0; m < i.getPageAmount(); m++) {
                        l.append(b("<" + (d.naviItem || "a") + "/>"))
                    }
                    g = l.children().each(function(n) {
                        var o = b(this);
                        o.click(function(p) {
                            i.setPage(n);
                            return p.preventDefault()
                        });
                        if (d.indexed) {
                            o.text(n)
                        }
                        if (d.idPrefix) {
                            o.attr("id", d.idPrefix + n)
                        }
                    })
                } else {
                    g = d.naviItem ? l.find(d.naviItem) : l.children();
                    g.each(function(n) {
                        var o = b(this);
                        o.click(function(p) {
                            i.setPage(n);
                            return p.preventDefault()
                        })
                    })
                }
                g.eq(0).addClass(d.activeClass)
            }
            i.onStart(function(o, n) {
                var m = d.activeClass;
                g.removeClass(m).eq(i.getPageIndex()).addClass(m)
            });
            i.onReload(function() {
                j()
            });
            j();
            var h = g.filter("[href=" + location.hash + "]");
            if (h.length) {
                i.move(g.index(h))
            }
        });
        return d.api ? c: this
    }
})(jQuery); (function(b) {
    b.fn.wheel = function(e) {
        return this[e ? "bind": "trigger"]("wheel", e)
    };
    b.event.special.wheel = {
        setup: function() {
            b.event.add(this, d, c, {})
        },
        teardown: function() {
            b.event.remove(this, d, c)
        }
    };
    var d = !b.browser.mozilla ? "mousewheel": "DOMMouseScroll" + (b.browser.version < "1.9" ? " mousemove": "");
    function c(e) {
        switch (e.type) {
        case "mousemove":
            return b.extend(e.data, {
                clientX: e.clientX,
                clientY: e.clientY,
                pageX: e.pageX,
                pageY: e.pageY
            });
        case "DOMMouseScroll":
            b.extend(e, e.data);
            e.delta = -e.detail / 3;
            break;
        case "mousewheel":
            e.delta = e.wheelDelta / 120;
            break
        }
        e.type = "wheel";
        return b.event.handle.call(this, e, e.delta)
    }
    var a = b.tools.scrollable;
    a.plugins = a.plugins || {};
    a.plugins.mousewheel = {
        version: "1.0.1",
        conf: {
            api: false,
            speed: 50
        }
    };
    b.fn.mousewheel = function(f) {
        var g = b.extend({},
        a.plugins.mousewheel.conf),
        e;
        if (typeof f == "number") {
            f = {
                speed: f
            }
        }
        f = b.extend(g, f);
        this.each(function() {
            var h = b(this).scrollable();
            if (h) {
                e = h
            }
            h.getRoot().wheel(function(i, j) {
                h.move(j < 0 ? 1: -1, f.speed || 50);
                return false
            })
        });
        return f.api ? e: this
    }
})(jQuery); (function(c) {
    c.tools = c.tools || {};
    c.tools.overlay = {
        version: "1.1.2",
        addEffect: function(e, f, g) {
            b[e] = [f, g]
        },
        conf: {
            top: "10%",
            left: "center",
            absolute: false,
            speed: "normal",
            closeSpeed: "fast",
            effect: "default",
            close: null,
            oneInstance: true,
            closeOnClick: true,
            closeOnEsc: true,
            api: false,
            expose: null,
            target: null
        }
    };
    var b = {};
    c.tools.overlay.addEffect("default",
    function(e) {
        this.getOverlay().fadeIn(this.getConf().speed, e)
    },
    function(e) {
        this.getOverlay().fadeOut(this.getConf().closeSpeed, e)
    });
    var d = [];
    function a(g, k) {
        var o = this,
        m = c(this),
        n = c(window),
        j,
        i,
        h,
        e = k.expose && c.tools.expose.version;
        var f = k.target || g.attr("rel");
        i = f ? c(f) : null || g;
        if (!i.length) {
            throw "Could not find Overlay: " + f
        }
        if (g && g.index(i) == -1) {
            g.click(function(p) {
                o.load(p);
                return p.preventDefault()
            })
        }
        c.each(k,
        function(p, q) {
            if (c.isFunction(q)) {
                m.bind(p, q)
            }
        });
        c.extend(o, {
            load: function(u) {
                if (o.isOpened()) {
                    return o
                }
                var r = b[k.effect];
                if (!r) {
                    throw 'Overlay: cannot find effect : "' + k.effect + '"'
                }
                if (k.oneInstance) {
                    c.each(d,
                    function() {
                        this.close(u)
                    })
                }
                u = u || c.Event();
                u.type = "onBeforeLoad";
                m.trigger(u);
                if (u.isDefaultPrevented()) {
                    return o
                }
                h = true;
                if (e) {
                    i.expose().load(u)
                }
                var t = k.top;
                var s = k.left;
                var p = i.outerWidth({
                    margin: true
                });
                var q = i.outerHeight({
                    margin: true
                });
                if (typeof t == "string") {
                    t = t == "center" ? Math.max((n.height() - q) / 2, 0) : parseInt(t, 10) / 100 * n.height()
                }
                if (s == "center") {
                    s = Math.max((n.width() - p) / 2, 0)
                }
                if (!k.absolute) {
                    t += n.scrollTop();
                    s += n.scrollLeft()
                }
                i.css({
                    top: t,
                    left: s,
                    position: "absolute"
                });
                u.type = "onStart";
                m.trigger(u);
                r[0].call(o,
                function() {
                    if (h) {
                        u.type = "onLoad";
                        m.trigger(u)
                    }
                });
                if (k.closeOnClick) {
                    c(document).bind("click.overlay",
                    function(w) {
                        if (!o.isOpened()) {
                            return
                        }
                        var v = c(w.target);
                        if (v.parents(i).length > 1) {
                            return
                        }
                        c.each(d,
                        function() {
                            this.close(w)
                        })
                    })
                }
                if (k.closeOnEsc) {
                    c(document).unbind("keydown.overlay").bind("keydown.overlay",
                    function(v) {
                        if (v.keyCode == 27) {
                            c.each(d,
                            function() {
                                this.close(v)
                            })
                        }
                    })
                }
                return o
            },
            close: function(q) {
                if (!o.isOpened()) {
                    return o
                }
                q = q || c.Event();
                q.type = "onBeforeClose";
                m.trigger(q);
                if (q.isDefaultPrevented()) {
                    return
                }
                h = false;
                b[k.effect][1].call(o,
                function() {
                    q.type = "onClose";
                    m.trigger(q)
                });
                var p = true;
                c.each(d,
                function() {
                    if (this.isOpened()) {
                        p = false
                    }
                });
                if (p) {
                    c(document).unbind("click.overlay").unbind("keydown.overlay")
                }
                return o
            },
            getContent: function() {
                return i
            },
            getOverlay: function() {
                return i
            },
            getTrigger: function() {
                return g
            },
            getClosers: function() {
                return j
            },
            isOpened: function() {
                return h
            },
            getConf: function() {
                return k
            },
            bind: function(p, q) {
                m.bind(p, q);
                return o
            },
            unbind: function(p) {
                m.unbind(p);
                return o
            }
        });
        c.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),
        function(p, q) {
            o[q] = function(r) {
                return o.bind(q, r)
            }
        });
        if (e) {
            if (typeof k.expose == "string") {
                k.expose = {
                    color: k.expose
                }
            }
            c.extend(k.expose, {
                api: true,
                closeOnClick: k.closeOnClick,
                closeOnEsc: false
            });
            var l = i.expose(k.expose);
            l.onBeforeClose(function(p) {
                o.close(p)
            });
            o.onClose(function(p) {
                l.close(p)
            })
        }
        j = i.find(k.close || ".close");
        if (!j.length && !k.close) {
            j = c('<div class="close"></div>');
            i.prepend(j)
        }
        j.click(function(p) {
            o.close(p)
        })
    }
    c.fn.overlay = function(e) {
        var f = this.eq(typeof e == "number" ? e: 0).data("overlay");
        if (f) {
            return f
        }
        if (c.isFunction(e)) {
            e = {
                onBeforeLoad: e
            }
        }
        var g = c.extend({},
        c.tools.overlay.conf);
        e = c.extend(true, g, e);
        this.each(function() {
            f = new a(c(this), e);
            d.push(f);
            c(this).data("overlay", f)
        });
        return e.api ? f: this
    }
})(jQuery); (function(b) {
    b.tools = b.tools || {};
    b.tools.expose = {
        version: "1.0.5",
        conf: {
            maskId: null,
            loadSpeed: "slow",
            closeSpeed: "fast",
            closeOnClick: true,
            closeOnEsc: true,
            zIndex: 9998,
            opacity: 0.8,
            color: "#456",
            api: false
        }
    };
    function a() {
        if (b.browser.msie) {
            var f = b(document).height(),
            e = b(window).height();
            return [window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, f - e < 20 ? e: f]
        }
        return [b(window).width(), b(document).height()]
    }
    function c(h, g) {
        var e = this,
        j = b(this),
        d = null,
        f = false,
        i = 0;
        b.each(g,
        function(k, l) {
            if (b.isFunction(l)) {
                j.bind(k, l)
            }
        });
        b(window).resize(function() {
            e.fit()
        });
        b.extend(this, {
            getMask: function() {
                return d
            },
            getExposed: function() {
                return h
            },
            getConf: function() {
                return g
            },
            isLoaded: function() {
                return f
            },
            load: function(n) {
                if (f) {
                    return e
                }
                i = h.eq(0).css("zIndex");
                if (g.maskId) {
                    d = b("#" + g.maskId)
                }
                if (!d || !d.length) {
                    var l = a();
                    d = b("<div/>").css({
                        position: "absolute",
                        top: 0,
                        left: 0,
                        width: l[0],
                        height: l[1],
                        display: "none",
                        opacity: 0,
                        zIndex: g.zIndex
                    });
                    if (g.maskId) {
                        d.attr("id", g.maskId)
                    }
                    b("body").append(d);
                    var k = d.css("backgroundColor");
                    if (!k || k == "transparent" || k == "rgba(0, 0, 0, 0)") {
                        d.css("backgroundColor", g.color)
                    }
                    if (g.closeOnEsc) {
                        b(document).bind("keydown.unexpose",
                        function(o) {
                            if (o.keyCode == 27) {
                                e.close()
                            }
                        })
                    }
                    if (g.closeOnClick) {
                        d.bind("click.unexpose",
                        function(o) {
                            e.close(o)
                        })
                    }
                }
                n = n || b.Event();
                n.type = "onBeforeLoad";
                j.trigger(n);
                if (n.isDefaultPrevented()) {
                    return e
                }
                b.each(h,
                function() {
                    var o = b(this);
                    if (!/relative|absolute|fixed/i.test(o.css("position"))) {
                        o.css("position", "relative")
                    }
                });
                h.css({
                    zIndex: Math.max(g.zIndex + 1, i == "auto" ? 0: i)
                });
                var m = d.height();
                if (!this.isLoaded()) {
                    d.css({
                        opacity: 0,
                        display: "block"
                    }).fadeTo(g.loadSpeed, g.opacity,
                    function() {
                        if (d.height() != m) {
                            d.css("height", m)
                        }
                        n.type = "onLoad";
                        j.trigger(n)
                    })
                }
                f = true;
                return e
            },
            close: function(k) {
                if (!f) {
                    return e
                }
                k = k || b.Event();
                k.type = "onBeforeClose";
                j.trigger(k);
                if (k.isDefaultPrevented()) {
                    return e
                }
                d.fadeOut(g.closeSpeed,
                function() {
                    k.type = "onClose";
                    j.trigger(k);
                    h.css({
                        zIndex: b.browser.msie ? i: null
                    })
                });
                f = false;
                return e
            },
            fit: function() {
                if (d) {
                    var k = a();
                    d.css({
                        width: k[0],
                        height: k[1]
                    })
                }
            },
            bind: function(k, l) {
                j.bind(k, l);
                return e
            },
            unbind: function(k) {
                j.unbind(k);
                return e
            }
        });
        b.each("onBeforeLoad,onLoad,onBeforeClose,onClose".split(","),
        function(k, l) {
            e[l] = function(m) {
                return e.bind(l, m)
            }
        })
    }
    b.fn.expose = function(d) {
        var e = this.eq(typeof d == "number" ? d: 0).data("expose");
        if (e) {
            return e
        }
        if (typeof d == "string") {
            d = {
                color: d
            }
        }
        var f = b.extend({},
        b.tools.expose.conf);
        d = b.extend(f, d);
        this.each(function() {
            e = new c(b(this), d);
            b(this).data("expose", e)
        });
        return d.api ? e: this
    }
})(jQuery);
jQuery(document).ready(function() {
	if (jQuery("#concurrents-deals").length > 0) {
    jQuery("#concurrents-deals").scrollable({
        vertical: true,
        size: 1,
        clickable: false,
        keyboard: 'false'
    }).navigator("#concurrents-nav");

		
    jQuery("#concurrents-nav a").click(function(event) {
        event.preventDefault();
        jQuery('#concurrents-fleche').animate({
            top: jQuery(this).attr("rel")
        });
    });
	};
	
});
