(function (c) {
    c.ui = c.ui || {}; if (!c.ui.version) {
        c.extend(c.ui, { version: "1.8.2", plugin: { add: function (a, b, d) { a = c.ui[a].prototype; for (var e in d) { a.plugins[e] = a.plugins[e] || []; a.plugins[e].push([b, d[e]]) } }, call: function (a, b, d) { if ((b = a.plugins[b]) && a.element[0].parentNode) for (var e = 0; e < b.length; e++) a.options[b[e][0]] && b[e][1].apply(a.element, d) } }, contains: function (a, b) { return document.compareDocumentPosition ? a.compareDocumentPosition(b) & 16 : a !== b && a.contains(b) }, hasScroll: function (a, b) {
            if (c(a).css("overflow") ==
"hidden") return false; b = b && b == "left" ? "scrollLeft" : "scrollTop"; var d = false; if (a[b] > 0) return true; a[b] = 1; d = a[b] > 0; a[b] = 0; return d
        }, isOverAxis: function (a, b, d) { return a > b && a < b + d }, isOver: function (a, b, d, e, f, g) { return c.ui.isOverAxis(a, d, f) && c.ui.isOverAxis(b, e, g) }, keyCode: { ALT: 18, BACKSPACE: 8, CAPS_LOCK: 20, COMMA: 188, COMMAND: 91, COMMAND_LEFT: 91, COMMAND_RIGHT: 93, CONTROL: 17, DELETE: 46, DOWN: 40, END: 35, ENTER: 13, ESCAPE: 27, HOME: 36, INSERT: 45, LEFT: 37, MENU: 93, NUMPAD_ADD: 107, NUMPAD_DECIMAL: 110, NUMPAD_DIVIDE: 111, NUMPAD_ENTER: 108,
            NUMPAD_MULTIPLY: 106, NUMPAD_SUBTRACT: 109, PAGE_DOWN: 34, PAGE_UP: 33, PERIOD: 190, RIGHT: 39, SHIFT: 16, SPACE: 32, TAB: 9, UP: 38, WINDOWS: 91
        }
        }); c.fn.extend({ _focus: c.fn.focus, focus: function (a, b) { return typeof a === "number" ? this.each(function () { var d = this; setTimeout(function () { c(d).focus(); b && b.call(d) }, a) }) : this._focus.apply(this, arguments) }, enableSelection: function () { return this.attr("unselectable", "off").css("MozUserSelect", "") }, disableSelection: function () {
            return this.attr("unselectable", "on").css("MozUserSelect",
"none")
        }, scrollParent: function () {
            var a; a = c.browser.msie && /(static|relative)/.test(this.css("position")) || /absolute/.test(this.css("position")) ? this.parents().filter(function () { return /(relative|absolute|fixed)/.test(c.curCSS(this, "position", 1)) && /(auto|scroll)/.test(c.curCSS(this, "overflow", 1) + c.curCSS(this, "overflow-y", 1) + c.curCSS(this, "overflow-x", 1)) }).eq(0) : this.parents().filter(function () {
                return /(auto|scroll)/.test(c.curCSS(this, "overflow", 1) + c.curCSS(this, "overflow-y", 1) + c.curCSS(this, "overflow-x",
1))
            }).eq(0); return /fixed/.test(this.css("position")) || !a.length ? c(document) : a
        }, zIndex: function (a) { if (a !== undefined) return this.css("zIndex", a); if (this.length) { a = c(this[0]); for (var b; a.length && a[0] !== document; ) { b = a.css("position"); if (b == "absolute" || b == "relative" || b == "fixed") { b = parseInt(a.css("zIndex")); if (!isNaN(b) && b != 0) return b } a = a.parent() } } return 0 } 
        }); c.extend(c.expr[":"], { data: function (a, b, d) { return !!c.data(a, d[3]) }, focusable: function (a) {
            var b = a.nodeName.toLowerCase(), d = c.attr(a, "tabindex"); return (/input|select|textarea|button|object/.test(b) ?
!a.disabled : "a" == b || "area" == b ? a.href || !isNaN(d) : !isNaN(d)) && !c(a)["area" == b ? "parents" : "closest"](":hidden").length
        }, tabbable: function (a) { var b = c.attr(a, "tabindex"); return (isNaN(b) || b >= 0) && c(a).is(":focusable") } 
        })
    } 
})(jQuery);

(function (b) {
    var j = b.fn.remove; b.fn.remove = function (a, c) { return this.each(function () { if (!c) if (!a || b.filter(a, [this]).length) b("*", this).add(this).each(function () { b(this).triggerHandler("remove") }); return j.call(b(this), a, c) }) }; b.widget = function (a, c, d) {
        var e = a.split(".")[0], f; a = a.split(".")[1]; f = e + "-" + a; if (!d) { d = c; c = b.Widget } b.expr[":"][f] = function (h) { return !!b.data(h, a) }; b[e] = b[e] || {}; b[e][a] = function (h, g) { arguments.length && this._createWidget(h, g) }; c = new c; c.options = b.extend({}, c.options); b[e][a].prototype =
b.extend(true, c, { namespace: e, widgetName: a, widgetEventPrefix: b[e][a].prototype.widgetEventPrefix || a, widgetBaseClass: f }, d); b.widget.bridge(a, b[e][a])
    }; b.widget.bridge = function (a, c) {
        b.fn[a] = function (d) {
            var e = typeof d === "string", f = Array.prototype.slice.call(arguments, 1), h = this; d = !e && f.length ? b.extend.apply(null, [true, d].concat(f)) : d; if (e && d.substring(0, 1) === "_") return h; e ? this.each(function () { var g = b.data(this, a), i = g && b.isFunction(g[d]) ? g[d].apply(g, f) : g; if (i !== g && i !== undefined) { h = i; return false } }) : this.each(function () {
                var g =
b.data(this, a); if (g) { d && g.option(d); g._init() } else b.data(this, a, new c(d, this))
            }); return h
        } 
    }; b.Widget = function (a, c) { arguments.length && this._createWidget(a, c) }; b.Widget.prototype = { widgetName: "widget", widgetEventPrefix: "", options: { disabled: false }, _createWidget: function (a, c) {
        this.element = b(c).data(this.widgetName, this); this.options = b.extend(true, {}, this.options, b.metadata && b.metadata.get(c)[this.widgetName], a); var d = this; this.element.bind("remove." + this.widgetName, function () { d.destroy() }); this._create();
        this._init()
    }, _create: function () { }, _init: function () { }, destroy: function () { this.element.unbind("." + this.widgetName).removeData(this.widgetName); this.widget().unbind("." + this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass + "-disabled ui-state-disabled") }, widget: function () { return this.element }, option: function (a, c) {
        var d = a, e = this; if (arguments.length === 0) return b.extend({}, e.options); if (typeof a === "string") { if (c === undefined) return this.options[a]; d = {}; d[a] = c } b.each(d, function (f,
h) { e._setOption(f, h) }); return e
    }, _setOption: function (a, c) { this.options[a] = c; if (a === "disabled") this.widget()[c ? "addClass" : "removeClass"](this.widgetBaseClass + "-disabled ui-state-disabled").attr("aria-disabled", c); return this }, enable: function () { return this._setOption("disabled", false) }, disable: function () { return this._setOption("disabled", true) }, _trigger: function (a, c, d) {
        var e = this.options[a]; c = b.Event(c); c.type = (a === this.widgetEventPrefix ? a : this.widgetEventPrefix + a).toLowerCase(); d = d || {}; if (c.originalEvent) {
            a =
b.event.props.length; for (var f; a; ) { f = b.event.props[--a]; c[f] = c.originalEvent[f] } 
        } this.element.trigger(c, d); return !(b.isFunction(e) && e.call(this.element[0], c, d) === false || c.isDefaultPrevented())
    } 
    }
})(jQuery);

(function (c) {
    c.widget("ui.mouse", { options: { cancel: ":input,option", distance: 1, delay: 0 }, _mouseInit: function () { var a = this; this.element.bind("mousedown." + this.widgetName, function (b) { return a._mouseDown(b) }).bind("click." + this.widgetName, function (b) { if (a._preventClickEvent) { a._preventClickEvent = false; b.stopImmediatePropagation(); return false } }); this.started = false }, _mouseDestroy: function () { this.element.unbind("." + this.widgetName) }, _mouseDown: function (a) {
        a.originalEvent = a.originalEvent || {}; if (!a.originalEvent.mouseHandled) {
            this._mouseStarted &&
this._mouseUp(a); this._mouseDownEvent = a; var b = this, e = a.which == 1, f = typeof this.options.cancel == "string" ? c(a.target).parents().add(a.target).filter(this.options.cancel).length : false; if (!e || f || !this._mouseCapture(a)) return true; this.mouseDelayMet = !this.options.delay; if (!this.mouseDelayMet) this._mouseDelayTimer = setTimeout(function () { b.mouseDelayMet = true }, this.options.delay); if (this._mouseDistanceMet(a) && this._mouseDelayMet(a)) {
                this._mouseStarted = this._mouseStart(a) !== false; if (!this._mouseStarted) {
                    a.preventDefault();
                    return true
                } 
            } this._mouseMoveDelegate = function (d) { return b._mouseMove(d) }; this._mouseUpDelegate = function (d) { return b._mouseUp(d) }; c(document).bind("mousemove." + this.widgetName, this._mouseMoveDelegate).bind("mouseup." + this.widgetName, this._mouseUpDelegate); c.browser.safari || a.preventDefault(); return a.originalEvent.mouseHandled = true
        } 
    }, _mouseMove: function (a) {
        if (c.browser.msie && !a.button) return this._mouseUp(a); if (this._mouseStarted) { this._mouseDrag(a); return a.preventDefault() } if (this._mouseDistanceMet(a) &&
this._mouseDelayMet(a)) (this._mouseStarted = this._mouseStart(this._mouseDownEvent, a) !== false) ? this._mouseDrag(a) : this._mouseUp(a); return !this._mouseStarted
    }, _mouseUp: function (a) { c(document).unbind("mousemove." + this.widgetName, this._mouseMoveDelegate).unbind("mouseup." + this.widgetName, this._mouseUpDelegate); if (this._mouseStarted) { this._mouseStarted = false; this._preventClickEvent = a.target == this._mouseDownEvent.target; this._mouseStop(a) } return false }, _mouseDistanceMet: function (a) {
        return Math.max(Math.abs(this._mouseDownEvent.pageX -
a.pageX), Math.abs(this._mouseDownEvent.pageY - a.pageY)) >= this.options.distance
    }, _mouseDelayMet: function () { return this.mouseDelayMet }, _mouseStart: function () { }, _mouseDrag: function () { }, _mouseStop: function () { }, _mouseCapture: function () { return true } 
    })
})(jQuery);

(function (c) {
    c.ui = c.ui || {}; var m = /left|center|right/, n = /top|center|bottom/, p = c.fn.position, q = c.fn.offset; c.fn.position = function (a) {
        if (!a || !a.of) return p.apply(this, arguments); a = c.extend({}, a); var b = c(a.of), d = (a.collision || "flip").split(" "), e = a.offset ? a.offset.split(" ") : [0, 0], g, h, i; if (a.of.nodeType === 9) { g = b.width(); h = b.height(); i = { top: 0, left: 0} } else if (a.of.scrollTo && a.of.document) { g = b.width(); h = b.height(); i = { top: b.scrollTop(), left: b.scrollLeft()} } else if (a.of.preventDefault) {
            a.at = "left top"; g = h =
0; i = { top: a.of.pageY, left: a.of.pageX}
        } else { g = b.outerWidth(); h = b.outerHeight(); i = b.offset() } c.each(["my", "at"], function () { var f = (a[this] || "").split(" "); if (f.length === 1) f = m.test(f[0]) ? f.concat(["center"]) : n.test(f[0]) ? ["center"].concat(f) : ["center", "center"]; f[0] = m.test(f[0]) ? f[0] : "center"; f[1] = n.test(f[1]) ? f[1] : "center"; a[this] = f }); if (d.length === 1) d[1] = d[0]; e[0] = parseInt(e[0], 10) || 0; if (e.length === 1) e[1] = e[0]; e[1] = parseInt(e[1], 10) || 0; if (a.at[0] === "right") i.left += g; else if (a.at[0] === "center") i.left +=
g / 2; if (a.at[1] === "bottom") i.top += h; else if (a.at[1] === "center") i.top += h / 2; i.left += e[0]; i.top += e[1]; return this.each(function () {
    var f = c(this), k = f.outerWidth(), l = f.outerHeight(), j = c.extend({}, i); if (a.my[0] === "right") j.left -= k; else if (a.my[0] === "center") j.left -= k / 2; if (a.my[1] === "bottom") j.top -= l; else if (a.my[1] === "center") j.top -= l / 2; j.left = parseInt(j.left); j.top = parseInt(j.top); c.each(["left", "top"], function (o, r) {
        c.ui.position[d[o]] && c.ui.position[d[o]][r](j, { targetWidth: g, targetHeight: h, elemWidth: k,
            elemHeight: l, offset: e, my: a.my, at: a.at
        })
    }); c.fn.bgiframe && f.bgiframe(); f.offset(c.extend(j, { using: a.using }))
})
    }; c.ui.position = { fit: { left: function (a, b) { var d = c(window); b = a.left + b.elemWidth - d.width() - d.scrollLeft(); a.left = b > 0 ? a.left - b : Math.max(0, a.left) }, top: function (a, b) { var d = c(window); b = a.top + b.elemHeight - d.height() - d.scrollTop(); a.top = b > 0 ? a.top - b : Math.max(0, a.top) } }, flip: { left: function (a, b) {
        if (b.at[0] !== "center") {
            var d = c(window); d = a.left + b.elemWidth - d.width() - d.scrollLeft(); var e = b.my[0] === "left" ?
-b.elemWidth : b.my[0] === "right" ? b.elemWidth : 0, g = -2 * b.offset[0]; a.left += a.left < 0 ? e + b.targetWidth + g : d > 0 ? e - b.targetWidth + g : 0
        } 
    }, top: function (a, b) { if (b.at[1] !== "center") { var d = c(window); d = a.top + b.elemHeight - d.height() - d.scrollTop(); var e = b.my[1] === "top" ? -b.elemHeight : b.my[1] === "bottom" ? b.elemHeight : 0, g = b.at[1] === "top" ? b.targetHeight : -b.targetHeight, h = -2 * b.offset[1]; a.top += a.top < 0 ? e + b.targetHeight + h : d > 0 ? e + g + h : 0 } } 
    }
    }; if (!c.offset.setOffset) {
        c.offset.setOffset = function (a, b) {
            if (/static/.test(c.curCSS(a, "position"))) a.style.position =
"relative"; var d = c(a), e = d.offset(), g = parseInt(c.curCSS(a, "top", true), 10) || 0, h = parseInt(c.curCSS(a, "left", true), 10) || 0; e = { top: b.top - e.top + g, left: b.left - e.left + h }; "using" in b ? b.using.call(a, e) : d.css(e)
        }; c.fn.offset = function (a) { var b = this[0]; if (!b || !b.ownerDocument) return null; if (a) return this.each(function () { c.offset.setOffset(this, a) }); return q.call(this) } 
    } 
})(jQuery);

(function (d) {
    d.widget("ui.draggable", d.ui.mouse, { widgetEventPrefix: "drag", options: { addClasses: true, appendTo: "parent", axis: false, connectToSortable: false, containment: false, cursor: "auto", cursorAt: false, grid: false, handle: false, helper: "original", iframeFix: false, opacity: false, refreshPositions: false, revert: false, revertDuration: 500, scope: "default", scroll: true, scrollSensitivity: 20, scrollSpeed: 20, snap: false, snapMode: "both", snapTolerance: 20, stack: false, zIndex: false }, _create: function () {
        if (this.options.helper ==
"original" && !/^(?:r|a|f)/.test(this.element.css("position"))) this.element[0].style.position = "relative"; this.options.addClasses && this.element.addClass("ui-draggable"); this.options.disabled && this.element.addClass("ui-draggable-disabled"); this._mouseInit()
    }, destroy: function () { if (this.element.data("draggable")) { this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"); this._mouseDestroy(); return this } }, _mouseCapture: function (a) {
        var b =
this.options; if (this.helper || b.disabled || d(a.target).is(".ui-resizable-handle")) return false; this.handle = this._getHandle(a); if (!this.handle) return false; return true
    }, _mouseStart: function (a) {
        var b = this.options; this.helper = this._createHelper(a); this._cacheHelperProportions(); if (d.ui.ddmanager) d.ui.ddmanager.current = this; this._cacheMargins(); this.cssPosition = this.helper.css("position"); this.scrollParent = this.helper.scrollParent(); this.offset = this.positionAbs = this.element.offset(); this.offset = { top: this.offset.top -
this.margins.top, left: this.offset.left - this.margins.left
        }; d.extend(this.offset, { click: { left: a.pageX - this.offset.left, top: a.pageY - this.offset.top }, parent: this._getParentOffset(), relative: this._getRelativeOffset() }); this.originalPosition = this.position = this._generatePosition(a); this.originalPageX = a.pageX; this.originalPageY = a.pageY; b.cursorAt && this._adjustOffsetFromHelper(b.cursorAt); b.containment && this._setContainment(); if (this._trigger("start", a) === false) { this._clear(); return false } this._cacheHelperProportions();
        d.ui.ddmanager && !b.dropBehaviour && d.ui.ddmanager.prepareOffsets(this, a); this.helper.addClass("ui-draggable-dragging"); this._mouseDrag(a, true); return true
    }, _mouseDrag: function (a, b) {
        this.position = this._generatePosition(a); this.positionAbs = this._convertPositionTo("absolute"); if (!b) { b = this._uiHash(); if (this._trigger("drag", a, b) === false) { this._mouseUp({}); return false } this.position = b.position } if (!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left + "px"; if (!this.options.axis ||
this.options.axis != "x") this.helper[0].style.top = this.position.top + "px"; d.ui.ddmanager && d.ui.ddmanager.drag(this, a); return false
    }, _mouseStop: function (a) {
        var b = false; if (d.ui.ddmanager && !this.options.dropBehaviour) b = d.ui.ddmanager.drop(this, a); if (this.dropped) { b = this.dropped; this.dropped = false } if (!this.element[0] || !this.element[0].parentNode) return false; if (this.options.revert == "invalid" && !b || this.options.revert == "valid" && b || this.options.revert === true || d.isFunction(this.options.revert) && this.options.revert.call(this.element,
b)) { var c = this; d(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function () { c._trigger("stop", a) !== false && c._clear() }) } else this._trigger("stop", a) !== false && this._clear(); return false
    }, cancel: function () { this.helper.is(".ui-draggable-dragging") ? this._mouseUp({}) : this._clear(); return this }, _getHandle: function (a) {
        var b = !this.options.handle || !d(this.options.handle, this.element).length ? true : false; d(this.options.handle, this.element).find("*").andSelf().each(function () {
            if (this ==
a.target) b = true
        }); return b
    }, _createHelper: function (a) { var b = this.options; a = d.isFunction(b.helper) ? d(b.helper.apply(this.element[0], [a])) : b.helper == "clone" ? this.element.clone() : this.element; a.parents("body").length || a.appendTo(b.appendTo == "parent" ? this.element[0].parentNode : b.appendTo); a[0] != this.element[0] && !/(fixed|absolute)/.test(a.css("position")) && a.css("position", "absolute"); return a }, _adjustOffsetFromHelper: function (a) {
        if (typeof a == "string") a = a.split(" "); if (d.isArray(a)) a = { left: +a[0], top: +a[1] ||
0
        }; if ("left" in a) this.offset.click.left = a.left + this.margins.left; if ("right" in a) this.offset.click.left = this.helperProportions.width - a.right + this.margins.left; if ("top" in a) this.offset.click.top = a.top + this.margins.top; if ("bottom" in a) this.offset.click.top = this.helperProportions.height - a.bottom + this.margins.top
    }, _getParentOffset: function () {
        this.offsetParent = this.helper.offsetParent(); var a = this.offsetParent.offset(); if (this.cssPosition == "absolute" && this.scrollParent[0] != document && d.ui.contains(this.scrollParent[0],
this.offsetParent[0])) { a.left += this.scrollParent.scrollLeft(); a.top += this.scrollParent.scrollTop() } if (this.offsetParent[0] == document.body || this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == "html" && d.browser.msie) a = { top: 0, left: 0 }; return { top: a.top + (parseInt(this.offsetParent.css("borderTopWidth"), 10) || 0), left: a.left + (parseInt(this.offsetParent.css("borderLeftWidth"), 10) || 0)}
    }, _getRelativeOffset: function () {
        if (this.cssPosition == "relative") {
            var a = this.element.position(); return { top: a.top -
(parseInt(this.helper.css("top"), 10) || 0) + this.scrollParent.scrollTop(), left: a.left - (parseInt(this.helper.css("left"), 10) || 0) + this.scrollParent.scrollLeft()
            }
        } else return { top: 0, left: 0}
    }, _cacheMargins: function () { this.margins = { left: parseInt(this.element.css("marginLeft"), 10) || 0, top: parseInt(this.element.css("marginTop"), 10) || 0} }, _cacheHelperProportions: function () { this.helperProportions = { width: this.helper.outerWidth(), height: this.helper.outerHeight()} }, _setContainment: function () {
        var a = this.options; if (a.containment ==
"parent") a.containment = this.helper[0].parentNode; if (a.containment == "document" || a.containment == "window") this.containment = [0 - this.offset.relative.left - this.offset.parent.left, 0 - this.offset.relative.top - this.offset.parent.top, d(a.containment == "document" ? document : window).width() - this.helperProportions.width - this.margins.left, (d(a.containment == "document" ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top]; if (!/^(document|window|parent)$/.test(a.containment) &&
a.containment.constructor != Array) {
            var b = d(a.containment)[0]; if (b) {
                a = d(a.containment).offset(); var c = d(b).css("overflow") != "hidden"; this.containment = [a.left + (parseInt(d(b).css("borderLeftWidth"), 10) || 0) + (parseInt(d(b).css("paddingLeft"), 10) || 0) - this.margins.left, a.top + (parseInt(d(b).css("borderTopWidth"), 10) || 0) + (parseInt(d(b).css("paddingTop"), 10) || 0) - this.margins.top, a.left + (c ? Math.max(b.scrollWidth, b.offsetWidth) : b.offsetWidth) - (parseInt(d(b).css("borderLeftWidth"), 10) || 0) - (parseInt(d(b).css("paddingRight"),
10) || 0) - this.helperProportions.width - this.margins.left, a.top + (c ? Math.max(b.scrollHeight, b.offsetHeight) : b.offsetHeight) - (parseInt(d(b).css("borderTopWidth"), 10) || 0) - (parseInt(d(b).css("paddingBottom"), 10) || 0) - this.helperProportions.height - this.margins.top]
            } 
        } else if (a.containment.constructor == Array) this.containment = a.containment
    }, _convertPositionTo: function (a, b) {
        if (!b) b = this.position; a = a == "absolute" ? 1 : -1; var c = this.cssPosition == "absolute" && !(this.scrollParent[0] != document && d.ui.contains(this.scrollParent[0],
this.offsetParent[0])) ? this.offsetParent : this.scrollParent, f = /(html|body)/i.test(c[0].tagName); return { top: b.top + this.offset.relative.top * a + this.offset.parent.top * a - (d.browser.safari && d.browser.version < 526 && this.cssPosition == "fixed" ? 0 : (this.cssPosition == "fixed" ? -this.scrollParent.scrollTop() : f ? 0 : c.scrollTop()) * a), left: b.left + this.offset.relative.left * a + this.offset.parent.left * a - (d.browser.safari && d.browser.version < 526 && this.cssPosition == "fixed" ? 0 : (this.cssPosition == "fixed" ? -this.scrollParent.scrollLeft() :
f ? 0 : c.scrollLeft()) * a)
}
    }, _generatePosition: function (a) {
        var b = this.options, c = this.cssPosition == "absolute" && !(this.scrollParent[0] != document && d.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, f = /(html|body)/i.test(c[0].tagName), e = a.pageX, g = a.pageY; if (this.originalPosition) {
            if (this.containment) {
                if (a.pageX - this.offset.click.left < this.containment[0]) e = this.containment[0] + this.offset.click.left; if (a.pageY - this.offset.click.top < this.containment[1]) g = this.containment[1] +
this.offset.click.top; if (a.pageX - this.offset.click.left > this.containment[2]) e = this.containment[2] + this.offset.click.left; if (a.pageY - this.offset.click.top > this.containment[3]) g = this.containment[3] + this.offset.click.top
            } if (b.grid) {
                g = this.originalPageY + Math.round((g - this.originalPageY) / b.grid[1]) * b.grid[1]; g = this.containment ? !(g - this.offset.click.top < this.containment[1] || g - this.offset.click.top > this.containment[3]) ? g : !(g - this.offset.click.top < this.containment[1]) ? g - b.grid[1] : g + b.grid[1] : g; e = this.originalPageX +
Math.round((e - this.originalPageX) / b.grid[0]) * b.grid[0]; e = this.containment ? !(e - this.offset.click.left < this.containment[0] || e - this.offset.click.left > this.containment[2]) ? e : !(e - this.offset.click.left < this.containment[0]) ? e - b.grid[0] : e + b.grid[0] : e
            } 
        } return { top: g - this.offset.click.top - this.offset.relative.top - this.offset.parent.top + (d.browser.safari && d.browser.version < 526 && this.cssPosition == "fixed" ? 0 : this.cssPosition == "fixed" ? -this.scrollParent.scrollTop() : f ? 0 : c.scrollTop()), left: e - this.offset.click.left -
this.offset.relative.left - this.offset.parent.left + (d.browser.safari && d.browser.version < 526 && this.cssPosition == "fixed" ? 0 : this.cssPosition == "fixed" ? -this.scrollParent.scrollLeft() : f ? 0 : c.scrollLeft())
        }
    }, _clear: function () { this.helper.removeClass("ui-draggable-dragging"); this.helper[0] != this.element[0] && !this.cancelHelperRemoval && this.helper.remove(); this.helper = null; this.cancelHelperRemoval = false }, _trigger: function (a, b, c) {
        c = c || this._uiHash(); d.ui.plugin.call(this, a, [b, c]); if (a == "drag") this.positionAbs =
this._convertPositionTo("absolute"); return d.Widget.prototype._trigger.call(this, a, b, c)
    }, plugins: {}, _uiHash: function () { return { helper: this.helper, position: this.position, originalPosition: this.originalPosition, offset: this.positionAbs} } 
    }); d.extend(d.ui.draggable, { version: "1.8.2" }); d.ui.plugin.add("draggable", "connectToSortable", { start: function (a, b) {
        var c = d(this).data("draggable"), f = c.options, e = d.extend({}, b, { item: c.element }); c.sortables = []; d(f.connectToSortable).each(function () {
            var g = d.data(this, "sortable");
            if (g && !g.options.disabled) { c.sortables.push({ instance: g, shouldRevert: g.options.revert }); g._refreshItems(); g._trigger("activate", a, e) } 
        })
    }, stop: function (a, b) {
        var c = d(this).data("draggable"), f = d.extend({}, b, { item: c.element }); d.each(c.sortables, function () {
            if (this.instance.isOver) {
                this.instance.isOver = 0; c.cancelHelperRemoval = true; this.instance.cancelHelperRemoval = false; if (this.shouldRevert) this.instance.options.revert = true; this.instance._mouseStop(a); this.instance.options.helper = this.instance.options._helper;
                c.options.helper == "original" && this.instance.currentItem.css({ top: "auto", left: "auto" })
            } else { this.instance.cancelHelperRemoval = false; this.instance._trigger("deactivate", a, f) } 
        })
    }, drag: function (a, b) {
        var c = d(this).data("draggable"), f = this; d.each(c.sortables, function () {
            this.instance.positionAbs = c.positionAbs; this.instance.helperProportions = c.helperProportions; this.instance.offset.click = c.offset.click; if (this.instance._intersectsWith(this.instance.containerCache)) {
                if (!this.instance.isOver) {
                    this.instance.isOver =
1; this.instance.currentItem = d(f).clone().appendTo(this.instance.element).data("sortable-item", true); this.instance.options._helper = this.instance.options.helper; this.instance.options.helper = function () { return b.helper[0] }; a.target = this.instance.currentItem[0]; this.instance._mouseCapture(a, true); this.instance._mouseStart(a, true, true); this.instance.offset.click.top = c.offset.click.top; this.instance.offset.click.left = c.offset.click.left; this.instance.offset.parent.left -= c.offset.parent.left - this.instance.offset.parent.left;
                    this.instance.offset.parent.top -= c.offset.parent.top - this.instance.offset.parent.top; c._trigger("toSortable", a); c.dropped = this.instance.element; c.currentItem = c.element; this.instance.fromOutside = c
                } this.instance.currentItem && this.instance._mouseDrag(a)
            } else if (this.instance.isOver) {
                this.instance.isOver = 0; this.instance.cancelHelperRemoval = true; this.instance.options.revert = false; this.instance._trigger("out", a, this.instance._uiHash(this.instance)); this.instance._mouseStop(a, true); this.instance.options.helper =
this.instance.options._helper; this.instance.currentItem.remove(); this.instance.placeholder && this.instance.placeholder.remove(); c._trigger("fromSortable", a); c.dropped = false
            } 
        })
    } 
    }); d.ui.plugin.add("draggable", "cursor", { start: function () { var a = d("body"), b = d(this).data("draggable").options; if (a.css("cursor")) b._cursor = a.css("cursor"); a.css("cursor", b.cursor) }, stop: function () { var a = d(this).data("draggable").options; a._cursor && d("body").css("cursor", a._cursor) } }); d.ui.plugin.add("draggable", "iframeFix", { start: function () {
        var a =
d(this).data("draggable").options; d(a.iframeFix === true ? "iframe" : a.iframeFix).each(function () { d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({ width: this.offsetWidth + "px", height: this.offsetHeight + "px", position: "absolute", opacity: "0.001", zIndex: 1E3 }).css(d(this).offset()).appendTo("body") })
    }, stop: function () { d("div.ui-draggable-iframeFix").each(function () { this.parentNode.removeChild(this) }) } 
    }); d.ui.plugin.add("draggable", "opacity", { start: function (a, b) {
        a = d(b.helper); b = d(this).data("draggable").options;
        if (a.css("opacity")) b._opacity = a.css("opacity"); a.css("opacity", b.opacity)
    }, stop: function (a, b) { a = d(this).data("draggable").options; a._opacity && d(b.helper).css("opacity", a._opacity) } 
    }); d.ui.plugin.add("draggable", "scroll", { start: function () { var a = d(this).data("draggable"); if (a.scrollParent[0] != document && a.scrollParent[0].tagName != "HTML") a.overflowOffset = a.scrollParent.offset() }, drag: function (a) {
        var b = d(this).data("draggable"), c = b.options, f = false; if (b.scrollParent[0] != document && b.scrollParent[0].tagName !=
"HTML") {
            if (!c.axis || c.axis != "x") if (b.overflowOffset.top + b.scrollParent[0].offsetHeight - a.pageY < c.scrollSensitivity) b.scrollParent[0].scrollTop = f = b.scrollParent[0].scrollTop + c.scrollSpeed; else if (a.pageY - b.overflowOffset.top < c.scrollSensitivity) b.scrollParent[0].scrollTop = f = b.scrollParent[0].scrollTop - c.scrollSpeed; if (!c.axis || c.axis != "y") if (b.overflowOffset.left + b.scrollParent[0].offsetWidth - a.pageX < c.scrollSensitivity) b.scrollParent[0].scrollLeft = f = b.scrollParent[0].scrollLeft + c.scrollSpeed; else if (a.pageX -
b.overflowOffset.left < c.scrollSensitivity) b.scrollParent[0].scrollLeft = f = b.scrollParent[0].scrollLeft - c.scrollSpeed
        } else {
            if (!c.axis || c.axis != "x") if (a.pageY - d(document).scrollTop() < c.scrollSensitivity) f = d(document).scrollTop(d(document).scrollTop() - c.scrollSpeed); else if (d(window).height() - (a.pageY - d(document).scrollTop()) < c.scrollSensitivity) f = d(document).scrollTop(d(document).scrollTop() + c.scrollSpeed); if (!c.axis || c.axis != "y") if (a.pageX - d(document).scrollLeft() < c.scrollSensitivity) f = d(document).scrollLeft(d(document).scrollLeft() -
c.scrollSpeed); else if (d(window).width() - (a.pageX - d(document).scrollLeft()) < c.scrollSensitivity) f = d(document).scrollLeft(d(document).scrollLeft() + c.scrollSpeed)
        } f !== false && d.ui.ddmanager && !c.dropBehaviour && d.ui.ddmanager.prepareOffsets(b, a)
    } 
    }); d.ui.plugin.add("draggable", "snap", { start: function () {
        var a = d(this).data("draggable"), b = a.options; a.snapElements = []; d(b.snap.constructor != String ? b.snap.items || ":data(draggable)" : b.snap).each(function () {
            var c = d(this), f = c.offset(); this != a.element[0] && a.snapElements.push({ item: this,
                width: c.outerWidth(), height: c.outerHeight(), top: f.top, left: f.left
            })
        })
    }, drag: function (a, b) {
        for (var c = d(this).data("draggable"), f = c.options, e = f.snapTolerance, g = b.offset.left, n = g + c.helperProportions.width, m = b.offset.top, o = m + c.helperProportions.height, h = c.snapElements.length - 1; h >= 0; h--) {
            var i = c.snapElements[h].left, k = i + c.snapElements[h].width, j = c.snapElements[h].top, l = j + c.snapElements[h].height; if (i - e < g && g < k + e && j - e < m && m < l + e || i - e < g && g < k + e && j - e < o && o < l + e || i - e < n && n < k + e && j - e < m && m < l + e || i - e < n && n < k + e && j - e < o &&
o < l + e) {
                if (f.snapMode != "inner") { var p = Math.abs(j - o) <= e, q = Math.abs(l - m) <= e, r = Math.abs(i - n) <= e, s = Math.abs(k - g) <= e; if (p) b.position.top = c._convertPositionTo("relative", { top: j - c.helperProportions.height, left: 0 }).top - c.margins.top; if (q) b.position.top = c._convertPositionTo("relative", { top: l, left: 0 }).top - c.margins.top; if (r) b.position.left = c._convertPositionTo("relative", { top: 0, left: i - c.helperProportions.width }).left - c.margins.left; if (s) b.position.left = c._convertPositionTo("relative", { top: 0, left: k }).left - c.margins.left } var t =
p || q || r || s; if (f.snapMode != "outer") { p = Math.abs(j - m) <= e; q = Math.abs(l - o) <= e; r = Math.abs(i - g) <= e; s = Math.abs(k - n) <= e; if (p) b.position.top = c._convertPositionTo("relative", { top: j, left: 0 }).top - c.margins.top; if (q) b.position.top = c._convertPositionTo("relative", { top: l - c.helperProportions.height, left: 0 }).top - c.margins.top; if (r) b.position.left = c._convertPositionTo("relative", { top: 0, left: i }).left - c.margins.left; if (s) b.position.left = c._convertPositionTo("relative", { top: 0, left: k - c.helperProportions.width }).left - c.margins.left } if (!c.snapElements[h].snapping &&
(p || q || r || s || t)) c.options.snap.snap && c.options.snap.snap.call(c.element, a, d.extend(c._uiHash(), { snapItem: c.snapElements[h].item })); c.snapElements[h].snapping = p || q || r || s || t
            } else { c.snapElements[h].snapping && c.options.snap.release && c.options.snap.release.call(c.element, a, d.extend(c._uiHash(), { snapItem: c.snapElements[h].item })); c.snapElements[h].snapping = false } 
        } 
    } 
    }); d.ui.plugin.add("draggable", "stack", { start: function () {
        var a = d(this).data("draggable").options; a = d.makeArray(d(a.stack)).sort(function (c, f) {
            return (parseInt(d(c).css("zIndex"),
10) || 0) - (parseInt(d(f).css("zIndex"), 10) || 0)
        }); if (a.length) { var b = parseInt(a[0].style.zIndex) || 0; d(a).each(function (c) { this.style.zIndex = b + c }); this[0].style.zIndex = b + a.length } 
    } 
    }); d.ui.plugin.add("draggable", "zIndex", { start: function (a, b) { a = d(b.helper); b = d(this).data("draggable").options; if (a.css("zIndex")) b._zIndex = a.css("zIndex"); a.css("zIndex", b.zIndex) }, stop: function (a, b) { a = d(this).data("draggable").options; a._zIndex && d(b.helper).css("zIndex", a._zIndex) } })
})(jQuery);

(function (d) {
    d.widget("ui.resizable", d.ui.mouse, { widgetEventPrefix: "resize", options: { alsoResize: false, animate: false, animateDuration: "slow", animateEasing: "swing", aspectRatio: false, autoHide: false, containment: false, ghost: false, grid: false, handles: "e,s,se", helper: false, maxHeight: null, maxWidth: null, minHeight: 10, minWidth: 10, zIndex: 1E3 }, _create: function () {
        var b = this, a = this.options; this.element.addClass("ui-resizable"); d.extend(this, { _aspectRatio: !!a.aspectRatio, aspectRatio: a.aspectRatio, originalElement: this.element,
            _proportionallyResizeElements: [], _helper: a.helper || a.ghost || a.animate ? a.helper || "ui-resizable-helper" : null
        }); if (this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)) {
            /relative/.test(this.element.css("position")) && d.browser.opera && this.element.css({ position: "relative", top: "auto", left: "auto" }); this.element.wrap(d('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({ position: this.element.css("position"), width: this.element.outerWidth(), height: this.element.outerHeight(),
                top: this.element.css("top"), left: this.element.css("left")
            })); this.element = this.element.parent().data("resizable", this.element.data("resizable")); this.elementIsWrapper = true; this.element.css({ marginLeft: this.originalElement.css("marginLeft"), marginTop: this.originalElement.css("marginTop"), marginRight: this.originalElement.css("marginRight"), marginBottom: this.originalElement.css("marginBottom") }); this.originalElement.css({ marginLeft: 0, marginTop: 0, marginRight: 0, marginBottom: 0 }); this.originalResizeStyle =
this.originalElement.css("resize"); this.originalElement.css("resize", "none"); this._proportionallyResizeElements.push(this.originalElement.css({ position: "static", zoom: 1, display: "block" })); this.originalElement.css({ margin: this.originalElement.css("margin") }); this._proportionallyResize()
        } this.handles = a.handles || (!d(".ui-resizable-handle", this.element).length ? "e,s,se" : { n: ".ui-resizable-n", e: ".ui-resizable-e", s: ".ui-resizable-s", w: ".ui-resizable-w", se: ".ui-resizable-se", sw: ".ui-resizable-sw", ne: ".ui-resizable-ne",
            nw: ".ui-resizable-nw"
        }); if (this.handles.constructor == String) { if (this.handles == "all") this.handles = "n,e,s,w,se,sw,ne,nw"; var c = this.handles.split(","); this.handles = {}; for (var e = 0; e < c.length; e++) { var g = d.trim(c[e]), f = d('<div class="ui-resizable-handle ' + ("ui-resizable-" + g) + '"></div>'); /sw|se|ne|nw/.test(g) && f.css({ zIndex: ++a.zIndex }); "se" == g && f.addClass("ui-icon ui-icon-gripsmall-diagonal-se"); this.handles[g] = ".ui-resizable-" + g; this.element.append(f) } } this._renderAxis = function (h) {
            h = h || this.element; for (var i in this.handles) {
                if (this.handles[i].constructor ==
String) this.handles[i] = d(this.handles[i], this.element).show(); if (this.elementIsWrapper && this.originalElement[0].nodeName.match(/textarea|input|select|button/i)) { var j = d(this.handles[i], this.element), l = 0; l = /sw|ne|nw|se|n|s/.test(i) ? j.outerHeight() : j.outerWidth(); j = ["padding", /ne|nw|n/.test(i) ? "Top" : /se|sw|s/.test(i) ? "Bottom" : /^e$/.test(i) ? "Right" : "Left"].join(""); h.css(j, l); this._proportionallyResize() } d(this.handles[i])
            } 
        }; this._renderAxis(this.element); this._handles = d(".ui-resizable-handle", this.element).disableSelection();
        this._handles.mouseover(function () { if (!b.resizing) { if (this.className) var h = this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i); b.axis = h && h[1] ? h[1] : "se" } }); if (a.autoHide) { this._handles.hide(); d(this.element).addClass("ui-resizable-autohide").hover(function () { d(this).removeClass("ui-resizable-autohide"); b._handles.show() }, function () { if (!b.resizing) { d(this).addClass("ui-resizable-autohide"); b._handles.hide() } }) } this._mouseInit()
    }, destroy: function () {
        this._mouseDestroy(); var b = function (c) { d(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove() };
        if (this.elementIsWrapper) { b(this.element); var a = this.element; a.after(this.originalElement.css({ position: a.css("position"), width: a.outerWidth(), height: a.outerHeight(), top: a.css("top"), left: a.css("left") })).remove() } this.originalElement.css("resize", this.originalResizeStyle); b(this.originalElement); return this
    }, _mouseCapture: function (b) { var a = false; for (var c in this.handles) if (d(this.handles[c])[0] == b.target) a = true; return !this.options.disabled && a }, _mouseStart: function (b) {
        var a = this.options, c = this.element.position(),
e = this.element; this.resizing = true; this.documentScroll = { top: d(document).scrollTop(), left: d(document).scrollLeft() }; if (e.is(".ui-draggable") || /absolute/.test(e.css("position"))) e.css({ position: "absolute", top: c.top, left: c.left }); d.browser.opera && /relative/.test(e.css("position")) && e.css({ position: "relative", top: "auto", left: "auto" }); this._renderProxy(); c = m(this.helper.css("left")); var g = m(this.helper.css("top")); if (a.containment) { c += d(a.containment).scrollLeft() || 0; g += d(a.containment).scrollTop() || 0 } this.offset =
this.helper.offset(); this.position = { left: c, top: g }; this.size = this._helper ? { width: e.outerWidth(), height: e.outerHeight()} : { width: e.width(), height: e.height() }; this.originalSize = this._helper ? { width: e.outerWidth(), height: e.outerHeight()} : { width: e.width(), height: e.height() }; this.originalPosition = { left: c, top: g }; this.sizeDiff = { width: e.outerWidth() - e.width(), height: e.outerHeight() - e.height() }; this.originalMousePosition = { left: b.pageX, top: b.pageY }; this.aspectRatio = typeof a.aspectRatio == "number" ? a.aspectRatio :
this.originalSize.width / this.originalSize.height || 1; a = d(".ui-resizable-" + this.axis).css("cursor"); d("body").css("cursor", a == "auto" ? this.axis + "-resize" : a); e.addClass("ui-resizable-resizing"); this._propagate("start", b); return true
    }, _mouseDrag: function (b) {
        var a = this.helper, c = this.originalMousePosition, e = this._change[this.axis]; if (!e) return false; c = e.apply(this, [b, b.pageX - c.left || 0, b.pageY - c.top || 0]); if (this._aspectRatio || b.shiftKey) c = this._updateRatio(c, b); c = this._respectSize(c, b); this._propagate("resize",
b); a.css({ top: this.position.top + "px", left: this.position.left + "px", width: this.size.width + "px", height: this.size.height + "px" }); !this._helper && this._proportionallyResizeElements.length && this._proportionallyResize(); this._updateCache(c); this._trigger("resize", b, this.ui()); return false
    }, _mouseStop: function (b) {
        this.resizing = false; var a = this.options, c = this; if (this._helper) {
            var e = this._proportionallyResizeElements, g = e.length && /textarea/i.test(e[0].nodeName); e = g && d.ui.hasScroll(e[0], "left") ? 0 : c.sizeDiff.height;
            g = { width: c.size.width - (g ? 0 : c.sizeDiff.width), height: c.size.height - e }; e = parseInt(c.element.css("left"), 10) + (c.position.left - c.originalPosition.left) || null; var f = parseInt(c.element.css("top"), 10) + (c.position.top - c.originalPosition.top) || null; a.animate || this.element.css(d.extend(g, { top: f, left: e })); c.helper.height(c.size.height); c.helper.width(c.size.width); this._helper && !a.animate && this._proportionallyResize()
        } d("body").css("cursor", "auto"); this.element.removeClass("ui-resizable-resizing"); this._propagate("stop",
b); this._helper && this.helper.remove(); return false
    }, _updateCache: function (b) { this.offset = this.helper.offset(); if (k(b.left)) this.position.left = b.left; if (k(b.top)) this.position.top = b.top; if (k(b.height)) this.size.height = b.height; if (k(b.width)) this.size.width = b.width }, _updateRatio: function (b) {
        var a = this.position, c = this.size, e = this.axis; if (b.height) b.width = c.height * this.aspectRatio; else if (b.width) b.height = c.width / this.aspectRatio; if (e == "sw") { b.left = a.left + (c.width - b.width); b.top = null } if (e == "nw") {
            b.top =
a.top + (c.height - b.height); b.left = a.left + (c.width - b.width)
        } return b
    }, _respectSize: function (b) {
        var a = this.options, c = this.axis, e = k(b.width) && a.maxWidth && a.maxWidth < b.width, g = k(b.height) && a.maxHeight && a.maxHeight < b.height, f = k(b.width) && a.minWidth && a.minWidth > b.width, h = k(b.height) && a.minHeight && a.minHeight > b.height; if (f) b.width = a.minWidth; if (h) b.height = a.minHeight; if (e) b.width = a.maxWidth; if (g) b.height = a.maxHeight; var i = this.originalPosition.left + this.originalSize.width, j = this.position.top + this.size.height,
l = /sw|nw|w/.test(c); c = /nw|ne|n/.test(c); if (f && l) b.left = i - a.minWidth; if (e && l) b.left = i - a.maxWidth; if (h && c) b.top = j - a.minHeight; if (g && c) b.top = j - a.maxHeight; if ((a = !b.width && !b.height) && !b.left && b.top) b.top = null; else if (a && !b.top && b.left) b.left = null; return b
    }, _proportionallyResize: function () {
        if (this._proportionallyResizeElements.length) for (var b = this.helper || this.element, a = 0; a < this._proportionallyResizeElements.length; a++) {
            var c = this._proportionallyResizeElements[a]; if (!this.borderDif) {
                var e = [c.css("borderTopWidth"),
c.css("borderRightWidth"), c.css("borderBottomWidth"), c.css("borderLeftWidth")], g = [c.css("paddingTop"), c.css("paddingRight"), c.css("paddingBottom"), c.css("paddingLeft")]; this.borderDif = d.map(e, function (f, h) { f = parseInt(f, 10) || 0; h = parseInt(g[h], 10) || 0; return f + h })
            } d.browser.msie && (d(b).is(":hidden") || d(b).parents(":hidden").length) || c.css({ height: b.height() - this.borderDif[0] - this.borderDif[2] || 0, width: b.width() - this.borderDif[1] - this.borderDif[3] || 0 })
        } 
    }, _renderProxy: function () {
        var b = this.options; this.elementOffset =
this.element.offset(); if (this._helper) { this.helper = this.helper || d('<div style="overflow:hidden;"></div>'); var a = d.browser.msie && d.browser.version < 7, c = a ? 1 : 0; a = a ? 2 : -1; this.helper.addClass(this._helper).css({ width: this.element.outerWidth() + a, height: this.element.outerHeight() + a, position: "absolute", left: this.elementOffset.left - c + "px", top: this.elementOffset.top - c + "px", zIndex: ++b.zIndex }); this.helper.appendTo("body").disableSelection() } else this.helper = this.element
    }, _change: { e: function (b, a) {
        return { width: this.originalSize.width +
a
        }
    }, w: function (b, a) { return { left: this.originalPosition.left + a, width: this.originalSize.width - a} }, n: function (b, a, c) { return { top: this.originalPosition.top + c, height: this.originalSize.height - c} }, s: function (b, a, c) { return { height: this.originalSize.height + c} }, se: function (b, a, c) { return d.extend(this._change.s.apply(this, arguments), this._change.e.apply(this, [b, a, c])) }, sw: function (b, a, c) { return d.extend(this._change.s.apply(this, arguments), this._change.w.apply(this, [b, a, c])) }, ne: function (b, a, c) {
        return d.extend(this._change.n.apply(this,
arguments), this._change.e.apply(this, [b, a, c]))
    }, nw: function (b, a, c) { return d.extend(this._change.n.apply(this, arguments), this._change.w.apply(this, [b, a, c])) } 
    }, _propagate: function (b, a) { d.ui.plugin.call(this, b, [a, this.ui()]); b != "resize" && this._trigger(b, a, this.ui()) }, plugins: {}, ui: function () { return { originalElement: this.originalElement, element: this.element, helper: this.helper, position: this.position, size: this.size, originalSize: this.originalSize, originalPosition: this.originalPosition} } 
    }); d.extend(d.ui.resizable,
{ version: "1.8.2" }); d.ui.plugin.add("resizable", "alsoResize", { start: function () {
    var b = d(this).data("resizable").options, a = function (c) { d(c).each(function () { d(this).data("resizable-alsoresize", { width: parseInt(d(this).width(), 10), height: parseInt(d(this).height(), 10), left: parseInt(d(this).css("left"), 10), top: parseInt(d(this).css("top"), 10) }) }) }; if (typeof b.alsoResize == "object" && !b.alsoResize.parentNode) if (b.alsoResize.length) { b.alsoResize = b.alsoResize[0]; a(b.alsoResize) } else d.each(b.alsoResize, function (c) { a(c) });
    else a(b.alsoResize)
}, resize: function () {
    var b = d(this).data("resizable"), a = b.options, c = b.originalSize, e = b.originalPosition, g = { height: b.size.height - c.height || 0, width: b.size.width - c.width || 0, top: b.position.top - e.top || 0, left: b.position.left - e.left || 0 }, f = function (h, i) {
        d(h).each(function () {
            var j = d(this), l = d(this).data("resizable-alsoresize"), p = {}; d.each((i && i.length ? i : ["width", "height", "top", "left"]) || ["width", "height", "top", "left"], function (n, o) { if ((n = (l[o] || 0) + (g[o] || 0)) && n >= 0) p[o] = n || null }); if (/relative/.test(j.css("position")) &&
d.browser.opera) { b._revertToRelativePosition = true; j.css({ position: "absolute", top: "auto", left: "auto" }) } j.css(p)
        })
    }; typeof a.alsoResize == "object" && !a.alsoResize.nodeType ? d.each(a.alsoResize, function (h, i) { f(h, i) }) : f(a.alsoResize)
}, stop: function () { var b = d(this).data("resizable"); if (b._revertToRelativePosition && d.browser.opera) { b._revertToRelativePosition = false; el.css({ position: "relative" }) } d(this).removeData("resizable-alsoresize-start") } 
}); d.ui.plugin.add("resizable", "animate", { stop: function (b) {
    var a =
d(this).data("resizable"), c = a.options, e = a._proportionallyResizeElements, g = e.length && /textarea/i.test(e[0].nodeName), f = g && d.ui.hasScroll(e[0], "left") ? 0 : a.sizeDiff.height; g = { width: a.size.width - (g ? 0 : a.sizeDiff.width), height: a.size.height - f }; f = parseInt(a.element.css("left"), 10) + (a.position.left - a.originalPosition.left) || null; var h = parseInt(a.element.css("top"), 10) + (a.position.top - a.originalPosition.top) || null; a.element.animate(d.extend(g, h && f ? { top: h, left: f} : {}), { duration: c.animateDuration, easing: c.animateEasing,
    step: function () { var i = { width: parseInt(a.element.css("width"), 10), height: parseInt(a.element.css("height"), 10), top: parseInt(a.element.css("top"), 10), left: parseInt(a.element.css("left"), 10) }; e && e.length && d(e[0]).css({ width: i.width, height: i.height }); a._updateCache(i); a._propagate("resize", b) } 
})
} 
}); d.ui.plugin.add("resizable", "containment", { start: function () {
    var b = d(this).data("resizable"), a = b.element, c = b.options.containment; if (a = c instanceof d ? c.get(0) : /parent/.test(c) ? a.parent().get(0) : c) {
        b.containerElement =
d(a); if (/document/.test(c) || c == document) { b.containerOffset = { left: 0, top: 0 }; b.containerPosition = { left: 0, top: 0 }; b.parentData = { element: d(document), left: 0, top: 0, width: d(document).width(), height: d(document).height() || document.body.parentNode.scrollHeight} } else {
            var e = d(a), g = []; d(["Top", "Right", "Left", "Bottom"]).each(function (i, j) { g[i] = m(e.css("padding" + j)) }); b.containerOffset = e.offset(); b.containerPosition = e.position(); b.containerSize = { height: e.innerHeight() - g[3], width: e.innerWidth() - g[1] }; c = b.containerOffset;
            var f = b.containerSize.height, h = b.containerSize.width; h = d.ui.hasScroll(a, "left") ? a.scrollWidth : h; f = d.ui.hasScroll(a) ? a.scrollHeight : f; b.parentData = { element: a, left: c.left, top: c.top, width: h, height: f}
        } 
    } 
}, resize: function (b) {
    var a = d(this).data("resizable"), c = a.options, e = a.containerOffset, g = a.position; b = a._aspectRatio || b.shiftKey; var f = { top: 0, left: 0 }, h = a.containerElement; if (h[0] != document && /static/.test(h.css("position"))) f = e; if (g.left < (a._helper ? e.left : 0)) {
        a.size.width += a._helper ? a.position.left - e.left :
a.position.left - f.left; if (b) a.size.height = a.size.width / c.aspectRatio; a.position.left = c.helper ? e.left : 0
    } if (g.top < (a._helper ? e.top : 0)) { a.size.height += a._helper ? a.position.top - e.top : a.position.top; if (b) a.size.width = a.size.height * c.aspectRatio; a.position.top = a._helper ? e.top : 0 } a.offset.left = a.parentData.left + a.position.left; a.offset.top = a.parentData.top + a.position.top; c = Math.abs((a._helper ? a.offset.left - f.left : a.offset.left - f.left) + a.sizeDiff.width); e = Math.abs((a._helper ? a.offset.top - f.top : a.offset.top -
e.top) + a.sizeDiff.height); g = a.containerElement.get(0) == a.element.parent().get(0); f = /relative|absolute/.test(a.containerElement.css("position")); if (g && f) c -= a.parentData.left; if (c + a.size.width >= a.parentData.width) { a.size.width = a.parentData.width - c; if (b) a.size.height = a.size.width / a.aspectRatio } if (e + a.size.height >= a.parentData.height) { a.size.height = a.parentData.height - e; if (b) a.size.width = a.size.height * a.aspectRatio } 
}, stop: function () {
    var b = d(this).data("resizable"), a = b.options, c = b.containerOffset, e = b.containerPosition,
g = b.containerElement, f = d(b.helper), h = f.offset(), i = f.outerWidth() - b.sizeDiff.width; f = f.outerHeight() - b.sizeDiff.height; b._helper && !a.animate && /relative/.test(g.css("position")) && d(this).css({ left: h.left - e.left - c.left, width: i, height: f }); b._helper && !a.animate && /static/.test(g.css("position")) && d(this).css({ left: h.left - e.left - c.left, width: i, height: f })
} 
}); d.ui.plugin.add("resizable", "ghost", { start: function () {
    var b = d(this).data("resizable"), a = b.options, c = b.size; b.ghost = b.originalElement.clone(); b.ghost.css({ opacity: 0.25,
        display: "block", position: "relative", height: c.height, width: c.width, margin: 0, left: 0, top: 0
    }).addClass("ui-resizable-ghost").addClass(typeof a.ghost == "string" ? a.ghost : ""); b.ghost.appendTo(b.helper)
}, resize: function () { var b = d(this).data("resizable"); b.ghost && b.ghost.css({ position: "relative", height: b.size.height, width: b.size.width }) }, stop: function () { var b = d(this).data("resizable"); b.ghost && b.helper && b.helper.get(0).removeChild(b.ghost.get(0)) } 
}); d.ui.plugin.add("resizable", "grid", { resize: function () {
    var b =
d(this).data("resizable"), a = b.options, c = b.size, e = b.originalSize, g = b.originalPosition, f = b.axis; a.grid = typeof a.grid == "number" ? [a.grid, a.grid] : a.grid; var h = Math.round((c.width - e.width) / (a.grid[0] || 1)) * (a.grid[0] || 1); a = Math.round((c.height - e.height) / (a.grid[1] || 1)) * (a.grid[1] || 1); if (/^(se|s|e)$/.test(f)) { b.size.width = e.width + h; b.size.height = e.height + a } else if (/^(ne)$/.test(f)) { b.size.width = e.width + h; b.size.height = e.height + a; b.position.top = g.top - a } else {
        if (/^(sw)$/.test(f)) {
            b.size.width = e.width + h; b.size.height =
e.height + a
        } else { b.size.width = e.width + h; b.size.height = e.height + a; b.position.top = g.top - a } b.position.left = g.left - h
    } 
} 
}); var m = function (b) { return parseInt(b, 10) || 0 }, k = function (b) { return !isNaN(parseInt(b, 10)) } 
})(jQuery);
(function (c) {
    c.widget("ui.accordion", { options: { active: 0, animated: "slide", autoHeight: true, clearStyle: false, collapsible: false, event: "click", fillSpace: false, header: "> li > :first-child,> :not(li):even", icons: { header: "ui-icon-triangle-1-e", headerSelected: "ui-icon-triangle-1-s" }, navigation: false, navigationFilter: function () { return this.href.toLowerCase() == location.href.toLowerCase() } }, _create: function () {
        var a = this.options, b = this; this.running = 0; this.element.addClass("ui-accordion ui-widget ui-helper-reset");
        this.element.children("li").addClass("ui-accordion-li-fix"); this.headers = this.element.find(a.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion", function () { c(this).addClass("ui-state-hover") }).bind("mouseleave.accordion", function () { c(this).removeClass("ui-state-hover") }).bind("focus.accordion", function () { c(this).addClass("ui-state-focus") }).bind("blur.accordion", function () { c(this).removeClass("ui-state-focus") }); this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
        if (a.navigation) { var d = this.element.find("a").filter(a.navigationFilter); if (d.length) { var f = d.closest(".ui-accordion-header"); this.active = f.length ? f : d.closest(".ui-accordion-content").prev() } } this.active = this._findActive(this.active || a.active).toggleClass("ui-state-default").toggleClass("ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top"); this.active.next().addClass("ui-accordion-content-active"); this._createIcons(); this.resize(); this.element.attr("role", "tablist"); this.headers.attr("role",
"tab").bind("keydown", function (g) { return b._keydown(g) }).next().attr("role", "tabpanel"); this.headers.not(this.active || "").attr("aria-expanded", "false").attr("tabIndex", "-1").next().hide(); this.active.length ? this.active.attr("aria-expanded", "true").attr("tabIndex", "0") : this.headers.eq(0).attr("tabIndex", "0"); c.browser.safari || this.headers.find("a").attr("tabIndex", "-1"); a.event && this.headers.bind(a.event + ".accordion", function (g) { b._clickHandler.call(b, g, this); g.preventDefault() })
    }, _createIcons: function () {
        var a =
this.options; if (a.icons) { c("<span/>").addClass("ui-icon " + a.icons.header).prependTo(this.headers); this.active.find(".ui-icon").toggleClass(a.icons.header).toggleClass(a.icons.headerSelected); this.element.addClass("ui-accordion-icons") } 
    }, _destroyIcons: function () { this.headers.children(".ui-icon").remove(); this.element.removeClass("ui-accordion-icons") }, destroy: function () {
        var a = this.options; this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role").unbind(".accordion").removeData("accordion");
        this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("tabIndex"); this.headers.find("a").removeAttr("tabIndex"); this._destroyIcons(); var b = this.headers.next().css("display", "").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active"); if (a.autoHeight || a.fillHeight) b.css("height",
""); return this
    }, _setOption: function (a, b) { c.Widget.prototype._setOption.apply(this, arguments); a == "active" && this.activate(b); if (a == "icons") { this._destroyIcons(); b && this._createIcons() } }, _keydown: function (a) {
        var b = c.ui.keyCode; if (!(this.options.disabled || a.altKey || a.ctrlKey)) {
            var d = this.headers.length, f = this.headers.index(a.target), g = false; switch (a.keyCode) {
                case b.RIGHT: case b.DOWN: g = this.headers[(f + 1) % d]; break; case b.LEFT: case b.UP: g = this.headers[(f - 1 + d) % d]; break; case b.SPACE: case b.ENTER: this._clickHandler({ target: a.target },
a.target); a.preventDefault()
            } if (g) { c(a.target).attr("tabIndex", "-1"); c(g).attr("tabIndex", "0"); g.focus(); return false } return true
        } 
    }, resize: function () {
        var a = this.options, b; if (a.fillSpace) {
            if (c.browser.msie) { var d = this.element.parent().css("overflow"); this.element.parent().css("overflow", "hidden") } b = this.element.parent().height(); c.browser.msie && this.element.parent().css("overflow", d); this.headers.each(function () { b -= c(this).outerHeight(true) }); this.headers.next().each(function () {
                c(this).height(Math.max(0,
b - c(this).innerHeight() + c(this).height()))
            }).css("overflow", "auto")
        } else if (a.autoHeight) { b = 0; this.headers.next().each(function () { b = Math.max(b, c(this).height()) }).height(b) } return this
    }, activate: function (a) { this.options.active = a; a = this._findActive(a)[0]; this._clickHandler({ target: a }, a); return this }, _findActive: function (a) { return a ? typeof a == "number" ? this.headers.filter(":eq(" + a + ")") : this.headers.not(this.headers.not(a)) : a === false ? c([]) : this.headers.filter(":eq(0)") }, _clickHandler: function (a, b) {
        var d =
this.options; if (!d.disabled) if (a.target) {
            a = c(a.currentTarget || b); b = a[0] == this.active[0]; d.active = d.collapsible && b ? false : c(".ui-accordion-header", this.element).index(a); if (!(this.running || !d.collapsible && b)) {
                this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header); if (!b) {
                    a.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").find(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);
                    a.next().addClass("ui-accordion-content-active")
                } e = a.next(); f = this.active.next(); g = { options: d, newHeader: b && d.collapsible ? c([]) : a, oldHeader: this.active, newContent: b && d.collapsible ? c([]) : e, oldContent: f }; d = this.headers.index(this.active[0]) > this.headers.index(a[0]); this.active = b ? c([]) : a; this._toggle(e, f, g, b, d)
            } 
        } else if (d.collapsible) {
            this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);
            this.active.next().addClass("ui-accordion-content-active"); var f = this.active.next(), g = { options: d, newHeader: c([]), oldHeader: d.active, newContent: c([]), oldContent: f }, e = this.active = c([]); this._toggle(e, f, g)
        } 
    }, _toggle: function (a, b, d, f, g) {
        var e = this.options, k = this; this.toShow = a; this.toHide = b; this.data = d; var i = function () { if (k) return k._completed.apply(k, arguments) }; this._trigger("changestart", null, this.data); this.running = b.size() === 0 ? a.size() : b.size(); if (e.animated) {
            d = {}; d = e.collapsible && f ? { toShow: c([]),
                toHide: b, complete: i, down: g, autoHeight: e.autoHeight || e.fillSpace
            } : { toShow: a, toHide: b, complete: i, down: g, autoHeight: e.autoHeight || e.fillSpace }; if (!e.proxied) e.proxied = e.animated; if (!e.proxiedDuration) e.proxiedDuration = e.duration; e.animated = c.isFunction(e.proxied) ? e.proxied(d) : e.proxied; e.duration = c.isFunction(e.proxiedDuration) ? e.proxiedDuration(d) : e.proxiedDuration; f = c.ui.accordion.animations; var h = e.duration, j = e.animated; if (j && !f[j] && !c.easing[j]) j = "slide"; f[j] || (f[j] = function (l) {
                this.slide(l, { easing: j,
                    duration: h || 700
                })
            }); f[j](d)
        } else { if (e.collapsible && f) a.toggle(); else { b.hide(); a.show() } i(true) } b.prev().attr("aria-expanded", "false").attr("tabIndex", "-1").blur(); a.prev().attr("aria-expanded", "true").attr("tabIndex", "0").focus()
    }, _completed: function (a) { var b = this.options; this.running = a ? 0 : --this.running; if (!this.running) { b.clearStyle && this.toShow.add(this.toHide).css({ height: "", overflow: "" }); this.toHide.removeClass("ui-accordion-content-active"); this._trigger("change", null, this.data) } } 
    }); c.extend(c.ui.accordion,
{ version: "1.8.2", animations: { slide: function (a, b) {
    a = c.extend({ easing: "swing", duration: 300 }, a, b); if (a.toHide.size()) if (a.toShow.size()) {
        var d = a.toShow.css("overflow"), f = 0, g = {}, e = {}, k; b = a.toShow; k = b[0].style.width; b.width(parseInt(b.parent().width(), 10) - parseInt(b.css("paddingLeft"), 10) - parseInt(b.css("paddingRight"), 10) - (parseInt(b.css("borderLeftWidth"), 10) || 0) - (parseInt(b.css("borderRightWidth"), 10) || 0)); c.each(["height", "paddingTop", "paddingBottom"], function (i, h) {
            e[h] = "hide"; i = ("" + c.css(a.toShow[0],
h)).match(/^([\d+-.]+)(.*)$/); g[h] = { value: i[1], unit: i[2] || "px"}
        }); a.toShow.css({ height: 0, overflow: "hidden" }).show(); a.toHide.filter(":hidden").each(a.complete).end().filter(":visible").animate(e, { step: function (i, h) { if (h.prop == "height") f = h.end - h.start === 0 ? 0 : (h.now - h.start) / (h.end - h.start); a.toShow[0].style[h.prop] = f * g[h.prop].value + g[h.prop].unit }, duration: a.duration, easing: a.easing, complete: function () { a.autoHeight || a.toShow.css("height", ""); a.toShow.css("width", k); a.toShow.css({ overflow: d }); a.complete() } })
    } else a.toHide.animate({ height: "hide" },
a); else a.toShow.animate({ height: "show" }, a)
}, bounceslide: function (a) { this.slide(a, { easing: a.down ? "easeOutBounce" : "swing", duration: a.down ? 1E3 : 200 }) } 
}
})
})(jQuery);
(function (a) {
    var g, i = function (b) { a(":ui-button", b.target.form).each(function () { var c = a(this).data("button"); setTimeout(function () { c.refresh() }, 1) }) }, h = function (b) { var c = b.name, d = b.form, e = a([]); if (c) e = d ? a(d).find("[name='" + c + "']") : a("[name='" + c + "']", b.ownerDocument).filter(function () { return !this.form }); return e }; a.widget("ui.button", { options: { text: true, label: null, icons: { primary: null, secondary: null} }, _create: function () {
        this.element.closest("form").unbind("reset.button").bind("reset.button", i); this._determineButtonType();
        this.hasTitle = !!this.buttonElement.attr("title"); var b = this, c = this.options, d = this.type === "checkbox" || this.type === "radio", e = "ui-state-hover" + (!d ? " ui-state-active" : ""); if (c.label === null) c.label = this.buttonElement.html(); if (this.element.is(":disabled")) c.disabled = true; this.buttonElement.addClass("ui-button ui-widget ui-state-default ui-corner-all").attr("role", "button").bind("mouseenter.button", function () { if (!c.disabled) { a(this).addClass("ui-state-hover"); this === g && a(this).addClass("ui-state-active") } }).bind("mouseleave.button",
function () { c.disabled || a(this).removeClass(e) }).bind("focus.button", function () { a(this).addClass("ui-state-focus") }).bind("blur.button", function () { a(this).removeClass("ui-state-focus") }); d && this.element.bind("change.button", function () { b.refresh() }); if (this.type === "checkbox") this.buttonElement.bind("click.button", function () { if (c.disabled) return false; a(this).toggleClass("ui-state-active"); b.buttonElement.attr("aria-pressed", b.element[0].checked) }); else if (this.type === "radio") this.buttonElement.bind("click.button",
function () { if (c.disabled) return false; a(this).addClass("ui-state-active"); b.buttonElement.attr("aria-pressed", true); var f = b.element[0]; h(f).not(f).map(function () { return a(this).button("widget")[0] }).removeClass("ui-state-active").attr("aria-pressed", false) }); else {
            this.buttonElement.bind("mousedown.button", function () { if (c.disabled) return false; a(this).addClass("ui-state-active"); g = this; a(document).one("mouseup", function () { g = null }) }).bind("mouseup.button", function () { if (c.disabled) return false; a(this).removeClass("ui-state-active") }).bind("keydown.button",
function (f) { if (c.disabled) return false; if (f.keyCode == a.ui.keyCode.SPACE || f.keyCode == a.ui.keyCode.ENTER) a(this).addClass("ui-state-active") }).bind("keyup.button", function () { a(this).removeClass("ui-state-active") }); this.buttonElement.is("a") && this.buttonElement.keyup(function (f) { f.keyCode === a.ui.keyCode.SPACE && a(this).click() })
        } this._setOption("disabled", c.disabled)
    }, _determineButtonType: function () {
        this.type = this.element.is(":checkbox") ? "checkbox" : this.element.is(":radio") ? "radio" : this.element.is("input") ?
"input" : "button"; if (this.type === "checkbox" || this.type === "radio") { this.buttonElement = this.element.parents().last().find("[for=" + this.element.attr("id") + "]"); this.element.addClass("ui-helper-hidden-accessible"); var b = this.element.is(":checked"); b && this.buttonElement.addClass("ui-state-active"); this.buttonElement.attr("aria-pressed", b) } else this.buttonElement = this.element
    }, widget: function () { return this.buttonElement }, destroy: function () {
        this.element.removeClass("ui-helper-hidden-accessible"); this.buttonElement.removeClass("ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active  ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon ui-button-text-only").removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());
        this.hasTitle || this.buttonElement.removeAttr("title"); a.Widget.prototype.destroy.call(this)
    }, _setOption: function (b, c) { a.Widget.prototype._setOption.apply(this, arguments); if (b === "disabled") c ? this.element.attr("disabled", true) : this.element.removeAttr("disabled"); this._resetButton() }, refresh: function () {
        var b = this.element.is(":disabled"); b !== this.options.disabled && this._setOption("disabled", b); if (this.type === "radio") h(this.element[0]).each(function () {
            a(this).is(":checked") ? a(this).button("widget").addClass("ui-state-active").attr("aria-pressed",
true) : a(this).button("widget").removeClass("ui-state-active").attr("aria-pressed", false)
        }); else if (this.type === "checkbox") this.element.is(":checked") ? this.buttonElement.addClass("ui-state-active").attr("aria-pressed", true) : this.buttonElement.removeClass("ui-state-active").attr("aria-pressed", false)
    }, _resetButton: function () {
        if (this.type === "input") this.options.label && this.element.val(this.options.label); else {
            var b = this.buttonElement.removeClass("ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon ui-button-text-only"),
c = a("<span></span>").addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(), d = this.options.icons, e = d.primary && d.secondary; if (d.primary || d.secondary) {
                b.addClass("ui-button-text-icon" + (e ? "s" : "")); d.primary && b.prepend("<span class='ui-button-icon-primary ui-icon " + d.primary + "'></span>"); d.secondary && b.append("<span class='ui-button-icon-secondary ui-icon " + d.secondary + "'></span>"); if (!this.options.text) {
                    b.addClass(e ? "ui-button-icons-only" : "ui-button-icon-only").removeClass("ui-button-text-icons ui-button-text-icon");
                    this.hasTitle || b.attr("title", c)
                } 
            } else b.addClass("ui-button-text-only")
        } 
    } 
    }); a.widget("ui.buttonset", { _create: function () { this.element.addClass("ui-buttonset"); this._init() }, _init: function () { this.refresh() }, _setOption: function (b, c) { b === "disabled" && this.buttons.button("option", b, c); a.Widget.prototype._setOption.apply(this, arguments) }, refresh: function () { this.buttons = this.element.find(":button, :submit, :reset, :checkbox, :radio, a, :data(button)").filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function () { return a(this).button("widget")[0] }).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass("ui-corner-left").end().filter(":last").addClass("ui-corner-right").end().end() },
        destroy: function () { this.element.removeClass("ui-buttonset"); this.buttons.map(function () { return a(this).button("widget")[0] }).removeClass("ui-corner-left ui-corner-right").end().button("destroy"); a.Widget.prototype.destroy.call(this) } 
    })
})(jQuery);
(function (c) {
    c.widget("ui.dialog", { options: { autoOpen: true, buttons: {}, closeOnEscape: true, closeText: "close", dialogClass: "", draggable: true, hide: null, height: "auto", maxHeight: false, maxWidth: false, minHeight: 150, minWidth: 150, modal: false, position: "center", resizable: true, show: null, stack: true, title: "", width: 300, zIndex: 1E3 }, _create: function () {
        this.originalTitle = this.element.attr("title"); var a = this, b = a.options, d = b.title || a.originalTitle || "&#160;", e = c.ui.dialog.getTitleId(a.element), g = (a.uiDialog = c("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all " +
b.dialogClass).css({ zIndex: b.zIndex }).attr("tabIndex", -1).css("outline", 0).keydown(function (i) { if (b.closeOnEscape && i.keyCode && i.keyCode === c.ui.keyCode.ESCAPE) { a.close(i); i.preventDefault() } }).attr({ role: "dialog", "aria-labelledby": e }).mousedown(function (i) { a.moveToTop(false, i) }); a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g); var f = (a.uiDialogTitlebar = c("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),
h = c('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role", "button").hover(function () { h.addClass("ui-state-hover") }, function () { h.removeClass("ui-state-hover") }).focus(function () { h.addClass("ui-state-focus") }).blur(function () { h.removeClass("ui-state-focus") }).click(function (i) { a.close(i); return false }).appendTo(f); (a.uiDialogTitlebarCloseText = c("<span></span>")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h); c("<span></span>").addClass("ui-dialog-title").attr("id",
e).html(d).prependTo(f); if (c.isFunction(b.beforeclose) && !c.isFunction(b.beforeClose)) b.beforeClose = b.beforeclose; f.find("*").add(f).disableSelection(); b.draggable && c.fn.draggable && a._makeDraggable(); b.resizable && c.fn.resizable && a._makeResizable(); a._createButtons(b.buttons); a._isOpen = false; c.fn.bgiframe && g.bgiframe()
    }, _init: function () { this.options.autoOpen && this.open() }, destroy: function () {
        var a = this; a.overlay && a.overlay.destroy(); a.uiDialog.hide(); a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");
        a.uiDialog.remove(); a.originalTitle && a.element.attr("title", a.originalTitle); return a
    }, widget: function () { return this.uiDialog }, close: function (a) {
        var b = this, d; if (false !== b._trigger("beforeClose", a)) {
            b.overlay && b.overlay.destroy(); b.uiDialog.unbind("keypress.ui-dialog"); b._isOpen = false; if (b.options.hide) b.uiDialog.hide(b.options.hide, function () { b._trigger("close", a) }); else { b.uiDialog.hide(); b._trigger("close", a) } c.ui.dialog.overlay.resize(); if (b.options.modal) {
                d = 0; c(".ui-dialog").each(function () {
                    if (this !==
b.uiDialog[0]) d = Math.max(d, c(this).css("z-index"))
                }); c.ui.dialog.maxZ = d
            } return b
        } 
    }, isOpen: function () { return this._isOpen }, moveToTop: function (a, b) {
        var d = this, e = d.options; if (e.modal && !a || !e.stack && !e.modal) return d._trigger("focus", b); if (e.zIndex > c.ui.dialog.maxZ) c.ui.dialog.maxZ = e.zIndex; if (d.overlay) { c.ui.dialog.maxZ += 1; d.overlay.$el.css("z-index", c.ui.dialog.overlay.maxZ = c.ui.dialog.maxZ) } a = { scrollTop: d.element.attr("scrollTop"), scrollLeft: d.element.attr("scrollLeft") }; c.ui.dialog.maxZ += 1; d.uiDialog.css("z-index",
c.ui.dialog.maxZ); d.element.attr(a); d._trigger("focus", b); return d
    }, open: function () {
        if (!this._isOpen) {
            var a = this, b = a.options, d = a.uiDialog; a.overlay = b.modal ? new c.ui.dialog.overlay(a) : null; d.next().length && d.appendTo("body"); a._size(); a._position(b.position); d.show(b.show); a.moveToTop(true); b.modal && d.bind("keypress.ui-dialog", function (e) {
                if (e.keyCode === c.ui.keyCode.TAB) {
                    var g = c(":tabbable", this), f = g.filter(":first"); g = g.filter(":last"); if (e.target === g[0] && !e.shiftKey) { f.focus(1); return false } else if (e.target ===
f[0] && e.shiftKey) { g.focus(1); return false } 
                } 
            }); c([]).add(d.find(".ui-dialog-content :tabbable:first")).add(d.find(".ui-dialog-buttonpane :tabbable:first")).add(d).filter(":first").focus(); a._trigger("open"); a._isOpen = true; return a
        } 
    }, _createButtons: function (a) {
        var b = this, d = false, e = c("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"); b.uiDialog.find(".ui-dialog-buttonpane").remove(); typeof a === "object" && a !== null && c.each(a, function () { return !(d = true) }); if (d) {
            c.each(a,
function (g, f) { g = c('<button type="button"></button>').text(g).click(function () { f.apply(b.element[0], arguments) }).appendTo(e); c.fn.button && g.button() }); e.appendTo(b.uiDialog)
        } 
    }, _makeDraggable: function () {
        function a(f) { return { position: f.position, offset: f.offset} } var b = this, d = b.options, e = c(document), g; b.uiDialog.draggable({ cancel: ".ui-dialog-content, .ui-dialog-titlebar-close", handle: ".ui-dialog-titlebar", containment: "document", start: function (f, h) {
            g = d.height === "auto" ? "auto" : c(this).height(); c(this).height(c(this).height()).addClass("ui-dialog-dragging");
            b._trigger("dragStart", f, a(h))
        }, drag: function (f, h) { b._trigger("drag", f, a(h)) }, stop: function (f, h) { d.position = [h.position.left - e.scrollLeft(), h.position.top - e.scrollTop()]; c(this).removeClass("ui-dialog-dragging").height(g); b._trigger("dragStop", f, a(h)); c.ui.dialog.overlay.resize() } 
        })
    }, _makeResizable: function (a) {
        function b(f) { return { originalPosition: f.originalPosition, originalSize: f.originalSize, position: f.position, size: f.size} } a = a === undefined ? this.options.resizable : a; var d = this, e = d.options, g = d.uiDialog.css("position");
        a = typeof a === "string" ? a : "n,e,s,w,se,sw,ne,nw"; d.uiDialog.resizable({ cancel: ".ui-dialog-content", containment: "document", alsoResize: d.element, maxWidth: e.maxWidth, maxHeight: e.maxHeight, minWidth: e.minWidth, minHeight: d._minHeight(), handles: a, start: function (f, h) { c(this).addClass("ui-dialog-resizing"); d._trigger("resizeStart", f, b(h)) }, resize: function (f, h) { d._trigger("resize", f, b(h)) }, stop: function (f, h) {
            c(this).removeClass("ui-dialog-resizing"); e.height = c(this).height(); e.width = c(this).width(); d._trigger("resizeStop",
f, b(h)); c.ui.dialog.overlay.resize()
        } 
        }).css("position", g).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")
    }, _minHeight: function () { var a = this.options; return a.height === "auto" ? a.minHeight : Math.min(a.minHeight, a.height) }, _position: function (a) {
        var b = [], d = [0, 0]; a = a || c.ui.dialog.prototype.options.position; if (typeof a === "string" || typeof a === "object" && "0" in a) {
            b = a.split ? a.split(" ") : [a[0], a[1]]; if (b.length === 1) b[1] = b[0]; c.each(["left", "top"], function (e, g) {
                if (+b[e] === b[e]) {
                    d[e] = b[e]; b[e] =
g
                } 
            })
        } else if (typeof a === "object") { if ("left" in a) { b[0] = "left"; d[0] = a.left } else if ("right" in a) { b[0] = "right"; d[0] = -a.right } if ("top" in a) { b[1] = "top"; d[1] = a.top } else if ("bottom" in a) { b[1] = "bottom"; d[1] = -a.bottom } } (a = this.uiDialog.is(":visible")) || this.uiDialog.show(); this.uiDialog.css({ top: 0, left: 0 }).position({ my: b.join(" "), at: b.join(" "), offset: d.join(" "), of: window, collision: "fit", using: function (e) { var g = c(this).css(e).offset().top; g < 0 && c(this).css("top", e.top - g) } }); a || this.uiDialog.hide()
    }, _setOption: function (a,
b) {
        var d = this, e = d.uiDialog, g = e.is(":data(resizable)"), f = false; switch (a) {
            case "beforeclose": a = "beforeClose"; break; case "buttons": d._createButtons(b); break; case "closeText": d.uiDialogTitlebarCloseText.text("" + b); break; case "dialogClass": e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all " + b); break; case "disabled": b ? e.addClass("ui-dialog-disabled") : e.removeClass("ui-dialog-disabled"); break; case "draggable": b ? d._makeDraggable() : e.draggable("destroy"); break;
            case "height": f = true; break; case "maxHeight": g && e.resizable("option", "maxHeight", b); f = true; break; case "maxWidth": g && e.resizable("option", "maxWidth", b); f = true; break; case "minHeight": g && e.resizable("option", "minHeight", b); f = true; break; case "minWidth": g && e.resizable("option", "minWidth", b); f = true; break; case "position": d._position(b); break; case "resizable": g && !b && e.resizable("destroy"); g && typeof b === "string" && e.resizable("option", "handles", b); !g && b !== false && d._makeResizable(b); break; case "title": c(".ui-dialog-title",
d.uiDialogTitlebar).html("" + (b || "&#160;")); break; case "width": f = true; break
        } c.Widget.prototype._setOption.apply(d, arguments); f && d._size()
    }, _size: function () {
        var a = this.options, b; this.element.css({ width: "auto", minHeight: 0, height: 0 }); b = this.uiDialog.css({ height: "auto", width: a.width }).height(); this.element.css(a.height === "auto" ? { minHeight: Math.max(a.minHeight - b, 0), height: "auto"} : { minHeight: 0, height: Math.max(a.height - b, 0) }).show(); this.uiDialog.is(":data(resizable)") && this.uiDialog.resizable("option", "minHeight",
this._minHeight())
    } 
    }); c.extend(c.ui.dialog, { version: "1.8.2", uuid: 0, maxZ: 0, getTitleId: function (a) { a = a.attr("id"); if (!a) { this.uuid += 1; a = this.uuid } return "ui-dialog-title-" + a }, overlay: function (a) { this.$el = c.ui.dialog.overlay.create(a) } }); c.extend(c.ui.dialog.overlay, { instances: [], oldInstances: [], maxZ: 0, events: c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","), function (a) { return a + ".dialog-overlay" }).join(" "), create: function (a) {
        if (this.instances.length === 0) {
            setTimeout(function () {
                c.ui.dialog.overlay.instances.length &&
c(document).bind(c.ui.dialog.overlay.events, function (d) { return c(d.target).zIndex() >= c.ui.dialog.overlay.maxZ })
            }, 1); c(document).bind("keydown.dialog-overlay", function (d) { if (a.options.closeOnEscape && d.keyCode && d.keyCode === c.ui.keyCode.ESCAPE) { a.close(d); d.preventDefault() } }); c(window).bind("resize.dialog-overlay", c.ui.dialog.overlay.resize)
        } var b = (this.oldInstances.pop() || c("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({ width: this.width(), height: this.height() }); c.fn.bgiframe &&
b.bgiframe(); this.instances.push(b); return b
    }, destroy: function (a) { this.oldInstances.push(this.instances.splice(c.inArray(a, this.instances), 1)[0]); this.instances.length === 0 && c([document, window]).unbind(".dialog-overlay"); a.remove(); var b = 0; c.each(this.instances, function () { b = Math.max(b, this.css("z-index")) }); this.maxZ = b }, height: function () {
        var a, b; if (c.browser.msie && c.browser.version < 7) {
            a = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight); b = Math.max(document.documentElement.offsetHeight,
document.body.offsetHeight); return a < b ? c(window).height() + "px" : a + "px"
        } else return c(document).height() + "px"
    }, width: function () { var a, b; if (c.browser.msie && c.browser.version < 7) { a = Math.max(document.documentElement.scrollWidth, document.body.scrollWidth); b = Math.max(document.documentElement.offsetWidth, document.body.offsetWidth); return a < b ? c(window).width() + "px" : a + "px" } else return c(document).width() + "px" }, resize: function () {
        var a = c([]); c.each(c.ui.dialog.overlay.instances, function () { a = a.add(this) }); a.css({ width: 0,
            height: 0
        }).css({ width: c.ui.dialog.overlay.width(), height: c.ui.dialog.overlay.height() })
    } 
    }); c.extend(c.ui.dialog.overlay.prototype, { destroy: function () { c.ui.dialog.overlay.destroy(this.$el) } })
})(jQuery);
