Advertisement
Guest User

Untitled

a guest
Feb 11th, 2015
362
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*! jQuery UI - v1.8.24 - 2012-09-28
  2. * https://github.com/jquery/jquery-ui
  3. * Includes: jquery.ui.core.js
  4. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  5. (function (a, b) {
  6.     function c(b, c) {
  7.         var e = b.nodeName.toLowerCase();
  8.         if ('area' === e) {
  9.             var f = b.parentNode,
  10.             g = f.name,
  11.             h;
  12.             return !b.href || !g || f.nodeName.toLowerCase() !== 'map' ? !1 : (h = a('img[usemap=#' + g + ']') [0], !!h && d(h))
  13.         }
  14.         return (/input|select|textarea|button|object/.test(e) ? !b.disabled : 'a' == e ? b.href || c : c) && d(b)
  15.     }
  16.     function d(b) {
  17.         return !a(b).parents().andSelf().filter(function () {
  18.             return a.curCSS(this, 'visibility') === 'hidden' || a.expr.filters.hidden(this)
  19.         }).length
  20.     }
  21.     a.ui = a.ui || {
  22.     };
  23.     if (a.ui.version) return;
  24.     a.extend(a.ui, {
  25.         version: '1.8.24',
  26.         keyCode: {
  27.             ALT: 18,
  28.             BACKSPACE: 8,
  29.             CAPS_LOCK: 20,
  30.             COMMA: 188,
  31.             COMMAND: 91,
  32.             COMMAND_LEFT: 91,
  33.             COMMAND_RIGHT: 93,
  34.             CONTROL: 17,
  35.             DELETE: 46,
  36.             DOWN: 40,
  37.             END: 35,
  38.             ENTER: 13,
  39.             ESCAPE: 27,
  40.             HOME: 36,
  41.             INSERT: 45,
  42.             LEFT: 37,
  43.             MENU: 93,
  44.             NUMPAD_ADD: 107,
  45.             NUMPAD_DECIMAL: 110,
  46.             NUMPAD_DIVIDE: 111,
  47.             NUMPAD_ENTER: 108,
  48.             NUMPAD_MULTIPLY: 106,
  49.             NUMPAD_SUBTRACT: 109,
  50.             PAGE_DOWN: 34,
  51.             PAGE_UP: 33,
  52.             PERIOD: 190,
  53.             RIGHT: 39,
  54.             SHIFT: 16,
  55.             SPACE: 32,
  56.             TAB: 9,
  57.             UP: 38,
  58.             WINDOWS: 91
  59.         }
  60.     }),
  61.     a.fn.extend({
  62.         propAttr: a.fn.prop || a.fn.attr,
  63.         _focus: a.fn.focus,
  64.         focus: function (b, c) {
  65.             return typeof b == 'number' ? this.each(function () {
  66.                 var d = this;
  67.                 setTimeout(function () {
  68.                     a(d).focus(),
  69.                     c && c.call(d)
  70.                 }, b)
  71.             })  : this._focus.apply(this, arguments)
  72.         },
  73.         scrollParent: function () {
  74.             var b;
  75.             return a.browser.msie && /(static|relative)/.test(this.css('position')) || /absolute/.test(this.css('position')) ? b = this.parents().filter(function () {
  76.                 return /(relative|absolute|fixed)/.test(a.curCSS(this, 'position', 1)) && /(auto|scroll)/.test(a.curCSS(this, 'overflow', 1) + a.curCSS(this, 'overflow-y', 1) + a.curCSS(this, 'overflow-x', 1))
  77.             }).eq(0)  : b = this.parents().filter(function () {
  78.                 return /(auto|scroll)/.test(a.curCSS(this, 'overflow', 1) + a.curCSS(this, 'overflow-y', 1) + a.curCSS(this, 'overflow-x', 1))
  79.             }).eq(0),
  80.             /fixed/.test(this.css('position')) || !b.length ? a(document)  : b
  81.         },
  82.         zIndex: function (c) {
  83.             if (c !== b) return this.css('zIndex', c);
  84.             if (this.length) {
  85.                 var d = a(this[0]),
  86.                 e,
  87.                 f;
  88.                 while (d.length && d[0] !== document) {
  89.                     e = d.css('position');
  90.                     if (e === 'absolute' || e === 'relative' || e === 'fixed') {
  91.                         f = parseInt(d.css('zIndex'), 10);
  92.                         if (!isNaN(f) && f !== 0) return f
  93.                     }
  94.                     d = d.parent()
  95.                 }
  96.             }
  97.             return 0
  98.         },
  99.         disableSelection: function () {
  100.             return this.bind((a.support.selectstart ? 'selectstart' : 'mousedown') + '.ui-disableSelection', function (a) {
  101.                 a.preventDefault()
  102.             })
  103.         },
  104.         enableSelection: function () {
  105.             return this.unbind('.ui-disableSelection')
  106.         }
  107.     }),
  108.     a('<a>').outerWidth(1).jquery || a.each(['Width',
  109.     'Height'], function (c, d) {
  110.         function h(b, c, d, f) {
  111.             return a.each(e, function () {
  112.                 c -= parseFloat(a.curCSS(b, 'padding' + this, !0)) || 0,
  113.                 d && (c -= parseFloat(a.curCSS(b, 'border' + this + 'Width', !0)) || 0),
  114.                 f && (c -= parseFloat(a.curCSS(b, 'margin' + this, !0)) || 0)
  115.             }),
  116.             c
  117.         }
  118.         var e = d === 'Width' ? [
  119.             'Left',
  120.             'Right'
  121.         ] : [
  122.             'Top',
  123.             'Bottom'
  124.         ],
  125.         f = d.toLowerCase(),
  126.         g = {
  127.             innerWidth: a.fn.innerWidth,
  128.             innerHeight: a.fn.innerHeight,
  129.             outerWidth: a.fn.outerWidth,
  130.             outerHeight: a.fn.outerHeight
  131.         };
  132.         a.fn['inner' + d] = function (c) {
  133.             return c === b ? g['inner' + d].call(this)  : this.each(function () {
  134.                 a(this).css(f, h(this, c) + 'px')
  135.             })
  136.         },
  137.         a.fn['outer' + d] = function (b, c) {
  138.             return typeof b != 'number' ? g['outer' + d].call(this, b)  : this.each(function () {
  139.                 a(this).css(f, h(this, b, !0, c) + 'px')
  140.             })
  141.         }
  142.     }),
  143.     a.extend(a.expr[':'], {
  144.         data: a.expr.createPseudo ? a.expr.createPseudo(function (b) {
  145.             return function (c) {
  146.                 return !!a.data(c, b)
  147.             }
  148.         })  : function (b, c, d) {
  149.             return !!a.data(b, d[3])
  150.         },
  151.         focusable: function (b) {
  152.             return c(b, !isNaN(a.attr(b, 'tabindex')))
  153.         },
  154.         tabbable: function (b) {
  155.             var d = a.attr(b, 'tabindex'),
  156.             e = isNaN(d);
  157.             return (e || d >= 0) && c(b, !e)
  158.         }
  159.     }),
  160.     a(function () {
  161.         var b = document.body,
  162.         c = b.appendChild(c = document.createElement('div'));
  163.         c.offsetHeight,
  164.         a.extend(c.style, {
  165.             minHeight: '100px',
  166.             height: 'auto',
  167.             padding: 0,
  168.             borderWidth: 0
  169.         }),
  170.         a.support.minHeight = c.offsetHeight === 100,
  171.         a.support.selectstart = 'onselectstart' in c,
  172.         b.removeChild(c).style.display = 'none'
  173.     }),
  174.     a.curCSS || (a.curCSS = a.css),
  175.     a.extend(a.ui, {
  176.         plugin: {
  177.             add: function (b, c, d) {
  178.                 var e = a.ui[b].prototype;
  179.                 for (var f in d) e.plugins[f] = e.plugins[f] || [],
  180.                 e.plugins[f].push([c,
  181.                 d[f]])
  182.             },
  183.             call: function (a, b, c) {
  184.                 var d = a.plugins[b];
  185.                 if (!d || !a.element[0].parentNode) return;
  186.                 for (var e = 0; e < d.length; e++) a.options[d[e][0]] && d[e][1].apply(a.element, c)
  187.             }
  188.         },
  189.         contains: function (a, b) {
  190.             return document.compareDocumentPosition ? a.compareDocumentPosition(b) & 16 : a !== b && a.contains(b)
  191.         },
  192.         hasScroll: function (b, c) {
  193.             if (a(b).css('overflow') === 'hidden') return !1;
  194.             var d = c && c === 'left' ? 'scrollLeft' : 'scrollTop',
  195.             e = !1;
  196.             return b[d] > 0 ? !0 : (b[d] = 1, e = b[d] > 0, b[d] = 0, e)
  197.         },
  198.         isOverAxis: function (a, b, c) {
  199.             return a > b && a < b + c
  200.         },
  201.         isOver: function (b, c, d, e, f, g) {
  202.             return a.ui.isOverAxis(b, d, f) && a.ui.isOverAxis(c, e, g)
  203.         }
  204.     })
  205. }) (jQuery);
  206. ; /*! jQuery UI - v1.8.24 - 2012-09-28
  207. * https://github.com/jquery/jquery-ui
  208. * Includes: jquery.ui.widget.js
  209. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  210. (function (a, b) {
  211.     if (a.cleanData) {
  212.         var c = a.cleanData;
  213.         a.cleanData = function (b) {
  214.             for (var d = 0, e; (e = b[d]) != null; d++) try {
  215.                 a(e).triggerHandler('remove')
  216.             } catch (f) {
  217.             }
  218.             c(b)
  219.         }
  220.     } else {
  221.         var d = a.fn.remove;
  222.         a.fn.remove = function (b, c) {
  223.             return this.each(function () {
  224.                 return c || (!b || a.filter(b, [
  225.                     this
  226.                 ]).length) && a('*', this).add([this]).each(function () {
  227.                     try {
  228.                         a(this).triggerHandler('remove')
  229.                     } catch (b) {
  230.                     }
  231.                 }),
  232.                 d.call(a(this), b, c)
  233.             })
  234.         }
  235.     }
  236.     a.widget = function (b, c, d) {
  237.         var e = b.split('.') [0],
  238.         f;
  239.         b = b.split('.') [1],
  240.         f = e + '-' + b,
  241.         d || (d = c, c = a.Widget),
  242.         a.expr[':'][f] = function (c) {
  243.             return !!a.data(c, b)
  244.         },
  245.         a[e] = a[e] || {
  246.         },
  247.         a[e][b] = function (a, b) {
  248.             arguments.length && this._createWidget(a, b)
  249.         };
  250.         var g = new c;
  251.         g.options = a.extend(!0, {
  252.         }, g.options),
  253.         a[e][b].prototype = a.extend(!0, g, {
  254.             namespace: e,
  255.             widgetName: b,
  256.             widgetEventPrefix: a[e][b].prototype.widgetEventPrefix || b,
  257.             widgetBaseClass: f
  258.         }, d),
  259.         a.widget.bridge(b, a[e][b])
  260.     },
  261.     a.widget.bridge = function (c, d) {
  262.         a.fn[c] = function (e) {
  263.             var f = typeof e == 'string',
  264.             g = Array.prototype.slice.call(arguments, 1),
  265.             h = this;
  266.             return e = !f && g.length ? a.extend.apply(null, [
  267.                 !0,
  268.                 e
  269.             ].concat(g))  : e,
  270.             f && e.charAt(0) === '_' ? h : (f ? this.each(function () {
  271.                 var d = a.data(this, c),
  272.                 f = d && a.isFunction(d[e]) ? d[e].apply(d, g)  : d;
  273.                 if (f !== d && f !== b) return h = f,
  274.                 !1
  275.             })  : this.each(function () {
  276.                 var b = a.data(this, c);
  277.                 b ? b.option(e || {
  278.                 })._init()  : a.data(this, c, new d(e, this))
  279.             }), h)
  280.         }
  281.     },
  282.     a.Widget = function (a, b) {
  283.         arguments.length && this._createWidget(a, b)
  284.     },
  285.     a.Widget.prototype = {
  286.         widgetName: 'widget',
  287.         widgetEventPrefix: '',
  288.         options: {
  289.             disabled: !1
  290.         },
  291.         _createWidget: function (b, c) {
  292.             a.data(c, this.widgetName, this),
  293.             this.element = a(c),
  294.             this.options = a.extend(!0, {
  295.             }, this.options, this._getCreateOptions(), b);
  296.             var d = this;
  297.             this.element.bind('remove.' + this.widgetName, function () {
  298.                 d.destroy()
  299.             }),
  300.             this._create(),
  301.             this._trigger('create'),
  302.             this._init()
  303.         },
  304.         _getCreateOptions: function () {
  305.             return a.metadata && a.metadata.get(this.element[0]) [this.widgetName]
  306.         },
  307.         _create: function () {
  308.         },
  309.         _init: function () {
  310.         },
  311.         destroy: function () {
  312.             this.element.unbind('.' + this.widgetName).removeData(this.widgetName),
  313.             this.widget().unbind('.' + this.widgetName).removeAttr('aria-disabled').removeClass(this.widgetBaseClass + '-disabled ' + 'ui-state-disabled')
  314.         },
  315.         widget: function () {
  316.             return this.element
  317.         },
  318.         option: function (c, d) {
  319.             var e = c;
  320.             if (arguments.length === 0) return a.extend({
  321.             }, this.options);
  322.             if (typeof c == 'string') {
  323.                 if (d === b) return this.options[c];
  324.                 e = {
  325.                 },
  326.                 e[c] = d
  327.             }
  328.             return this._setOptions(e),
  329.             this
  330.         },
  331.         _setOptions: function (b) {
  332.             var c = this;
  333.             return a.each(b, function (a, b) {
  334.                 c._setOption(a, b)
  335.             }),
  336.             this
  337.         },
  338.         _setOption: function (a, b) {
  339.             return this.options[a] = b,
  340.             a === 'disabled' && this.widget() [b ? 'addClass' : 'removeClass'](this.widgetBaseClass + '-disabled' + ' ' + 'ui-state-disabled').attr('aria-disabled', b),
  341.             this
  342.         },
  343.         enable: function () {
  344.             return this._setOption('disabled', !1)
  345.         },
  346.         disable: function () {
  347.             return this._setOption('disabled', !0)
  348.         },
  349.         _trigger: function (b, c, d) {
  350.             var e,
  351.             f,
  352.             g = this.options[b];
  353.             d = d || {
  354.             },
  355.             c = a.Event(c),
  356.             c.type = (b === this.widgetEventPrefix ? b : this.widgetEventPrefix + b).toLowerCase(),
  357.             c.target = this.element[0],
  358.             f = c.originalEvent;
  359.             if (f) for (e in f) e in c || (c[e] = f[e]);
  360.             return this.element.trigger(c, d),
  361.             !(a.isFunction(g) && g.call(this.element[0], c, d) === !1 || c.isDefaultPrevented())
  362.         }
  363.     }
  364. }) (jQuery);
  365. ; /*! jQuery UI - v1.8.24 - 2012-09-28
  366. * https://github.com/jquery/jquery-ui
  367. * Includes: jquery.ui.mouse.js
  368. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  369. (function (a, b) {
  370.     var c = !1;
  371.     a(document).mouseup(function (a) {
  372.         c = !1
  373.     }),
  374.     a.widget('ui.mouse', {
  375.         options: {
  376.             cancel: ':input,option',
  377.             distance: 1,
  378.             delay: 0
  379.         },
  380.         _mouseInit: function () {
  381.             var b = this;
  382.             this.element.bind('mousedown.' + this.widgetName, function (a) {
  383.                 return b._mouseDown(a)
  384.             }).bind('click.' + this.widgetName, function (c) {
  385.                 if (!0 === a.data(c.target, b.widgetName + '.preventClickEvent')) return a.removeData(c.target, b.widgetName + '.preventClickEvent'),
  386.                 c.stopImmediatePropagation(),
  387.                 !1
  388.             }),
  389.             this.started = !1
  390.         },
  391.         _mouseDestroy: function () {
  392.             this.element.unbind('.' + this.widgetName),
  393.             this._mouseMoveDelegate && a(document).unbind('mousemove.' + this.widgetName, this._mouseMoveDelegate).unbind('mouseup.' + this.widgetName, this._mouseUpDelegate)
  394.         },
  395.         _mouseDown: function (b) {
  396.             if (c) return;
  397.             this._mouseStarted && this._mouseUp(b),
  398.             this._mouseDownEvent = b;
  399.             var d = this,
  400.             e = b.which == 1,
  401.             f = typeof this.options.cancel == 'string' && b.target.nodeName ? a(b.target).closest(this.options.cancel).length : !1;
  402.             if (!e || f || !this._mouseCapture(b)) return !0;
  403.             this.mouseDelayMet = !this.options.delay,
  404.             this.mouseDelayMet || (this._mouseDelayTimer = setTimeout(function () {
  405.                 d.mouseDelayMet = !0
  406.             }, this.options.delay));
  407.             if (this._mouseDistanceMet(b) && this._mouseDelayMet(b)) {
  408.                 this._mouseStarted = this._mouseStart(b) !== !1;
  409.                 if (!this._mouseStarted) return b.preventDefault(),
  410.                 !0
  411.             }
  412.             return !0 === a.data(b.target, this.widgetName + '.preventClickEvent') && a.removeData(b.target, this.widgetName + '.preventClickEvent'),
  413.             this._mouseMoveDelegate = function (a) {
  414.                 return d._mouseMove(a)
  415.             },
  416.             this._mouseUpDelegate = function (a) {
  417.                 return d._mouseUp(a)
  418.             },
  419.             a(document).bind('mousemove.' + this.widgetName, this._mouseMoveDelegate).bind('mouseup.' + this.widgetName, this._mouseUpDelegate),
  420.             b.preventDefault(),
  421.             c = !0,
  422.             !0
  423.         },
  424.         _mouseMove: function (b) {
  425.             return !a.browser.msie || document.documentMode >= 9 || !!b.button ? this._mouseStarted ? (this._mouseDrag(b), b.preventDefault())  : (this._mouseDistanceMet(b) && this._mouseDelayMet(b) && (this._mouseStarted = this._mouseStart(this._mouseDownEvent, b) !== !1, this._mouseStarted ? this._mouseDrag(b)  : this._mouseUp(b)), !this._mouseStarted)  : this._mouseUp(b)
  426.         },
  427.         _mouseUp: function (b) {
  428.             return a(document).unbind('mousemove.' + this.widgetName, this._mouseMoveDelegate).unbind('mouseup.' + this.widgetName, this._mouseUpDelegate),
  429.             this._mouseStarted && (this._mouseStarted = !1, b.target == this._mouseDownEvent.target && a.data(b.target, this.widgetName + '.preventClickEvent', !0), this._mouseStop(b)),
  430.             !1
  431.         },
  432.         _mouseDistanceMet: function (a) {
  433.             return Math.max(Math.abs(this._mouseDownEvent.pageX - a.pageX), Math.abs(this._mouseDownEvent.pageY - a.pageY)) >= this.options.distance
  434.         },
  435.         _mouseDelayMet: function (a) {
  436.             return this.mouseDelayMet
  437.         },
  438.         _mouseStart: function (a) {
  439.         },
  440.         _mouseDrag: function (a) {
  441.         },
  442.         _mouseStop: function (a) {
  443.         },
  444.         _mouseCapture: function (a) {
  445.             return !0
  446.         }
  447.     })
  448. }) (jQuery);
  449. ; /*! jQuery UI - v1.8.24 - 2012-09-28
  450. * https://github.com/jquery/jquery-ui
  451. * Includes: jquery.ui.position.js
  452. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  453. (function (a, b) {
  454.     a.ui = a.ui || {
  455.     };
  456.     var c = /left|center|right/,
  457.     d = /top|center|bottom/,
  458.     e = 'center',
  459.     f = {
  460.     },
  461.     g = a.fn.position,
  462.     h = a.fn.offset;
  463.     a.fn.position = function (b) {
  464.         if (!b || !b.of) return g.apply(this, arguments);
  465.         b = a.extend({
  466.         }, b);
  467.         var h = a(b.of),
  468.         i = h[0],
  469.         j = (b.collision || 'flip').split(' '),
  470.         k = b.offset ? b.offset.split(' ')  : [
  471.             0,
  472.             0
  473.         ],
  474.         l,
  475.         m,
  476.         n;
  477.         return i.nodeType === 9 ? (l = h.width(), m = h.height(), n = {
  478.             top: 0,
  479.             left: 0
  480.         })  : i.setTimeout ? (l = h.width(), m = h.height(), n = {
  481.             top: h.scrollTop(),
  482.             left: h.scrollLeft()
  483.         })  : i.preventDefault ? (b.at = 'left top', l = m = 0, n = {
  484.             top: b.of.pageY,
  485.             left: b.of.pageX
  486.         })  : (l = h.outerWidth(), m = h.outerHeight(), n = h.offset()),
  487.         a.each(['my',
  488.         'at'], function () {
  489.             var a = (b[this] || '').split(' ');
  490.             a.length === 1 && (a = c.test(a[0]) ? a.concat([e])  : d.test(a[0]) ? [
  491.                 e
  492.             ].concat(a)  : [
  493.                 e,
  494.                 e
  495.             ]),
  496.             a[0] = c.test(a[0]) ? a[0] : e,
  497.             a[1] = d.test(a[1]) ? a[1] : e,
  498.             b[this] = a
  499.         }),
  500.         j.length === 1 && (j[1] = j[0]),
  501.         k[0] = parseInt(k[0], 10) || 0,
  502.         k.length === 1 && (k[1] = k[0]),
  503.         k[1] = parseInt(k[1], 10) || 0,
  504.         b.at[0] === 'right' ? n.left += l : b.at[0] === e && (n.left += l / 2),
  505.         b.at[1] === 'bottom' ? n.top += m : b.at[1] === e && (n.top += m / 2),
  506.         n.left += k[0],
  507.         n.top += k[1],
  508.         this.each(function () {
  509.             var c = a(this),
  510.             d = c.outerWidth(),
  511.             g = c.outerHeight(),
  512.             h = parseInt(a.curCSS(this, 'marginLeft', !0)) || 0,
  513.             i = parseInt(a.curCSS(this, 'marginTop', !0)) || 0,
  514.             o = d + h + (parseInt(a.curCSS(this, 'marginRight', !0)) || 0),
  515.             p = g + i + (parseInt(a.curCSS(this, 'marginBottom', !0)) || 0),
  516.             q = a.extend({
  517.             }, n),
  518.             r;
  519.             b.my[0] === 'right' ? q.left -= d : b.my[0] === e && (q.left -= d / 2),
  520.             b.my[1] === 'bottom' ? q.top -= g : b.my[1] === e && (q.top -= g / 2),
  521.             f.fractions || (q.left = Math.round(q.left), q.top = Math.round(q.top)),
  522.             r = {
  523.                 left: q.left - h,
  524.                 top: q.top - i
  525.             },
  526.             a.each(['left',
  527.             'top'], function (c, e) {
  528.                 a.ui.position[j[c]] && a.ui.position[j[c]][e](q, {
  529.                     targetWidth: l,
  530.                     targetHeight: m,
  531.                     elemWidth: d,
  532.                     elemHeight: g,
  533.                     collisionPosition: r,
  534.                     collisionWidth: o,
  535.                     collisionHeight: p,
  536.                     offset: k,
  537.                     my: b.my,
  538.                     at: b.at
  539.                 })
  540.             }),
  541.             a.fn.bgiframe && c.bgiframe(),
  542.             c.offset(a.extend(q, {
  543.                 using: b.using
  544.             }))
  545.         })
  546.     },
  547.     a.ui.position = {
  548.         fit: {
  549.             left: function (b, c) {
  550.                 var d = a(window),
  551.                 e = c.collisionPosition.left + c.collisionWidth - d.width() - d.scrollLeft();
  552.                 b.left = e > 0 ? b.left - e : Math.max(b.left - c.collisionPosition.left, b.left)
  553.             },
  554.             top: function (b, c) {
  555.                 var d = a(window),
  556.                 e = c.collisionPosition.top + c.collisionHeight - d.height() - d.scrollTop();
  557.                 b.top = e > 0 ? b.top - e : Math.max(b.top - c.collisionPosition.top, b.top)
  558.             }
  559.         },
  560.         flip: {
  561.             left: function (b, c) {
  562.                 if (c.at[0] === e) return;
  563.                 var d = a(window),
  564.                 f = c.collisionPosition.left + c.collisionWidth - d.width() - d.scrollLeft(),
  565.                 g = c.my[0] === 'left' ? - c.elemWidth : c.my[0] === 'right' ? c.elemWidth : 0,
  566.                 h = c.at[0] === 'left' ? c.targetWidth : - c.targetWidth,
  567.                 i = - 2 * c.offset[0];
  568.                 b.left += c.collisionPosition.left < 0 ? g + h + i : f > 0 ? g + h + i : 0
  569.             },
  570.             top: function (b, c) {
  571.                 if (c.at[1] === e) return;
  572.                 var d = a(window),
  573.                 f = c.collisionPosition.top + c.collisionHeight - d.height() - d.scrollTop(),
  574.                 g = c.my[1] === 'top' ? - c.elemHeight : c.my[1] === 'bottom' ? c.elemHeight : 0,
  575.                 h = c.at[1] === 'top' ? c.targetHeight : - c.targetHeight,
  576.                 i = - 2 * c.offset[1];
  577.                 b.top += c.collisionPosition.top < 0 ? g + h + i : f > 0 ? g + h + i : 0
  578.             }
  579.         }
  580.     },
  581.     a.offset.setOffset || (a.offset.setOffset = function (b, c) {
  582.         /static/.test(a.curCSS(b, 'position')) && (b.style.position = 'relative');
  583.         var d = a(b),
  584.         e = d.offset(),
  585.         f = parseInt(a.curCSS(b, 'top', !0), 10) || 0,
  586.         g = parseInt(a.curCSS(b, 'left', !0), 10) || 0,
  587.         h = {
  588.             top: c.top - e.top + f,
  589.             left: c.left - e.left + g
  590.         };
  591.         'using' in c ? c.using.call(b, h)  : d.css(h)
  592.     }, a.fn.offset = function (b) {
  593.         var c = this[0];
  594.         return !c || !c.ownerDocument ? null : b ? a.isFunction(b) ? this.each(function (c) {
  595.             a(this).offset(b.call(this, c, a(this).offset()))
  596.         })  : this.each(function () {
  597.             a.offset.setOffset(this, b)
  598.         })  : h.call(this)
  599.     }),
  600.     a.curCSS || (a.curCSS = a.css),
  601.     function () {
  602.         var b = document.getElementsByTagName('body') [0],
  603.         c = document.createElement('div'),
  604.         d,
  605.         e,
  606.         g,
  607.         h,
  608.         i;
  609.         d = document.createElement(b ? 'div' : 'body'),
  610.         g = {
  611.             visibility: 'hidden',
  612.             width: 0,
  613.             height: 0,
  614.             border: 0,
  615.             margin: 0,
  616.             background: 'none'
  617.         },
  618.         b && a.extend(g, {
  619.             position: 'absolute',
  620.             left: '-1000px',
  621.             top: '-1000px'
  622.         });
  623.         for (var j in g) d.style[j] = g[j];
  624.         d.appendChild(c),
  625.         e = b || document.documentElement,
  626.         e.insertBefore(d, e.firstChild),
  627.         c.style.cssText = 'position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;',
  628.         h = a(c).offset(function (a, b) {
  629.             return b
  630.         }).offset(),
  631.         d.innerHTML = '',
  632.         e.removeChild(d),
  633.         i = h.top + h.left + (b ? 2000 : 0),
  634.         f.fractions = i > 21 && i < 22
  635.     }()
  636. }) (jQuery);
  637. ; /*! jQuery UI - v1.8.24 - 2012-09-28
  638. * https://github.com/jquery/jquery-ui
  639. * Includes: jquery.ui.draggable.js
  640. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  641. (function (a, b) {
  642.     a.widget('ui.draggable', a.ui.mouse, {
  643.         widgetEventPrefix: 'drag',
  644.         options: {
  645.             addClasses: !0,
  646.             appendTo: 'parent',
  647.             axis: !1,
  648.             connectToSortable: !1,
  649.             containment: !1,
  650.             cursor: 'auto',
  651.             cursorAt: !1,
  652.             grid: !1,
  653.             handle: !1,
  654.             helper: 'original',
  655.             iframeFix: !1,
  656.             opacity: !1,
  657.             refreshPositions: !1,
  658.             revert: !1,
  659.             revertDuration: 500,
  660.             scope: 'default',
  661.             scroll: !0,
  662.             scrollSensitivity: 20,
  663.             scrollSpeed: 20,
  664.             snap: !1,
  665.             snapMode: 'both',
  666.             snapTolerance: 20,
  667.             stack: !1,
  668.             zIndex: !1
  669.         },
  670.         _create: function () {
  671.             this.options.helper == 'original' && !/^(?:r|a|f)/.test(this.element.css('position')) && (this.element[0].style.position = 'relative'),
  672.             this.options.addClasses && this.element.addClass('ui-draggable'),
  673.             this.options.disabled && this.element.addClass('ui-draggable-disabled'),
  674.             this._mouseInit()
  675.         },
  676.         destroy: function () {
  677.             if (!this.element.data('draggable')) return;
  678.             return this.element.removeData('draggable').unbind('.draggable').removeClass('ui-draggable ui-draggable-dragging ui-draggable-disabled'),
  679.             this._mouseDestroy(),
  680.             this
  681.         },
  682.         _mouseCapture: function (b) {
  683.             var c = this.options;
  684.             return this.helper || c.disabled || a(b.target).is('.ui-resizable-handle') ? !1 : (this.handle = this._getHandle(b), this.handle ? (c.iframeFix && a(c.iframeFix === !0 ? 'iframe' : c.iframeFix).each(function () {
  685.                 a('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({
  686.                     width: this.offsetWidth + 'px',
  687.                     height: this.offsetHeight + 'px',
  688.                     position: 'absolute',
  689.                     opacity: '0.001',
  690.                     zIndex: 1000
  691.                 }).css(a(this).offset()).appendTo('body')
  692.             }), !0)  : !1)
  693.         },
  694.         _mouseStart: function (b) {
  695.             var c = this.options;
  696.             return this.helper = this._createHelper(b),
  697.             this.helper.addClass('ui-draggable-dragging'),
  698.             this._cacheHelperProportions(),
  699.             a.ui.ddmanager && (a.ui.ddmanager.current = this),
  700.             this._cacheMargins(),
  701.             this.cssPosition = this.helper.css('position'),
  702.             this.scrollParent = this.helper.scrollParent(),
  703.             this.offset = this.positionAbs = this.element.offset(),
  704.             this.offset = {
  705.                 top: this.offset.top - this.margins.top,
  706.                 left: this.offset.left - this.margins.left
  707.             },
  708.             a.extend(this.offset, {
  709.                 click: {
  710.                     left: b.pageX - this.offset.left,
  711.                     top: b.pageY - this.offset.top
  712.                 },
  713.                 parent: this._getParentOffset(),
  714.                 relative: this._getRelativeOffset()
  715.             }),
  716.             this.originalPosition = this.position = this._generatePosition(b),
  717.             this.originalPageX = b.pageX,
  718.             this.originalPageY = b.pageY,
  719.             c.cursorAt && this._adjustOffsetFromHelper(c.cursorAt),
  720.             c.containment && this._setContainment(),
  721.             this._trigger('start', b) === !1 ? (this._clear(), !1)  : (this._cacheHelperProportions(), a.ui.ddmanager && !c.dropBehaviour && a.ui.ddmanager.prepareOffsets(this, b), this._mouseDrag(b, !0), a.ui.ddmanager && a.ui.ddmanager.dragStart(this, b), !0)
  722.         },
  723.         _mouseDrag: function (b, c) {
  724.             this.position = this._generatePosition(b),
  725.             this.positionAbs = this._convertPositionTo('absolute');
  726.             if (!c) {
  727.                 var d = this._uiHash();
  728.                 if (this._trigger('drag', b, d) === !1) return this._mouseUp({
  729.                 }),
  730.                 !1;
  731.                 this.position = d.position
  732.             }
  733.             if (!this.options.axis || this.options.axis != 'y') this.helper[0].style.left = this.position.left + 'px';
  734.             if (!this.options.axis || this.options.axis != 'x') this.helper[0].style.top = this.position.top + 'px';
  735.             return a.ui.ddmanager && a.ui.ddmanager.drag(this, b),
  736.             !1
  737.         },
  738.         _mouseStop: function (b) {
  739.             var c = !1;
  740.             a.ui.ddmanager && !this.options.dropBehaviour && (c = a.ui.ddmanager.drop(this, b)),
  741.             this.dropped && (c = this.dropped, this.dropped = !1);
  742.             var d = this.element[0],
  743.             e = !1;
  744.             while (d && (d = d.parentNode)) d == document && (e = !0);
  745.             if (!e && this.options.helper === 'original') return !1;
  746.             if (this.options.revert == 'invalid' && !c || this.options.revert == 'valid' && c || this.options.revert === !0 || a.isFunction(this.options.revert) && this.options.revert.call(this.element, c)) {
  747.                 var f = this;
  748.                 a(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function () {
  749.                     f._trigger('stop', b) !== !1 && f._clear()
  750.                 })
  751.             } else this._trigger('stop', b) !== !1 && this._clear();
  752.             return !1
  753.         },
  754.         _mouseUp: function (b) {
  755.             return a('div.ui-draggable-iframeFix').each(function () {
  756.                 this.parentNode.removeChild(this)
  757.             }),
  758.             a.ui.ddmanager && a.ui.ddmanager.dragStop(this, b),
  759.             a.ui.mouse.prototype._mouseUp.call(this, b)
  760.         },
  761.         cancel: function () {
  762.             return this.helper.is('.ui-draggable-dragging') ? this._mouseUp({
  763.             })  : this._clear(),
  764.             this
  765.         },
  766.         _getHandle: function (b) {
  767.             var c = !this.options.handle || !a(this.options.handle, this.element).length ? !0 : !1;
  768.             return a(this.options.handle, this.element).find('*').andSelf().each(function () {
  769.                 this == b.target && (c = !0)
  770.             }),
  771.             c
  772.         },
  773.         _createHelper: function (b) {
  774.             var c = this.options,
  775.             d = a.isFunction(c.helper) ? a(c.helper.apply(this.element[0], [
  776.                 b
  777.             ]))  : c.helper == 'clone' ? this.element.clone().removeAttr('id')  : this.element;
  778.             return d.parents('body').length || d.appendTo(c.appendTo == 'parent' ? this.element[0].parentNode : c.appendTo),
  779.             d[0] != this.element[0] && !/(fixed|absolute)/.test(d.css('position')) && d.css('position', 'absolute'),
  780.             d
  781.         },
  782.         _adjustOffsetFromHelper: function (b) {
  783.             typeof b == 'string' && (b = b.split(' ')),
  784.             a.isArray(b) && (b = {
  785.                 left: + b[0],
  786.                 top: + b[1] || 0
  787.             }),
  788.             'left' in b && (this.offset.click.left = b.left + this.margins.left),
  789.             'right' in b && (this.offset.click.left = this.helperProportions.width - b.right + this.margins.left),
  790.             'top' in b && (this.offset.click.top = b.top + this.margins.top),
  791.             'bottom' in b && (this.offset.click.top = this.helperProportions.height - b.bottom + this.margins.top)
  792.         },
  793.         _getParentOffset: function () {
  794.             this.offsetParent = this.helper.offsetParent();
  795.             var b = this.offsetParent.offset();
  796.             this.cssPosition == 'absolute' && this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0]) && (b.left += this.scrollParent.scrollLeft(), b.top += this.scrollParent.scrollTop());
  797.             if (this.offsetParent[0] == document.body || this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && a.browser.msie) b = {
  798.                 top: 0,
  799.                 left: 0
  800.             };
  801.             return {
  802.                 top: b.top + (parseInt(this.offsetParent.css('borderTopWidth'), 10) || 0),
  803.                 left: b.left + (parseInt(this.offsetParent.css('borderLeftWidth'), 10) || 0)
  804.             }
  805.         },
  806.         _getRelativeOffset: function () {
  807.             if (this.cssPosition == 'relative') {
  808.                 var a = this.element.position();
  809.                 return {
  810.                     top: a.top - (parseInt(this.helper.css('top'), 10) || 0) + this.scrollParent.scrollTop(),
  811.                     left: a.left - (parseInt(this.helper.css('left'), 10) || 0) + this.scrollParent.scrollLeft()
  812.                 }
  813.             }
  814.             return {
  815.                 top: 0,
  816.                 left: 0
  817.             }
  818.         },
  819.         _cacheMargins: function () {
  820.             this.margins = {
  821.                 left: parseInt(this.element.css('marginLeft'), 10) || 0,
  822.                 top: parseInt(this.element.css('marginTop'), 10) || 0,
  823.                 right: parseInt(this.element.css('marginRight'), 10) || 0,
  824.                 bottom: parseInt(this.element.css('marginBottom'), 10) || 0
  825.             }
  826.         },
  827.         _cacheHelperProportions: function () {
  828.             this.helperProportions = {
  829.                 width: this.helper.outerWidth(),
  830.                 height: this.helper.outerHeight()
  831.             }
  832.         },
  833.         _setContainment: function () {
  834.             var b = this.options;
  835.             b.containment == 'parent' && (b.containment = this.helper[0].parentNode);
  836.             if (b.containment == 'document' || b.containment == 'window') this.containment = [
  837.                 b.containment == 'document' ? 0 : a(window).scrollLeft() - this.offset.relative.left - this.offset.parent.left,
  838.                 b.containment == 'document' ? 0 : a(window).scrollTop() - this.offset.relative.top - this.offset.parent.top,
  839.                 (b.containment == 'document' ? 0 : a(window).scrollLeft()) + a(b.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left,
  840.                 (b.containment == 'document' ? 0 : a(window).scrollTop()) + (a(b.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top
  841.             ];
  842.             if (!/^(document|window|parent)$/.test(b.containment) && b.containment.constructor != Array) {
  843.                 var c = a(b.containment),
  844.                 d = c[0];
  845.                 if (!d) return;
  846.                 var e = c.offset(),
  847.                 f = a(d).css('overflow') != 'hidden';
  848.                 this.containment = [
  849.                     (parseInt(a(d).css('borderLeftWidth'), 10) || 0) + (parseInt(a(d).css('paddingLeft'), 10) || 0),
  850.                     (parseInt(a(d).css('borderTopWidth'), 10) || 0) + (parseInt(a(d).css('paddingTop'), 10) || 0),
  851.                     (f ? Math.max(d.scrollWidth, d.offsetWidth)  : d.offsetWidth) - (parseInt(a(d).css('borderLeftWidth'), 10) || 0) - (parseInt(a(d).css('paddingRight'), 10) || 0) - this.helperProportions.width - this.margins.left - this.margins.right,
  852.                     (f ? Math.max(d.scrollHeight, d.offsetHeight)  : d.offsetHeight) - (parseInt(a(d).css('borderTopWidth'), 10) || 0) - (parseInt(a(d).css('paddingBottom'), 10) || 0) - this.helperProportions.height - this.margins.top - this.margins.bottom
  853.                 ],
  854.                 this.relative_container = c
  855.             } else b.containment.constructor == Array && (this.containment = b.containment)
  856.         },
  857.         _convertPositionTo: function (b, c) {
  858.             c || (c = this.position);
  859.             var d = b == 'absolute' ? 1 : - 1,
  860.             e = this.options,
  861.             f = this.cssPosition == 'absolute' && (this.scrollParent[0] == document || !a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent,
  862.             g = /(html|body)/i.test(f[0].tagName);
  863.             return {
  864.                 top: c.top + this.offset.relative.top * d + this.offset.parent.top * d - (a.browser.safari && a.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : (this.cssPosition == 'fixed' ? - this.scrollParent.scrollTop()  : g ? 0 : f.scrollTop()) * d),
  865.                 left: c.left + this.offset.relative.left * d + this.offset.parent.left * d - (a.browser.safari && a.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : (this.cssPosition == 'fixed' ? - this.scrollParent.scrollLeft()  : g ? 0 : f.scrollLeft()) * d)
  866.             }
  867.         },
  868.         _generatePosition: function (b) {
  869.             var c = this.options,
  870.             d = this.cssPosition == 'absolute' && (this.scrollParent[0] == document || !a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent,
  871.             e = /(html|body)/i.test(d[0].tagName),
  872.             f = b.pageX,
  873.             g = b.pageY;
  874.             if (this.originalPosition) {
  875.                 var h;
  876.                 if (this.containment) {
  877.                     if (this.relative_container) {
  878.                         var i = this.relative_container.offset();
  879.                         h = [
  880.                             this.containment[0] + i.left,
  881.                             this.containment[1] + i.top,
  882.                             this.containment[2] + i.left,
  883.                             this.containment[3] + i.top
  884.                         ]
  885.                     } else h = this.containment;
  886.                     b.pageX - this.offset.click.left < h[0] && (f = h[0] + this.offset.click.left),
  887.                     b.pageY - this.offset.click.top < h[1] && (g = h[1] + this.offset.click.top),
  888.                     b.pageX - this.offset.click.left > h[2] && (f = h[2] + this.offset.click.left),
  889.                     b.pageY - this.offset.click.top > h[3] && (g = h[3] + this.offset.click.top)
  890.                 }
  891.                 if (c.grid) {
  892.                     var j = c.grid[1] ? this.originalPageY + Math.round((g - this.originalPageY) / c.grid[1]) * c.grid[1] : this.originalPageY;
  893.                     g = h ? j - this.offset.click.top < h[1] || j - this.offset.click.top > h[3] ? j - this.offset.click.top < h[1] ? j + c.grid[1] : j - c.grid[1] : j : j;
  894.                     var k = c.grid[0] ? this.originalPageX + Math.round((f - this.originalPageX) / c.grid[0]) * c.grid[0] : this.originalPageX;
  895.                     f = h ? k - this.offset.click.left < h[0] || k - this.offset.click.left > h[2] ? k - this.offset.click.left < h[0] ? k + c.grid[0] : k - c.grid[0] : k : k
  896.                 }
  897.             }
  898.             return {
  899.                 top: g - this.offset.click.top - this.offset.relative.top - this.offset.parent.top + (a.browser.safari && a.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : this.cssPosition == 'fixed' ? - this.scrollParent.scrollTop()  : e ? 0 : d.scrollTop()),
  900.                 left: f - this.offset.click.left - this.offset.relative.left - this.offset.parent.left + (a.browser.safari && a.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : this.cssPosition == 'fixed' ? - this.scrollParent.scrollLeft()  : e ? 0 : d.scrollLeft())
  901.             }
  902.         },
  903.         _clear: function () {
  904.             this.helper.removeClass('ui-draggable-dragging'),
  905.             this.helper[0] != this.element[0] && !this.cancelHelperRemoval && this.helper.remove(),
  906.             this.helper = null,
  907.             this.cancelHelperRemoval = !1
  908.         },
  909.         _trigger: function (b, c, d) {
  910.             return d = d || this._uiHash(),
  911.             a.ui.plugin.call(this, b, [
  912.                 c,
  913.                 d
  914.             ]),
  915.             b == 'drag' && (this.positionAbs = this._convertPositionTo('absolute')),
  916.             a.Widget.prototype._trigger.call(this, b, c, d)
  917.         },
  918.         plugins: {
  919.         },
  920.         _uiHash: function (a) {
  921.             return {
  922.                 helper: this.helper,
  923.                 position: this.position,
  924.                 originalPosition: this.originalPosition,
  925.                 offset: this.positionAbs
  926.             }
  927.         }
  928.     }),
  929.     a.extend(a.ui.draggable, {
  930.         version: '1.8.24'
  931.     }),
  932.     a.ui.plugin.add('draggable', 'connectToSortable', {
  933.         start: function (b, c) {
  934.             var d = a(this).data('draggable'),
  935.             e = d.options,
  936.             f = a.extend({
  937.             }, c, {
  938.                 item: d.element
  939.             });
  940.             d.sortables = [
  941.             ],
  942.             a(e.connectToSortable).each(function () {
  943.                 var c = a.data(this, 'sortable');
  944.                 c && !c.options.disabled && (d.sortables.push({
  945.                     instance: c,
  946.                     shouldRevert: c.options.revert
  947.                 }), c.refreshPositions(), c._trigger('activate', b, f))
  948.             })
  949.         },
  950.         stop: function (b, c) {
  951.             var d = a(this).data('draggable'),
  952.             e = a.extend({
  953.             }, c, {
  954.                 item: d.element
  955.             });
  956.             a.each(d.sortables, function () {
  957.                 this.instance.isOver ? (this.instance.isOver = 0, d.cancelHelperRemoval = !0, this.instance.cancelHelperRemoval = !1, this.shouldRevert && (this.instance.options.revert = !0), this.instance._mouseStop(b), this.instance.options.helper = this.instance.options._helper, d.options.helper == 'original' && this.instance.currentItem.css({
  958.                     top: 'auto',
  959.                     left: 'auto'
  960.                 }))  : (this.instance.cancelHelperRemoval = !1, this.instance._trigger('deactivate', b, e))
  961.             })
  962.         },
  963.         drag: function (b, c) {
  964.             var d = a(this).data('draggable'),
  965.             e = this,
  966.             f = function (b) {
  967.                 var c = this.offset.click.top,
  968.                 d = this.offset.click.left,
  969.                 e = this.positionAbs.top,
  970.                 f = this.positionAbs.left,
  971.                 g = b.height,
  972.                 h = b.width,
  973.                 i = b.top,
  974.                 j = b.left;
  975.                 return a.ui.isOver(e + c, f + d, i, j, g, h)
  976.             };
  977.             a.each(d.sortables, function (f) {
  978.                 this.instance.positionAbs = d.positionAbs,
  979.                 this.instance.helperProportions = d.helperProportions,
  980.                 this.instance.offset.click = d.offset.click,
  981.                 this.instance._intersectsWith(this.instance.containerCache) ? (this.instance.isOver || (this.instance.isOver = 1, this.instance.currentItem = a(e).clone().removeAttr('id').appendTo(this.instance.element).data('sortable-item', !0), this.instance.options._helper = this.instance.options.helper, this.instance.options.helper = function () {
  982.                     return c.helper[0]
  983.                 }, b.target = this.instance.currentItem[0], this.instance._mouseCapture(b, !0), this.instance._mouseStart(b, !0, !0), this.instance.offset.click.top = d.offset.click.top, this.instance.offset.click.left = d.offset.click.left, this.instance.offset.parent.left -= d.offset.parent.left - this.instance.offset.parent.left, this.instance.offset.parent.top -= d.offset.parent.top - this.instance.offset.parent.top, d._trigger('toSortable', b), d.dropped = this.instance.element, d.currentItem = d.element, this.instance.fromOutside = d), this.instance.currentItem && this.instance._mouseDrag(b))  : this.instance.isOver && (this.instance.isOver = 0, this.instance.cancelHelperRemoval = !0, this.instance.options.revert = !1, this.instance._trigger('out', b, this.instance._uiHash(this.instance)), this.instance._mouseStop(b, !0), this.instance.options.helper = this.instance.options._helper, this.instance.currentItem.remove(), this.instance.placeholder && this.instance.placeholder.remove(), d._trigger('fromSortable', b), d.dropped = !1)
  984.             })
  985.         }
  986.     }),
  987.     a.ui.plugin.add('draggable', 'cursor', {
  988.         start: function (b, c) {
  989.             var d = a('body'),
  990.             e = a(this).data('draggable').options;
  991.             d.css('cursor') && (e._cursor = d.css('cursor')),
  992.             d.css('cursor', e.cursor)
  993.         },
  994.         stop: function (b, c) {
  995.             var d = a(this).data('draggable').options;
  996.             d._cursor && a('body').css('cursor', d._cursor)
  997.         }
  998.     }),
  999.     a.ui.plugin.add('draggable', 'opacity', {
  1000.         start: function (b, c) {
  1001.             var d = a(c.helper),
  1002.             e = a(this).data('draggable').options;
  1003.             d.css('opacity') && (e._opacity = d.css('opacity')),
  1004.             d.css('opacity', e.opacity)
  1005.         },
  1006.         stop: function (b, c) {
  1007.             var d = a(this).data('draggable').options;
  1008.             d._opacity && a(c.helper).css('opacity', d._opacity)
  1009.         }
  1010.     }),
  1011.     a.ui.plugin.add('draggable', 'scroll', {
  1012.         start: function (b, c) {
  1013.             var d = a(this).data('draggable');
  1014.             d.scrollParent[0] != document && d.scrollParent[0].tagName != 'HTML' && (d.overflowOffset = d.scrollParent.offset())
  1015.         },
  1016.         drag: function (b, c) {
  1017.             var d = a(this).data('draggable'),
  1018.             e = d.options,
  1019.             f = !1;
  1020.             if (d.scrollParent[0] != document && d.scrollParent[0].tagName != 'HTML') {
  1021.                 if (!e.axis || e.axis != 'x') d.overflowOffset.top + d.scrollParent[0].offsetHeight - b.pageY < e.scrollSensitivity ? d.scrollParent[0].scrollTop = f = d.scrollParent[0].scrollTop + e.scrollSpeed : b.pageY - d.overflowOffset.top < e.scrollSensitivity && (d.scrollParent[0].scrollTop = f = d.scrollParent[0].scrollTop - e.scrollSpeed);
  1022.                 if (!e.axis || e.axis != 'y') d.overflowOffset.left + d.scrollParent[0].offsetWidth - b.pageX < e.scrollSensitivity ? d.scrollParent[0].scrollLeft = f = d.scrollParent[0].scrollLeft + e.scrollSpeed : b.pageX - d.overflowOffset.left < e.scrollSensitivity && (d.scrollParent[0].scrollLeft = f = d.scrollParent[0].scrollLeft - e.scrollSpeed)
  1023.             } else {
  1024.                 if (!e.axis || e.axis != 'x') b.pageY - a(document).scrollTop() < e.scrollSensitivity ? f = a(document).scrollTop(a(document).scrollTop() - e.scrollSpeed)  : a(window).height() - (b.pageY - a(document).scrollTop()) < e.scrollSensitivity && (f = a(document).scrollTop(a(document).scrollTop() + e.scrollSpeed));
  1025.                 if (!e.axis || e.axis != 'y') b.pageX - a(document).scrollLeft() < e.scrollSensitivity ? f = a(document).scrollLeft(a(document).scrollLeft() - e.scrollSpeed)  : a(window).width() - (b.pageX - a(document).scrollLeft()) < e.scrollSensitivity && (f = a(document).scrollLeft(a(document).scrollLeft() + e.scrollSpeed))
  1026.             }
  1027.             f !== !1 && a.ui.ddmanager && !e.dropBehaviour && a.ui.ddmanager.prepareOffsets(d, b)
  1028.         }
  1029.     }),
  1030.     a.ui.plugin.add('draggable', 'snap', {
  1031.         start: function (b, c) {
  1032.             var d = a(this).data('draggable'),
  1033.             e = d.options;
  1034.             d.snapElements = [
  1035.             ],
  1036.             a(e.snap.constructor != String ? e.snap.items || ':data(draggable)' : e.snap).each(function () {
  1037.                 var b = a(this),
  1038.                 c = b.offset();
  1039.                 this != d.element[0] && d.snapElements.push({
  1040.                     item: this,
  1041.                     width: b.outerWidth(),
  1042.                     height: b.outerHeight(),
  1043.                     top: c.top,
  1044.                     left: c.left
  1045.                 })
  1046.             })
  1047.         },
  1048.         drag: function (b, c) {
  1049.             var d = a(this).data('draggable'),
  1050.             e = d.options,
  1051.             f = e.snapTolerance,
  1052.             g = c.offset.left,
  1053.             h = g + d.helperProportions.width,
  1054.             i = c.offset.top,
  1055.             j = i + d.helperProportions.height;
  1056.             for (var k = d.snapElements.length - 1; k >= 0; k--) {
  1057.                 var l = d.snapElements[k].left,
  1058.                 m = l + d.snapElements[k].width,
  1059.                 n = d.snapElements[k].top,
  1060.                 o = n + d.snapElements[k].height;
  1061.                 if (!(l - f < g && g < m + f && n - f < i && i < o + f || l - f < g && g < m + f && n - f < j && j < o + f || l - f < h && h < m + f && n - f < i && i < o + f || l - f < h && h < m + f && n - f < j && j < o + f)) {
  1062.                     d.snapElements[k].snapping && d.options.snap.release && d.options.snap.release.call(d.element, b, a.extend(d._uiHash(), {
  1063.                         snapItem: d.snapElements[k].item
  1064.                     })),
  1065.                     d.snapElements[k].snapping = !1;
  1066.                     continue
  1067.                 }
  1068.                 if (e.snapMode != 'inner') {
  1069.                     var p = Math.abs(n - j) <= f,
  1070.                     q = Math.abs(o - i) <= f,
  1071.                     r = Math.abs(l - h) <= f,
  1072.                     s = Math.abs(m - g) <= f;
  1073.                     p && (c.position.top = d._convertPositionTo('relative', {
  1074.                         top: n - d.helperProportions.height,
  1075.                         left: 0
  1076.                     }).top - d.margins.top),
  1077.                     q && (c.position.top = d._convertPositionTo('relative', {
  1078.                         top: o,
  1079.                         left: 0
  1080.                     }).top - d.margins.top),
  1081.                     r && (c.position.left = d._convertPositionTo('relative', {
  1082.                         top: 0,
  1083.                         left: l - d.helperProportions.width
  1084.                     }).left - d.margins.left),
  1085.                     s && (c.position.left = d._convertPositionTo('relative', {
  1086.                         top: 0,
  1087.                         left: m
  1088.                     }).left - d.margins.left)
  1089.                 }
  1090.                 var t = p || q || r || s;
  1091.                 if (e.snapMode != 'outer') {
  1092.                     var p = Math.abs(n - i) <= f,
  1093.                     q = Math.abs(o - j) <= f,
  1094.                     r = Math.abs(l - g) <= f,
  1095.                     s = Math.abs(m - h) <= f;
  1096.                     p && (c.position.top = d._convertPositionTo('relative', {
  1097.                         top: n,
  1098.                         left: 0
  1099.                     }).top - d.margins.top),
  1100.                     q && (c.position.top = d._convertPositionTo('relative', {
  1101.                         top: o - d.helperProportions.height,
  1102.                         left: 0
  1103.                     }).top - d.margins.top),
  1104.                     r && (c.position.left = d._convertPositionTo('relative', {
  1105.                         top: 0,
  1106.                         left: l
  1107.                     }).left - d.margins.left),
  1108.                     s && (c.position.left = d._convertPositionTo('relative', {
  1109.                         top: 0,
  1110.                         left: m - d.helperProportions.width
  1111.                     }).left - d.margins.left)
  1112.                 }
  1113.                 !d.snapElements[k].snapping && (p || q || r || s || t) && d.options.snap.snap && d.options.snap.snap.call(d.element, b, a.extend(d._uiHash(), {
  1114.                     snapItem: d.snapElements[k].item
  1115.                 })),
  1116.                 d.snapElements[k].snapping = p || q || r || s || t
  1117.             }
  1118.         }
  1119.     }),
  1120.     a.ui.plugin.add('draggable', 'stack', {
  1121.         start: function (b, c) {
  1122.             var d = a(this).data('draggable').options,
  1123.             e = a.makeArray(a(d.stack)).sort(function (b, c) {
  1124.                 return (parseInt(a(b).css('zIndex'), 10) || 0) - (parseInt(a(c).css('zIndex'), 10) || 0)
  1125.             });
  1126.             if (!e.length) return;
  1127.             var f = parseInt(e[0].style.zIndex) || 0;
  1128.             a(e).each(function (a) {
  1129.                 this.style.zIndex = f + a
  1130.             }),
  1131.             this[0].style.zIndex = f + e.length
  1132.         }
  1133.     }),
  1134.     a.ui.plugin.add('draggable', 'zIndex', {
  1135.         start: function (b, c) {
  1136.             var d = a(c.helper),
  1137.             e = a(this).data('draggable').options;
  1138.             d.css('zIndex') && (e._zIndex = d.css('zIndex')),
  1139.             d.css('zIndex', e.zIndex)
  1140.         },
  1141.         stop: function (b, c) {
  1142.             var d = a(this).data('draggable').options;
  1143.             d._zIndex && a(c.helper).css('zIndex', d._zIndex)
  1144.         }
  1145.     })
  1146. }) (jQuery);
  1147. ; /*! jQuery UI - v1.8.24 - 2012-09-28
  1148. * https://github.com/jquery/jquery-ui
  1149. * Includes: jquery.ui.droppable.js
  1150. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  1151. (function (a, b) {
  1152.     a.widget('ui.droppable', {
  1153.         widgetEventPrefix: 'drop',
  1154.         options: {
  1155.             accept: '*',
  1156.             activeClass: !1,
  1157.             addClasses: !0,
  1158.             greedy: !1,
  1159.             hoverClass: !1,
  1160.             scope: 'default',
  1161.             tolerance: 'intersect'
  1162.         },
  1163.         _create: function () {
  1164.             var b = this.options,
  1165.             c = b.accept;
  1166.             this.isover = 0,
  1167.             this.isout = 1,
  1168.             this.accept = a.isFunction(c) ? c : function (a) {
  1169.                 return a.is(c)
  1170.             },
  1171.             this.proportions = {
  1172.                 width: this.element[0].offsetWidth,
  1173.                 height: this.element[0].offsetHeight
  1174.             },
  1175.             a.ui.ddmanager.droppables[b.scope] = a.ui.ddmanager.droppables[b.scope] || [],
  1176.             a.ui.ddmanager.droppables[b.scope].push(this),
  1177.             b.addClasses && this.element.addClass('ui-droppable')
  1178.         },
  1179.         destroy: function () {
  1180.             var b = a.ui.ddmanager.droppables[this.options.scope];
  1181.             for (var c = 0; c < b.length; c++) b[c] == this && b.splice(c, 1);
  1182.             return this.element.removeClass('ui-droppable ui-droppable-disabled').removeData('droppable').unbind('.droppable'),
  1183.             this
  1184.         },
  1185.         _setOption: function (b, c) {
  1186.             b == 'accept' && (this.accept = a.isFunction(c) ? c : function (a) {
  1187.                 return a.is(c)
  1188.             }),
  1189.             a.Widget.prototype._setOption.apply(this, arguments)
  1190.         },
  1191.         _activate: function (b) {
  1192.             var c = a.ui.ddmanager.current;
  1193.             this.options.activeClass && this.element.addClass(this.options.activeClass),
  1194.             c && this._trigger('activate', b, this.ui(c))
  1195.         },
  1196.         _deactivate: function (b) {
  1197.             var c = a.ui.ddmanager.current;
  1198.             this.options.activeClass && this.element.removeClass(this.options.activeClass),
  1199.             c && this._trigger('deactivate', b, this.ui(c))
  1200.         },
  1201.         _over: function (b) {
  1202.             var c = a.ui.ddmanager.current;
  1203.             if (!c || (c.currentItem || c.element) [0] == this.element[0]) return;
  1204.             this.accept.call(this.element[0], c.currentItem || c.element) && (this.options.hoverClass && this.element.addClass(this.options.hoverClass), this._trigger('over', b, this.ui(c)))
  1205.         },
  1206.         _out: function (b) {
  1207.             var c = a.ui.ddmanager.current;
  1208.             if (!c || (c.currentItem || c.element) [0] == this.element[0]) return;
  1209.             this.accept.call(this.element[0], c.currentItem || c.element) && (this.options.hoverClass && this.element.removeClass(this.options.hoverClass), this._trigger('out', b, this.ui(c)))
  1210.         },
  1211.         _drop: function (b, c) {
  1212.             var d = c || a.ui.ddmanager.current;
  1213.             if (!d || (d.currentItem || d.element) [0] == this.element[0]) return !1;
  1214.             var e = !1;
  1215.             return this.element.find(':data(droppable)').not('.ui-draggable-dragging').each(function () {
  1216.                 var b = a.data(this, 'droppable');
  1217.                 if (b.options.greedy && !b.options.disabled && b.options.scope == d.options.scope && b.accept.call(b.element[0], d.currentItem || d.element) && a.ui.intersect(d, a.extend(b, {
  1218.                     offset: b.element.offset()
  1219.                 }), b.options.tolerance)) return e = !0,
  1220.                 !1
  1221.             }),
  1222.             e ? !1 : this.accept.call(this.element[0], d.currentItem || d.element) ? (this.options.activeClass && this.element.removeClass(this.options.activeClass), this.options.hoverClass && this.element.removeClass(this.options.hoverClass), this._trigger('drop', b, this.ui(d)), this.element)  : !1
  1223.         },
  1224.         ui: function (a) {
  1225.             return {
  1226.                 draggable: a.currentItem || a.element,
  1227.                 helper: a.helper,
  1228.                 position: a.position,
  1229.                 offset: a.positionAbs
  1230.             }
  1231.         }
  1232.     }),
  1233.     a.extend(a.ui.droppable, {
  1234.         version: '1.8.24'
  1235.     }),
  1236.     a.ui.intersect = function (b, c, d) {
  1237.         if (!c.offset) return !1;
  1238.         var e = (b.positionAbs || b.position.absolute).left,
  1239.         f = e + b.helperProportions.width,
  1240.         g = (b.positionAbs || b.position.absolute).top,
  1241.         h = g + b.helperProportions.height,
  1242.         i = c.offset.left,
  1243.         j = i + c.proportions.width,
  1244.         k = c.offset.top,
  1245.         l = k + c.proportions.height;
  1246.         switch (d) {
  1247.             case 'fit':
  1248.                 return i <= e && f <= j && k <= g && h <= l;
  1249.             case 'intersect':
  1250.                 return i < e + b.helperProportions.width / 2 && f - b.helperProportions.width / 2 < j && k < g + b.helperProportions.height / 2 && h - b.helperProportions.height / 2 < l;
  1251.             case 'pointer':
  1252.                 var m = (b.positionAbs || b.position.absolute).left + (b.clickOffset || b.offset.click).left,
  1253.                 n = (b.positionAbs || b.position.absolute).top + (b.clickOffset || b.offset.click).top,
  1254.                 o = a.ui.isOver(n, m, k, i, c.proportions.height, c.proportions.width);
  1255.                 return o;
  1256.             case 'touch':
  1257.                 return (g >= k && g <= l || h >= k && h <= l || g < k && h > l) && (e >= i && e <= j || f >= i && f <= j || e < i && f > j);
  1258.             default:
  1259.                 return !1
  1260.         }
  1261.     },
  1262.     a.ui.ddmanager = {
  1263.         current: null,
  1264.         droppables: {
  1265.             'default': [
  1266.             ]
  1267.         },
  1268.         prepareOffsets: function (b, c) {
  1269.             var d = a.ui.ddmanager.droppables[b.options.scope] || [],
  1270.             e = c ? c.type : null,
  1271.             f = (b.currentItem || b.element).find(':data(droppable)').andSelf();
  1272.             g: for (var h = 0; h < d.length; h++) {
  1273.                 if (d[h].options.disabled || b && !d[h].accept.call(d[h].element[0], b.currentItem || b.element)) continue;
  1274.                 for (var i = 0; i < f.length; i++) if (f[i] == d[h].element[0]) {
  1275.                     d[h].proportions.height = 0;
  1276.                     continue g
  1277.                 }
  1278.                 d[h].visible = d[h].element.css('display') != 'none';
  1279.                 if (!d[h].visible) continue;
  1280.                 e == 'mousedown' && d[h]._activate.call(d[h], c),
  1281.                 d[h].offset = d[h].element.offset(),
  1282.                 d[h].proportions = {
  1283.                     width: d[h].element[0].offsetWidth,
  1284.                     height: d[h].element[0].offsetHeight
  1285.                 }
  1286.             }
  1287.         },
  1288.         drop: function (b, c) {
  1289.             var d = !1;
  1290.             return a.each(a.ui.ddmanager.droppables[b.options.scope] || [], function () {
  1291.                 if (!this.options) return;
  1292.                 !this.options.disabled && this.visible && a.ui.intersect(b, this, this.options.tolerance) && (d = this._drop.call(this, c) || d),
  1293.                 !this.options.disabled && this.visible && this.accept.call(this.element[0], b.currentItem || b.element) && (this.isout = 1, this.isover = 0, this._deactivate.call(this, c))
  1294.             }),
  1295.             d
  1296.         },
  1297.         dragStart: function (b, c) {
  1298.             b.element.parents(':not(body,html)').bind('scroll.droppable', function () {
  1299.                 b.options.refreshPositions || a.ui.ddmanager.prepareOffsets(b, c)
  1300.             })
  1301.         },
  1302.         drag: function (b, c) {
  1303.             b.options.refreshPositions && a.ui.ddmanager.prepareOffsets(b, c),
  1304.             a.each(a.ui.ddmanager.droppables[b.options.scope] || [], function () {
  1305.                 if (this.options.disabled || this.greedyChild || !this.visible) return;
  1306.                 var d = a.ui.intersect(b, this, this.options.tolerance),
  1307.                 e = !d && this.isover == 1 ? 'isout' : d && this.isover == 0 ? 'isover' : null;
  1308.                 if (!e) return;
  1309.                 var f;
  1310.                 if (this.options.greedy) {
  1311.                     var g = this.options.scope,
  1312.                     h = this.element.parents(':data(droppable)').filter(function () {
  1313.                         return a.data(this, 'droppable').options.scope === g
  1314.                     });
  1315.                     h.length && (f = a.data(h[0], 'droppable'), f.greedyChild = e == 'isover' ? 1 : 0)
  1316.                 }
  1317.                 f && e == 'isover' && (f.isover = 0, f.isout = 1, f._out.call(f, c)),
  1318.                 this[e] = 1,
  1319.                 this[e == 'isout' ? 'isover' : 'isout'] = 0,
  1320.                 this[e == 'isover' ? '_over' : '_out'].call(this, c),
  1321.                 f && e == 'isout' && (f.isout = 0, f.isover = 1, f._over.call(f, c))
  1322.             })
  1323.         },
  1324.         dragStop: function (b, c) {
  1325.             b.element.parents(':not(body,html)').unbind('scroll.droppable'),
  1326.             b.options.refreshPositions || a.ui.ddmanager.prepareOffsets(b, c)
  1327.         }
  1328.     }
  1329. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  1330. * https://github.com/jquery/jquery-ui
  1331. * Includes: jquery.ui.resizable.js
  1332. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  1333. (function (a, b) {
  1334.     a.widget('ui.resizable', a.ui.mouse, {
  1335.         widgetEventPrefix: 'resize',
  1336.         options: {
  1337.             alsoResize: !1,
  1338.             animate: !1,
  1339.             animateDuration: 'slow',
  1340.             animateEasing: 'swing',
  1341.             aspectRatio: !1,
  1342.             autoHide: !1,
  1343.             containment: !1,
  1344.             ghost: !1,
  1345.             grid: !1,
  1346.             handles: 'e,s,se',
  1347.             helper: !1,
  1348.             maxHeight: null,
  1349.             maxWidth: null,
  1350.             minHeight: 10,
  1351.             minWidth: 10,
  1352.             zIndex: 1000
  1353.         },
  1354.         _create: function () {
  1355.             var b = this,
  1356.             c = this.options;
  1357.             this.element.addClass('ui-resizable'),
  1358.             a.extend(this, {
  1359.                 _aspectRatio: !!c.aspectRatio,
  1360.                 aspectRatio: c.aspectRatio,
  1361.                 originalElement: this.element,
  1362.                 _proportionallyResizeElements: [
  1363.                 ],
  1364.                 _helper: c.helper || c.ghost || c.animate ? c.helper || 'ui-resizable-helper' : null
  1365.             }),
  1366.             this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i) && (this.element.wrap(a('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({
  1367.                 position: this.element.css('position'),
  1368.                 width: this.element.outerWidth(),
  1369.                 height: this.element.outerHeight(),
  1370.                 top: this.element.css('top'),
  1371.                 left: this.element.css('left')
  1372.             })), this.element = this.element.parent().data('resizable', this.element.data('resizable')), this.elementIsWrapper = !0, this.element.css({
  1373.                 marginLeft: this.originalElement.css('marginLeft'),
  1374.                 marginTop: this.originalElement.css('marginTop'),
  1375.                 marginRight: this.originalElement.css('marginRight'),
  1376.                 marginBottom: this.originalElement.css('marginBottom')
  1377.             }), this.originalElement.css({
  1378.                 marginLeft: 0,
  1379.                 marginTop: 0,
  1380.                 marginRight: 0,
  1381.                 marginBottom: 0
  1382.             }), this.originalResizeStyle = this.originalElement.css('resize'), this.originalElement.css('resize', 'none'), this._proportionallyResizeElements.push(this.originalElement.css({
  1383.                 position: 'static',
  1384.                 zoom: 1,
  1385.                 display: 'block'
  1386.             })), this.originalElement.css({
  1387.                 margin: this.originalElement.css('margin')
  1388.             }), this._proportionallyResize()),
  1389.             this.handles = c.handles || (a('.ui-resizable-handle', this.element).length ? {
  1390.                 n: '.ui-resizable-n',
  1391.                 e: '.ui-resizable-e',
  1392.                 s: '.ui-resizable-s',
  1393.                 w: '.ui-resizable-w',
  1394.                 se: '.ui-resizable-se',
  1395.                 sw: '.ui-resizable-sw',
  1396.                 ne: '.ui-resizable-ne',
  1397.                 nw: '.ui-resizable-nw'
  1398.             }
  1399.              : 'e,s,se');
  1400.             if (this.handles.constructor == String) {
  1401.                 this.handles == 'all' && (this.handles = 'n,e,s,w,se,sw,ne,nw');
  1402.                 var d = this.handles.split(',');
  1403.                 this.handles = {
  1404.                 };
  1405.                 for (var e = 0; e < d.length; e++) {
  1406.                     var f = a.trim(d[e]),
  1407.                     g = 'ui-resizable-' + f,
  1408.                     h = a('<div class="ui-resizable-handle ' + g + '"></div>');
  1409.                     h.css({
  1410.                         zIndex: c.zIndex
  1411.                     }),
  1412.                     'se' == f && h.addClass('ui-icon ui-icon-gripsmall-diagonal-se'),
  1413.                     this.handles[f] = '.ui-resizable-' + f,
  1414.                     this.element.append(h)
  1415.                 }
  1416.             }
  1417.             this._renderAxis = function (b) {
  1418.                 b = b || this.element;
  1419.                 for (var c in this.handles) {
  1420.                     this.handles[c].constructor == String && (this.handles[c] = a(this.handles[c], this.element).show());
  1421.                     if (this.elementIsWrapper && this.originalElement[0].nodeName.match(/textarea|input|select|button/i)) {
  1422.                         var d = a(this.handles[c], this.element),
  1423.                         e = 0;
  1424.                         e = /sw|ne|nw|se|n|s/.test(c) ? d.outerHeight()  : d.outerWidth();
  1425.                         var f = [
  1426.                             'padding',
  1427.                             /ne|nw|n/.test(c) ? 'Top' : /se|sw|s/.test(c) ? 'Bottom' : /^e$/.test(c) ? 'Right' : 'Left'
  1428.                         ].join('');
  1429.                         b.css(f, e),
  1430.                         this._proportionallyResize()
  1431.                     }
  1432.                     if (!a(this.handles[c]).length) continue
  1433.                 }
  1434.             },
  1435.             this._renderAxis(this.element),
  1436.             this._handles = a('.ui-resizable-handle', this.element).disableSelection(),
  1437.             this._handles.mouseover(function () {
  1438.                 if (!b.resizing) {
  1439.                     if (this.className) var a = this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);
  1440.                     b.axis = a && a[1] ? a[1] : 'se'
  1441.                 }
  1442.             }),
  1443.             c.autoHide && (this._handles.hide(), a(this.element).addClass('ui-resizable-autohide').hover(function () {
  1444.                 if (c.disabled) return;
  1445.                 a(this).removeClass('ui-resizable-autohide'),
  1446.                 b._handles.show()
  1447.             }, function () {
  1448.                 if (c.disabled) return;
  1449.                 b.resizing || (a(this).addClass('ui-resizable-autohide'), b._handles.hide())
  1450.             })),
  1451.             this._mouseInit()
  1452.         },
  1453.         destroy: function () {
  1454.             this._mouseDestroy();
  1455.             var b = function (b) {
  1456.                 a(b).removeClass('ui-resizable ui-resizable-disabled ui-resizable-resizing').removeData('resizable').unbind('.resizable').find('.ui-resizable-handle').remove()
  1457.             };
  1458.             if (this.elementIsWrapper) {
  1459.                 b(this.element);
  1460.                 var c = this.element;
  1461.                 c.after(this.originalElement.css({
  1462.                     position: c.css('position'),
  1463.                     width: c.outerWidth(),
  1464.                     height: c.outerHeight(),
  1465.                     top: c.css('top'),
  1466.                     left: c.css('left')
  1467.                 })).remove()
  1468.             }
  1469.             return this.originalElement.css('resize', this.originalResizeStyle),
  1470.             b(this.originalElement),
  1471.             this
  1472.         },
  1473.         _mouseCapture: function (b) {
  1474.             var c = !1;
  1475.             for (var d in this.handles) a(this.handles[d]) [0] == b.target && (c = !0);
  1476.             return !this.options.disabled && c
  1477.         },
  1478.         _mouseStart: function (b) {
  1479.             var d = this.options,
  1480.             e = this.element.position(),
  1481.             f = this.element;
  1482.             this.resizing = !0,
  1483.             this.documentScroll = {
  1484.                 top: a(document).scrollTop(),
  1485.                 left: a(document).scrollLeft()
  1486.             },
  1487.             (f.is('.ui-draggable') || /absolute/.test(f.css('position'))) && f.css({
  1488.                 position: 'absolute',
  1489.                 top: e.top,
  1490.                 left: e.left
  1491.             }),
  1492.             this._renderProxy();
  1493.             var g = c(this.helper.css('left')),
  1494.             h = c(this.helper.css('top'));
  1495.             d.containment && (g += a(d.containment).scrollLeft() || 0, h += a(d.containment).scrollTop() || 0),
  1496.             this.offset = this.helper.offset(),
  1497.             this.position = {
  1498.                 left: g,
  1499.                 top: h
  1500.             },
  1501.             this.size = this._helper ? {
  1502.                 width: f.outerWidth(),
  1503.                 height: f.outerHeight()
  1504.             }
  1505.              : {
  1506.                 width: f.width(),
  1507.                 height: f.height()
  1508.             },
  1509.             this.originalSize = this._helper ? {
  1510.                 width: f.outerWidth(),
  1511.                 height: f.outerHeight()
  1512.             }
  1513.              : {
  1514.                 width: f.width(),
  1515.                 height: f.height()
  1516.             },
  1517.             this.originalPosition = {
  1518.                 left: g,
  1519.                 top: h
  1520.             },
  1521.             this.sizeDiff = {
  1522.                 width: f.outerWidth() - f.width(),
  1523.                 height: f.outerHeight() - f.height()
  1524.             },
  1525.             this.originalMousePosition = {
  1526.                 left: b.pageX,
  1527.                 top: b.pageY
  1528.             },
  1529.             this.aspectRatio = typeof d.aspectRatio == 'number' ? d.aspectRatio : this.originalSize.width / this.originalSize.height || 1;
  1530.             var i = a('.ui-resizable-' + this.axis).css('cursor');
  1531.             return a('body').css('cursor', i == 'auto' ? this.axis + '-resize' : i),
  1532.             f.addClass('ui-resizable-resizing'),
  1533.             this._propagate('start', b),
  1534.             !0
  1535.         },
  1536.         _mouseDrag: function (b) {
  1537.             var c = this.helper,
  1538.             d = this.options,
  1539.             e = {
  1540.             },
  1541.             f = this,
  1542.             g = this.originalMousePosition,
  1543.             h = this.axis,
  1544.             i = b.pageX - g.left || 0,
  1545.             j = b.pageY - g.top || 0,
  1546.             k = this._change[h];
  1547.             if (!k) return !1;
  1548.             var l = k.apply(this, [
  1549.                 b,
  1550.                 i,
  1551.                 j
  1552.             ]),
  1553.             m = a.browser.msie && a.browser.version < 7,
  1554.             n = this.sizeDiff;
  1555.             this._updateVirtualBoundaries(b.shiftKey);
  1556.             if (this._aspectRatio || b.shiftKey) l = this._updateRatio(l, b);
  1557.             return l = this._respectSize(l, b),
  1558.             this._propagate('resize', b),
  1559.             c.css({
  1560.                 top: this.position.top + 'px',
  1561.                 left: this.position.left + 'px',
  1562.                 width: this.size.width + 'px',
  1563.                 height: this.size.height + 'px'
  1564.             }),
  1565.             !this._helper && this._proportionallyResizeElements.length && this._proportionallyResize(),
  1566.             this._updateCache(l),
  1567.             this._trigger('resize', b, this.ui()),
  1568.             !1
  1569.         },
  1570.         _mouseStop: function (b) {
  1571.             this.resizing = !1;
  1572.             var c = this.options,
  1573.             d = this;
  1574.             if (this._helper) {
  1575.                 var e = this._proportionallyResizeElements,
  1576.                 f = e.length && /textarea/i.test(e[0].nodeName),
  1577.                 g = f && a.ui.hasScroll(e[0], 'left') ? 0 : d.sizeDiff.height,
  1578.                 h = f ? 0 : d.sizeDiff.width,
  1579.                 i = {
  1580.                     width: d.helper.width() - h,
  1581.                     height: d.helper.height() - g
  1582.                 },
  1583.                 j = parseInt(d.element.css('left'), 10) + (d.position.left - d.originalPosition.left) || null,
  1584.                 k = parseInt(d.element.css('top'), 10) + (d.position.top - d.originalPosition.top) || null;
  1585.                 c.animate || this.element.css(a.extend(i, {
  1586.                     top: k,
  1587.                     left: j
  1588.                 })),
  1589.                 d.helper.height(d.size.height),
  1590.                 d.helper.width(d.size.width),
  1591.                 this._helper && !c.animate && this._proportionallyResize()
  1592.             }
  1593.             return a('body').css('cursor', 'auto'),
  1594.             this.element.removeClass('ui-resizable-resizing'),
  1595.             this._propagate('stop', b),
  1596.             this._helper && this.helper.remove(),
  1597.             !1
  1598.         },
  1599.         _updateVirtualBoundaries: function (a) {
  1600.             var b = this.options,
  1601.             c,
  1602.             e,
  1603.             f,
  1604.             g,
  1605.             h;
  1606.             h = {
  1607.                 minWidth: d(b.minWidth) ? b.minWidth : 0,
  1608.                 maxWidth: d(b.maxWidth) ? b.maxWidth : Infinity,
  1609.                 minHeight: d(b.minHeight) ? b.minHeight : 0,
  1610.                 maxHeight: d(b.maxHeight) ? b.maxHeight : Infinity
  1611.             };
  1612.             if (this._aspectRatio || a) c = h.minHeight * this.aspectRatio,
  1613.             f = h.minWidth / this.aspectRatio,
  1614.             e = h.maxHeight * this.aspectRatio,
  1615.             g = h.maxWidth / this.aspectRatio,
  1616.             c > h.minWidth && (h.minWidth = c),
  1617.             f > h.minHeight && (h.minHeight = f),
  1618.             e < h.maxWidth && (h.maxWidth = e),
  1619.             g < h.maxHeight && (h.maxHeight = g);
  1620.             this._vBoundaries = h
  1621.         },
  1622.         _updateCache: function (a) {
  1623.             var b = this.options;
  1624.             this.offset = this.helper.offset(),
  1625.             d(a.left) && (this.position.left = a.left),
  1626.             d(a.top) && (this.position.top = a.top),
  1627.             d(a.height) && (this.size.height = a.height),
  1628.             d(a.width) && (this.size.width = a.width)
  1629.         },
  1630.         _updateRatio: function (a, b) {
  1631.             var c = this.options,
  1632.             e = this.position,
  1633.             f = this.size,
  1634.             g = this.axis;
  1635.             return d(a.height) ? a.width = a.height * this.aspectRatio : d(a.width) && (a.height = a.width / this.aspectRatio),
  1636.             g == 'sw' && (a.left = e.left + (f.width - a.width), a.top = null),
  1637.             g == 'nw' && (a.top = e.top + (f.height - a.height), a.left = e.left + (f.width - a.width)),
  1638.             a
  1639.         },
  1640.         _respectSize: function (a, b) {
  1641.             var c = this.helper,
  1642.             e = this._vBoundaries,
  1643.             f = this._aspectRatio || b.shiftKey,
  1644.             g = this.axis,
  1645.             h = d(a.width) && e.maxWidth && e.maxWidth < a.width,
  1646.             i = d(a.height) && e.maxHeight && e.maxHeight < a.height,
  1647.             j = d(a.width) && e.minWidth && e.minWidth > a.width,
  1648.             k = d(a.height) && e.minHeight && e.minHeight > a.height;
  1649.             j && (a.width = e.minWidth),
  1650.             k && (a.height = e.minHeight),
  1651.             h && (a.width = e.maxWidth),
  1652.             i && (a.height = e.maxHeight);
  1653.             var l = this.originalPosition.left + this.originalSize.width,
  1654.             m = this.position.top + this.size.height,
  1655.             n = /sw|nw|w/.test(g),
  1656.             o = /nw|ne|n/.test(g);
  1657.             j && n && (a.left = l - e.minWidth),
  1658.             h && n && (a.left = l - e.maxWidth),
  1659.             k && o && (a.top = m - e.minHeight),
  1660.             i && o && (a.top = m - e.maxHeight);
  1661.             var p = !a.width && !a.height;
  1662.             return p && !a.left && a.top ? a.top = null : p && !a.top && a.left && (a.left = null),
  1663.             a
  1664.         },
  1665.         _proportionallyResize: function () {
  1666.             var b = this.options;
  1667.             if (!this._proportionallyResizeElements.length) return;
  1668.             var c = this.helper || this.element;
  1669.             for (var d = 0; d < this._proportionallyResizeElements.length; d++) {
  1670.                 var e = this._proportionallyResizeElements[d];
  1671.                 if (!this.borderDif) {
  1672.                     var f = [
  1673.                         e.css('borderTopWidth'),
  1674.                         e.css('borderRightWidth'),
  1675.                         e.css('borderBottomWidth'),
  1676.                         e.css('borderLeftWidth')
  1677.                     ],
  1678.                     g = [
  1679.                         e.css('paddingTop'),
  1680.                         e.css('paddingRight'),
  1681.                         e.css('paddingBottom'),
  1682.                         e.css('paddingLeft')
  1683.                     ];
  1684.                     this.borderDif = a.map(f, function (a, b) {
  1685.                         var c = parseInt(a, 10) || 0,
  1686.                         d = parseInt(g[b], 10) || 0;
  1687.                         return c + d
  1688.                     })
  1689.                 }
  1690.                 if (!a.browser.msie || !a(c).is(':hidden') && !a(c).parents(':hidden').length) e.css({
  1691.                     height: c.height() - this.borderDif[0] - this.borderDif[2] || 0,
  1692.                     width: c.width() - this.borderDif[1] - this.borderDif[3] || 0
  1693.                 });
  1694.                  else continue
  1695.             }
  1696.         },
  1697.         _renderProxy: function () {
  1698.             var b = this.element,
  1699.             c = this.options;
  1700.             this.elementOffset = b.offset();
  1701.             if (this._helper) {
  1702.                 this.helper = this.helper || a('<div style="overflow:hidden;"></div>');
  1703.                 var d = a.browser.msie && a.browser.version < 7,
  1704.                 e = d ? 1 : 0,
  1705.                 f = d ? 2 : - 1;
  1706.                 this.helper.addClass(this._helper).css({
  1707.                     width: this.element.outerWidth() + f,
  1708.                     height: this.element.outerHeight() + f,
  1709.                     position: 'absolute',
  1710.                     left: this.elementOffset.left - e + 'px',
  1711.                     top: this.elementOffset.top - e + 'px',
  1712.                     zIndex: ++c.zIndex
  1713.                 }),
  1714.                 this.helper.appendTo('body').disableSelection()
  1715.             } else this.helper = this.element
  1716.         },
  1717.         _change: {
  1718.             e: function (a, b, c) {
  1719.                 return {
  1720.                     width: this.originalSize.width + b
  1721.                 }
  1722.             },
  1723.             w: function (a, b, c) {
  1724.                 var d = this.options,
  1725.                 e = this.originalSize,
  1726.                 f = this.originalPosition;
  1727.                 return {
  1728.                     left: f.left + b,
  1729.                     width: e.width - b
  1730.                 }
  1731.             },
  1732.             n: function (a, b, c) {
  1733.                 var d = this.options,
  1734.                 e = this.originalSize,
  1735.                 f = this.originalPosition;
  1736.                 return {
  1737.                     top: f.top + c,
  1738.                     height: e.height - c
  1739.                 }
  1740.             },
  1741.             s: function (a, b, c) {
  1742.                 return {
  1743.                     height: this.originalSize.height + c
  1744.                 }
  1745.             },
  1746.             se: function (b, c, d) {
  1747.                 return a.extend(this._change.s.apply(this, arguments), this._change.e.apply(this, [
  1748.                     b,
  1749.                     c,
  1750.                     d
  1751.                 ]))
  1752.             },
  1753.             sw: function (b, c, d) {
  1754.                 return a.extend(this._change.s.apply(this, arguments), this._change.w.apply(this, [
  1755.                     b,
  1756.                     c,
  1757.                     d
  1758.                 ]))
  1759.             },
  1760.             ne: function (b, c, d) {
  1761.                 return a.extend(this._change.n.apply(this, arguments), this._change.e.apply(this, [
  1762.                     b,
  1763.                     c,
  1764.                     d
  1765.                 ]))
  1766.             },
  1767.             nw: function (b, c, d) {
  1768.                 return a.extend(this._change.n.apply(this, arguments), this._change.w.apply(this, [
  1769.                     b,
  1770.                     c,
  1771.                     d
  1772.                 ]))
  1773.             }
  1774.         },
  1775.         _propagate: function (b, c) {
  1776.             a.ui.plugin.call(this, b, [
  1777.                 c,
  1778.                 this.ui()
  1779.             ]),
  1780.             b != 'resize' && this._trigger(b, c, this.ui())
  1781.         },
  1782.         plugins: {
  1783.         },
  1784.         ui: function () {
  1785.             return {
  1786.                 originalElement: this.originalElement,
  1787.                 element: this.element,
  1788.                 helper: this.helper,
  1789.                 position: this.position,
  1790.                 size: this.size,
  1791.                 originalSize: this.originalSize,
  1792.                 originalPosition: this.originalPosition
  1793.             }
  1794.         }
  1795.     }),
  1796.     a.extend(a.ui.resizable, {
  1797.         version: '1.8.24'
  1798.     }),
  1799.     a.ui.plugin.add('resizable', 'alsoResize', {
  1800.         start: function (b, c) {
  1801.             var d = a(this).data('resizable'),
  1802.             e = d.options,
  1803.             f = function (b) {
  1804.                 a(b).each(function () {
  1805.                     var b = a(this);
  1806.                     b.data('resizable-alsoresize', {
  1807.                         width: parseInt(b.width(), 10),
  1808.                         height: parseInt(b.height(), 10),
  1809.                         left: parseInt(b.css('left'), 10),
  1810.                         top: parseInt(b.css('top'), 10)
  1811.                     })
  1812.                 })
  1813.             };
  1814.             typeof e.alsoResize == 'object' && !e.alsoResize.parentNode ? e.alsoResize.length ? (e.alsoResize = e.alsoResize[0], f(e.alsoResize))  : a.each(e.alsoResize, function (a) {
  1815.                 f(a)
  1816.             })  : f(e.alsoResize)
  1817.         },
  1818.         resize: function (b, c) {
  1819.             var d = a(this).data('resizable'),
  1820.             e = d.options,
  1821.             f = d.originalSize,
  1822.             g = d.originalPosition,
  1823.             h = {
  1824.                 height: d.size.height - f.height || 0,
  1825.                 width: d.size.width - f.width || 0,
  1826.                 top: d.position.top - g.top || 0,
  1827.                 left: d.position.left - g.left || 0
  1828.             },
  1829.             i = function (b, d) {
  1830.                 a(b).each(function () {
  1831.                     var b = a(this),
  1832.                     e = a(this).data('resizable-alsoresize'),
  1833.                     f = {
  1834.                     },
  1835.                     g = d && d.length ? d : b.parents(c.originalElement[0]).length ? [
  1836.                         'width',
  1837.                         'height'
  1838.                     ] : [
  1839.                         'width',
  1840.                         'height',
  1841.                         'top',
  1842.                         'left'
  1843.                     ];
  1844.                     a.each(g, function (a, b) {
  1845.                         var c = (e[b] || 0) + (h[b] || 0);
  1846.                         c && c >= 0 && (f[b] = c || null)
  1847.                     }),
  1848.                     b.css(f)
  1849.                 })
  1850.             };
  1851.             typeof e.alsoResize == 'object' && !e.alsoResize.nodeType ? a.each(e.alsoResize, function (a, b) {
  1852.                 i(a, b)
  1853.             })  : i(e.alsoResize)
  1854.         },
  1855.         stop: function (b, c) {
  1856.             a(this).removeData('resizable-alsoresize')
  1857.         }
  1858.     }),
  1859.     a.ui.plugin.add('resizable', 'animate', {
  1860.         stop: function (b, c) {
  1861.             var d = a(this).data('resizable'),
  1862.             e = d.options,
  1863.             f = d._proportionallyResizeElements,
  1864.             g = f.length && /textarea/i.test(f[0].nodeName),
  1865.             h = g && a.ui.hasScroll(f[0], 'left') ? 0 : d.sizeDiff.height,
  1866.             i = g ? 0 : d.sizeDiff.width,
  1867.             j = {
  1868.                 width: d.size.width - i,
  1869.                 height: d.size.height - h
  1870.             },
  1871.             k = parseInt(d.element.css('left'), 10) + (d.position.left - d.originalPosition.left) || null,
  1872.             l = parseInt(d.element.css('top'), 10) + (d.position.top - d.originalPosition.top) || null;
  1873.             d.element.animate(a.extend(j, l && k ? {
  1874.                 top: l,
  1875.                 left: k
  1876.             }
  1877.              : {
  1878.             }), {
  1879.                 duration: e.animateDuration,
  1880.                 easing: e.animateEasing,
  1881.                 step: function () {
  1882.                     var c = {
  1883.                         width: parseInt(d.element.css('width'), 10),
  1884.                         height: parseInt(d.element.css('height'), 10),
  1885.                         top: parseInt(d.element.css('top'), 10),
  1886.                         left: parseInt(d.element.css('left'), 10)
  1887.                     };
  1888.                     f && f.length && a(f[0]).css({
  1889.                         width: c.width,
  1890.                         height: c.height
  1891.                     }),
  1892.                     d._updateCache(c),
  1893.                     d._propagate('resize', b)
  1894.                 }
  1895.             })
  1896.         }
  1897.     }),
  1898.     a.ui.plugin.add('resizable', 'containment', {
  1899.         start: function (b, d) {
  1900.             var e = a(this).data('resizable'),
  1901.             f = e.options,
  1902.             g = e.element,
  1903.             h = f.containment,
  1904.             i = h instanceof a ? h.get(0)  : /parent/.test(h) ? g.parent().get(0)  : h;
  1905.             if (!i) return;
  1906.             e.containerElement = a(i);
  1907.             if (/document/.test(h) || h == document) e.containerOffset = {
  1908.                 left: 0,
  1909.                 top: 0
  1910.             },
  1911.             e.containerPosition = {
  1912.                 left: 0,
  1913.                 top: 0
  1914.             },
  1915.             e.parentData = {
  1916.                 element: a(document),
  1917.                 left: 0,
  1918.                 top: 0,
  1919.                 width: a(document).width(),
  1920.                 height: a(document).height() || document.body.parentNode.scrollHeight
  1921.             };
  1922.              else {
  1923.                 var j = a(i),
  1924.                 k = [
  1925.                 ];
  1926.                 a(['Top',
  1927.                 'Right',
  1928.                 'Left',
  1929.                 'Bottom']).each(function (a, b) {
  1930.                     k[a] = c(j.css('padding' + b))
  1931.                 }),
  1932.                 e.containerOffset = j.offset(),
  1933.                 e.containerPosition = j.position(),
  1934.                 e.containerSize = {
  1935.                     height: j.innerHeight() - k[3],
  1936.                     width: j.innerWidth() - k[1]
  1937.                 };
  1938.                 var l = e.containerOffset,
  1939.                 m = e.containerSize.height,
  1940.                 n = e.containerSize.width,
  1941.                 o = a.ui.hasScroll(i, 'left') ? i.scrollWidth : n,
  1942.                 p = a.ui.hasScroll(i) ? i.scrollHeight : m;
  1943.                 e.parentData = {
  1944.                     element: i,
  1945.                     left: l.left,
  1946.                     top: l.top,
  1947.                     width: o,
  1948.                     height: p
  1949.                 }
  1950.             }
  1951.         },
  1952.         resize: function (b, c) {
  1953.             var d = a(this).data('resizable'),
  1954.             e = d.options,
  1955.             f = d.containerSize,
  1956.             g = d.containerOffset,
  1957.             h = d.size,
  1958.             i = d.position,
  1959.             j = d._aspectRatio || b.shiftKey,
  1960.             k = {
  1961.                 top: 0,
  1962.                 left: 0
  1963.             },
  1964.             l = d.containerElement;
  1965.             l[0] != document && /static/.test(l.css('position')) && (k = g),
  1966.             i.left < (d._helper ? g.left : 0) && (d.size.width = d.size.width + (d._helper ? d.position.left - g.left : d.position.left - k.left), j && (d.size.height = d.size.width / d.aspectRatio), d.position.left = e.helper ? g.left : 0),
  1967.             i.top < (d._helper ? g.top : 0) && (d.size.height = d.size.height + (d._helper ? d.position.top - g.top : d.position.top), j && (d.size.width = d.size.height * d.aspectRatio), d.position.top = d._helper ? g.top : 0),
  1968.             d.offset.left = d.parentData.left + d.position.left,
  1969.             d.offset.top = d.parentData.top + d.position.top;
  1970.             var m = Math.abs((d._helper ? d.offset.left - k.left : d.offset.left - k.left) + d.sizeDiff.width),
  1971.             n = Math.abs((d._helper ? d.offset.top - k.top : d.offset.top - g.top) + d.sizeDiff.height),
  1972.             o = d.containerElement.get(0) == d.element.parent().get(0),
  1973.             p = /relative|absolute/.test(d.containerElement.css('position'));
  1974.             o && p && (m -= d.parentData.left),
  1975.             m + d.size.width >= d.parentData.width && (d.size.width = d.parentData.width - m, j && (d.size.height = d.size.width / d.aspectRatio)),
  1976.             n + d.size.height >= d.parentData.height && (d.size.height = d.parentData.height - n, j && (d.size.width = d.size.height * d.aspectRatio))
  1977.         },
  1978.         stop: function (b, c) {
  1979.             var d = a(this).data('resizable'),
  1980.             e = d.options,
  1981.             f = d.position,
  1982.             g = d.containerOffset,
  1983.             h = d.containerPosition,
  1984.             i = d.containerElement,
  1985.             j = a(d.helper),
  1986.             k = j.offset(),
  1987.             l = j.outerWidth() - d.sizeDiff.width,
  1988.             m = j.outerHeight() - d.sizeDiff.height;
  1989.             d._helper && !e.animate && /relative/.test(i.css('position')) && a(this).css({
  1990.                 left: k.left - h.left - g.left,
  1991.                 width: l,
  1992.                 height: m
  1993.             }),
  1994.             d._helper && !e.animate && /static/.test(i.css('position')) && a(this).css({
  1995.                 left: k.left - h.left - g.left,
  1996.                 width: l,
  1997.                 height: m
  1998.             })
  1999.         }
  2000.     }),
  2001.     a.ui.plugin.add('resizable', 'ghost', {
  2002.         start: function (b, c) {
  2003.             var d = a(this).data('resizable'),
  2004.             e = d.options,
  2005.             f = d.size;
  2006.             d.ghost = d.originalElement.clone(),
  2007.             d.ghost.css({
  2008.                 opacity: 0.25,
  2009.                 display: 'block',
  2010.                 position: 'relative',
  2011.                 height: f.height,
  2012.                 width: f.width,
  2013.                 margin: 0,
  2014.                 left: 0,
  2015.                 top: 0
  2016.             }).addClass('ui-resizable-ghost').addClass(typeof e.ghost == 'string' ? e.ghost : ''),
  2017.             d.ghost.appendTo(d.helper)
  2018.         },
  2019.         resize: function (b, c) {
  2020.             var d = a(this).data('resizable'),
  2021.             e = d.options;
  2022.             d.ghost && d.ghost.css({
  2023.                 position: 'relative',
  2024.                 height: d.size.height,
  2025.                 width: d.size.width
  2026.             })
  2027.         },
  2028.         stop: function (b, c) {
  2029.             var d = a(this).data('resizable'),
  2030.             e = d.options;
  2031.             d.ghost && d.helper && d.helper.get(0).removeChild(d.ghost.get(0))
  2032.         }
  2033.     }),
  2034.     a.ui.plugin.add('resizable', 'grid', {
  2035.         resize: function (b, c) {
  2036.             var d = a(this).data('resizable'),
  2037.             e = d.options,
  2038.             f = d.size,
  2039.             g = d.originalSize,
  2040.             h = d.originalPosition,
  2041.             i = d.axis,
  2042.             j = e._aspectRatio || b.shiftKey;
  2043.             e.grid = typeof e.grid == 'number' ? [
  2044.                 e.grid,
  2045.                 e.grid
  2046.             ] : e.grid;
  2047.             var k = Math.round((f.width - g.width) / (e.grid[0] || 1)) * (e.grid[0] || 1),
  2048.             l = Math.round((f.height - g.height) / (e.grid[1] || 1)) * (e.grid[1] || 1);
  2049.             /^(se|s|e)$/.test(i) ? (d.size.width = g.width + k, d.size.height = g.height + l)  : /^(ne)$/.test(i) ? (d.size.width = g.width + k, d.size.height = g.height + l, d.position.top = h.top - l)  : /^(sw)$/.test(i) ? (d.size.width = g.width + k, d.size.height = g.height + l, d.position.left = h.left - k)  : (d.size.width = g.width + k, d.size.height = g.height + l, d.position.top = h.top - l, d.position.left = h.left - k)
  2050.         }
  2051.     });
  2052.     var c = function (a) {
  2053.         return parseInt(a, 10) || 0
  2054.     },
  2055.     d = function (a) {
  2056.         return !isNaN(parseInt(a, 10))
  2057.     }
  2058. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  2059. * https://github.com/jquery/jquery-ui
  2060. * Includes: jquery.ui.selectable.js
  2061. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  2062. (function (a, b) {
  2063.     a.widget('ui.selectable', a.ui.mouse, {
  2064.         options: {
  2065.             appendTo: 'body',
  2066.             autoRefresh: !0,
  2067.             distance: 0,
  2068.             filter: '*',
  2069.             tolerance: 'touch'
  2070.         },
  2071.         _create: function () {
  2072.             var b = this;
  2073.             this.element.addClass('ui-selectable'),
  2074.             this.dragged = !1;
  2075.             var c;
  2076.             this.refresh = function () {
  2077.                 c = a(b.options.filter, b.element[0]),
  2078.                 c.addClass('ui-selectee'),
  2079.                 c.each(function () {
  2080.                     var b = a(this),
  2081.                     c = b.offset();
  2082.                     a.data(this, 'selectable-item', {
  2083.                         element: this,
  2084.                         $element: b,
  2085.                         left: c.left,
  2086.                         top: c.top,
  2087.                         right: c.left + b.outerWidth(),
  2088.                         bottom: c.top + b.outerHeight(),
  2089.                         startselected: !1,
  2090.                         selected: b.hasClass('ui-selected'),
  2091.                         selecting: b.hasClass('ui-selecting'),
  2092.                         unselecting: b.hasClass('ui-unselecting')
  2093.                     })
  2094.                 })
  2095.             },
  2096.             this.refresh(),
  2097.             this.selectees = c.addClass('ui-selectee'),
  2098.             this._mouseInit(),
  2099.             this.helper = a('<div class=\'ui-selectable-helper\'></div>')
  2100.         },
  2101.         destroy: function () {
  2102.             return this.selectees.removeClass('ui-selectee').removeData('selectable-item'),
  2103.             this.element.removeClass('ui-selectable ui-selectable-disabled').removeData('selectable').unbind('.selectable'),
  2104.             this._mouseDestroy(),
  2105.             this
  2106.         },
  2107.         _mouseStart: function (b) {
  2108.             var c = this;
  2109.             this.opos = [
  2110.                 b.pageX,
  2111.                 b.pageY
  2112.             ];
  2113.             if (this.options.disabled) return;
  2114.             var d = this.options;
  2115.             this.selectees = a(d.filter, this.element[0]),
  2116.             this._trigger('start', b),
  2117.             a(d.appendTo).append(this.helper),
  2118.             this.helper.css({
  2119.                 left: b.clientX,
  2120.                 top: b.clientY,
  2121.                 width: 0,
  2122.                 height: 0
  2123.             }),
  2124.             d.autoRefresh && this.refresh(),
  2125.             this.selectees.filter('.ui-selected').each(function () {
  2126.                 var d = a.data(this, 'selectable-item');
  2127.                 d.startselected = !0,
  2128.                 !b.metaKey && !b.ctrlKey && (d.$element.removeClass('ui-selected'), d.selected = !1, d.$element.addClass('ui-unselecting'), d.unselecting = !0, c._trigger('unselecting', b, {
  2129.                     unselecting: d.element
  2130.                 }))
  2131.             }),
  2132.             a(b.target).parents().andSelf().each(function () {
  2133.                 var d = a.data(this, 'selectable-item');
  2134.                 if (d) {
  2135.                     var e = !b.metaKey && !b.ctrlKey || !d.$element.hasClass('ui-selected');
  2136.                     return d.$element.removeClass(e ? 'ui-unselecting' : 'ui-selected').addClass(e ? 'ui-selecting' : 'ui-unselecting'),
  2137.                     d.unselecting = !e,
  2138.                     d.selecting = e,
  2139.                     d.selected = e,
  2140.                     e ? c._trigger('selecting', b, {
  2141.                         selecting: d.element
  2142.                     })  : c._trigger('unselecting', b, {
  2143.                         unselecting: d.element
  2144.                     }),
  2145.                     !1
  2146.                 }
  2147.             })
  2148.         },
  2149.         _mouseDrag: function (b) {
  2150.             var c = this;
  2151.             this.dragged = !0;
  2152.             if (this.options.disabled) return;
  2153.             var d = this.options,
  2154.             e = this.opos[0],
  2155.             f = this.opos[1],
  2156.             g = b.pageX,
  2157.             h = b.pageY;
  2158.             if (e > g) {
  2159.                 var i = g;
  2160.                 g = e,
  2161.                 e = i
  2162.             }
  2163.             if (f > h) {
  2164.                 var i = h;
  2165.                 h = f,
  2166.                 f = i
  2167.             }
  2168.             return this.helper.css({
  2169.                 left: e,
  2170.                 top: f,
  2171.                 width: g - e,
  2172.                 height: h - f
  2173.             }),
  2174.             this.selectees.each(function () {
  2175.                 var i = a.data(this, 'selectable-item');
  2176.                 if (!i || i.element == c.element[0]) return;
  2177.                 var j = !1;
  2178.                 d.tolerance == 'touch' ? j = !(i.left > g || i.right < e || i.top > h || i.bottom < f)  : d.tolerance == 'fit' && (j = i.left > e && i.right < g && i.top > f && i.bottom < h),
  2179.                 j ? (i.selected && (i.$element.removeClass('ui-selected'), i.selected = !1), i.unselecting && (i.$element.removeClass('ui-unselecting'), i.unselecting = !1), i.selecting || (i.$element.addClass('ui-selecting'), i.selecting = !0, c._trigger('selecting', b, {
  2180.                     selecting: i.element
  2181.                 })))  : (i.selecting && ((b.metaKey || b.ctrlKey) && i.startselected ? (i.$element.removeClass('ui-selecting'), i.selecting = !1, i.$element.addClass('ui-selected'), i.selected = !0)  : (i.$element.removeClass('ui-selecting'), i.selecting = !1, i.startselected && (i.$element.addClass('ui-unselecting'), i.unselecting = !0), c._trigger('unselecting', b, {
  2182.                     unselecting: i.element
  2183.                 }))), i.selected && !b.metaKey && !b.ctrlKey && !i.startselected && (i.$element.removeClass('ui-selected'), i.selected = !1, i.$element.addClass('ui-unselecting'), i.unselecting = !0, c._trigger('unselecting', b, {
  2184.                     unselecting: i.element
  2185.                 })))
  2186.             }),
  2187.             !1
  2188.         },
  2189.         _mouseStop: function (b) {
  2190.             var c = this;
  2191.             this.dragged = !1;
  2192.             var d = this.options;
  2193.             return a('.ui-unselecting', this.element[0]).each(function () {
  2194.                 var d = a.data(this, 'selectable-item');
  2195.                 d.$element.removeClass('ui-unselecting'),
  2196.                 d.unselecting = !1,
  2197.                 d.startselected = !1,
  2198.                 c._trigger('unselected', b, {
  2199.                     unselected: d.element
  2200.                 })
  2201.             }),
  2202.             a('.ui-selecting', this.element[0]).each(function () {
  2203.                 var d = a.data(this, 'selectable-item');
  2204.                 d.$element.removeClass('ui-selecting').addClass('ui-selected'),
  2205.                 d.selecting = !1,
  2206.                 d.selected = !0,
  2207.                 d.startselected = !0,
  2208.                 c._trigger('selected', b, {
  2209.                     selected: d.element
  2210.                 })
  2211.             }),
  2212.             this._trigger('stop', b),
  2213.             this.helper.remove(),
  2214.             !1
  2215.         }
  2216.     }),
  2217.     a.extend(a.ui.selectable, {
  2218.         version: '1.8.24'
  2219.     })
  2220. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  2221. * https://github.com/jquery/jquery-ui
  2222. * Includes: jquery.ui.sortable.js
  2223. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  2224. (function (a, b) {
  2225.     a.widget('ui.sortable', a.ui.mouse, {
  2226.         widgetEventPrefix: 'sort',
  2227.         ready: !1,
  2228.         options: {
  2229.             appendTo: 'parent',
  2230.             axis: !1,
  2231.             connectWith: !1,
  2232.             containment: !1,
  2233.             cursor: 'auto',
  2234.             cursorAt: !1,
  2235.             dropOnEmpty: !0,
  2236.             forcePlaceholderSize: !1,
  2237.             forceHelperSize: !1,
  2238.             grid: !1,
  2239.             handle: !1,
  2240.             helper: 'original',
  2241.             items: '> *',
  2242.             opacity: !1,
  2243.             placeholder: !1,
  2244.             revert: !1,
  2245.             scroll: !0,
  2246.             scrollSensitivity: 20,
  2247.             scrollSpeed: 20,
  2248.             scope: 'default',
  2249.             tolerance: 'intersect',
  2250.             zIndex: 1000
  2251.         },
  2252.         _create: function () {
  2253.             var a = this.options;
  2254.             this.containerCache = {
  2255.             },
  2256.             this.element.addClass('ui-sortable'),
  2257.             this.refresh(),
  2258.             this.floating = this.items.length ? a.axis === 'x' || /left|right/.test(this.items[0].item.css('float')) || /inline|table-cell/.test(this.items[0].item.css('display'))  : !1,
  2259.             this.offset = this.element.offset(),
  2260.             this._mouseInit(),
  2261.             this.ready = !0
  2262.         },
  2263.         destroy: function () {
  2264.             a.Widget.prototype.destroy.call(this),
  2265.             this.element.removeClass('ui-sortable ui-sortable-disabled'),
  2266.             this._mouseDestroy();
  2267.             for (var b = this.items.length - 1; b >= 0; b--) this.items[b].item.removeData(this.widgetName + '-item');
  2268.             return this
  2269.         },
  2270.         _setOption: function (b, c) {
  2271.             b === 'disabled' ? (this.options[b] = c, this.widget() [c ? 'addClass' : 'removeClass']('ui-sortable-disabled'))  : a.Widget.prototype._setOption.apply(this, arguments)
  2272.         },
  2273.         _mouseCapture: function (b, c) {
  2274.             var d = this;
  2275.             if (this.reverting) return !1;
  2276.             if (this.options.disabled || this.options.type == 'static') return !1;
  2277.             this._refreshItems(b);
  2278.             var e = null,
  2279.             f = this,
  2280.             g = a(b.target).parents().each(function () {
  2281.                 if (a.data(this, d.widgetName + '-item') == f) return e = a(this),
  2282.                 !1
  2283.             });
  2284.             a.data(b.target, d.widgetName + '-item') == f && (e = a(b.target));
  2285.             if (!e) return !1;
  2286.             if (this.options.handle && !c) {
  2287.                 var h = !1;
  2288.                 a(this.options.handle, e).find('*').andSelf().each(function () {
  2289.                     this == b.target && (h = !0)
  2290.                 });
  2291.                 if (!h) return !1
  2292.             }
  2293.             return this.currentItem = e,
  2294.             this._removeCurrentsFromItems(),
  2295.             !0
  2296.         },
  2297.         _mouseStart: function (b, c, d) {
  2298.             var e = this.options,
  2299.             f = this;
  2300.             this.currentContainer = this,
  2301.             this.refreshPositions(),
  2302.             this.helper = this._createHelper(b),
  2303.             this._cacheHelperProportions(),
  2304.             this._cacheMargins(),
  2305.             this.scrollParent = this.helper.scrollParent(),
  2306.             this.offset = this.currentItem.offset(),
  2307.             this.offset = {
  2308.                 top: this.offset.top - this.margins.top,
  2309.                 left: this.offset.left - this.margins.left
  2310.             },
  2311.             a.extend(this.offset, {
  2312.                 click: {
  2313.                     left: b.pageX - this.offset.left,
  2314.                     top: b.pageY - this.offset.top
  2315.                 },
  2316.                 parent: this._getParentOffset(),
  2317.                 relative: this._getRelativeOffset()
  2318.             }),
  2319.             this.helper.css('position', 'absolute'),
  2320.             this.cssPosition = this.helper.css('position'),
  2321.             this.originalPosition = this._generatePosition(b),
  2322.             this.originalPageX = b.pageX,
  2323.             this.originalPageY = b.pageY,
  2324.             e.cursorAt && this._adjustOffsetFromHelper(e.cursorAt),
  2325.             this.domPosition = {
  2326.                 prev: this.currentItem.prev() [0],
  2327.                 parent: this.currentItem.parent() [0]
  2328.             },
  2329.             this.helper[0] != this.currentItem[0] && this.currentItem.hide(),
  2330.             this._createPlaceholder(),
  2331.             e.containment && this._setContainment(),
  2332.             e.cursor && (a('body').css('cursor') && (this._storedCursor = a('body').css('cursor')), a('body').css('cursor', e.cursor)),
  2333.             e.opacity && (this.helper.css('opacity') && (this._storedOpacity = this.helper.css('opacity')), this.helper.css('opacity', e.opacity)),
  2334.             e.zIndex && (this.helper.css('zIndex') && (this._storedZIndex = this.helper.css('zIndex')), this.helper.css('zIndex', e.zIndex)),
  2335.             this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML' && (this.overflowOffset = this.scrollParent.offset()),
  2336.             this._trigger('start', b, this._uiHash()),
  2337.             this._preserveHelperProportions || this._cacheHelperProportions();
  2338.             if (!d) for (var g = this.containers.length - 1; g >= 0; g--) this.containers[g]._trigger('activate', b, f._uiHash(this));
  2339.             return a.ui.ddmanager && (a.ui.ddmanager.current = this),
  2340.             a.ui.ddmanager && !e.dropBehaviour && a.ui.ddmanager.prepareOffsets(this, b),
  2341.             this.dragging = !0,
  2342.             this.helper.addClass('ui-sortable-helper'),
  2343.             this._mouseDrag(b),
  2344.             !0
  2345.         },
  2346.         _mouseDrag: function (b) {
  2347.             this.position = this._generatePosition(b),
  2348.             this.positionAbs = this._convertPositionTo('absolute'),
  2349.             this.lastPositionAbs || (this.lastPositionAbs = this.positionAbs);
  2350.             if (this.options.scroll) {
  2351.                 var c = this.options,
  2352.                 d = !1;
  2353.                 this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML' ? (this.overflowOffset.top + this.scrollParent[0].offsetHeight - b.pageY < c.scrollSensitivity ? this.scrollParent[0].scrollTop = d = this.scrollParent[0].scrollTop + c.scrollSpeed : b.pageY - this.overflowOffset.top < c.scrollSensitivity && (this.scrollParent[0].scrollTop = d = this.scrollParent[0].scrollTop - c.scrollSpeed), this.overflowOffset.left + this.scrollParent[0].offsetWidth - b.pageX < c.scrollSensitivity ? this.scrollParent[0].scrollLeft = d = this.scrollParent[0].scrollLeft + c.scrollSpeed : b.pageX - this.overflowOffset.left < c.scrollSensitivity && (this.scrollParent[0].scrollLeft = d = this.scrollParent[0].scrollLeft - c.scrollSpeed))  : (b.pageY - a(document).scrollTop() < c.scrollSensitivity ? d = a(document).scrollTop(a(document).scrollTop() - c.scrollSpeed)  : a(window).height() - (b.pageY - a(document).scrollTop()) < c.scrollSensitivity && (d = a(document).scrollTop(a(document).scrollTop() + c.scrollSpeed)), b.pageX - a(document).scrollLeft() < c.scrollSensitivity ? d = a(document).scrollLeft(a(document).scrollLeft() - c.scrollSpeed)  : a(window).width() - (b.pageX - a(document).scrollLeft()) < c.scrollSensitivity && (d = a(document).scrollLeft(a(document).scrollLeft() + c.scrollSpeed))),
  2354.                 d !== !1 && a.ui.ddmanager && !c.dropBehaviour && a.ui.ddmanager.prepareOffsets(this, b)
  2355.             }
  2356.             this.positionAbs = this._convertPositionTo('absolute');
  2357.             if (!this.options.axis || this.options.axis != 'y') this.helper[0].style.left = this.position.left + 'px';
  2358.             if (!this.options.axis || this.options.axis != 'x') this.helper[0].style.top = this.position.top + 'px';
  2359.             for (var e = this.items.length - 1; e >= 0; e--) {
  2360.                 var f = this.items[e],
  2361.                 g = f.item[0],
  2362.                 h = this._intersectsWithPointer(f);
  2363.                 if (!h) continue;
  2364.                 if (f.instance !== this.currentContainer) continue;
  2365.                 if (g != this.currentItem[0] && this.placeholder[h == 1 ? 'next' : 'prev']() [0] != g && !a.ui.contains(this.placeholder[0], g) && (this.options.type == 'semi-dynamic' ? !a.ui.contains(this.element[0], g)  : !0)) {
  2366.                     this.direction = h == 1 ? 'down' : 'up';
  2367.                     if (this.options.tolerance == 'pointer' || this._intersectsWithSides(f)) this._rearrange(b, f);
  2368.                      else break;
  2369.                     this._trigger('change', b, this._uiHash());
  2370.                     break
  2371.                 }
  2372.             }
  2373.             return this._contactContainers(b),
  2374.             a.ui.ddmanager && a.ui.ddmanager.drag(this, b),
  2375.             this._trigger('sort', b, this._uiHash()),
  2376.             this.lastPositionAbs = this.positionAbs,
  2377.             !1
  2378.         },
  2379.         _mouseStop: function (b, c) {
  2380.             if (!b) return;
  2381.             a.ui.ddmanager && !this.options.dropBehaviour && a.ui.ddmanager.drop(this, b);
  2382.             if (this.options.revert) {
  2383.                 var d = this,
  2384.                 e = d.placeholder.offset();
  2385.                 d.reverting = !0,
  2386.                 a(this.helper).animate({
  2387.                     left: e.left - this.offset.parent.left - d.margins.left + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollLeft),
  2388.                     top: e.top - this.offset.parent.top - d.margins.top + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollTop)
  2389.                 }, parseInt(this.options.revert, 10) || 500, function () {
  2390.                     d._clear(b)
  2391.                 })
  2392.             } else this._clear(b, c);
  2393.             return !1
  2394.         },
  2395.         cancel: function () {
  2396.             var b = this;
  2397.             if (this.dragging) {
  2398.                 this._mouseUp({
  2399.                     target: null
  2400.                 }),
  2401.                 this.options.helper == 'original' ? this.currentItem.css(this._storedCSS).removeClass('ui-sortable-helper')  : this.currentItem.show();
  2402.                 for (var c = this.containers.length - 1; c >= 0; c--) this.containers[c]._trigger('deactivate', null, b._uiHash(this)),
  2403.                 this.containers[c].containerCache.over && (this.containers[c]._trigger('out', null, b._uiHash(this)), this.containers[c].containerCache.over = 0)
  2404.             }
  2405.             return this.placeholder && (this.placeholder[0].parentNode && this.placeholder[0].parentNode.removeChild(this.placeholder[0]), this.options.helper != 'original' && this.helper && this.helper[0].parentNode && this.helper.remove(), a.extend(this, {
  2406.                 helper: null,
  2407.                 dragging: !1,
  2408.                 reverting: !1,
  2409.                 _noFinalSort: null
  2410.             }), this.domPosition.prev ? a(this.domPosition.prev).after(this.currentItem)  : a(this.domPosition.parent).prepend(this.currentItem)),
  2411.             this
  2412.         },
  2413.         serialize: function (b) {
  2414.             var c = this._getItemsAsjQuery(b && b.connected),
  2415.             d = [
  2416.             ];
  2417.             return b = b || {
  2418.             },
  2419.             a(c).each(function () {
  2420.                 var c = (a(b.item || this).attr(b.attribute || 'id') || '').match(b.expression || /(.+)[-=_](.+)/);
  2421.                 c && d.push((b.key || c[1] + '[]') + '=' + (b.key && b.expression ? c[1] : c[2]))
  2422.             }),
  2423.             !d.length && b.key && d.push(b.key + '='),
  2424.             d.join('&')
  2425.         },
  2426.         toArray: function (b) {
  2427.             var c = this._getItemsAsjQuery(b && b.connected),
  2428.             d = [
  2429.             ];
  2430.             return b = b || {
  2431.             },
  2432.             c.each(function () {
  2433.                 d.push(a(b.item || this).attr(b.attribute || 'id') || '')
  2434.             }),
  2435.             d
  2436.         },
  2437.         _intersectsWith: function (a) {
  2438.             var b = this.positionAbs.left,
  2439.             c = b + this.helperProportions.width,
  2440.             d = this.positionAbs.top,
  2441.             e = d + this.helperProportions.height,
  2442.             f = a.left,
  2443.             g = f + a.width,
  2444.             h = a.top,
  2445.             i = h + a.height,
  2446.             j = this.offset.click.top,
  2447.             k = this.offset.click.left,
  2448.             l = d + j > h && d + j < i && b + k > f && b + k < g;
  2449.             return this.options.tolerance == 'pointer' || this.options.forcePointerForContainers || this.options.tolerance != 'pointer' && this.helperProportions[this.floating ? 'width' : 'height'] > a[this.floating ? 'width' : 'height'] ? l : f < b + this.helperProportions.width / 2 && c - this.helperProportions.width / 2 < g && h < d + this.helperProportions.height / 2 && e - this.helperProportions.height / 2 < i
  2450.         },
  2451.         _intersectsWithPointer: function (b) {
  2452.             var c = this.options.axis === 'x' || a.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, b.top, b.height),
  2453.             d = this.options.axis === 'y' || a.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, b.left, b.width),
  2454.             e = c && d,
  2455.             f = this._getDragVerticalDirection(),
  2456.             g = this._getDragHorizontalDirection();
  2457.             return e ? this.floating ? g && g == 'right' || f == 'down' ? 2 : 1 : f && (f == 'down' ? 2 : 1)  : !1
  2458.         },
  2459.         _intersectsWithSides: function (b) {
  2460.             var c = a.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, b.top + b.height / 2, b.height),
  2461.             d = a.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, b.left + b.width / 2, b.width),
  2462.             e = this._getDragVerticalDirection(),
  2463.             f = this._getDragHorizontalDirection();
  2464.             return this.floating && f ? f == 'right' && d || f == 'left' && !d : e && (e == 'down' && c || e == 'up' && !c)
  2465.         },
  2466.         _getDragVerticalDirection: function () {
  2467.             var a = this.positionAbs.top - this.lastPositionAbs.top;
  2468.             return a != 0 && (a > 0 ? 'down' : 'up')
  2469.         },
  2470.         _getDragHorizontalDirection: function () {
  2471.             var a = this.positionAbs.left - this.lastPositionAbs.left;
  2472.             return a != 0 && (a > 0 ? 'right' : 'left')
  2473.         },
  2474.         refresh: function (a) {
  2475.             return this._refreshItems(a),
  2476.             this.refreshPositions(),
  2477.             this
  2478.         },
  2479.         _connectWith: function () {
  2480.             var a = this.options;
  2481.             return a.connectWith.constructor == String ? [
  2482.                 a.connectWith
  2483.             ] : a.connectWith
  2484.         },
  2485.         _getItemsAsjQuery: function (b) {
  2486.             var c = this,
  2487.             d = [
  2488.             ],
  2489.             e = [
  2490.             ],
  2491.             f = this._connectWith();
  2492.             if (f && b) for (var g = f.length - 1; g >= 0; g--) {
  2493.                 var h = a(f[g]);
  2494.                 for (var i = h.length - 1; i >= 0; i--) {
  2495.                     var j = a.data(h[i], this.widgetName);
  2496.                     j && j != this && !j.options.disabled && e.push([a.isFunction(j.options.items) ? j.options.items.call(j.element)  : a(j.options.items, j.element).not('.ui-sortable-helper').not('.ui-sortable-placeholder'),
  2497.                     j])
  2498.                 }
  2499.             }
  2500.             e.push([a.isFunction(this.options.items) ? this.options.items.call(this.element, null, {
  2501.                 options: this.options,
  2502.                 item: this.currentItem
  2503.             })  : a(this.options.items, this.element).not('.ui-sortable-helper').not('.ui-sortable-placeholder'),
  2504.             this]);
  2505.             for (var g = e.length - 1; g >= 0; g--) e[g][0].each(function () {
  2506.                 d.push(this)
  2507.             });
  2508.             return a(d)
  2509.         },
  2510.         _removeCurrentsFromItems: function () {
  2511.             var a = this.currentItem.find(':data(' + this.widgetName + '-item)');
  2512.             for (var b = 0; b < this.items.length; b++) for (var c = 0; c < a.length; c++) a[c] == this.items[b].item[0] && this.items.splice(b, 1)
  2513.         },
  2514.         _refreshItems: function (b) {
  2515.             this.items = [
  2516.             ],
  2517.             this.containers = [
  2518.                 this
  2519.             ];
  2520.             var c = this.items,
  2521.             d = this,
  2522.             e = [
  2523.                 [a.isFunction(this.options.items) ? this.options.items.call(this.element[0], b, {
  2524.                     item: this.currentItem
  2525.                 })  : a(this.options.items, this.element),
  2526.                 this]
  2527.             ],
  2528.             f = this._connectWith();
  2529.             if (f && this.ready) for (var g = f.length - 1; g >= 0; g--) {
  2530.                 var h = a(f[g]);
  2531.                 for (var i = h.length - 1; i >= 0; i--) {
  2532.                     var j = a.data(h[i], this.widgetName);
  2533.                     j && j != this && !j.options.disabled && (e.push([a.isFunction(j.options.items) ? j.options.items.call(j.element[0], b, {
  2534.                         item: this.currentItem
  2535.                     })  : a(j.options.items, j.element),
  2536.                     j]), this.containers.push(j))
  2537.                 }
  2538.             }
  2539.             for (var g = e.length - 1; g >= 0; g--) {
  2540.                 var k = e[g][1],
  2541.                 l = e[g][0];
  2542.                 for (var i = 0, m = l.length; i < m; i++) {
  2543.                     var n = a(l[i]);
  2544.                     n.data(this.widgetName + '-item', k),
  2545.                     c.push({
  2546.                         item: n,
  2547.                         instance: k,
  2548.                         width: 0,
  2549.                         height: 0,
  2550.                         left: 0,
  2551.                         top: 0
  2552.                     })
  2553.                 }
  2554.             }
  2555.         },
  2556.         refreshPositions: function (b) {
  2557.             this.offsetParent && this.helper && (this.offset.parent = this._getParentOffset());
  2558.             for (var c = this.items.length - 1; c >= 0; c--) {
  2559.                 var d = this.items[c];
  2560.                 if (d.instance != this.currentContainer && this.currentContainer && d.item[0] != this.currentItem[0]) continue;
  2561.                 var e = this.options.toleranceElement ? a(this.options.toleranceElement, d.item)  : d.item;
  2562.                 b || (d.width = e.outerWidth(), d.height = e.outerHeight());
  2563.                 var f = e.offset();
  2564.                 d.left = f.left,
  2565.                 d.top = f.top
  2566.             }
  2567.             if (this.options.custom && this.options.custom.refreshContainers) this.options.custom.refreshContainers.call(this);
  2568.              else for (var c = this.containers.length - 1; c >= 0; c--) {
  2569.                 var f = this.containers[c].element.offset();
  2570.                 this.containers[c].containerCache.left = f.left,
  2571.                 this.containers[c].containerCache.top = f.top,
  2572.                 this.containers[c].containerCache.width = this.containers[c].element.outerWidth(),
  2573.                 this.containers[c].containerCache.height = this.containers[c].element.outerHeight()
  2574.             }
  2575.             return this
  2576.         },
  2577.         _createPlaceholder: function (b) {
  2578.             var c = b || this,
  2579.             d = c.options;
  2580.             if (!d.placeholder || d.placeholder.constructor == String) {
  2581.                 var e = d.placeholder;
  2582.                 d.placeholder = {
  2583.                     element: function () {
  2584.                         var b = a(document.createElement(c.currentItem[0].nodeName)).addClass(e || c.currentItem[0].className + ' ui-sortable-placeholder').removeClass('ui-sortable-helper') [0];
  2585.                         return e || (b.style.visibility = 'hidden'),
  2586.                         b
  2587.                     },
  2588.                     update: function (a, b) {
  2589.                         if (e && !d.forcePlaceholderSize) return;
  2590.                         b.height() || b.height(c.currentItem.innerHeight() - parseInt(c.currentItem.css('paddingTop') || 0, 10) - parseInt(c.currentItem.css('paddingBottom') || 0, 10)),
  2591.                         b.width() || b.width(c.currentItem.innerWidth() - parseInt(c.currentItem.css('paddingLeft') || 0, 10) - parseInt(c.currentItem.css('paddingRight') || 0, 10))
  2592.                     }
  2593.                 }
  2594.             }
  2595.             c.placeholder = a(d.placeholder.element.call(c.element, c.currentItem)),
  2596.             c.currentItem.after(c.placeholder),
  2597.             d.placeholder.update(c, c.placeholder)
  2598.         },
  2599.         _contactContainers: function (b) {
  2600.             var c = null,
  2601.             d = null;
  2602.             for (var e = this.containers.length - 1; e >= 0; e--) {
  2603.                 if (a.ui.contains(this.currentItem[0], this.containers[e].element[0])) continue;
  2604.                 if (this._intersectsWith(this.containers[e].containerCache)) {
  2605.                     if (c && a.ui.contains(this.containers[e].element[0], c.element[0])) continue;
  2606.                     c = this.containers[e],
  2607.                     d = e
  2608.                 } else this.containers[e].containerCache.over && (this.containers[e]._trigger('out', b, this._uiHash(this)), this.containers[e].containerCache.over = 0)
  2609.             }
  2610.             if (!c) return;
  2611.             if (this.containers.length === 1) this.containers[d]._trigger('over', b, this._uiHash(this)),
  2612.             this.containers[d].containerCache.over = 1;
  2613.              else if (this.currentContainer != this.containers[d]) {
  2614.                 var f = 10000,
  2615.                 g = null,
  2616.                 h = this.positionAbs[this.containers[d].floating ? 'left' : 'top'];
  2617.                 for (var i = this.items.length - 1; i >= 0; i--) {
  2618.                     if (!a.ui.contains(this.containers[d].element[0], this.items[i].item[0])) continue;
  2619.                     var j = this.containers[d].floating ? this.items[i].item.offset().left : this.items[i].item.offset().top;
  2620.                     Math.abs(j - h) < f && (f = Math.abs(j - h), g = this.items[i], this.direction = j - h > 0 ? 'down' : 'up')
  2621.                 }
  2622.                 if (!g && !this.options.dropOnEmpty) return;
  2623.                 this.currentContainer = this.containers[d],
  2624.                 g ? this._rearrange(b, g, null, !0)  : this._rearrange(b, null, this.containers[d].element, !0),
  2625.                 this._trigger('change', b, this._uiHash()),
  2626.                 this.containers[d]._trigger('change', b, this._uiHash(this)),
  2627.                 this.options.placeholder.update(this.currentContainer, this.placeholder),
  2628.                 this.containers[d]._trigger('over', b, this._uiHash(this)),
  2629.                 this.containers[d].containerCache.over = 1
  2630.             }
  2631.         },
  2632.         _createHelper: function (b) {
  2633.             var c = this.options,
  2634.             d = a.isFunction(c.helper) ? a(c.helper.apply(this.element[0], [
  2635.                 b,
  2636.                 this.currentItem
  2637.             ]))  : c.helper == 'clone' ? this.currentItem.clone()  : this.currentItem;
  2638.             return d.parents('body').length || a(c.appendTo != 'parent' ? c.appendTo : this.currentItem[0].parentNode) [0].appendChild(d[0]),
  2639.             d[0] == this.currentItem[0] && (this._storedCSS = {
  2640.                 width: this.currentItem[0].style.width,
  2641.                 height: this.currentItem[0].style.height,
  2642.                 position: this.currentItem.css('position'),
  2643.                 top: this.currentItem.css('top'),
  2644.                 left: this.currentItem.css('left')
  2645.             }),
  2646.             (d[0].style.width == '' || c.forceHelperSize) && d.width(this.currentItem.width()),
  2647.             (d[0].style.height == '' || c.forceHelperSize) && d.height(this.currentItem.height()),
  2648.             d
  2649.         },
  2650.         _adjustOffsetFromHelper: function (b) {
  2651.             typeof b == 'string' && (b = b.split(' ')),
  2652.             a.isArray(b) && (b = {
  2653.                 left: + b[0],
  2654.                 top: + b[1] || 0
  2655.             }),
  2656.             'left' in b && (this.offset.click.left = b.left + this.margins.left),
  2657.             'right' in b && (this.offset.click.left = this.helperProportions.width - b.right + this.margins.left),
  2658.             'top' in b && (this.offset.click.top = b.top + this.margins.top),
  2659.             'bottom' in b && (this.offset.click.top = this.helperProportions.height - b.bottom + this.margins.top)
  2660.         },
  2661.         _getParentOffset: function () {
  2662.             this.offsetParent = this.helper.offsetParent();
  2663.             var b = this.offsetParent.offset();
  2664.             this.cssPosition == 'absolute' && this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0]) && (b.left += this.scrollParent.scrollLeft(), b.top += this.scrollParent.scrollTop());
  2665.             if (this.offsetParent[0] == document.body || this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && a.browser.msie) b = {
  2666.                 top: 0,
  2667.                 left: 0
  2668.             };
  2669.             return {
  2670.                 top: b.top + (parseInt(this.offsetParent.css('borderTopWidth'), 10) || 0),
  2671.                 left: b.left + (parseInt(this.offsetParent.css('borderLeftWidth'), 10) || 0)
  2672.             }
  2673.         },
  2674.         _getRelativeOffset: function () {
  2675.             if (this.cssPosition == 'relative') {
  2676.                 var a = this.currentItem.position();
  2677.                 return {
  2678.                     top: a.top - (parseInt(this.helper.css('top'), 10) || 0) + this.scrollParent.scrollTop(),
  2679.                     left: a.left - (parseInt(this.helper.css('left'), 10) || 0) + this.scrollParent.scrollLeft()
  2680.                 }
  2681.             }
  2682.             return {
  2683.                 top: 0,
  2684.                 left: 0
  2685.             }
  2686.         },
  2687.         _cacheMargins: function () {
  2688.             this.margins = {
  2689.                 left: parseInt(this.currentItem.css('marginLeft'), 10) || 0,
  2690.                 top: parseInt(this.currentItem.css('marginTop'), 10) || 0
  2691.             }
  2692.         },
  2693.         _cacheHelperProportions: function () {
  2694.             this.helperProportions = {
  2695.                 width: this.helper.outerWidth(),
  2696.                 height: this.helper.outerHeight()
  2697.             }
  2698.         },
  2699.         _setContainment: function () {
  2700.             var b = this.options;
  2701.             b.containment == 'parent' && (b.containment = this.helper[0].parentNode);
  2702.             if (b.containment == 'document' || b.containment == 'window') this.containment = [
  2703.                 0 - this.offset.relative.left - this.offset.parent.left,
  2704.                 0 - this.offset.relative.top - this.offset.parent.top,
  2705.                 a(b.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left,
  2706.                 (a(b.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top
  2707.             ];
  2708.             if (!/^(document|window|parent)$/.test(b.containment)) {
  2709.                 var c = a(b.containment) [0],
  2710.                 d = a(b.containment).offset(),
  2711.                 e = a(c).css('overflow') != 'hidden';
  2712.                 this.containment = [
  2713.                     d.left + (parseInt(a(c).css('borderLeftWidth'), 10) || 0) + (parseInt(a(c).css('paddingLeft'), 10) || 0) - this.margins.left,
  2714.                     d.top + (parseInt(a(c).css('borderTopWidth'), 10) || 0) + (parseInt(a(c).css('paddingTop'), 10) || 0) - this.margins.top,
  2715.                     d.left + (e ? Math.max(c.scrollWidth, c.offsetWidth)  : c.offsetWidth) - (parseInt(a(c).css('borderLeftWidth'), 10) || 0) - (parseInt(a(c).css('paddingRight'), 10) || 0) - this.helperProportions.width - this.margins.left,
  2716.                     d.top + (e ? Math.max(c.scrollHeight, c.offsetHeight)  : c.offsetHeight) - (parseInt(a(c).css('borderTopWidth'), 10) || 0) - (parseInt(a(c).css('paddingBottom'), 10) || 0) - this.helperProportions.height - this.margins.top
  2717.                 ]
  2718.             }
  2719.         },
  2720.         _convertPositionTo: function (b, c) {
  2721.             c || (c = this.position);
  2722.             var d = b == 'absolute' ? 1 : - 1,
  2723.             e = this.options,
  2724.             f = this.cssPosition == 'absolute' && (this.scrollParent[0] == document || !a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent,
  2725.             g = /(html|body)/i.test(f[0].tagName);
  2726.             return {
  2727.                 top: c.top + this.offset.relative.top * d + this.offset.parent.top * d - (a.browser.safari && this.cssPosition == 'fixed' ? 0 : (this.cssPosition == 'fixed' ? - this.scrollParent.scrollTop()  : g ? 0 : f.scrollTop()) * d),
  2728.                 left: c.left + this.offset.relative.left * d + this.offset.parent.left * d - (a.browser.safari && this.cssPosition == 'fixed' ? 0 : (this.cssPosition == 'fixed' ? - this.scrollParent.scrollLeft()  : g ? 0 : f.scrollLeft()) * d)
  2729.             }
  2730.         },
  2731.         _generatePosition: function (b) {
  2732.             var c = this.options,
  2733.             d = this.cssPosition == 'absolute' && (this.scrollParent[0] == document || !a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent,
  2734.             e = /(html|body)/i.test(d[0].tagName);
  2735.             this.cssPosition == 'relative' && (this.scrollParent[0] == document || this.scrollParent[0] == this.offsetParent[0]) && (this.offset.relative = this._getRelativeOffset());
  2736.             var f = b.pageX,
  2737.             g = b.pageY;
  2738.             if (this.originalPosition) {
  2739.                 this.containment && (b.pageX - this.offset.click.left < this.containment[0] && (f = this.containment[0] + this.offset.click.left), b.pageY - this.offset.click.top < this.containment[1] && (g = this.containment[1] + this.offset.click.top), b.pageX - this.offset.click.left > this.containment[2] && (f = this.containment[2] + this.offset.click.left), b.pageY - this.offset.click.top > this.containment[3] && (g = this.containment[3] + this.offset.click.top));
  2740.                 if (c.grid) {
  2741.                     var h = this.originalPageY + Math.round((g - this.originalPageY) / c.grid[1]) * c.grid[1];
  2742.                     g = this.containment ? h - this.offset.click.top < this.containment[1] || h - this.offset.click.top > this.containment[3] ? h - this.offset.click.top < this.containment[1] ? h + c.grid[1] : h - c.grid[1] : h : h;
  2743.                     var i = this.originalPageX + Math.round((f - this.originalPageX) / c.grid[0]) * c.grid[0];
  2744.                     f = this.containment ? i - this.offset.click.left < this.containment[0] || i - this.offset.click.left > this.containment[2] ? i - this.offset.click.left < this.containment[0] ? i + c.grid[0] : i - c.grid[0] : i : i
  2745.                 }
  2746.             }
  2747.             return {
  2748.                 top: g - this.offset.click.top - this.offset.relative.top - this.offset.parent.top + (a.browser.safari && this.cssPosition == 'fixed' ? 0 : this.cssPosition == 'fixed' ? - this.scrollParent.scrollTop()  : e ? 0 : d.scrollTop()),
  2749.                 left: f - this.offset.click.left - this.offset.relative.left - this.offset.parent.left + (a.browser.safari && this.cssPosition == 'fixed' ? 0 : this.cssPosition == 'fixed' ? - this.scrollParent.scrollLeft()  : e ? 0 : d.scrollLeft())
  2750.             }
  2751.         },
  2752.         _rearrange: function (a, b, c, d) {
  2753.             c ? c[0].appendChild(this.placeholder[0])  : b.item[0].parentNode.insertBefore(this.placeholder[0], this.direction == 'down' ? b.item[0] : b.item[0].nextSibling),
  2754.             this.counter = this.counter ? ++this.counter : 1;
  2755.             var e = this,
  2756.             f = this.counter;
  2757.             window.setTimeout(function () {
  2758.                 f == e.counter && e.refreshPositions(!d)
  2759.             }, 0)
  2760.         },
  2761.         _clear: function (b, c) {
  2762.             this.reverting = !1;
  2763.             var d = [
  2764.             ],
  2765.             e = this;
  2766.             !this._noFinalSort && this.currentItem.parent().length && this.placeholder.before(this.currentItem),
  2767.             this._noFinalSort = null;
  2768.             if (this.helper[0] == this.currentItem[0]) {
  2769.                 for (var f in this._storedCSS) if (this._storedCSS[f] == 'auto' || this._storedCSS[f] == 'static') this._storedCSS[f] = '';
  2770.                 this.currentItem.css(this._storedCSS).removeClass('ui-sortable-helper')
  2771.             } else this.currentItem.show();
  2772.             this.fromOutside && !c && d.push(function (a) {
  2773.                 this._trigger('receive', a, this._uiHash(this.fromOutside))
  2774.             }),
  2775.             (this.fromOutside || this.domPosition.prev != this.currentItem.prev().not('.ui-sortable-helper') [0] || this.domPosition.parent != this.currentItem.parent() [0]) && !c && d.push(function (a) {
  2776.                 this._trigger('update', a, this._uiHash())
  2777.             }),
  2778.             this !== this.currentContainer && (c || (d.push(function (a) {
  2779.                 this._trigger('remove', a, this._uiHash())
  2780.             }), d.push(function (a) {
  2781.                 return function (b) {
  2782.                     a._trigger('receive', b, this._uiHash(this))
  2783.                 }
  2784.             }.call(this, this.currentContainer)), d.push(function (a) {
  2785.                 return function (b) {
  2786.                     a._trigger('update', b, this._uiHash(this))
  2787.                 }
  2788.             }.call(this, this.currentContainer))));
  2789.             for (var f = this.containers.length - 1; f >= 0; f--) c || d.push(function (a) {
  2790.                 return function (b) {
  2791.                     a._trigger('deactivate', b, this._uiHash(this))
  2792.                 }
  2793.             }.call(this, this.containers[f])),
  2794.             this.containers[f].containerCache.over && (d.push(function (a) {
  2795.                 return function (b) {
  2796.                     a._trigger('out', b, this._uiHash(this))
  2797.                 }
  2798.             }.call(this, this.containers[f])), this.containers[f].containerCache.over = 0);
  2799.             this._storedCursor && a('body').css('cursor', this._storedCursor),
  2800.             this._storedOpacity && this.helper.css('opacity', this._storedOpacity),
  2801.             this._storedZIndex && this.helper.css('zIndex', this._storedZIndex == 'auto' ? '' : this._storedZIndex),
  2802.             this.dragging = !1;
  2803.             if (this.cancelHelperRemoval) {
  2804.                 if (!c) {
  2805.                     this._trigger('beforeStop', b, this._uiHash());
  2806.                     for (var f = 0; f < d.length; f++) d[f].call(this, b);
  2807.                     this._trigger('stop', b, this._uiHash())
  2808.                 }
  2809.                 return this.fromOutside = !1,
  2810.                 !1
  2811.             }
  2812.             c || this._trigger('beforeStop', b, this._uiHash()),
  2813.             this.placeholder[0].parentNode.removeChild(this.placeholder[0]),
  2814.             this.helper[0] != this.currentItem[0] && this.helper.remove(),
  2815.             this.helper = null;
  2816.             if (!c) {
  2817.                 for (var f = 0; f < d.length; f++) d[f].call(this, b);
  2818.                 this._trigger('stop', b, this._uiHash())
  2819.             }
  2820.             return this.fromOutside = !1,
  2821.             !0
  2822.         },
  2823.         _trigger: function () {
  2824.             a.Widget.prototype._trigger.apply(this, arguments) === !1 && this.cancel()
  2825.         },
  2826.         _uiHash: function (b) {
  2827.             var c = b || this;
  2828.             return {
  2829.                 helper: c.helper,
  2830.                 placeholder: c.placeholder || a([]),
  2831.                 position: c.position,
  2832.                 originalPosition: c.originalPosition,
  2833.                 offset: c.positionAbs,
  2834.                 item: c.currentItem,
  2835.                 sender: b ? b.element : null
  2836.             }
  2837.         }
  2838.     }),
  2839.     a.extend(a.ui.sortable, {
  2840.         version: '1.8.24'
  2841.     })
  2842. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  2843. * https://github.com/jquery/jquery-ui
  2844. * Includes: jquery.ui.accordion.js
  2845. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  2846. (function (a, b) {
  2847.     a.widget('ui.accordion', {
  2848.         options: {
  2849.             active: 0,
  2850.             animated: 'slide',
  2851.             autoHeight: !0,
  2852.             clearStyle: !1,
  2853.             collapsible: !1,
  2854.             event: 'click',
  2855.             fillSpace: !1,
  2856.             header: '> li > :first-child,> :not(li):even',
  2857.             icons: {
  2858.                 header: 'ui-icon-triangle-1-e',
  2859.                 headerSelected: 'ui-icon-triangle-1-s'
  2860.             },
  2861.             navigation: !1,
  2862.             navigationFilter: function () {
  2863.                 return this.href.toLowerCase() === location.href.toLowerCase()
  2864.             }
  2865.         },
  2866.         _create: function () {
  2867.             var b = this,
  2868.             c = b.options;
  2869.             b.running = 0,
  2870.             b.element.addClass('ui-accordion ui-widget ui-helper-reset').children('li').addClass('ui-accordion-li-fix'),
  2871.             b.headers = b.element.find(c.header).addClass('ui-accordion-header ui-helper-reset ui-state-default ui-corner-all').bind('mouseenter.accordion', function () {
  2872.                 if (c.disabled) return;
  2873.                 a(this).addClass('ui-state-hover')
  2874.             }).bind('mouseleave.accordion', function () {
  2875.                 if (c.disabled) return;
  2876.                 a(this).removeClass('ui-state-hover')
  2877.             }).bind('focus.accordion', function () {
  2878.                 if (c.disabled) return;
  2879.                 a(this).addClass('ui-state-focus')
  2880.             }).bind('blur.accordion', function () {
  2881.                 if (c.disabled) return;
  2882.                 a(this).removeClass('ui-state-focus')
  2883.             }),
  2884.             b.headers.next().addClass('ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom');
  2885.             if (c.navigation) {
  2886.                 var d = b.element.find('a').filter(c.navigationFilter).eq(0);
  2887.                 if (d.length) {
  2888.                     var e = d.closest('.ui-accordion-header');
  2889.                     e.length ? b.active = e : b.active = d.closest('.ui-accordion-content').prev()
  2890.                 }
  2891.             }
  2892.             b.active = b._findActive(b.active || c.active).addClass('ui-state-default ui-state-active').toggleClass('ui-corner-all').toggleClass('ui-corner-top'),
  2893.             b.active.next().addClass('ui-accordion-content-active'),
  2894.             b._createIcons(),
  2895.             b.resize(),
  2896.             b.element.attr('role', 'tablist'),
  2897.             b.headers.attr('role', 'tab').bind('keydown.accordion', function (a) {
  2898.                 return b._keydown(a)
  2899.             }).next().attr('role', 'tabpanel'),
  2900.             b.headers.not(b.active || '').attr({
  2901.                 'aria-expanded': 'false',
  2902.                 'aria-selected': 'false',
  2903.                 tabIndex: - 1
  2904.             }).next().hide(),
  2905.             b.active.length ? b.active.attr({
  2906.                 'aria-expanded': 'true',
  2907.                 'aria-selected': 'true',
  2908.                 tabIndex: 0
  2909.             })  : b.headers.eq(0).attr('tabIndex', 0),
  2910.             a.browser.safari || b.headers.find('a').attr('tabIndex', - 1),
  2911.             c.event && b.headers.bind(c.event.split(' ').join('.accordion ') + '.accordion', function (a) {
  2912.                 b._clickHandler.call(b, a, this),
  2913.                 a.preventDefault()
  2914.             })
  2915.         },
  2916.         _createIcons: function () {
  2917.             var b = this.options;
  2918.             b.icons && (a('<span></span>').addClass('ui-icon ' + b.icons.header).prependTo(this.headers), this.active.children('.ui-icon').toggleClass(b.icons.header).toggleClass(b.icons.headerSelected), this.element.addClass('ui-accordion-icons'))
  2919.         },
  2920.         _destroyIcons: function () {
  2921.             this.headers.children('.ui-icon').remove(),
  2922.             this.element.removeClass('ui-accordion-icons')
  2923.         },
  2924.         destroy: function () {
  2925.             var b = this.options;
  2926.             this.element.removeClass('ui-accordion ui-widget ui-helper-reset').removeAttr('role'),
  2927.             this.headers.unbind('.accordion').removeClass('ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top').removeAttr('role').removeAttr('aria-expanded').removeAttr('aria-selected').removeAttr('tabIndex'),
  2928.             this.headers.find('a').removeAttr('tabIndex'),
  2929.             this._destroyIcons();
  2930.             var c = this.headers.next().css('display', '').removeAttr('role').removeClass('ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled');
  2931.             return (b.autoHeight || b.fillHeight) && c.css('height', ''),
  2932.             a.Widget.prototype.destroy.call(this)
  2933.         },
  2934.         _setOption: function (b, c) {
  2935.             a.Widget.prototype._setOption.apply(this, arguments),
  2936.             b == 'active' && this.activate(c),
  2937.             b == 'icons' && (this._destroyIcons(), c && this._createIcons()),
  2938.             b == 'disabled' && this.headers.add(this.headers.next()) [c ? 'addClass' : 'removeClass']('ui-accordion-disabled ui-state-disabled')
  2939.         },
  2940.         _keydown: function (b) {
  2941.             if (this.options.disabled || b.altKey || b.ctrlKey) return;
  2942.             var c = a.ui.keyCode,
  2943.             d = this.headers.length,
  2944.             e = this.headers.index(b.target),
  2945.             f = !1;
  2946.             switch (b.keyCode) {
  2947.                 case c.RIGHT:
  2948.                 case c.DOWN:
  2949.                     f = this.headers[(e + 1) % d];
  2950.                     break;
  2951.                 case c.LEFT:
  2952.                 case c.UP:
  2953.                     f = this.headers[(e - 1 + d) % d];
  2954.                     break;
  2955.                 case c.SPACE:
  2956.                 case c.ENTER:
  2957.                     this._clickHandler({
  2958.                         target: b.target
  2959.                     }, b.target),
  2960.                     b.preventDefault()
  2961.             }
  2962.             return f ? (a(b.target).attr('tabIndex', - 1), a(f).attr('tabIndex', 0), f.focus(), !1)  : !0
  2963.         },
  2964.         resize: function () {
  2965.             var b = this.options,
  2966.             c;
  2967.             if (b.fillSpace) {
  2968.                 if (a.browser.msie) {
  2969.                     var d = this.element.parent().css('overflow');
  2970.                     this.element.parent().css('overflow', 'hidden')
  2971.                 }
  2972.                 c = this.element.parent().height(),
  2973.                 a.browser.msie && this.element.parent().css('overflow', d),
  2974.                 this.headers.each(function () {
  2975.                     c -= a(this).outerHeight(!0)
  2976.                 }),
  2977.                 this.headers.next().each(function () {
  2978.                     a(this).height(Math.max(0, c - a(this).innerHeight() + a(this).height()))
  2979.                 }).css('overflow', 'auto')
  2980.             } else b.autoHeight && (c = 0, this.headers.next().each(function () {
  2981.                 c = Math.max(c, a(this).height('').height())
  2982.             }).height(c));
  2983.             return this
  2984.         },
  2985.         activate: function (a) {
  2986.             this.options.active = a;
  2987.             var b = this._findActive(a) [0];
  2988.             return this._clickHandler({
  2989.                 target: b
  2990.             }, b),
  2991.             this
  2992.         },
  2993.         _findActive: function (b) {
  2994.             return b ? typeof b == 'number' ? this.headers.filter(':eq(' + b + ')')  : this.headers.not(this.headers.not(b))  : b === !1 ? a([])  : this.headers.filter(':eq(0)')
  2995.         },
  2996.         _clickHandler: function (b, c) {
  2997.             var d = this.options;
  2998.             if (d.disabled) return;
  2999.             if (!b.target) {
  3000.                 if (!d.collapsible) return;
  3001.                 this.active.removeClass('ui-state-active ui-corner-top').addClass('ui-state-default ui-corner-all').children('.ui-icon').removeClass(d.icons.headerSelected).addClass(d.icons.header),
  3002.                 this.active.next().addClass('ui-accordion-content-active');
  3003.                 var e = this.active.next(),
  3004.                 f = {
  3005.                     options: d,
  3006.                     newHeader: a([]),
  3007.                     oldHeader: d.active,
  3008.                     newContent: a([]),
  3009.                     oldContent: e
  3010.                 },
  3011.                 g = this.active = a([]);
  3012.                 this._toggle(g, e, f);
  3013.                 return
  3014.             }
  3015.             var h = a(b.currentTarget || c),
  3016.             i = h[0] === this.active[0];
  3017.             d.active = d.collapsible && i ? !1 : this.headers.index(h);
  3018.             if (this.running || !d.collapsible && i) return;
  3019.             var j = this.active,
  3020.             g = h.next(),
  3021.             e = this.active.next(),
  3022.             f = {
  3023.                 options: d,
  3024.                 newHeader: i && d.collapsible ? a([])  : h,
  3025.                 oldHeader: this.active,
  3026.                 newContent: i && d.collapsible ? a([])  : g,
  3027.                 oldContent: e
  3028.             },
  3029.             k = this.headers.index(this.active[0]) > this.headers.index(h[0]);
  3030.             this.active = i ? a([])  : h,
  3031.             this._toggle(g, e, f, i, k),
  3032.             j.removeClass('ui-state-active ui-corner-top').addClass('ui-state-default ui-corner-all').children('.ui-icon').removeClass(d.icons.headerSelected).addClass(d.icons.header),
  3033.             i || (h.removeClass('ui-state-default ui-corner-all').addClass('ui-state-active ui-corner-top').children('.ui-icon').removeClass(d.icons.header).addClass(d.icons.headerSelected), h.next().addClass('ui-accordion-content-active'));
  3034.             return
  3035.         },
  3036.         _toggle: function (b, c, d, e, f) {
  3037.             var g = this,
  3038.             h = g.options;
  3039.             g.toShow = b,
  3040.             g.toHide = c,
  3041.             g.data = d;
  3042.             var i = function () {
  3043.                 if (!g) return;
  3044.                 return g._completed.apply(g, arguments)
  3045.             };
  3046.             g._trigger('changestart', null, g.data),
  3047.             g.running = c.size() === 0 ? b.size()  : c.size();
  3048.             if (h.animated) {
  3049.                 var j = {
  3050.                 };
  3051.                 h.collapsible && e ? j = {
  3052.                     toShow: a([]),
  3053.                     toHide: c,
  3054.                     complete: i,
  3055.                     down: f,
  3056.                     autoHeight: h.autoHeight || h.fillSpace
  3057.                 }
  3058.                  : j = {
  3059.                     toShow: b,
  3060.                     toHide: c,
  3061.                     complete: i,
  3062.                     down: f,
  3063.                     autoHeight: h.autoHeight || h.fillSpace
  3064.                 },
  3065.                 h.proxied || (h.proxied = h.animated),
  3066.                 h.proxiedDuration || (h.proxiedDuration = h.duration),
  3067.                 h.animated = a.isFunction(h.proxied) ? h.proxied(j)  : h.proxied,
  3068.                 h.duration = a.isFunction(h.proxiedDuration) ? h.proxiedDuration(j)  : h.proxiedDuration;
  3069.                 var k = a.ui.accordion.animations,
  3070.                 l = h.duration,
  3071.                 m = h.animated;
  3072.                 m && !k[m] && !a.easing[m] && (m = 'slide'),
  3073.                 k[m] || (k[m] = function (a) {
  3074.                     this.slide(a, {
  3075.                         easing: m,
  3076.                         duration: l || 700
  3077.                     })
  3078.                 }),
  3079.                 k[m](j)
  3080.             } else h.collapsible && e ? b.toggle()  : (c.hide(), b.show()),
  3081.             i(!0);
  3082.             c.prev().attr({
  3083.                 'aria-expanded': 'false',
  3084.                 'aria-selected': 'false',
  3085.                 tabIndex: - 1
  3086.             }).blur(),
  3087.             b.prev().attr({
  3088.                 'aria-expanded': 'true',
  3089.                 'aria-selected': 'true',
  3090.                 tabIndex: 0
  3091.             }).focus()
  3092.         },
  3093.         _completed: function (a) {
  3094.             this.running = a ? 0 : --this.running;
  3095.             if (this.running) return;
  3096.             this.options.clearStyle && this.toShow.add(this.toHide).css({
  3097.                 height: '',
  3098.                 overflow: ''
  3099.             }),
  3100.             this.toHide.removeClass('ui-accordion-content-active'),
  3101.             this.toHide.length && (this.toHide.parent() [0].className = this.toHide.parent() [0].className),
  3102.             this._trigger('change', null, this.data)
  3103.         }
  3104.     }), a.extend(a.ui.accordion, {
  3105.         version: '1.8.24',
  3106.         animations: {
  3107.             slide: function (b, c) {
  3108.                 b = a.extend({
  3109.                     easing: 'swing',
  3110.                     duration: 300
  3111.                 }, b, c);
  3112.                 if (!b.toHide.size()) {
  3113.                     b.toShow.animate({
  3114.                         height: 'show',
  3115.                         paddingTop: 'show',
  3116.                         paddingBottom: 'show'
  3117.                     }, b);
  3118.                     return
  3119.                 }
  3120.                 if (!b.toShow.size()) {
  3121.                     b.toHide.animate({
  3122.                         height: 'hide',
  3123.                         paddingTop: 'hide',
  3124.                         paddingBottom: 'hide'
  3125.                     }, b);
  3126.                     return
  3127.                 }
  3128.                 var d = b.toShow.css('overflow'),
  3129.                 e = 0,
  3130.                 f = {
  3131.                 },
  3132.                 g = {
  3133.                 },
  3134.                 h = [
  3135.                     'height',
  3136.                     'paddingTop',
  3137.                     'paddingBottom'
  3138.                 ],
  3139.                 i,
  3140.                 j = b.toShow;
  3141.                 i = j[0].style.width,
  3142.                 j.width(j.parent().width() - parseFloat(j.css('paddingLeft')) - parseFloat(j.css('paddingRight')) - (parseFloat(j.css('borderLeftWidth')) || 0) - (parseFloat(j.css('borderRightWidth')) || 0)),
  3143.                 a.each(h, function (c, d) {
  3144.                     g[d] = 'hide';
  3145.                     var e = ('' + a.css(b.toShow[0], d)).match(/^([\d+-.]+)(.*)$/);
  3146.                     f[d] = {
  3147.                         value: e[1],
  3148.                         unit: e[2] || 'px'
  3149.                     }
  3150.                 }),
  3151.                 b.toShow.css({
  3152.                     height: 0,
  3153.                     overflow: 'hidden'
  3154.                 }).show(),
  3155.                 b.toHide.filter(':hidden').each(b.complete).end().filter(':visible').animate(g, {
  3156.                     step: function (a, c) {
  3157.                         c.prop == 'height' && (e = c.end - c.start === 0 ? 0 : (c.now - c.start) / (c.end - c.start)),
  3158.                         b.toShow[0].style[c.prop] = e * f[c.prop].value + f[c.prop].unit
  3159.                     },
  3160.                     duration: b.duration,
  3161.                     easing: b.easing,
  3162.                     complete: function () {
  3163.                         b.autoHeight || b.toShow.css('height', ''),
  3164.                         b.toShow.css({
  3165.                             width: i,
  3166.                             overflow: d
  3167.                         }),
  3168.                         b.complete()
  3169.                     }
  3170.                 })
  3171.             },
  3172.             bounceslide: function (a) {
  3173.                 this.slide(a, {
  3174.                     easing: a.down ? 'easeOutBounce' : 'swing',
  3175.                     duration: a.down ? 1000 : 200
  3176.                 })
  3177.             }
  3178.         }
  3179.     })
  3180. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  3181. * https://github.com/jquery/jquery-ui
  3182. * Includes: jquery.ui.autocomplete.js
  3183. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  3184. (function (a, b) {
  3185.     var c = 0;
  3186.     a.widget('ui.autocomplete', {
  3187.         options: {
  3188.             appendTo: 'body',
  3189.             autoFocus: !1,
  3190.             delay: 300,
  3191.             minLength: 1,
  3192.             position: {
  3193.                 my: 'left top',
  3194.                 at: 'left bottom',
  3195.                 collision: 'none'
  3196.             },
  3197.             source: null
  3198.         },
  3199.         pending: 0,
  3200.         _create: function () {
  3201.             var b = this,
  3202.             c = this.element[0].ownerDocument,
  3203.             d;
  3204.             this.isMultiLine = this.element.is('textarea'),
  3205.             this.element.addClass('ui-autocomplete-input').attr('autocomplete', 'off').attr({
  3206.                 role: 'textbox',
  3207.                 'aria-autocomplete': 'list',
  3208.                 'aria-haspopup': 'true'
  3209.             }).bind('keydown.autocomplete', function (c) {
  3210.                 if (b.options.disabled || b.element.propAttr('readOnly')) return;
  3211.                 d = !1;
  3212.                 var e = a.ui.keyCode;
  3213.                 switch (c.keyCode) {
  3214.                     case e.PAGE_UP:
  3215.                         b._move('previousPage', c);
  3216.                         break;
  3217.                     case e.PAGE_DOWN:
  3218.                         b._move('nextPage', c);
  3219.                         break;
  3220.                     case e.UP:
  3221.                         b._keyEvent('previous', c);
  3222.                         break;
  3223.                     case e.DOWN:
  3224.                         b._keyEvent('next', c);
  3225.                         break;
  3226.                     case e.ENTER:
  3227.                     case e.NUMPAD_ENTER:
  3228.                         b.menu.active && (d = !0, c.preventDefault());
  3229.                     case e.TAB:
  3230.                         if (!b.menu.active) return;
  3231.                         b.menu.select(c);
  3232.                         break;
  3233.                     case e.ESCAPE:
  3234.                         b.element.val(b.term),
  3235.                         b.close(c);
  3236.                         break;
  3237.                     default:
  3238.                         clearTimeout(b.searching),
  3239.                         b.searching = setTimeout(function () {
  3240.                             b.term != b.element.val() && (b.selectedItem = null, b.search(null, c))
  3241.                         }, b.options.delay)
  3242.                 }
  3243.             }).bind('keypress.autocomplete', function (a) {
  3244.                 d && (d = !1, a.preventDefault())
  3245.             }).bind('focus.autocomplete', function () {
  3246.                 if (b.options.disabled) return;
  3247.                 b.selectedItem = null,
  3248.                 b.previous = b.element.val()
  3249.             }).bind('blur.autocomplete', function (a) {
  3250.                 if (b.options.disabled) return;
  3251.                 clearTimeout(b.searching),
  3252.                 b.closing = setTimeout(function () {
  3253.                     b.close(a),
  3254.                     b._change(a)
  3255.                 }, 150)
  3256.             }), this._initSource(), this.menu = a('<ul></ul>').addClass('ui-autocomplete').appendTo(a(this.options.appendTo || 'body', c) [0]).mousedown(function (c) {
  3257.                 var d = b.menu.element[0];
  3258.                 a(c.target).closest('.ui-menu-item').length || setTimeout(function () {
  3259.                     a(document).one('mousedown', function (c) {
  3260.                         c.target !== b.element[0] && c.target !== d && !a.ui.contains(d, c.target) && b.close()
  3261.                     })
  3262.                 }, 1),
  3263.                 setTimeout(function () {
  3264.                     clearTimeout(b.closing)
  3265.                 }, 13)
  3266.             }).menu({
  3267.                 focus: function (a, c) {
  3268.                     var d = c.item.data('item.autocomplete');
  3269.                     !1 !== b._trigger('focus', a, {
  3270.                         item: d
  3271.                     }) && /^key/.test(a.originalEvent.type) && b.element.val(d.value)
  3272.                 },
  3273.                 selected: function (a, d) {
  3274.                     var e = d.item.data('item.autocomplete'),
  3275.                     f = b.previous;
  3276.                     b.element[0] !== c.activeElement && (b.element.focus(), b.previous = f, setTimeout(function () {
  3277.                         b.previous = f,
  3278.                         b.selectedItem = e
  3279.                     }, 1)),
  3280.                     !1 !== b._trigger('select', a, {
  3281.                         item: e
  3282.                     }) && b.element.val(e.value),
  3283.                     b.term = b.element.val(),
  3284.                     b.close(a),
  3285.                     b.selectedItem = e
  3286.                 },
  3287.                 blur: function (a, c) {
  3288.                     b.menu.element.is(':visible') && b.element.val() !== b.term && b.element.val(b.term)
  3289.                 }
  3290.             }).zIndex(this.element.zIndex() + 1).css({
  3291.                 top: 0,
  3292.                 left: 0
  3293.             }).hide().data('menu'), a.fn.bgiframe && this.menu.element.bgiframe(), b.beforeunloadHandler = function () {
  3294.                 b.element.removeAttr('autocomplete')
  3295.             }, a(window).bind('beforeunload', b.beforeunloadHandler)
  3296.         },
  3297.         destroy: function () {
  3298.             this.element.removeClass('ui-autocomplete-input').removeAttr('autocomplete').removeAttr('role').removeAttr('aria-autocomplete').removeAttr('aria-haspopup'),
  3299.             this.menu.element.remove(),
  3300.             a(window).unbind('beforeunload', this.beforeunloadHandler),
  3301.             a.Widget.prototype.destroy.call(this)
  3302.         },
  3303.         _setOption: function (b, c) {
  3304.             a.Widget.prototype._setOption.apply(this, arguments),
  3305.             b === 'source' && this._initSource(),
  3306.             b === 'appendTo' && this.menu.element.appendTo(a(c || 'body', this.element[0].ownerDocument) [0]),
  3307.             b === 'disabled' && c && this.xhr && this.xhr.abort()
  3308.         },
  3309.         _initSource: function () {
  3310.             var b = this,
  3311.             c,
  3312.             d;
  3313.             a.isArray(this.options.source) ? (c = this.options.source, this.source = function (b, d) {
  3314.                 d(a.ui.autocomplete.filter(c, b.term))
  3315.             })  : typeof this.options.source == 'string' ? (d = this.options.source, this.source = function (c, e) {
  3316.                 b.xhr && b.xhr.abort(),
  3317.                 b.xhr = a.ajax({
  3318.                     url: d,
  3319.                     data: c,
  3320.                     dataType: 'json',
  3321.                     success: function (a, b) {
  3322.                         e(a)
  3323.                     },
  3324.                     error: function () {
  3325.                         e([])
  3326.                     }
  3327.                 })
  3328.             })  : this.source = this.options.source
  3329.         },
  3330.         search: function (a, b) {
  3331.             a = a != null ? a : this.element.val(),
  3332.             this.term = this.element.val();
  3333.             if (a.length < this.options.minLength) return this.close(b);
  3334.             clearTimeout(this.closing);
  3335.             if (this._trigger('search', b) === !1) return;
  3336.             return this._search(a)
  3337.         },
  3338.         _search: function (a) {
  3339.             this.pending++,
  3340.             this.element.addClass('ui-autocomplete-loading'),
  3341.             this.source({
  3342.                 term: a
  3343.             }, this._response())
  3344.         },
  3345.         _response: function () {
  3346.             var a = this,
  3347.             b = ++c;
  3348.             return function (d) {
  3349.                 b === c && a.__response(d),
  3350.                 a.pending--,
  3351.                 a.pending || a.element.removeClass('ui-autocomplete-loading')
  3352.             }
  3353.         },
  3354.         __response: function (a) {
  3355.             !this.options.disabled && a && a.length ? (a = this._normalize(a), this._suggest(a), this._trigger('open'))  : this.close()
  3356.         },
  3357.         close: function (a) {
  3358.             clearTimeout(this.closing),
  3359.             this.menu.element.is(':visible') && (this.menu.element.hide(), this.menu.deactivate(), this._trigger('close', a))
  3360.         },
  3361.         _change: function (a) {
  3362.             this.previous !== this.element.val() && this._trigger('change', a, {
  3363.                 item: this.selectedItem
  3364.             })
  3365.         },
  3366.         _normalize: function (b) {
  3367.             return b.length && b[0].label && b[0].value ? b : a.map(b, function (b) {
  3368.                 return typeof b == 'string' ? {
  3369.                     label: b,
  3370.                     value: b
  3371.                 }
  3372.                  : a.extend({
  3373.                     label: b.label || b.value,
  3374.                     value: b.value || b.label
  3375.                 }, b)
  3376.             })
  3377.         },
  3378.         _suggest: function (b) {
  3379.             var c = this.menu.element.empty().zIndex(this.element.zIndex() + 1);
  3380.             this._renderMenu(c, b),
  3381.             this.menu.deactivate(),
  3382.             this.menu.refresh(),
  3383.             c.show(),
  3384.             this._resizeMenu(),
  3385.             c.position(a.extend({
  3386.                 of: this.element
  3387.             }, this.options.position)),
  3388.             this.options.autoFocus && this.menu.next(new a.Event('mouseover'))
  3389.         },
  3390.         _resizeMenu: function () {
  3391.             var a = this.menu.element;
  3392.             a.outerWidth(Math.max(a.width('').outerWidth() + 1, this.element.outerWidth()))
  3393.         },
  3394.         _renderMenu: function (b, c) {
  3395.             var d = this;
  3396.             a.each(c, function (a, c) {
  3397.                 d._renderItem(b, c)
  3398.             })
  3399.         },
  3400.         _renderItem: function (b, c) {
  3401.             return a('<li></li>').data('item.autocomplete', c).append(a('<a></a>').text(c.label)).appendTo(b)
  3402.         },
  3403.         _move: function (a, b) {
  3404.             if (!this.menu.element.is(':visible')) {
  3405.                 this.search(null, b);
  3406.                 return
  3407.             }
  3408.             if (this.menu.first() && /^previous/.test(a) || this.menu.last() && /^next/.test(a)) {
  3409.                 this.element.val(this.term),
  3410.                 this.menu.deactivate();
  3411.                 return
  3412.             }
  3413.             this.menu[a](b)
  3414.         },
  3415.         widget: function () {
  3416.             return this.menu.element
  3417.         },
  3418.         _keyEvent: function (a, b) {
  3419.             if (!this.isMultiLine || this.menu.element.is(':visible')) this._move(a, b),
  3420.             b.preventDefault()
  3421.         }
  3422.     }), a.extend(a.ui.autocomplete, {
  3423.         escapeRegex: function (a) {
  3424.             return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&')
  3425.         },
  3426.         filter: function (b, c) {
  3427.             var d = new RegExp(a.ui.autocomplete.escapeRegex(c), 'i');
  3428.             return a.grep(b, function (a) {
  3429.                 return d.test(a.label || a.value || a)
  3430.             })
  3431.         }
  3432.     })
  3433. }) (jQuery), function (a) {
  3434.     a.widget('ui.menu', {
  3435.         _create: function () {
  3436.             var b = this;
  3437.             this.element.addClass('ui-menu ui-widget ui-widget-content ui-corner-all').attr({
  3438.                 role: 'listbox',
  3439.                 'aria-activedescendant': 'ui-active-menuitem'
  3440.             }).click(function (c) {
  3441.                 if (!a(c.target).closest('.ui-menu-item a').length) return;
  3442.                 c.preventDefault(),
  3443.                 b.select(c)
  3444.             }),
  3445.             this.refresh()
  3446.         },
  3447.         refresh: function () {
  3448.             var b = this,
  3449.             c = this.element.children('li:not(.ui-menu-item):has(a)').addClass('ui-menu-item').attr('role', 'menuitem');
  3450.             c.children('a').addClass('ui-corner-all').attr('tabindex', - 1).mouseenter(function (c) {
  3451.                 b.activate(c, a(this).parent())
  3452.             }).mouseleave(function () {
  3453.                 b.deactivate()
  3454.             })
  3455.         },
  3456.         activate: function (a, b) {
  3457.             this.deactivate();
  3458.             if (this.hasScroll()) {
  3459.                 var c = b.offset().top - this.element.offset().top,
  3460.                 d = this.element.scrollTop(),
  3461.                 e = this.element.height();
  3462.                 c < 0 ? this.element.scrollTop(d + c)  : c >= e && this.element.scrollTop(d + c - e + b.height())
  3463.             }
  3464.             this.active = b.eq(0).children('a').addClass('ui-state-hover').attr('id', 'ui-active-menuitem').end(),
  3465.             this._trigger('focus', a, {
  3466.                 item: b
  3467.             })
  3468.         },
  3469.         deactivate: function () {
  3470.             if (!this.active) return;
  3471.             this.active.children('a').removeClass('ui-state-hover').removeAttr('id'),
  3472.             this._trigger('blur'),
  3473.             this.active = null
  3474.         },
  3475.         next: function (a) {
  3476.             this.move('next', '.ui-menu-item:first', a)
  3477.         },
  3478.         previous: function (a) {
  3479.             this.move('prev', '.ui-menu-item:last', a)
  3480.         },
  3481.         first: function () {
  3482.             return this.active && !this.active.prevAll('.ui-menu-item').length
  3483.         },
  3484.         last: function () {
  3485.             return this.active && !this.active.nextAll('.ui-menu-item').length
  3486.         },
  3487.         move: function (a, b, c) {
  3488.             if (!this.active) {
  3489.                 this.activate(c, this.element.children(b));
  3490.                 return
  3491.             }
  3492.             var d = this.active[a + 'All']('.ui-menu-item').eq(0);
  3493.             d.length ? this.activate(c, d)  : this.activate(c, this.element.children(b))
  3494.         },
  3495.         nextPage: function (b) {
  3496.             if (this.hasScroll()) {
  3497.                 if (!this.active || this.last()) {
  3498.                     this.activate(b, this.element.children('.ui-menu-item:first'));
  3499.                     return
  3500.                 }
  3501.                 var c = this.active.offset().top,
  3502.                 d = this.element.height(),
  3503.                 e = this.element.children('.ui-menu-item').filter(function () {
  3504.                     var b = a(this).offset().top - c - d + a(this).height();
  3505.                     return b < 10 && b > - 10
  3506.                 });
  3507.                 e.length || (e = this.element.children('.ui-menu-item:last')),
  3508.                 this.activate(b, e)
  3509.             } else this.activate(b, this.element.children('.ui-menu-item').filter(!this.active || this.last() ? ':first' : ':last'))
  3510.         },
  3511.         previousPage: function (b) {
  3512.             if (this.hasScroll()) {
  3513.                 if (!this.active || this.first()) {
  3514.                     this.activate(b, this.element.children('.ui-menu-item:last'));
  3515.                     return
  3516.                 }
  3517.                 var c = this.active.offset().top,
  3518.                 d = this.element.height(),
  3519.                 e = this.element.children('.ui-menu-item').filter(function () {
  3520.                     var b = a(this).offset().top - c + d - a(this).height();
  3521.                     return b < 10 && b > - 10
  3522.                 });
  3523.                 e.length || (e = this.element.children('.ui-menu-item:first')),
  3524.                 this.activate(b, e)
  3525.             } else this.activate(b, this.element.children('.ui-menu-item').filter(!this.active || this.first() ? ':last' : ':first'))
  3526.         },
  3527.         hasScroll: function () {
  3528.             return this.element.height() < this.element[a.fn.prop ? 'prop' : 'attr']('scrollHeight')
  3529.         },
  3530.         select: function (a) {
  3531.             this._trigger('selected', a, {
  3532.                 item: this.active
  3533.             })
  3534.         }
  3535.     })
  3536. }(jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  3537. * https://github.com/jquery/jquery-ui
  3538. * Includes: jquery.ui.button.js
  3539. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  3540. (function (a, b) {
  3541.     var c,
  3542.     d,
  3543.     e,
  3544.     f,
  3545.     g = 'ui-button ui-widget ui-state-default ui-corner-all',
  3546.     h = 'ui-state-hover ui-state-active ',
  3547.     i = 'ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only',
  3548.     j = function () {
  3549.         var b = a(this).find(':ui-button');
  3550.         setTimeout(function () {
  3551.             b.button('refresh')
  3552.         }, 1)
  3553.     },
  3554.     k = function (b) {
  3555.         var c = b.name,
  3556.         d = b.form,
  3557.         e = a([]);
  3558.         return c && (d ? e = a(d).find('[name=\'' + c + '\']')  : e = a('[name=\'' + c + '\']', b.ownerDocument).filter(function () {
  3559.             return !this.form
  3560.         })),
  3561.         e
  3562.     };
  3563.     a.widget('ui.button', {
  3564.         options: {
  3565.             disabled: null,
  3566.             text: !0,
  3567.             label: null,
  3568.             icons: {
  3569.                 primary: null,
  3570.                 secondary: null
  3571.             }
  3572.         },
  3573.         _create: function () {
  3574.             this.element.closest('form').unbind('reset.button').bind('reset.button', j),
  3575.             typeof this.options.disabled != 'boolean' ? this.options.disabled = !!this.element.propAttr('disabled')  : this.element.propAttr('disabled', this.options.disabled),
  3576.             this._determineButtonType(),
  3577.             this.hasTitle = !!this.buttonElement.attr('title');
  3578.             var b = this,
  3579.             h = this.options,
  3580.             i = this.type === 'checkbox' || this.type === 'radio',
  3581.             l = 'ui-state-hover' + (i ? '' : ' ui-state-active'),
  3582.             m = 'ui-state-focus';
  3583.             h.label === null && (h.label = this.buttonElement.html()),
  3584.             this.buttonElement.addClass(g).attr('role', 'button').bind('mouseenter.button', function () {
  3585.                 if (h.disabled) return;
  3586.                 a(this).addClass('ui-state-hover'),
  3587.                 this === c && a(this).addClass('ui-state-active')
  3588.             }).bind('mouseleave.button', function () {
  3589.                 if (h.disabled) return;
  3590.                 a(this).removeClass(l)
  3591.             }).bind('click.button', function (a) {
  3592.                 h.disabled && (a.preventDefault(), a.stopImmediatePropagation())
  3593.             }),
  3594.             this.element.bind('focus.button', function () {
  3595.                 b.buttonElement.addClass(m)
  3596.             }).bind('blur.button', function () {
  3597.                 b.buttonElement.removeClass(m)
  3598.             }),
  3599.             i && (this.element.bind('change.button', function () {
  3600.                 if (f) return;
  3601.                 b.refresh()
  3602.             }), this.buttonElement.bind('mousedown.button', function (a) {
  3603.                 if (h.disabled) return;
  3604.                 f = !1,
  3605.                 d = a.pageX,
  3606.                 e = a.pageY
  3607.             }).bind('mouseup.button', function (a) {
  3608.                 if (h.disabled) return;
  3609.                 if (d !== a.pageX || e !== a.pageY) f = !0
  3610.             })),
  3611.             this.type === 'checkbox' ? this.buttonElement.bind('click.button', function () {
  3612.                 if (h.disabled || f) return !1;
  3613.                 a(this).toggleClass('ui-state-active'),
  3614.                 b.buttonElement.attr('aria-pressed', b.element[0].checked)
  3615.             })  : this.type === 'radio' ? this.buttonElement.bind('click.button', function () {
  3616.                 if (h.disabled || f) return !1;
  3617.                 a(this).addClass('ui-state-active'),
  3618.                 b.buttonElement.attr('aria-pressed', 'true');
  3619.                 var c = b.element[0];
  3620.                 k(c).not(c).map(function () {
  3621.                     return a(this).button('widget') [0]
  3622.                 }).removeClass('ui-state-active').attr('aria-pressed', 'false')
  3623.             })  : (this.buttonElement.bind('mousedown.button', function () {
  3624.                 if (h.disabled) return !1;
  3625.                 a(this).addClass('ui-state-active'),
  3626.                 c = this,
  3627.                 a(document).one('mouseup', function () {
  3628.                     c = null
  3629.                 })
  3630.             }).bind('mouseup.button', function () {
  3631.                 if (h.disabled) return !1;
  3632.                 a(this).removeClass('ui-state-active')
  3633.             }).bind('keydown.button', function (b) {
  3634.                 if (h.disabled) return !1;
  3635.                 (b.keyCode == a.ui.keyCode.SPACE || b.keyCode == a.ui.keyCode.ENTER) && a(this).addClass('ui-state-active')
  3636.             }).bind('keyup.button', function () {
  3637.                 a(this).removeClass('ui-state-active')
  3638.             }), this.buttonElement.is('a') && this.buttonElement.keyup(function (b) {
  3639.                 b.keyCode === a.ui.keyCode.SPACE && a(this).click()
  3640.             })),
  3641.             this._setOption('disabled', h.disabled),
  3642.             this._resetButton()
  3643.         },
  3644.         _determineButtonType: function () {
  3645.             this.element.is(':checkbox') ? this.type = 'checkbox' : this.element.is(':radio') ? this.type = 'radio' : this.element.is('input') ? this.type = 'input' : this.type = 'button';
  3646.             if (this.type === 'checkbox' || this.type === 'radio') {
  3647.                 var a = this.element.parents().filter(':last'),
  3648.                 b = 'label[for=\'' + this.element.attr('id') + '\']';
  3649.                 this.buttonElement = a.find(b),
  3650.                 this.buttonElement.length || (a = a.length ? a.siblings()  : this.element.siblings(), this.buttonElement = a.filter(b), this.buttonElement.length || (this.buttonElement = a.find(b))),
  3651.                 this.element.addClass('ui-helper-hidden-accessible');
  3652.                 var c = this.element.is(':checked');
  3653.                 c && this.buttonElement.addClass('ui-state-active'),
  3654.                 this.buttonElement.attr('aria-pressed', c)
  3655.             } else this.buttonElement = this.element
  3656.         },
  3657.         widget: function () {
  3658.             return this.buttonElement
  3659.         },
  3660.         destroy: function () {
  3661.             this.element.removeClass('ui-helper-hidden-accessible'),
  3662.             this.buttonElement.removeClass(g + ' ' + h + ' ' + i).removeAttr('role').removeAttr('aria-pressed').html(this.buttonElement.find('.ui-button-text').html()),
  3663.             this.hasTitle || this.buttonElement.removeAttr('title'),
  3664.             a.Widget.prototype.destroy.call(this)
  3665.         },
  3666.         _setOption: function (b, c) {
  3667.             a.Widget.prototype._setOption.apply(this, arguments);
  3668.             if (b === 'disabled') {
  3669.                 c ? this.element.propAttr('disabled', !0)  : this.element.propAttr('disabled', !1);
  3670.                 return
  3671.             }
  3672.             this._resetButton()
  3673.         },
  3674.         refresh: function () {
  3675.             var b = this.element.is(':disabled');
  3676.             b !== this.options.disabled && this._setOption('disabled', b),
  3677.             this.type === 'radio' ? k(this.element[0]).each(function () {
  3678.                 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')
  3679.             })  : 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'))
  3680.         },
  3681.         _resetButton: function () {
  3682.             if (this.type === 'input') {
  3683.                 this.options.label && this.element.val(this.options.label);
  3684.                 return
  3685.             }
  3686.             var b = this.buttonElement.removeClass(i),
  3687.             c = a('<span></span>', this.element[0].ownerDocument).addClass('ui-button-text').html(this.options.label).appendTo(b.empty()).text(),
  3688.             d = this.options.icons,
  3689.             e = d.primary && d.secondary,
  3690.             f = [
  3691.             ];
  3692.             d.primary || d.secondary ? (this.options.text && f.push('ui-button-text-icon' + (e ? 's' : d.primary ? '-primary' : '-secondary')), 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>'), this.options.text || (f.push(e ? 'ui-button-icons-only' : 'ui-button-icon-only'), this.hasTitle || b.attr('title', c)))  : f.push('ui-button-text-only'),
  3693.             b.addClass(f.join(' '))
  3694.         }
  3695.     }),
  3696.     a.widget('ui.buttonset', {
  3697.         options: {
  3698.             items: ':button, :submit, :reset, :checkbox, :radio, a, :data(button)'
  3699.         },
  3700.         _create: function () {
  3701.             this.element.addClass('ui-buttonset')
  3702.         },
  3703.         _init: function () {
  3704.             this.refresh()
  3705.         },
  3706.         _setOption: function (b, c) {
  3707.             b === 'disabled' && this.buttons.button('option', b, c),
  3708.             a.Widget.prototype._setOption.apply(this, arguments)
  3709.         },
  3710.         refresh: function () {
  3711.             var b = this.element.css('direction') === 'rtl';
  3712.             this.buttons = this.element.find(this.options.items).filter(':ui-button').button('refresh').end().not(':ui-button').button().end().map(function () {
  3713.                 return a(this).button('widget') [0]
  3714.             }).removeClass('ui-corner-all ui-corner-left ui-corner-right').filter(':first').addClass(b ? 'ui-corner-right' : 'ui-corner-left').end().filter(':last').addClass(b ? 'ui-corner-left' : 'ui-corner-right').end().end()
  3715.         },
  3716.         destroy: function () {
  3717.             this.element.removeClass('ui-buttonset'),
  3718.             this.buttons.map(function () {
  3719.                 return a(this).button('widget') [0]
  3720.             }).removeClass('ui-corner-left ui-corner-right').end().button('destroy'),
  3721.             a.Widget.prototype.destroy.call(this)
  3722.         }
  3723.     })
  3724. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  3725. * https://github.com/jquery/jquery-ui
  3726. * Includes: jquery.ui.dialog.js
  3727. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  3728. (function (a, b) {
  3729.     var c = 'ui-dialog ui-widget ui-widget-content ui-corner-all ',
  3730.     d = {
  3731.         buttons: !0,
  3732.         height: !0,
  3733.         maxHeight: !0,
  3734.         maxWidth: !0,
  3735.         minHeight: !0,
  3736.         minWidth: !0,
  3737.         width: !0
  3738.     },
  3739.     e = {
  3740.         maxHeight: !0,
  3741.         maxWidth: !0,
  3742.         minHeight: !0,
  3743.         minWidth: !0
  3744.     };
  3745.     a.widget('ui.dialog', {
  3746.         options: {
  3747.             autoOpen: !0,
  3748.             buttons: {
  3749.             },
  3750.             closeOnEscape: !0,
  3751.             closeText: 'close',
  3752.             dialogClass: '',
  3753.             draggable: !0,
  3754.             hide: null,
  3755.             height: 'auto',
  3756.             maxHeight: !1,
  3757.             maxWidth: !1,
  3758.             minHeight: 150,
  3759.             minWidth: 150,
  3760.             modal: !1,
  3761.             position: {
  3762.                 my: 'center',
  3763.                 at: 'center',
  3764.                 collision: 'fit',
  3765.                 using: function (b) {
  3766.                     var c = a(this).css(b).offset().top;
  3767.                     c < 0 && a(this).css('top', b.top - c)
  3768.                 }
  3769.             },
  3770.             resizable: !0,
  3771.             show: null,
  3772.             stack: !0,
  3773.             title: '',
  3774.             width: 300,
  3775.             zIndex: 1000
  3776.         },
  3777.         _create: function () {
  3778.             this.originalTitle = this.element.attr('title'),
  3779.             typeof this.originalTitle != 'string' && (this.originalTitle = ''),
  3780.             this.options.title = this.options.title || this.originalTitle;
  3781.             var b = this,
  3782.             d = b.options,
  3783.             e = d.title || '&#160;',
  3784.             f = a.ui.dialog.getTitleId(b.element),
  3785.             g = (b.uiDialog = a('<div></div>')).appendTo(document.body).hide().addClass(c + d.dialogClass).css({
  3786.                 zIndex: d.zIndex
  3787.             }).attr('tabIndex', - 1).css('outline', 0).keydown(function (c) {
  3788.                 d.closeOnEscape && !c.isDefaultPrevented() && c.keyCode && c.keyCode === a.ui.keyCode.ESCAPE && (b.close(c), c.preventDefault())
  3789.             }).attr({
  3790.                 role: 'dialog',
  3791.                 'aria-labelledby': f
  3792.             }).mousedown(function (a) {
  3793.                 b.moveToTop(!1, a)
  3794.             }),
  3795.             h = b.element.show().removeAttr('title').addClass('ui-dialog-content ui-widget-content').appendTo(g),
  3796.             i = (b.uiDialogTitlebar = a('<div></div>')).addClass('ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix').prependTo(g),
  3797.             j = a('<a href="#"></a>').addClass('ui-dialog-titlebar-close ui-corner-all').attr('role', 'button').hover(function () {
  3798.                 j.addClass('ui-state-hover')
  3799.             }, function () {
  3800.                 j.removeClass('ui-state-hover')
  3801.             }).focus(function () {
  3802.                 j.addClass('ui-state-focus')
  3803.             }).blur(function () {
  3804.                 j.removeClass('ui-state-focus')
  3805.             }).click(function (a) {
  3806.                 return b.close(a),
  3807.                 !1
  3808.             }).appendTo(i),
  3809.             k = (b.uiDialogTitlebarCloseText = a('<span></span>')).addClass('ui-icon ui-icon-closethick').text(d.closeText).appendTo(j),
  3810.             l = a('<span></span>').addClass('ui-dialog-title').attr('id', f).html(e).prependTo(i);
  3811.             a.isFunction(d.beforeclose) && !a.isFunction(d.beforeClose) && (d.beforeClose = d.beforeclose),
  3812.             i.find('*').add(i).disableSelection(),
  3813.             d.draggable && a.fn.draggable && b._makeDraggable(),
  3814.             d.resizable && a.fn.resizable && b._makeResizable(),
  3815.             b._createButtons(d.buttons),
  3816.             b._isOpen = !1,
  3817.             a.fn.bgiframe && g.bgiframe()
  3818.         },
  3819.         _init: function () {
  3820.             this.options.autoOpen && this.open()
  3821.         },
  3822.         destroy: function () {
  3823.             var a = this;
  3824.             return a.overlay && a.overlay.destroy(),
  3825.             a.uiDialog.hide(),
  3826.             a.element.unbind('.dialog').removeData('dialog').removeClass('ui-dialog-content ui-widget-content').hide().appendTo('body'),
  3827.             a.uiDialog.remove(),
  3828.             a.originalTitle && a.element.attr('title', a.originalTitle),
  3829.             a
  3830.         },
  3831.         widget: function () {
  3832.             return this.uiDialog
  3833.         },
  3834.         close: function (b) {
  3835.             var c = this,
  3836.             d,
  3837.             e;
  3838.             if (!1 === c._trigger('beforeClose', b)) return;
  3839.             return c.overlay && c.overlay.destroy(),
  3840.             c.uiDialog.unbind('keypress.ui-dialog'),
  3841.             c._isOpen = !1,
  3842.             c.options.hide ? c.uiDialog.hide(c.options.hide, function () {
  3843.                 c._trigger('close', b)
  3844.             })  : (c.uiDialog.hide(), c._trigger('close', b)),
  3845.             a.ui.dialog.overlay.resize(),
  3846.             c.options.modal && (d = 0, a('.ui-dialog').each(function () {
  3847.                 this !== c.uiDialog[0] && (e = a(this).css('z-index'), isNaN(e) || (d = Math.max(d, e)))
  3848.             }), a.ui.dialog.maxZ = d),
  3849.             c
  3850.         },
  3851.         isOpen: function () {
  3852.             return this._isOpen
  3853.         },
  3854.         moveToTop: function (b, c) {
  3855.             var d = this,
  3856.             e = d.options,
  3857.             f;
  3858.             return e.modal && !b || !e.stack && !e.modal ? d._trigger('focus', c)  : (e.zIndex > a.ui.dialog.maxZ && (a.ui.dialog.maxZ = e.zIndex), d.overlay && (a.ui.dialog.maxZ += 1, d.overlay.$el.css('z-index', a.ui.dialog.overlay.maxZ = a.ui.dialog.maxZ)), f = {
  3859.                 scrollTop: d.element.scrollTop(),
  3860.                 scrollLeft: d.element.scrollLeft()
  3861.             }, a.ui.dialog.maxZ += 1, d.uiDialog.css('z-index', a.ui.dialog.maxZ), d.element.attr(f), d._trigger('focus', c), d)
  3862.         },
  3863.         open: function () {
  3864.             if (this._isOpen) return;
  3865.             var b = this,
  3866.             c = b.options,
  3867.             d = b.uiDialog;
  3868.             return b.overlay = c.modal ? new a.ui.dialog.overlay(b)  : null,
  3869.             b._size(),
  3870.             b._position(c.position),
  3871.             d.show(c.show),
  3872.             b.moveToTop(!0),
  3873.             c.modal && d.bind('keydown.ui-dialog', function (b) {
  3874.                 if (b.keyCode !== a.ui.keyCode.TAB) return;
  3875.                 var c = a(':tabbable', this),
  3876.                 d = c.filter(':first'),
  3877.                 e = c.filter(':last');
  3878.                 if (b.target === e[0] && !b.shiftKey) return d.focus(1),
  3879.                 !1;
  3880.                 if (b.target === d[0] && b.shiftKey) return e.focus(1),
  3881.                 !1
  3882.             }),
  3883.             a(b.element.find(':tabbable').get().concat(d.find('.ui-dialog-buttonpane :tabbable').get().concat(d.get()))).eq(0).focus(),
  3884.             b._isOpen = !0,
  3885.             b._trigger('open'),
  3886.             b
  3887.         },
  3888.         _createButtons: function (b) {
  3889.             var c = this,
  3890.             d = !1,
  3891.             e = a('<div></div>').addClass('ui-dialog-buttonpane ui-widget-content ui-helper-clearfix'),
  3892.             f = a('<div></div>').addClass('ui-dialog-buttonset').appendTo(e);
  3893.             c.uiDialog.find('.ui-dialog-buttonpane').remove(),
  3894.             typeof b == 'object' && b !== null && a.each(b, function () {
  3895.                 return !(d = !0)
  3896.             }),
  3897.             d && (a.each(b, function (b, d) {
  3898.                 d = a.isFunction(d) ? {
  3899.                     click: d,
  3900.                     text: b
  3901.                 }
  3902.                  : d;
  3903.                 var e = a('<button type="button"></button>').click(function () {
  3904.                     d.click.apply(c.element[0], arguments)
  3905.                 }).appendTo(f);
  3906.                 a.each(d, function (a, b) {
  3907.                     if (a === 'click') return;
  3908.                     a in e ? e[a](b)  : e.attr(a, b)
  3909.                 }),
  3910.                 a.fn.button && e.button()
  3911.             }), e.appendTo(c.uiDialog))
  3912.         },
  3913.         _makeDraggable: function () {
  3914.             function f(a) {
  3915.                 return {
  3916.                     position: a.position,
  3917.                     offset: a.offset
  3918.                 }
  3919.             }
  3920.             var b = this,
  3921.             c = b.options,
  3922.             d = a(document),
  3923.             e;
  3924.             b.uiDialog.draggable({
  3925.                 cancel: '.ui-dialog-content, .ui-dialog-titlebar-close',
  3926.                 handle: '.ui-dialog-titlebar',
  3927.                 containment: 'document',
  3928.                 start: function (d, g) {
  3929.                     e = c.height === 'auto' ? 'auto' : a(this).height(),
  3930.                     a(this).height(a(this).height()).addClass('ui-dialog-dragging'),
  3931.                     b._trigger('dragStart', d, f(g))
  3932.                 },
  3933.                 drag: function (a, c) {
  3934.                     b._trigger('drag', a, f(c))
  3935.                 },
  3936.                 stop: function (g, h) {
  3937.                     c.position = [
  3938.                         h.position.left - d.scrollLeft(),
  3939.                         h.position.top - d.scrollTop()
  3940.                     ],
  3941.                     a(this).removeClass('ui-dialog-dragging').height(e),
  3942.                     b._trigger('dragStop', g, f(h)),
  3943.                     a.ui.dialog.overlay.resize()
  3944.                 }
  3945.             })
  3946.         },
  3947.         _makeResizable: function (c) {
  3948.             function h(a) {
  3949.                 return {
  3950.                     originalPosition: a.originalPosition,
  3951.                     originalSize: a.originalSize,
  3952.                     position: a.position,
  3953.                     size: a.size
  3954.                 }
  3955.             }
  3956.             c = c === b ? this.options.resizable : c;
  3957.             var d = this,
  3958.             e = d.options,
  3959.             f = d.uiDialog.css('position'),
  3960.             g = typeof c == 'string' ? c : 'n,e,s,w,se,sw,ne,nw';
  3961.             d.uiDialog.resizable({
  3962.                 cancel: '.ui-dialog-content',
  3963.                 containment: 'document',
  3964.                 alsoResize: d.element,
  3965.                 maxWidth: e.maxWidth,
  3966.                 maxHeight: e.maxHeight,
  3967.                 minWidth: e.minWidth,
  3968.                 minHeight: d._minHeight(),
  3969.                 handles: g,
  3970.                 start: function (b, c) {
  3971.                     a(this).addClass('ui-dialog-resizing'),
  3972.                     d._trigger('resizeStart', b, h(c))
  3973.                 },
  3974.                 resize: function (a, b) {
  3975.                     d._trigger('resize', a, h(b))
  3976.                 },
  3977.                 stop: function (b, c) {
  3978.                     a(this).removeClass('ui-dialog-resizing'),
  3979.                     e.height = a(this).height(),
  3980.                     e.width = a(this).width(),
  3981.                     d._trigger('resizeStop', b, h(c)),
  3982.                     a.ui.dialog.overlay.resize()
  3983.                 }
  3984.             }).css('position', f).find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se')
  3985.         },
  3986.         _minHeight: function () {
  3987.             var a = this.options;
  3988.             return a.height === 'auto' ? a.minHeight : Math.min(a.minHeight, a.height)
  3989.         },
  3990.         _position: function (b) {
  3991.             var c = [
  3992.             ],
  3993.             d = [
  3994.                 0,
  3995.                 0
  3996.             ],
  3997.             e;
  3998.             if (b) {
  3999.                 if (typeof b == 'string' || typeof b == 'object' && '0' in b) c = b.split ? b.split(' ')  : [
  4000.                     b[0],
  4001.                     b[1]
  4002.                 ],
  4003.                 c.length === 1 && (c[1] = c[0]),
  4004.                 a.each(['left',
  4005.                 'top'], function (a, b) {
  4006.                     + c[a] === c[a] && (d[a] = c[a], c[a] = b)
  4007.                 }),
  4008.                 b = {
  4009.                     my: c.join(' '),
  4010.                     at: c.join(' '),
  4011.                     offset: d.join(' ')
  4012.                 };
  4013.                 b = a.extend({
  4014.                 }, a.ui.dialog.prototype.options.position, b)
  4015.             } else b = a.ui.dialog.prototype.options.position;
  4016.             e = this.uiDialog.is(':visible'),
  4017.             e || this.uiDialog.show(),
  4018.             this.uiDialog.css({
  4019.                 top: 0,
  4020.                 left: 0
  4021.             }).position(a.extend({
  4022.                 of: window
  4023.             }, b)),
  4024.             e || this.uiDialog.hide()
  4025.         },
  4026.         _setOptions: function (b) {
  4027.             var c = this,
  4028.             f = {
  4029.             },
  4030.             g = !1;
  4031.             a.each(b, function (a, b) {
  4032.                 c._setOption(a, b),
  4033.                 a in d && (g = !0),
  4034.                 a in e && (f[a] = b)
  4035.             }),
  4036.             g && this._size(),
  4037.             this.uiDialog.is(':data(resizable)') && this.uiDialog.resizable('option', f)
  4038.         },
  4039.         _setOption: function (b, d) {
  4040.             var e = this,
  4041.             f = e.uiDialog;
  4042.             switch (b) {
  4043.                 case 'beforeclose':
  4044.                     b = 'beforeClose';
  4045.                     break;
  4046.                 case 'buttons':
  4047.                     e._createButtons(d);
  4048.                     break;
  4049.                 case 'closeText':
  4050.                     e.uiDialogTitlebarCloseText.text('' + d);
  4051.                     break;
  4052.                 case 'dialogClass':
  4053.                     f.removeClass(e.options.dialogClass).addClass(c + d);
  4054.                     break;
  4055.                 case 'disabled':
  4056.                     d ? f.addClass('ui-dialog-disabled')  : f.removeClass('ui-dialog-disabled');
  4057.                     break;
  4058.                 case 'draggable':
  4059.                     var g = f.is(':data(draggable)');
  4060.                     g && !d && f.draggable('destroy'),
  4061.                     !g && d && e._makeDraggable();
  4062.                     break;
  4063.                 case 'position':
  4064.                     e._position(d);
  4065.                     break;
  4066.                 case 'resizable':
  4067.                     var h = f.is(':data(resizable)');
  4068.                     h && !d && f.resizable('destroy'),
  4069.                     h && typeof d == 'string' && f.resizable('option', 'handles', d),
  4070.                     !h && d !== !1 && e._makeResizable(d);
  4071.                     break;
  4072.                 case 'title':
  4073.                     a('.ui-dialog-title', e.uiDialogTitlebar).html('' + (d || '&#160;'))
  4074.             }
  4075.             a.Widget.prototype._setOption.apply(e, arguments)
  4076.         },
  4077.         _size: function () {
  4078.             var b = this.options,
  4079.             c,
  4080.             d,
  4081.             e = this.uiDialog.is(':visible');
  4082.             this.element.show().css({
  4083.                 width: 'auto',
  4084.                 minHeight: 0,
  4085.                 height: 0
  4086.             }),
  4087.             b.minWidth > b.width && (b.width = b.minWidth),
  4088.             c = this.uiDialog.css({
  4089.                 height: 'auto',
  4090.                 width: b.width
  4091.             }).height(),
  4092.             d = Math.max(0, b.minHeight - c);
  4093.             if (b.height === 'auto') if (a.support.minHeight) this.element.css({
  4094.                 minHeight: d,
  4095.                 height: 'auto'
  4096.             });
  4097.              else {
  4098.                 this.uiDialog.show();
  4099.                 var f = this.element.css('height', 'auto').height();
  4100.                 e || this.uiDialog.hide(),
  4101.                 this.element.height(Math.max(f, d))
  4102.             } else this.element.height(Math.max(b.height - c, 0));
  4103.             this.uiDialog.is(':data(resizable)') && this.uiDialog.resizable('option', 'minHeight', this._minHeight())
  4104.         }
  4105.     }), a.extend(a.ui.dialog, {
  4106.         version: '1.8.24',
  4107.         uuid: 0,
  4108.         maxZ: 0,
  4109.         getTitleId: function (a) {
  4110.             var b = a.attr('id');
  4111.             return b || (this.uuid += 1, b = this.uuid),
  4112.             'ui-dialog-title-' + b
  4113.         },
  4114.         overlay: function (b) {
  4115.             this.$el = a.ui.dialog.overlay.create(b)
  4116.         }
  4117.     }), a.extend(a.ui.dialog.overlay, {
  4118.         instances: [
  4119.         ],
  4120.         oldInstances: [
  4121.         ],
  4122.         maxZ: 0,
  4123.         events: a.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','), function (a) {
  4124.             return a + '.dialog-overlay'
  4125.         }).join(' '),
  4126.         create: function (b) {
  4127.             this.instances.length === 0 && (setTimeout(function () {
  4128.                 a.ui.dialog.overlay.instances.length && a(document).bind(a.ui.dialog.overlay.events, function (b) {
  4129.                     if (a(b.target).zIndex() < a.ui.dialog.overlay.maxZ) return !1
  4130.                 })
  4131.             }, 1), a(document).bind('keydown.dialog-overlay', function (c) {
  4132.                 b.options.closeOnEscape && !c.isDefaultPrevented() && c.keyCode && c.keyCode === a.ui.keyCode.ESCAPE && (b.close(c), c.preventDefault())
  4133.             }), a(window).bind('resize.dialog-overlay', a.ui.dialog.overlay.resize));
  4134.             var c = (this.oldInstances.pop() || a('<div></div>').addClass('ui-widget-overlay')).appendTo(document.body).css({
  4135.                 width: this.width(),
  4136.                 height: this.height()
  4137.             });
  4138.             return a.fn.bgiframe && c.bgiframe(),
  4139.             this.instances.push(c),
  4140.             c
  4141.         },
  4142.         destroy: function (b) {
  4143.             var c = a.inArray(b, this.instances);
  4144.             c != - 1 && this.oldInstances.push(this.instances.splice(c, 1) [0]),
  4145.             this.instances.length === 0 && a([document,
  4146.             window]).unbind('.dialog-overlay'),
  4147.             b.remove();
  4148.             var d = 0;
  4149.             a.each(this.instances, function () {
  4150.                 d = Math.max(d, this.css('z-index'))
  4151.             }),
  4152.             this.maxZ = d
  4153.         },
  4154.         height: function () {
  4155.             var b,
  4156.             c;
  4157.             return a.browser.msie && a.browser.version < 7 ? (b = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight), c = Math.max(document.documentElement.offsetHeight, document.body.offsetHeight), b < c ? a(window).height() + 'px' : b + 'px')  : a(document).height() + 'px'
  4158.         },
  4159.         width: function () {
  4160.             var b,
  4161.             c;
  4162.             return a.browser.msie ? (b = Math.max(document.documentElement.scrollWidth, document.body.scrollWidth), c = Math.max(document.documentElement.offsetWidth, document.body.offsetWidth), b < c ? a(window).width() + 'px' : b + 'px')  : a(document).width() + 'px'
  4163.         },
  4164.         resize: function () {
  4165.             var b = a([]);
  4166.             a.each(a.ui.dialog.overlay.instances, function () {
  4167.                 b = b.add(this)
  4168.             }),
  4169.             b.css({
  4170.                 width: 0,
  4171.                 height: 0
  4172.             }).css({
  4173.                 width: a.ui.dialog.overlay.width(),
  4174.                 height: a.ui.dialog.overlay.height()
  4175.             })
  4176.         }
  4177.     }), a.extend(a.ui.dialog.overlay.prototype, {
  4178.         destroy: function () {
  4179.             a.ui.dialog.overlay.destroy(this.$el)
  4180.         }
  4181.     })
  4182. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  4183. * https://github.com/jquery/jquery-ui
  4184. * Includes: jquery.ui.slider.js
  4185. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  4186. (function (a, b) {
  4187.     var c = 5;
  4188.     a.widget('ui.slider', a.ui.mouse, {
  4189.         widgetEventPrefix: 'slide',
  4190.         options: {
  4191.             animate: !1,
  4192.             distance: 0,
  4193.             max: 100,
  4194.             min: 0,
  4195.             orientation: 'horizontal',
  4196.             range: !1,
  4197.             step: 1,
  4198.             value: 0,
  4199.             values: null
  4200.         },
  4201.         _create: function () {
  4202.             var b = this,
  4203.             d = this.options,
  4204.             e = this.element.find('.ui-slider-handle').addClass('ui-state-default ui-corner-all'),
  4205.             f = '<a class=\'ui-slider-handle ui-state-default ui-corner-all\' href=\'#\'></a>',
  4206.             g = d.values && d.values.length || 1,
  4207.             h = [
  4208.             ];
  4209.             this._keySliding = !1,
  4210.             this._mouseSliding = !1,
  4211.             this._animateOff = !0,
  4212.             this._handleIndex = null,
  4213.             this._detectOrientation(),
  4214.             this._mouseInit(),
  4215.             this.element.addClass('ui-slider ui-slider-' + this.orientation + ' ui-widget' + ' ui-widget-content' + ' ui-corner-all' + (d.disabled ? ' ui-slider-disabled ui-disabled' : '')),
  4216.             this.range = a([]),
  4217.             d.range && (d.range === !0 && (d.values || (d.values = [
  4218.                 this._valueMin(),
  4219.                 this._valueMin()
  4220.             ]), d.values.length && d.values.length !== 2 && (d.values = [
  4221.                 d.values[0],
  4222.                 d.values[0]
  4223.             ])), this.range = a('<div></div>').appendTo(this.element).addClass('ui-slider-range ui-widget-header' + (d.range === 'min' || d.range === 'max' ? ' ui-slider-range-' + d.range : '')));
  4224.             for (var i = e.length; i < g; i += 1) h.push(f);
  4225.             this.handles = e.add(a(h.join('')).appendTo(b.element)),
  4226.             this.handle = this.handles.eq(0),
  4227.             this.handles.add(this.range).filter('a').click(function (a) {
  4228.                 a.preventDefault()
  4229.             }).hover(function () {
  4230.                 d.disabled || a(this).addClass('ui-state-hover')
  4231.             }, function () {
  4232.                 a(this).removeClass('ui-state-hover')
  4233.             }).focus(function () {
  4234.                 d.disabled ? a(this).blur()  : (a('.ui-slider .ui-state-focus').removeClass('ui-state-focus'), a(this).addClass('ui-state-focus'))
  4235.             }).blur(function () {
  4236.                 a(this).removeClass('ui-state-focus')
  4237.             }),
  4238.             this.handles.each(function (b) {
  4239.                 a(this).data('index.ui-slider-handle', b)
  4240.             }),
  4241.             this.handles.keydown(function (d) {
  4242.                 var e = a(this).data('index.ui-slider-handle'),
  4243.                 f,
  4244.                 g,
  4245.                 h,
  4246.                 i;
  4247.                 if (b.options.disabled) return;
  4248.                 switch (d.keyCode) {
  4249.                     case a.ui.keyCode.HOME:
  4250.                     case a.ui.keyCode.END:
  4251.                     case a.ui.keyCode.PAGE_UP:
  4252.                     case a.ui.keyCode.PAGE_DOWN:
  4253.                     case a.ui.keyCode.UP:
  4254.                     case a.ui.keyCode.RIGHT:
  4255.                     case a.ui.keyCode.DOWN:
  4256.                     case a.ui.keyCode.LEFT:
  4257.                         d.preventDefault();
  4258.                         if (!b._keySliding) {
  4259.                             b._keySliding = !0,
  4260.                             a(this).addClass('ui-state-active'),
  4261.                             f = b._start(d, e);
  4262.                             if (f === !1) return
  4263.                         }
  4264.                 }
  4265.                 i = b.options.step,
  4266.                 b.options.values && b.options.values.length ? g = h = b.values(e)  : g = h = b.value();
  4267.                 switch (d.keyCode) {
  4268.                     case a.ui.keyCode.HOME:
  4269.                         h = b._valueMin();
  4270.                         break;
  4271.                     case a.ui.keyCode.END:
  4272.                         h = b._valueMax();
  4273.                         break;
  4274.                     case a.ui.keyCode.PAGE_UP:
  4275.                         h = b._trimAlignValue(g + (b._valueMax() - b._valueMin()) / c);
  4276.                         break;
  4277.                     case a.ui.keyCode.PAGE_DOWN:
  4278.                         h = b._trimAlignValue(g - (b._valueMax() - b._valueMin()) / c);
  4279.                         break;
  4280.                     case a.ui.keyCode.UP:
  4281.                     case a.ui.keyCode.RIGHT:
  4282.                         if (g === b._valueMax()) return;
  4283.                         h = b._trimAlignValue(g + i);
  4284.                         break;
  4285.                     case a.ui.keyCode.DOWN:
  4286.                     case a.ui.keyCode.LEFT:
  4287.                         if (g === b._valueMin()) return;
  4288.                         h = b._trimAlignValue(g - i)
  4289.                 }
  4290.                 b._slide(d, e, h)
  4291.         }).keyup(function (c) {
  4292.             var d = a(this).data('index.ui-slider-handle');
  4293.             b._keySliding && (b._keySliding = !1, b._stop(c, d), b._change(c, d), a(this).removeClass('ui-state-active'))
  4294.         }),
  4295.         this._refreshValue(),
  4296.         this._animateOff = !1
  4297.     }, destroy: function () {
  4298.         return this.handles.remove(),
  4299.         this.range.remove(),
  4300.         this.element.removeClass('ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all').removeData('slider').unbind('.slider'),
  4301.         this._mouseDestroy(),
  4302.         this
  4303.     }, _mouseCapture: function (b) {
  4304.         var c = this.options,
  4305.         d,
  4306.         e,
  4307.         f,
  4308.         g,
  4309.         h,
  4310.         i,
  4311.         j,
  4312.         k,
  4313.         l;
  4314.         return c.disabled ? !1 : (this.elementSize = {
  4315.             width: this.element.outerWidth(),
  4316.             height: this.element.outerHeight()
  4317.         }, this.elementOffset = this.element.offset(), d = {
  4318.             x: b.pageX,
  4319.             y: b.pageY
  4320.         }, e = this._normValueFromMouse(d), f = this._valueMax() - this._valueMin() + 1, h = this, this.handles.each(function (b) {
  4321.             var c = Math.abs(e - h.values(b));
  4322.             f > c && (f = c, g = a(this), i = b)
  4323.         }), c.range === !0 && this.values(1) === c.min && (i += 1, g = a(this.handles[i])), j = this._start(b, i), j === !1 ? !1 : (this._mouseSliding = !0, h._handleIndex = i, g.addClass('ui-state-active').focus(), k = g.offset(), l = !a(b.target).parents().andSelf().is('.ui-slider-handle'), this._clickOffset = l ? {
  4324.             left: 0,
  4325.             top: 0
  4326.         }
  4327.          : {
  4328.             left: b.pageX - k.left - g.width() / 2,
  4329.             top: b.pageY - k.top - g.height() / 2 - (parseInt(g.css('borderTopWidth'), 10) || 0) - (parseInt(g.css('borderBottomWidth'), 10) || 0) + (parseInt(g.css('marginTop'), 10) || 0)
  4330.         }, this.handles.hasClass('ui-state-hover') || this._slide(b, i, e), this._animateOff = !0, !0))
  4331.     }, _mouseStart: function (a) {
  4332.         return !0
  4333.     }, _mouseDrag: function (a) {
  4334.         var b = {
  4335.             x: a.pageX,
  4336.             y: a.pageY
  4337.         },
  4338.         c = this._normValueFromMouse(b);
  4339.         return this._slide(a, this._handleIndex, c),
  4340.         !1
  4341.     }, _mouseStop: function (a) {
  4342.         return this.handles.removeClass('ui-state-active'),
  4343.         this._mouseSliding = !1,
  4344.         this._stop(a, this._handleIndex),
  4345.         this._change(a, this._handleIndex),
  4346.         this._handleIndex = null,
  4347.         this._clickOffset = null,
  4348.         this._animateOff = !1,
  4349.         !1
  4350.     }, _detectOrientation: function () {
  4351.         this.orientation = this.options.orientation === 'vertical' ? 'vertical' : 'horizontal'
  4352.     }, _normValueFromMouse: function (a) {
  4353.         var b,
  4354.         c,
  4355.         d,
  4356.         e,
  4357.         f;
  4358.         return this.orientation === 'horizontal' ? (b = this.elementSize.width, c = a.x - this.elementOffset.left - (this._clickOffset ? this._clickOffset.left : 0))  : (b = this.elementSize.height, c = a.y - this.elementOffset.top - (this._clickOffset ? this._clickOffset.top : 0)),
  4359.         d = c / b,
  4360.         d > 1 && (d = 1),
  4361.         d < 0 && (d = 0),
  4362.         this.orientation === 'vertical' && (d = 1 - d),
  4363.         e = this._valueMax() - this._valueMin(),
  4364.         f = this._valueMin() + d * e,
  4365.         this._trimAlignValue(f)
  4366.     }, _start: function (a, b) {
  4367.         var c = {
  4368.             handle: this.handles[b],
  4369.             value: this.value()
  4370.         };
  4371.         return this.options.values && this.options.values.length && (c.value = this.values(b), c.values = this.values()),
  4372.         this._trigger('start', a, c)
  4373.     }, _slide: function (a, b, c) {
  4374.         var d,
  4375.         e,
  4376.         f;
  4377.         this.options.values && this.options.values.length ? (d = this.values(b ? 0 : 1), this.options.values.length === 2 && this.options.range === !0 && (b === 0 && c > d || b === 1 && c < d) && (c = d), c !== this.values(b) && (e = this.values(), e[b] = c, f = this._trigger('slide', a, {
  4378.             handle: this.handles[b],
  4379.             value: c,
  4380.             values: e
  4381.         }), d = this.values(b ? 0 : 1), f !== !1 && this.values(b, c, !0)))  : c !== this.value() && (f = this._trigger('slide', a, {
  4382.             handle: this.handles[b],
  4383.             value: c
  4384.         }), f !== !1 && this.value(c))
  4385.     }, _stop: function (a, b) {
  4386.         var c = {
  4387.             handle: this.handles[b],
  4388.             value: this.value()
  4389.         };
  4390.         this.options.values && this.options.values.length && (c.value = this.values(b), c.values = this.values()),
  4391.         this._trigger('stop', a, c)
  4392.     }, _change: function (a, b) {
  4393.         if (!this._keySliding && !this._mouseSliding) {
  4394.             var c = {
  4395.                 handle: this.handles[b],
  4396.                 value: this.value()
  4397.             };
  4398.             this.options.values && this.options.values.length && (c.value = this.values(b), c.values = this.values()),
  4399.             this._trigger('change', a, c)
  4400.         }
  4401.     }, value: function (a) {
  4402.         if (arguments.length) {
  4403.             this.options.value = this._trimAlignValue(a),
  4404.             this._refreshValue(),
  4405.             this._change(null, 0);
  4406.             return
  4407.         }
  4408.         return this._value()
  4409.     }, values: function (b, c) {
  4410.         var d,
  4411.         e,
  4412.         f;
  4413.         if (arguments.length > 1) {
  4414.             this.options.values[b] = this._trimAlignValue(c),
  4415.             this._refreshValue(),
  4416.             this._change(null, b);
  4417.             return
  4418.         }
  4419.         if (!arguments.length) return this._values();
  4420.         if (!a.isArray(arguments[0])) return this.options.values && this.options.values.length ? this._values(b)  : this.value();
  4421.         d = this.options.values,
  4422.         e = arguments[0];
  4423.         for (f = 0; f < d.length; f += 1) d[f] = this._trimAlignValue(e[f]),
  4424.         this._change(null, f);
  4425.         this._refreshValue()
  4426.     }, _setOption: function (b, c) {
  4427.         var d,
  4428.         e = 0;
  4429.         a.isArray(this.options.values) && (e = this.options.values.length),
  4430.         a.Widget.prototype._setOption.apply(this, arguments);
  4431.         switch (b) {
  4432.             case 'disabled':
  4433.                 c ? (this.handles.filter('.ui-state-focus').blur(), this.handles.removeClass('ui-state-hover'), this.handles.propAttr('disabled', !0), this.element.addClass('ui-disabled'))  : (this.handles.propAttr('disabled', !1), this.element.removeClass('ui-disabled'));
  4434.                 break;
  4435.             case 'orientation':
  4436.                 this._detectOrientation(),
  4437.                 this.element.removeClass('ui-slider-horizontal ui-slider-vertical').addClass('ui-slider-' + this.orientation),
  4438.                 this._refreshValue();
  4439.                 break;
  4440.             case 'value':
  4441.                 this._animateOff = !0,
  4442.                 this._refreshValue(),
  4443.                 this._change(null, 0),
  4444.                 this._animateOff = !1;
  4445.                 break;
  4446.             case 'values':
  4447.                 this._animateOff = !0,
  4448.                 this._refreshValue();
  4449.                 for (d = 0; d < e; d += 1) this._change(null, d);
  4450.                 this._animateOff = !1
  4451.         }
  4452.     },
  4453.     _value: function () {
  4454.         var a = this.options.value;
  4455.         return a = this._trimAlignValue(a),
  4456.         a
  4457.     },
  4458.     _values: function (a) {
  4459.         var b,
  4460.         c,
  4461.         d;
  4462.         if (arguments.length) return b = this.options.values[a],
  4463.         b = this._trimAlignValue(b),
  4464.         b;
  4465.         c = this.options.values.slice();
  4466.         for (d = 0; d < c.length; d += 1) c[d] = this._trimAlignValue(c[d]);
  4467.         return c
  4468.     },
  4469.     _trimAlignValue: function (a) {
  4470.         if (a <= this._valueMin()) return this._valueMin();
  4471.         if (a >= this._valueMax()) return this._valueMax();
  4472.         var b = this.options.step > 0 ? this.options.step : 1,
  4473.         c = (a - this._valueMin()) % b,
  4474.         d = a - c;
  4475.         return Math.abs(c) * 2 >= b && (d += c > 0 ? b : - b),
  4476.         parseFloat(d.toFixed(5))
  4477.     },
  4478.     _valueMin: function () {
  4479.         return this.options.min
  4480.     },
  4481.     _valueMax: function () {
  4482.         return this.options.max
  4483.     },
  4484.     _refreshValue: function () {
  4485.         var b = this.options.range,
  4486.         c = this.options,
  4487.         d = this,
  4488.         e = this._animateOff ? !1 : c.animate,
  4489.         f,
  4490.         g = {
  4491.         },
  4492.         h,
  4493.         i,
  4494.         j,
  4495.         k;
  4496.         this.options.values && this.options.values.length ? this.handles.each(function (b, i) {
  4497.             f = (d.values(b) - d._valueMin()) / (d._valueMax() - d._valueMin()) * 100,
  4498.             g[d.orientation === 'horizontal' ? 'left' : 'bottom'] = f + '%',
  4499.             a(this).stop(1, 1) [e ? 'animate' : 'css'](g, c.animate),
  4500.             d.options.range === !0 && (d.orientation === 'horizontal' ? (b === 0 && d.range.stop(1, 1) [e ? 'animate' : 'css']({
  4501.                 left: f + '%'
  4502.             }, c.animate), b === 1 && d.range[e ? 'animate' : 'css']({
  4503.                 width: f - h + '%'
  4504.             }, {
  4505.                 queue: !1,
  4506.                 duration: c.animate
  4507.             }))  : (b === 0 && d.range.stop(1, 1) [e ? 'animate' : 'css']({
  4508.                 bottom: f + '%'
  4509.             }, c.animate), b === 1 && d.range[e ? 'animate' : 'css']({
  4510.                 height: f - h + '%'
  4511.             }, {
  4512.                 queue: !1,
  4513.                 duration: c.animate
  4514.             }))),
  4515.             h = f
  4516.         })  : (i = this.value(), j = this._valueMin(), k = this._valueMax(), f = k !== j ? (i - j) / (k - j) * 100 : 0, g[d.orientation === 'horizontal' ? 'left' : 'bottom'] = f + '%', this.handle.stop(1, 1) [e ? 'animate' : 'css'](g, c.animate), b === 'min' && this.orientation === 'horizontal' && this.range.stop(1, 1) [e ? 'animate' : 'css']({
  4517.             width: f + '%'
  4518.         }, c.animate), b === 'max' && this.orientation === 'horizontal' && this.range[e ? 'animate' : 'css']({
  4519.             width: 100 - f + '%'
  4520.         }, {
  4521.             queue: !1,
  4522.             duration: c.animate
  4523.         }), b === 'min' && this.orientation === 'vertical' && this.range.stop(1, 1) [e ? 'animate' : 'css']({
  4524.             height: f + '%'
  4525.         }, c.animate), b === 'max' && this.orientation === 'vertical' && this.range[e ? 'animate' : 'css']({
  4526.             height: 100 - f + '%'
  4527.         }, {
  4528.             queue: !1,
  4529.             duration: c.animate
  4530.         }))
  4531.     }
  4532. }),
  4533. a.extend(a.ui.slider, {
  4534.     version: '1.8.24'
  4535. })
  4536. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  4537. * https://github.com/jquery/jquery-ui
  4538. * Includes: jquery.ui.tabs.js
  4539. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  4540. (function (a, b) {
  4541. function e() {
  4542.     return ++c
  4543. }
  4544. function f() {
  4545.     return ++d
  4546. }
  4547. var c = 0,
  4548. d = 0;
  4549. a.widget('ui.tabs', {
  4550.     options: {
  4551.         add: null,
  4552.         ajaxOptions: null,
  4553.         cache: !1,
  4554.         cookie: null,
  4555.         collapsible: !1,
  4556.         disable: null,
  4557.         disabled: [
  4558.         ],
  4559.         enable: null,
  4560.         event: 'click',
  4561.         fx: null,
  4562.         idPrefix: 'ui-tabs-',
  4563.         load: null,
  4564.         panelTemplate: '<div></div>',
  4565.         remove: null,
  4566.         select: null,
  4567.         show: null,
  4568.         spinner: '<em>Loading&#8230;</em>',
  4569.         tabTemplate: '<li><a href=\'#{href}\'><span>#{label}</span></a></li>'
  4570.     },
  4571.     _create: function () {
  4572.         this._tabify(!0)
  4573.     },
  4574.     _setOption: function (a, b) {
  4575.         if (a == 'selected') {
  4576.             if (this.options.collapsible && b == this.options.selected) return;
  4577.             this.select(b)
  4578.         } else this.options[a] = b,
  4579.         this._tabify()
  4580.     },
  4581.     _tabId: function (a) {
  4582.         return a.title && a.title.replace(/\s/g, '_').replace(/[^\w\u00c0-\uFFFF-]/g, '') || this.options.idPrefix + e()
  4583.     },
  4584.     _sanitizeSelector: function (a) {
  4585.         return a.replace(/:/g, '\\:')
  4586.     },
  4587.     _cookie: function () {
  4588.         var b = this.cookie || (this.cookie = this.options.cookie.name || 'ui-tabs-' + f());
  4589.         return a.cookie.apply(null, [
  4590.             b
  4591.         ].concat(a.makeArray(arguments)))
  4592.     },
  4593.     _ui: function (a, b) {
  4594.         return {
  4595.             tab: a,
  4596.             panel: b,
  4597.             index: this.anchors.index(a)
  4598.         }
  4599.     },
  4600.     _cleanup: function () {
  4601.         this.lis.filter('.ui-state-processing').removeClass('ui-state-processing').find('span:data(label.tabs)').each(function () {
  4602.             var b = a(this);
  4603.             b.html(b.data('label.tabs')).removeData('label.tabs')
  4604.         })
  4605.     },
  4606.     _tabify: function (c) {
  4607.         function m(b, c) {
  4608.             b.css('display', ''),
  4609.             !a.support.opacity && c.opacity && b[0].style.removeAttribute('filter')
  4610.         }
  4611.         var d = this,
  4612.         e = this.options,
  4613.         f = /^#.+/;
  4614.         this.list = this.element.find('ol,ul').eq(0),
  4615.         this.lis = a(' > li:has(a[href])', this.list),
  4616.         this.anchors = this.lis.map(function () {
  4617.             return a('a', this) [0]
  4618.         }),
  4619.         this.panels = a([]),
  4620.         this.anchors.each(function (b, c) {
  4621.             var g = a(c).attr('href'),
  4622.             h = g.split('#') [0],
  4623.             i;
  4624.             h && (h === location.toString().split('#') [0] || (i = a('base') [0]) && h === i.href) && (g = c.hash, c.href = g);
  4625.             if (f.test(g)) d.panels = d.panels.add(d.element.find(d._sanitizeSelector(g)));
  4626.              else if (g && g !== '#') {
  4627.                 a.data(c, 'href.tabs', g),
  4628.                 a.data(c, 'load.tabs', g.replace(/#.*$/, ''));
  4629.                 var j = d._tabId(c);
  4630.                 c.href = '#' + j;
  4631.                 var k = d.element.find('#' + j);
  4632.                 k.length || (k = a(e.panelTemplate).attr('id', j).addClass('ui-tabs-panel ui-widget-content ui-corner-bottom').insertAfter(d.panels[b - 1] || d.list), k.data('destroy.tabs', !0)),
  4633.                 d.panels = d.panels.add(k)
  4634.             } else e.disabled.push(b)
  4635.         }),
  4636.         c ? (this.element.addClass('ui-tabs ui-widget ui-widget-content ui-corner-all'), this.list.addClass('ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all'), this.lis.addClass('ui-state-default ui-corner-top'), this.panels.addClass('ui-tabs-panel ui-widget-content ui-corner-bottom'), e.selected === b ? (location.hash && this.anchors.each(function (a, b) {
  4637.             if (b.hash == location.hash) return e.selected = a,
  4638.             !1
  4639.         }), typeof e.selected != 'number' && e.cookie && (e.selected = parseInt(d._cookie(), 10)), typeof e.selected != 'number' && this.lis.filter('.ui-tabs-selected').length && (e.selected = this.lis.index(this.lis.filter('.ui-tabs-selected'))), e.selected = e.selected || (this.lis.length ? 0 : - 1))  : e.selected === null && (e.selected = - 1), e.selected = e.selected >= 0 && this.anchors[e.selected] || e.selected < 0 ? e.selected : 0, e.disabled = a.unique(e.disabled.concat(a.map(this.lis.filter('.ui-state-disabled'), function (a, b) {
  4640.             return d.lis.index(a)
  4641.         }))).sort(), a.inArray(e.selected, e.disabled) != - 1 && e.disabled.splice(a.inArray(e.selected, e.disabled), 1), this.panels.addClass('ui-tabs-hide'), this.lis.removeClass('ui-tabs-selected ui-state-active'), e.selected >= 0 && this.anchors.length && (d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash)).removeClass('ui-tabs-hide'), this.lis.eq(e.selected).addClass('ui-tabs-selected ui-state-active'), d.element.queue('tabs', function () {
  4642.             d._trigger('show', null, d._ui(d.anchors[e.selected], d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash)) [0]))
  4643.         }), this.load(e.selected)), a(window).bind('unload', function () {
  4644.             d.lis.add(d.anchors).unbind('.tabs'),
  4645.             d.lis = d.anchors = d.panels = null
  4646.         }))  : e.selected = this.lis.index(this.lis.filter('.ui-tabs-selected')),
  4647.         this.element[e.collapsible ? 'addClass' : 'removeClass']('ui-tabs-collapsible'),
  4648.         e.cookie && this._cookie(e.selected, e.cookie);
  4649.         for (var g = 0, h; h = this.lis[g]; g++) a(h) [a.inArray(g, e.disabled) != - 1 && !a(h).hasClass('ui-tabs-selected') ? 'addClass' : 'removeClass']('ui-state-disabled');
  4650.         e.cache === !1 && this.anchors.removeData('cache.tabs'),
  4651.         this.lis.add(this.anchors).unbind('.tabs');
  4652.         if (e.event !== 'mouseover') {
  4653.             var i = function (a, b) {
  4654.                 b.is(':not(.ui-state-disabled)') && b.addClass('ui-state-' + a)
  4655.             },
  4656.             j = function (a, b) {
  4657.                 b.removeClass('ui-state-' + a)
  4658.             };
  4659.             this.lis.bind('mouseover.tabs', function () {
  4660.                 i('hover', a(this))
  4661.             }),
  4662.             this.lis.bind('mouseout.tabs', function () {
  4663.                 j('hover', a(this))
  4664.             }),
  4665.             this.anchors.bind('focus.tabs', function () {
  4666.                 i('focus', a(this).closest('li'))
  4667.             }),
  4668.             this.anchors.bind('blur.tabs', function () {
  4669.                 j('focus', a(this).closest('li'))
  4670.             })
  4671.         }
  4672.         var k,
  4673.         l;
  4674.         e.fx && (a.isArray(e.fx) ? (k = e.fx[0], l = e.fx[1])  : k = l = e.fx);
  4675.         var n = l ? function (b, c) {
  4676.             a(b).closest('li').addClass('ui-tabs-selected ui-state-active'),
  4677.             c.hide().removeClass('ui-tabs-hide').animate(l, l.duration || 'normal', function () {
  4678.                 m(c, l),
  4679.                 d._trigger('show', null, d._ui(b, c[0]))
  4680.             })
  4681.         }
  4682.          : function (b, c) {
  4683.             a(b).closest('li').addClass('ui-tabs-selected ui-state-active'),
  4684.             c.removeClass('ui-tabs-hide'),
  4685.             d._trigger('show', null, d._ui(b, c[0]))
  4686.         },
  4687.         o = k ? function (a, b) {
  4688.             b.animate(k, k.duration || 'normal', function () {
  4689.                 d.lis.removeClass('ui-tabs-selected ui-state-active'),
  4690.                 b.addClass('ui-tabs-hide'),
  4691.                 m(b, k),
  4692.                 d.element.dequeue('tabs')
  4693.             })
  4694.         }
  4695.          : function (a, b, c) {
  4696.             d.lis.removeClass('ui-tabs-selected ui-state-active'),
  4697.             b.addClass('ui-tabs-hide'),
  4698.             d.element.dequeue('tabs')
  4699.         };
  4700.         this.anchors.bind(e.event + '.tabs', function () {
  4701.             var b = this,
  4702.             c = a(b).closest('li'),
  4703.             f = d.panels.filter(':not(.ui-tabs-hide)'),
  4704.             g = d.element.find(d._sanitizeSelector(b.hash));
  4705.             if (c.hasClass('ui-tabs-selected') && !e.collapsible || c.hasClass('ui-state-disabled') || c.hasClass('ui-state-processing') || d.panels.filter(':animated').length || d._trigger('select', null, d._ui(this, g[0])) === !1) return this.blur(),
  4706.             !1;
  4707.             e.selected = d.anchors.index(this),
  4708.             d.abort();
  4709.             if (e.collapsible) {
  4710.                 if (c.hasClass('ui-tabs-selected')) return e.selected = - 1,
  4711.                 e.cookie && d._cookie(e.selected, e.cookie),
  4712.                 d.element.queue('tabs', function () {
  4713.                     o(b, f)
  4714.                 }).dequeue('tabs'),
  4715.                 this.blur(),
  4716.                 !1;
  4717.                 if (!f.length) return e.cookie && d._cookie(e.selected, e.cookie),
  4718.                 d.element.queue('tabs', function () {
  4719.                     n(b, g)
  4720.                 }),
  4721.                 d.load(d.anchors.index(this)),
  4722.                 this.blur(),
  4723.                 !1
  4724.             }
  4725.             e.cookie && d._cookie(e.selected, e.cookie);
  4726.             if (g.length) f.length && d.element.queue('tabs', function () {
  4727.                 o(b, f)
  4728.             }),
  4729.             d.element.queue('tabs', function () {
  4730.                 n(b, g)
  4731.             }),
  4732.             d.load(d.anchors.index(this));
  4733.              else throw 'jQuery UI Tabs: Mismatching fragment identifier.';
  4734.             a.browser.msie && this.blur()
  4735.         }),
  4736.         this.anchors.bind('click.tabs', function () {
  4737.             return !1
  4738.         })
  4739.     },
  4740.     _getIndex: function (a) {
  4741.         return typeof a == 'string' && (a = this.anchors.index(this.anchors.filter('[href$=\'' + a + '\']'))),
  4742.         a
  4743.     },
  4744.     destroy: function () {
  4745.         var b = this.options;
  4746.         return this.abort(),
  4747.         this.element.unbind('.tabs').removeClass('ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible').removeData('tabs'),
  4748.         this.list.removeClass('ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all'),
  4749.         this.anchors.each(function () {
  4750.             var b = a.data(this, 'href.tabs');
  4751.             b && (this.href = b);
  4752.             var c = a(this).unbind('.tabs');
  4753.             a.each(['href',
  4754.             'load',
  4755.             'cache'], function (a, b) {
  4756.                 c.removeData(b + '.tabs')
  4757.             })
  4758.         }),
  4759.         this.lis.unbind('.tabs').add(this.panels).each(function () {
  4760.             a.data(this, 'destroy.tabs') ? a(this).remove()  : a(this).removeClass(['ui-state-default',
  4761.             'ui-corner-top',
  4762.             'ui-tabs-selected',
  4763.             'ui-state-active',
  4764.             'ui-state-hover',
  4765.             'ui-state-focus',
  4766.             'ui-state-disabled',
  4767.             'ui-tabs-panel',
  4768.             'ui-widget-content',
  4769.             'ui-corner-bottom',
  4770.             'ui-tabs-hide'].join(' '))
  4771.         }),
  4772.         b.cookie && this._cookie(null, b.cookie),
  4773.         this
  4774.     },
  4775.     add: function (c, d, e) {
  4776.         e === b && (e = this.anchors.length);
  4777.         var f = this,
  4778.         g = this.options,
  4779.         h = a(g.tabTemplate.replace(/#\{href\}/g, c).replace(/#\{label\}/g, d)),
  4780.         i = c.indexOf('#') ? this._tabId(a('a', h) [0])  : c.replace('#', '');
  4781.         h.addClass('ui-state-default ui-corner-top').data('destroy.tabs', !0);
  4782.         var j = f.element.find('#' + i);
  4783.         return j.length || (j = a(g.panelTemplate).attr('id', i).data('destroy.tabs', !0)),
  4784.         j.addClass('ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide'),
  4785.         e >= this.lis.length ? (h.appendTo(this.list), j.appendTo(this.list[0].parentNode))  : (h.insertBefore(this.lis[e]), j.insertBefore(this.panels[e])),
  4786.         g.disabled = a.map(g.disabled, function (a, b) {
  4787.             return a >= e ? ++a : a
  4788.         }),
  4789.         this._tabify(),
  4790.         this.anchors.length == 1 && (g.selected = 0, h.addClass('ui-tabs-selected ui-state-active'), j.removeClass('ui-tabs-hide'), this.element.queue('tabs', function () {
  4791.             f._trigger('show', null, f._ui(f.anchors[0], f.panels[0]))
  4792.         }), this.load(0)),
  4793.         this._trigger('add', null, this._ui(this.anchors[e], this.panels[e])),
  4794.         this
  4795.     },
  4796.     remove: function (b) {
  4797.         b = this._getIndex(b);
  4798.         var c = this.options,
  4799.         d = this.lis.eq(b).remove(),
  4800.         e = this.panels.eq(b).remove();
  4801.         return d.hasClass('ui-tabs-selected') && this.anchors.length > 1 && this.select(b + (b + 1 < this.anchors.length ? 1 : - 1)),
  4802.         c.disabled = a.map(a.grep(c.disabled, function (a, c) {
  4803.             return a != b
  4804.         }), function (a, c) {
  4805.             return a >= b ? --a : a
  4806.         }),
  4807.         this._tabify(),
  4808.         this._trigger('remove', null, this._ui(d.find('a') [0], e[0])),
  4809.         this
  4810.     },
  4811.     enable: function (b) {
  4812.         b = this._getIndex(b);
  4813.         var c = this.options;
  4814.         if (a.inArray(b, c.disabled) == - 1) return;
  4815.         return this.lis.eq(b).removeClass('ui-state-disabled'),
  4816.         c.disabled = a.grep(c.disabled, function (a, c) {
  4817.             return a != b
  4818.         }),
  4819.         this._trigger('enable', null, this._ui(this.anchors[b], this.panels[b])),
  4820.         this
  4821.     },
  4822.     disable: function (a) {
  4823.         a = this._getIndex(a);
  4824.         var b = this,
  4825.         c = this.options;
  4826.         return a != c.selected && (this.lis.eq(a).addClass('ui-state-disabled'), c.disabled.push(a), c.disabled.sort(), this._trigger('disable', null, this._ui(this.anchors[a], this.panels[a]))),
  4827.         this
  4828.     },
  4829.     select: function (a) {
  4830.         a = this._getIndex(a);
  4831.         if (a == - 1) if (this.options.collapsible && this.options.selected != - 1) a = this.options.selected;
  4832.          else return this;
  4833.         return this.anchors.eq(a).trigger(this.options.event + '.tabs'),
  4834.         this
  4835.     },
  4836.     load: function (b) {
  4837.         b = this._getIndex(b);
  4838.         var c = this,
  4839.         d = this.options,
  4840.         e = this.anchors.eq(b) [0],
  4841.         f = a.data(e, 'load.tabs');
  4842.         this.abort();
  4843.         if (!f || this.element.queue('tabs').length !== 0 && a.data(e, 'cache.tabs')) {
  4844.             this.element.dequeue('tabs');
  4845.             return
  4846.         }
  4847.         this.lis.eq(b).addClass('ui-state-processing');
  4848.         if (d.spinner) {
  4849.             var g = a('span', e);
  4850.             g.data('label.tabs', g.html()).html(d.spinner)
  4851.         }
  4852.         return this.xhr = a.ajax(a.extend({
  4853.         }, d.ajaxOptions, {
  4854.             url: f,
  4855.             success: function (f, g) {
  4856.                 c.element.find(c._sanitizeSelector(e.hash)).html(f),
  4857.                 c._cleanup(),
  4858.                 d.cache && a.data(e, 'cache.tabs', !0),
  4859.                 c._trigger('load', null, c._ui(c.anchors[b], c.panels[b]));
  4860.                 try {
  4861.                     d.ajaxOptions.success(f, g)
  4862.                 } catch (h) {
  4863.                 }
  4864.             },
  4865.             error: function (a, f, g) {
  4866.                 c._cleanup(),
  4867.                 c._trigger('load', null, c._ui(c.anchors[b], c.panels[b]));
  4868.                 try {
  4869.                     d.ajaxOptions.error(a, f, b, e)
  4870.                 } catch (g) {
  4871.                 }
  4872.             }
  4873.         })),
  4874.         c.element.dequeue('tabs'),
  4875.         this
  4876.     },
  4877.     abort: function () {
  4878.         return this.element.queue([]),
  4879.         this.panels.stop(!1, !0),
  4880.         this.element.queue('tabs', this.element.queue('tabs').splice( - 2, 2)),
  4881.         this.xhr && (this.xhr.abort(), delete this.xhr),
  4882.         this._cleanup(),
  4883.         this
  4884.     },
  4885.     url: function (a, b) {
  4886.         return this.anchors.eq(a).removeData('cache.tabs').data('load.tabs', b),
  4887.         this
  4888.     },
  4889.     length: function () {
  4890.         return this.anchors.length
  4891.     }
  4892. }),
  4893. a.extend(a.ui.tabs, {
  4894.     version: '1.8.24'
  4895. }),
  4896. a.extend(a.ui.tabs.prototype, {
  4897.     rotation: null,
  4898.     rotate: function (a, b) {
  4899.         var c = this,
  4900.         d = this.options,
  4901.         e = c._rotate || (c._rotate = function (b) {
  4902.             clearTimeout(c.rotation),
  4903.             c.rotation = setTimeout(function () {
  4904.                 var a = d.selected;
  4905.                 c.select(++a < c.anchors.length ? a : 0)
  4906.             }, a),
  4907.             b && b.stopPropagation()
  4908.         }),
  4909.         f = c._unrotate || (c._unrotate = b ? function (a) {
  4910.             e()
  4911.         }
  4912.          : function (a) {
  4913.             a.clientX && c.rotate(null)
  4914.         });
  4915.         return a ? (this.element.bind('tabsshow', e), this.anchors.bind(d.event + '.tabs', f), e())  : (clearTimeout(c.rotation), this.element.unbind('tabsshow', e), this.anchors.unbind(d.event + '.tabs', f), delete this._rotate, delete this._unrotate),
  4916.         this
  4917.     }
  4918. })
  4919. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  4920. * https://github.com/jquery/jquery-ui
  4921. * Includes: jquery.ui.datepicker.js
  4922. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  4923. (function ($, undefined) {
  4924. function Datepicker() {
  4925.     this.debug = !1,
  4926.     this._curInst = null,
  4927.     this._keyEvent = !1,
  4928.     this._disabledInputs = [
  4929.     ],
  4930.     this._datepickerShowing = !1,
  4931.     this._inDialog = !1,
  4932.     this._mainDivId = 'ui-datepicker-div',
  4933.     this._inlineClass = 'ui-datepicker-inline',
  4934.     this._appendClass = 'ui-datepicker-append',
  4935.     this._triggerClass = 'ui-datepicker-trigger',
  4936.     this._dialogClass = 'ui-datepicker-dialog',
  4937.     this._disableClass = 'ui-datepicker-disabled',
  4938.     this._unselectableClass = 'ui-datepicker-unselectable',
  4939.     this._currentClass = 'ui-datepicker-current-day',
  4940.     this._dayOverClass = 'ui-datepicker-days-cell-over',
  4941.     this.regional = [
  4942.     ],
  4943.     this.regional[''] = {
  4944.         closeText: 'Done',
  4945.         prevText: 'Prev',
  4946.         nextText: 'Next',
  4947.         currentText: 'Today',
  4948.         monthNames: [
  4949.             'January',
  4950.             'February',
  4951.             'March',
  4952.             'April',
  4953.             'May',
  4954.             'June',
  4955.             'July',
  4956.             'August',
  4957.             'September',
  4958.             'October',
  4959.             'November',
  4960.             'December'
  4961.         ],
  4962.         monthNamesShort: [
  4963.             'Jan',
  4964.             'Feb',
  4965.             'Mar',
  4966.             'Apr',
  4967.             'May',
  4968.             'Jun',
  4969.             'Jul',
  4970.             'Aug',
  4971.             'Sep',
  4972.             'Oct',
  4973.             'Nov',
  4974.             'Dec'
  4975.         ],
  4976.         dayNames: [
  4977.             'Sunday',
  4978.             'Monday',
  4979.             'Tuesday',
  4980.             'Wednesday',
  4981.             'Thursday',
  4982.             'Friday',
  4983.             'Saturday'
  4984.         ],
  4985.         dayNamesShort: [
  4986.             'Sun',
  4987.             'Mon',
  4988.             'Tue',
  4989.             'Wed',
  4990.             'Thu',
  4991.             'Fri',
  4992.             'Sat'
  4993.         ],
  4994.         dayNamesMin: [
  4995.             'Su',
  4996.             'Mo',
  4997.             'Tu',
  4998.             'We',
  4999.             'Th',
  5000.             'Fr',
  5001.             'Sa'
  5002.         ],
  5003.         weekHeader: 'Wk',
  5004.         dateFormat: 'mm/dd/yy',
  5005.         firstDay: 0,
  5006.         isRTL: !1,
  5007.         showMonthAfterYear: !1,
  5008.         yearSuffix: ''
  5009.     },
  5010.     this._defaults = {
  5011.         showOn: 'focus',
  5012.         showAnim: 'fadeIn',
  5013.         showOptions: {
  5014.         },
  5015.         defaultDate: null,
  5016.         appendText: '',
  5017.         buttonText: '...',
  5018.         buttonImage: '',
  5019.         buttonImageOnly: !1,
  5020.         hideIfNoPrevNext: !1,
  5021.         navigationAsDateFormat: !1,
  5022.         gotoCurrent: !1,
  5023.         changeMonth: !1,
  5024.         changeYear: !1,
  5025.         yearRange: 'c-10:c+10',
  5026.         showOtherMonths: !1,
  5027.         selectOtherMonths: !1,
  5028.         showWeek: !1,
  5029.         calculateWeek: this.iso8601Week,
  5030.         shortYearCutoff: '+10',
  5031.         minDate: null,
  5032.         maxDate: null,
  5033.         duration: 'fast',
  5034.         beforeShowDay: null,
  5035.         beforeShow: null,
  5036.         onSelect: null,
  5037.         onChangeMonthYear: null,
  5038.         onClose: null,
  5039.         numberOfMonths: 1,
  5040.         showCurrentAtPos: 0,
  5041.         stepMonths: 1,
  5042.         stepBigMonths: 12,
  5043.         altField: '',
  5044.         altFormat: '',
  5045.         constrainInput: !0,
  5046.         showButtonPanel: !1,
  5047.         autoSize: !1,
  5048.         disabled: !1
  5049.     },
  5050.     $.extend(this._defaults, this.regional['']),
  5051.     this.dpDiv = bindHover($('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))
  5052. }
  5053. function bindHover(a) {
  5054.     var b = 'button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a';
  5055.     return a.bind('mouseout', function (a) {
  5056.         var c = $(a.target).closest(b);
  5057.         if (!c.length) return;
  5058.         c.removeClass('ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover')
  5059.     }).bind('mouseover', function (c) {
  5060.         var d = $(c.target).closest(b);
  5061.         if ($.datepicker._isDisabledDatepicker(instActive.inline ? a.parent() [0] : instActive.input[0]) || !d.length) return;
  5062.         d.parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover'),
  5063.         d.addClass('ui-state-hover'),
  5064.         d.hasClass('ui-datepicker-prev') && d.addClass('ui-datepicker-prev-hover'),
  5065.         d.hasClass('ui-datepicker-next') && d.addClass('ui-datepicker-next-hover')
  5066.     })
  5067. }
  5068. function extendRemove(a, b) {
  5069.     $.extend(a, b);
  5070.     for (var c in b) if (b[c] == null || b[c] == undefined) a[c] = b[c];
  5071.     return a
  5072. }
  5073. function isArray(a) {
  5074.     return a && ($.browser.safari && typeof a == 'object' && a.length || a.constructor && a.constructor.toString().match(/\Array\(\)/))
  5075. }
  5076. $.extend($.ui, {
  5077.     datepicker: {
  5078.         version: '1.8.24'
  5079.     }
  5080. });
  5081. var PROP_NAME = 'datepicker',
  5082. dpuuid = (new Date).getTime(),
  5083. instActive;
  5084. $.extend(Datepicker.prototype, {
  5085.     markerClassName: 'hasDatepicker',
  5086.     maxRows: 4,
  5087.     log: function () {
  5088.         this.debug && console.log.apply('', arguments)
  5089.     },
  5090.     _widgetDatepicker: function () {
  5091.         return this.dpDiv
  5092.     },
  5093.     setDefaults: function (a) {
  5094.         return extendRemove(this._defaults, a || {
  5095.         }),
  5096.         this
  5097.     },
  5098.     _attachDatepicker: function (target, settings) {
  5099.         var inlineSettings = null;
  5100.         for (var attrName in this._defaults) {
  5101.             var attrValue = target.getAttribute('date:' + attrName);
  5102.             if (attrValue) {
  5103.                 inlineSettings = inlineSettings || {
  5104.                 };
  5105.                 try {
  5106.                     inlineSettings[attrName] = eval(attrValue)
  5107.                 } catch (err) {
  5108.                     inlineSettings[attrName] = attrValue
  5109.                 }
  5110.             }
  5111.         }
  5112.         var nodeName = target.nodeName.toLowerCase(),
  5113.         inline = nodeName == 'div' || nodeName == 'span';
  5114.         target.id || (this.uuid += 1, target.id = 'dp' + this.uuid);
  5115.         var inst = this._newInst($(target), inline);
  5116.         inst.settings = $.extend({
  5117.         }, settings || {
  5118.         }, inlineSettings || {
  5119.         }),
  5120.         nodeName == 'input' ? this._connectDatepicker(target, inst)  : inline && this._inlineDatepicker(target, inst)
  5121.     },
  5122.     _newInst: function (a, b) {
  5123.         var c = a[0].id.replace(/([^A-Za-z0-9_-])/g, '\\\\$1');
  5124.         return {
  5125.             id: c,
  5126.             input: a,
  5127.             selectedDay: 0,
  5128.             selectedMonth: 0,
  5129.             selectedYear: 0,
  5130.             drawMonth: 0,
  5131.             drawYear: 0,
  5132.             inline: b,
  5133.             dpDiv: b ? bindHover($('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))  : this.dpDiv
  5134.         }
  5135.     },
  5136.     _connectDatepicker: function (a, b) {
  5137.         var c = $(a);
  5138.         b.append = $([]),
  5139.         b.trigger = $([]);
  5140.         if (c.hasClass(this.markerClassName)) return;
  5141.         this._attachments(c, b),
  5142.         c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind('setData.datepicker', function (a, c, d) {
  5143.             b.settings[c] = d
  5144.         }).bind('getData.datepicker', function (a, c) {
  5145.             return this._get(b, c)
  5146.         }),
  5147.         this._autoSize(b),
  5148.         $.data(a, PROP_NAME, b),
  5149.         b.settings.disabled && this._disableDatepicker(a)
  5150.     },
  5151.     _attachments: function (a, b) {
  5152.         var c = this._get(b, 'appendText'),
  5153.         d = this._get(b, 'isRTL');
  5154.         b.append && b.append.remove(),
  5155.         c && (b.append = $('<span class="' + this._appendClass + '">' + c + '</span>'), a[d ? 'before' : 'after'](b.append)),
  5156.         a.unbind('focus', this._showDatepicker),
  5157.         b.trigger && b.trigger.remove();
  5158.         var e = this._get(b, 'showOn');
  5159.         (e == 'focus' || e == 'both') && a.focus(this._showDatepicker);
  5160.         if (e == 'button' || e == 'both') {
  5161.             var f = this._get(b, 'buttonText'),
  5162.             g = this._get(b, 'buttonImage');
  5163.             b.trigger = $(this._get(b, 'buttonImageOnly') ? $('<img/>').addClass(this._triggerClass).attr({
  5164.                 src: g,
  5165.                 alt: f,
  5166.                 title: f
  5167.             })  : $('<button type="button"></button>').addClass(this._triggerClass).html(g == '' ? f : $('<img/>').attr({
  5168.                 src: g,
  5169.                 alt: f,
  5170.                 title: f
  5171.             }))),
  5172.             a[d ? 'before' : 'after'](b.trigger),
  5173.             b.trigger.click(function () {
  5174.                 return $.datepicker._datepickerShowing && $.datepicker._lastInput == a[0] ? $.datepicker._hideDatepicker()  : $.datepicker._datepickerShowing && $.datepicker._lastInput != a[0] ? ($.datepicker._hideDatepicker(), $.datepicker._showDatepicker(a[0]))  : $.datepicker._showDatepicker(a[0]),
  5175.                 !1
  5176.             })
  5177.         }
  5178.     },
  5179.     _autoSize: function (a) {
  5180.         if (this._get(a, 'autoSize') && !a.inline) {
  5181.             var b = new Date(2009, 11, 20),
  5182.             c = this._get(a, 'dateFormat');
  5183.             if (c.match(/[DM]/)) {
  5184.                 var d = function (a) {
  5185.                     var b = 0,
  5186.                     c = 0;
  5187.                     for (var d = 0; d < a.length; d++) a[d].length > b && (b = a[d].length, c = d);
  5188.                     return c
  5189.                 };
  5190.                 b.setMonth(d(this._get(a, c.match(/MM/) ? 'monthNames' : 'monthNamesShort'))),
  5191.                 b.setDate(d(this._get(a, c.match(/DD/) ? 'dayNames' : 'dayNamesShort')) + 20 - b.getDay())
  5192.             }
  5193.             a.input.attr('size', this._formatDate(a, b).length)
  5194.         }
  5195.     },
  5196.     _inlineDatepicker: function (a, b) {
  5197.         var c = $(a);
  5198.         if (c.hasClass(this.markerClassName)) return;
  5199.         c.addClass(this.markerClassName).append(b.dpDiv).bind('setData.datepicker', function (a, c, d) {
  5200.             b.settings[c] = d
  5201.         }).bind('getData.datepicker', function (a, c) {
  5202.             return this._get(b, c)
  5203.         }),
  5204.         $.data(a, PROP_NAME, b),
  5205.         this._setDate(b, this._getDefaultDate(b), !0),
  5206.         this._updateDatepicker(b),
  5207.         this._updateAlternate(b),
  5208.         b.settings.disabled && this._disableDatepicker(a),
  5209.         b.dpDiv.css('display', 'block')
  5210.     },
  5211.     _dialogDatepicker: function (a, b, c, d, e) {
  5212.         var f = this._dialogInst;
  5213.         if (!f) {
  5214.             this.uuid += 1;
  5215.             var g = 'dp' + this.uuid;
  5216.             this._dialogInput = $('<input type="text" id="' + g + '" style="position: absolute; top: -100px; width: 0px;"/>'),
  5217.             this._dialogInput.keydown(this._doKeyDown),
  5218.             $('body').append(this._dialogInput),
  5219.             f = this._dialogInst = this._newInst(this._dialogInput, !1),
  5220.             f.settings = {
  5221.             },
  5222.             $.data(this._dialogInput[0], PROP_NAME, f)
  5223.         }
  5224.         extendRemove(f.settings, d || {
  5225.         }),
  5226.         b = b && b.constructor == Date ? this._formatDate(f, b)  : b,
  5227.         this._dialogInput.val(b),
  5228.         this._pos = e ? e.length ? e : [
  5229.             e.pageX,
  5230.             e.pageY
  5231.         ] : null;
  5232.         if (!this._pos) {
  5233.             var h = document.documentElement.clientWidth,
  5234.             i = document.documentElement.clientHeight,
  5235.             j = document.documentElement.scrollLeft || document.body.scrollLeft,
  5236.             k = document.documentElement.scrollTop || document.body.scrollTop;
  5237.             this._pos = [
  5238.                 h / 2 - 100 + j,
  5239.                 i / 2 - 150 + k
  5240.             ]
  5241.         }
  5242.         return this._dialogInput.css('left', this._pos[0] + 20 + 'px').css('top', this._pos[1] + 'px'),
  5243.         f.settings.onSelect = c,
  5244.         this._inDialog = !0,
  5245.         this.dpDiv.addClass(this._dialogClass),
  5246.         this._showDatepicker(this._dialogInput[0]),
  5247.         $.blockUI && $.blockUI(this.dpDiv),
  5248.         $.data(this._dialogInput[0], PROP_NAME, f),
  5249.         this
  5250.     },
  5251.     _destroyDatepicker: function (a) {
  5252.         var b = $(a),
  5253.         c = $.data(a, PROP_NAME);
  5254.         if (!b.hasClass(this.markerClassName)) return;
  5255.         var d = a.nodeName.toLowerCase();
  5256.         $.removeData(a, PROP_NAME),
  5257.         d == 'input' ? (c.append.remove(), c.trigger.remove(), b.removeClass(this.markerClassName).unbind('focus', this._showDatepicker).unbind('keydown', this._doKeyDown).unbind('keypress', this._doKeyPress).unbind('keyup', this._doKeyUp))  : (d == 'div' || d == 'span') && b.removeClass(this.markerClassName).empty()
  5258.     },
  5259.     _enableDatepicker: function (a) {
  5260.         var b = $(a),
  5261.         c = $.data(a, PROP_NAME);
  5262.         if (!b.hasClass(this.markerClassName)) return;
  5263.         var d = a.nodeName.toLowerCase();
  5264.         if (d == 'input') a.disabled = !1,
  5265.         c.trigger.filter('button').each(function () {
  5266.             this.disabled = !1
  5267.         }).end().filter('img').css({
  5268.             opacity: '1.0',
  5269.             cursor: ''
  5270.         });
  5271.          else if (d == 'div' || d == 'span') {
  5272.             var e = b.children('.' + this._inlineClass);
  5273.             e.children().removeClass('ui-state-disabled'),
  5274.             e.find('select.ui-datepicker-month, select.ui-datepicker-year').removeAttr('disabled')
  5275.         }
  5276.         this._disabledInputs = $.map(this._disabledInputs, function (b) {
  5277.             return b == a ? null : b
  5278.         })
  5279.     },
  5280.     _disableDatepicker: function (a) {
  5281.         var b = $(a),
  5282.         c = $.data(a, PROP_NAME);
  5283.         if (!b.hasClass(this.markerClassName)) return;
  5284.         var d = a.nodeName.toLowerCase();
  5285.         if (d == 'input') a.disabled = !0,
  5286.         c.trigger.filter('button').each(function () {
  5287.             this.disabled = !0
  5288.         }).end().filter('img').css({
  5289.             opacity: '0.5',
  5290.             cursor: 'default'
  5291.         });
  5292.          else if (d == 'div' || d == 'span') {
  5293.             var e = b.children('.' + this._inlineClass);
  5294.             e.children().addClass('ui-state-disabled'),
  5295.             e.find('select.ui-datepicker-month, select.ui-datepicker-year').attr('disabled', 'disabled')
  5296.         }
  5297.         this._disabledInputs = $.map(this._disabledInputs, function (b) {
  5298.             return b == a ? null : b
  5299.         }),
  5300.         this._disabledInputs[this._disabledInputs.length] = a
  5301.     },
  5302.     _isDisabledDatepicker: function (a) {
  5303.         if (!a) return !1;
  5304.         for (var b = 0; b < this._disabledInputs.length; b++) if (this._disabledInputs[b] == a) return !0;
  5305.         return !1
  5306.     },
  5307.     _getInst: function (a) {
  5308.         try {
  5309.             return $.data(a, PROP_NAME)
  5310.         } catch (b) {
  5311.             throw 'Missing instance data for this datepicker'
  5312.         }
  5313.     },
  5314.     _optionDatepicker: function (a, b, c) {
  5315.         var d = this._getInst(a);
  5316.         if (arguments.length == 2 && typeof b == 'string') return b == 'defaults' ? $.extend({
  5317.         }, $.datepicker._defaults)  : d ? b == 'all' ? $.extend({
  5318.         }, d.settings)  : this._get(d, b)  : null;
  5319.         var e = b || {
  5320.         };
  5321.         typeof b == 'string' && (e = {
  5322.         }, e[b] = c);
  5323.         if (d) {
  5324.             this._curInst == d && this._hideDatepicker();
  5325.             var f = this._getDateDatepicker(a, !0),
  5326.             g = this._getMinMaxDate(d, 'min'),
  5327.             h = this._getMinMaxDate(d, 'max');
  5328.             extendRemove(d.settings, e),
  5329.             g !== null && e.dateFormat !== undefined && e.minDate === undefined && (d.settings.minDate = this._formatDate(d, g)),
  5330.             h !== null && e.dateFormat !== undefined && e.maxDate === undefined && (d.settings.maxDate = this._formatDate(d, h)),
  5331.             this._attachments($(a), d),
  5332.             this._autoSize(d),
  5333.             this._setDate(d, f),
  5334.             this._updateAlternate(d),
  5335.             this._updateDatepicker(d)
  5336.         }
  5337.     },
  5338.     _changeDatepicker: function (a, b, c) {
  5339.         this._optionDatepicker(a, b, c)
  5340.     },
  5341.     _refreshDatepicker: function (a) {
  5342.         var b = this._getInst(a);
  5343.         b && this._updateDatepicker(b)
  5344.     },
  5345.     _setDateDatepicker: function (a, b) {
  5346.         var c = this._getInst(a);
  5347.         c && (this._setDate(c, b), this._updateDatepicker(c), this._updateAlternate(c))
  5348.     },
  5349.     _getDateDatepicker: function (a, b) {
  5350.         var c = this._getInst(a);
  5351.         return c && !c.inline && this._setDateFromField(c, b),
  5352.         c ? this._getDate(c)  : null
  5353.     },
  5354.     _doKeyDown: function (a) {
  5355.         var b = $.datepicker._getInst(a.target),
  5356.         c = !0,
  5357.         d = b.dpDiv.is('.ui-datepicker-rtl');
  5358.         b._keyEvent = !0;
  5359.         if ($.datepicker._datepickerShowing) switch (a.keyCode) {
  5360.             case 9:
  5361.                 $.datepicker._hideDatepicker(),
  5362.                 c = !1;
  5363.                 break;
  5364.             case 13:
  5365.                 var e = $('td.' + $.datepicker._dayOverClass + ':not(.' + $.datepicker._currentClass + ')', b.dpDiv);
  5366.                 e[0] && $.datepicker._selectDay(a.target, b.selectedMonth, b.selectedYear, e[0]);
  5367.                 var f = $.datepicker._get(b, 'onSelect');
  5368.                 if (f) {
  5369.                     var g = $.datepicker._formatDate(b);
  5370.                     f.apply(b.input ? b.input[0] : null, [
  5371.                         g,
  5372.                         b
  5373.                     ])
  5374.                 } else $.datepicker._hideDatepicker();
  5375.                 return !1;
  5376.             case 27:
  5377.                 $.datepicker._hideDatepicker();
  5378.                 break;
  5379.             case 33:
  5380.                 $.datepicker._adjustDate(a.target, a.ctrlKey ? - $.datepicker._get(b, 'stepBigMonths')  : - $.datepicker._get(b, 'stepMonths'), 'M');
  5381.                 break;
  5382.             case 34:
  5383.                 $.datepicker._adjustDate(a.target, a.ctrlKey ? + $.datepicker._get(b, 'stepBigMonths')  : + $.datepicker._get(b, 'stepMonths'), 'M');
  5384.                 break;
  5385.             case 35:
  5386.                 (a.ctrlKey || a.metaKey) && $.datepicker._clearDate(a.target),
  5387.                 c = a.ctrlKey || a.metaKey;
  5388.                 break;
  5389.             case 36:
  5390.                 (a.ctrlKey || a.metaKey) && $.datepicker._gotoToday(a.target),
  5391.                 c = a.ctrlKey || a.metaKey;
  5392.                 break;
  5393.             case 37:
  5394.                 (a.ctrlKey || a.metaKey) && $.datepicker._adjustDate(a.target, d ? 1 : - 1, 'D'),
  5395.                 c = a.ctrlKey || a.metaKey,
  5396.                 a.originalEvent.altKey && $.datepicker._adjustDate(a.target, a.ctrlKey ? - $.datepicker._get(b, 'stepBigMonths')  : - $.datepicker._get(b, 'stepMonths'), 'M');
  5397.                 break;
  5398.             case 38:
  5399.                 (a.ctrlKey || a.metaKey) && $.datepicker._adjustDate(a.target, - 7, 'D'),
  5400.                 c = a.ctrlKey || a.metaKey;
  5401.                 break;
  5402.             case 39:
  5403.                 (a.ctrlKey || a.metaKey) && $.datepicker._adjustDate(a.target, d ? - 1 : 1, 'D'),
  5404.                 c = a.ctrlKey || a.metaKey,
  5405.                 a.originalEvent.altKey && $.datepicker._adjustDate(a.target, a.ctrlKey ? + $.datepicker._get(b, 'stepBigMonths')  : + $.datepicker._get(b, 'stepMonths'), 'M');
  5406.                 break;
  5407.             case 40:
  5408.                 (a.ctrlKey || a.metaKey) && $.datepicker._adjustDate(a.target, 7, 'D'),
  5409.                 c = a.ctrlKey || a.metaKey;
  5410.                 break;
  5411.             default:
  5412.                 c = !1
  5413.         } else a.keyCode == 36 && a.ctrlKey ? $.datepicker._showDatepicker(this)  : c = !1;
  5414.         c && (a.preventDefault(), a.stopPropagation())
  5415.     },
  5416.     _doKeyPress: function (a) {
  5417.         var b = $.datepicker._getInst(a.target);
  5418.         if ($.datepicker._get(b, 'constrainInput')) {
  5419.             var c = $.datepicker._possibleChars($.datepicker._get(b, 'dateFormat')),
  5420.             d = String.fromCharCode(a.charCode == undefined ? a.keyCode : a.charCode);
  5421.             return a.ctrlKey || a.metaKey || d < ' ' || !c || c.indexOf(d) > - 1
  5422.         }
  5423.     },
  5424.     _doKeyUp: function (a) {
  5425.         var b = $.datepicker._getInst(a.target);
  5426.         if (b.input.val() != b.lastVal) try {
  5427.             var c = $.datepicker.parseDate($.datepicker._get(b, 'dateFormat'), b.input ? b.input.val()  : null, $.datepicker._getFormatConfig(b));
  5428.             c && ($.datepicker._setDateFromField(b), $.datepicker._updateAlternate(b), $.datepicker._updateDatepicker(b))
  5429.         } catch (d) {
  5430.             $.datepicker.log(d)
  5431.         }
  5432.         return !0
  5433.     },
  5434.     _showDatepicker: function (a) {
  5435.         a = a.target || a,
  5436.         a.nodeName.toLowerCase() != 'input' && (a = $('input', a.parentNode) [0]);
  5437.         if ($.datepicker._isDisabledDatepicker(a) || $.datepicker._lastInput == a) return;
  5438.         var b = $.datepicker._getInst(a);
  5439.         $.datepicker._curInst && $.datepicker._curInst != b && ($.datepicker._curInst.dpDiv.stop(!0, !0), b && $.datepicker._datepickerShowing && $.datepicker._hideDatepicker($.datepicker._curInst.input[0]));
  5440.         var c = $.datepicker._get(b, 'beforeShow'),
  5441.         d = c ? c.apply(a, [
  5442.             a,
  5443.             b
  5444.         ])  : {
  5445.         };
  5446.         if (d === !1) return;
  5447.         extendRemove(b.settings, d),
  5448.         b.lastVal = null,
  5449.         $.datepicker._lastInput = a,
  5450.         $.datepicker._setDateFromField(b),
  5451.         $.datepicker._inDialog && (a.value = ''),
  5452.         $.datepicker._pos || ($.datepicker._pos = $.datepicker._findPos(a), $.datepicker._pos[1] += a.offsetHeight);
  5453.         var e = !1;
  5454.         $(a).parents().each(function () {
  5455.             return e |= $(this).css('position') == 'fixed',
  5456.             !e
  5457.         }),
  5458.         e && $.browser.opera && ($.datepicker._pos[0] -= document.documentElement.scrollLeft, $.datepicker._pos[1] -= document.documentElement.scrollTop);
  5459.         var f = {
  5460.             left: $.datepicker._pos[0],
  5461.             top: $.datepicker._pos[1]
  5462.         };
  5463.         $.datepicker._pos = null,
  5464.         b.dpDiv.empty(),
  5465.         b.dpDiv.css({
  5466.             position: 'absolute',
  5467.             display: 'block',
  5468.             top: '-1000px'
  5469.         }),
  5470.         $.datepicker._updateDatepicker(b),
  5471.         f = $.datepicker._checkOffset(b, f, e),
  5472.         b.dpDiv.css({
  5473.             position: $.datepicker._inDialog && $.blockUI ? 'static' : e ? 'fixed' : 'absolute',
  5474.             display: 'none',
  5475.             left: f.left + 'px',
  5476.             top: f.top + 'px'
  5477.         });
  5478.         if (!b.inline) {
  5479.             var g = $.datepicker._get(b, 'showAnim'),
  5480.             h = $.datepicker._get(b, 'duration'),
  5481.             i = function () {
  5482.                 var a = b.dpDiv.find('iframe.ui-datepicker-cover');
  5483.                 if (!!a.length) {
  5484.                     var c = $.datepicker._getBorders(b.dpDiv);
  5485.                     a.css({
  5486.                         left: - c[0],
  5487.                         top: - c[1],
  5488.                         width: b.dpDiv.outerWidth(),
  5489.                         height: b.dpDiv.outerHeight()
  5490.                     })
  5491.                 }
  5492.             };
  5493.             b.dpDiv.zIndex($(a).zIndex() + 1),
  5494.             $.datepicker._datepickerShowing = !0,
  5495.             $.effects && $.effects[g] ? b.dpDiv.show(g, $.datepicker._get(b, 'showOptions'), h, i)  : b.dpDiv[g || 'show'](g ? h : null, i),
  5496.             (!g || !h) && i(),
  5497.             b.input.is(':visible') && !b.input.is(':disabled') && b.input.focus(),
  5498.             $.datepicker._curInst = b
  5499.         }
  5500.     },
  5501.     _updateDatepicker: function (a) {
  5502.         var b = this;
  5503.         b.maxRows = 4;
  5504.         var c = $.datepicker._getBorders(a.dpDiv);
  5505.         instActive = a,
  5506.         a.dpDiv.empty().append(this._generateHTML(a)),
  5507.         this._attachHandlers(a);
  5508.         var d = a.dpDiv.find('iframe.ui-datepicker-cover');
  5509.         !d.length || d.css({
  5510.             left: - c[0],
  5511.             top: - c[1],
  5512.             width: a.dpDiv.outerWidth(),
  5513.             height: a.dpDiv.outerHeight()
  5514.         }),
  5515.         a.dpDiv.find('.' + this._dayOverClass + ' a').mouseover();
  5516.         var e = this._getNumberOfMonths(a),
  5517.         f = e[1],
  5518.         g = 17;
  5519.         a.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width(''),
  5520.         f > 1 && a.dpDiv.addClass('ui-datepicker-multi-' + f).css('width', g * f + 'em'),
  5521.         a.dpDiv[(e[0] != 1 || e[1] != 1 ? 'add' : 'remove') + 'Class']('ui-datepicker-multi'),
  5522.         a.dpDiv[(this._get(a, 'isRTL') ? 'add' : 'remove') + 'Class']('ui-datepicker-rtl'),
  5523.         a == $.datepicker._curInst && $.datepicker._datepickerShowing && a.input && a.input.is(':visible') && !a.input.is(':disabled') && a.input[0] != document.activeElement && a.input.focus();
  5524.         if (a.yearshtml) {
  5525.             var h = a.yearshtml;
  5526.             setTimeout(function () {
  5527.                 h === a.yearshtml && a.yearshtml && a.dpDiv.find('select.ui-datepicker-year:first').replaceWith(a.yearshtml),
  5528.                 h = a.yearshtml = null
  5529.             }, 0)
  5530.         }
  5531.     },
  5532.     _getBorders: function (a) {
  5533.         var b = function (a) {
  5534.             return {
  5535.                 thin: 1,
  5536.                 medium: 2,
  5537.                 thick: 3
  5538.             }
  5539.             [
  5540.                 a
  5541.             ] || a
  5542.         };
  5543.         return [parseFloat(b(a.css('border-left-width'))),
  5544.         parseFloat(b(a.css('border-top-width')))]
  5545.     },
  5546.     _checkOffset: function (a, b, c) {
  5547.         var d = a.dpDiv.outerWidth(),
  5548.         e = a.dpDiv.outerHeight(),
  5549.         f = a.input ? a.input.outerWidth()  : 0,
  5550.         g = a.input ? a.input.outerHeight()  : 0,
  5551.         h = document.documentElement.clientWidth + (c ? 0 : $(document).scrollLeft()),
  5552.         i = document.documentElement.clientHeight + (c ? 0 : $(document).scrollTop());
  5553.         return b.left -= this._get(a, 'isRTL') ? d - f : 0,
  5554.         b.left -= c && b.left == a.input.offset().left ? $(document).scrollLeft()  : 0,
  5555.         b.top -= c && b.top == a.input.offset().top + g ? $(document).scrollTop()  : 0,
  5556.         b.left -= Math.min(b.left, b.left + d > h && h > d ? Math.abs(b.left + d - h)  : 0),
  5557.         b.top -= Math.min(b.top, b.top + e > i && i > e ? Math.abs(e + g)  : 0),
  5558.         b
  5559.     },
  5560.     _findPos: function (a) {
  5561.         var b = this._getInst(a),
  5562.         c = this._get(b, 'isRTL');
  5563.         while (a && (a.type == 'hidden' || a.nodeType != 1 || $.expr.filters.hidden(a))) a = a[c ? 'previousSibling' : 'nextSibling'];
  5564.         var d = $(a).offset();
  5565.         return [d.left,
  5566.         d.top]
  5567.     },
  5568.     _hideDatepicker: function (a) {
  5569.         var b = this._curInst;
  5570.         if (!b || a && b != $.data(a, PROP_NAME)) return;
  5571.         if (this._datepickerShowing) {
  5572.             var c = this._get(b, 'showAnim'),
  5573.             d = this._get(b, 'duration'),
  5574.             e = function () {
  5575.                 $.datepicker._tidyDialog(b)
  5576.             };
  5577.             $.effects && $.effects[c] ? b.dpDiv.hide(c, $.datepicker._get(b, 'showOptions'), d, e)  : b.dpDiv[c == 'slideDown' ? 'slideUp' : c == 'fadeIn' ? 'fadeOut' : 'hide'](c ? d : null, e),
  5578.             c || e(),
  5579.             this._datepickerShowing = !1;
  5580.             var f = this._get(b, 'onClose');
  5581.             f && f.apply(b.input ? b.input[0] : null, [
  5582.                 b.input ? b.input.val()  : '',
  5583.                 b
  5584.             ]),
  5585.             this._lastInput = null,
  5586.             this._inDialog && (this._dialogInput.css({
  5587.                 position: 'absolute',
  5588.                 left: '0',
  5589.                 top: '-100px'
  5590.             }), $.blockUI && ($.unblockUI(), $('body').append(this.dpDiv))),
  5591.             this._inDialog = !1
  5592.         }
  5593.     },
  5594.     _tidyDialog: function (a) {
  5595.         a.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar')
  5596.     },
  5597.     _checkExternalClick: function (a) {
  5598.         if (!$.datepicker._curInst) return;
  5599.         var b = $(a.target),
  5600.         c = $.datepicker._getInst(b[0]);
  5601.         (b[0].id != $.datepicker._mainDivId && b.parents('#' + $.datepicker._mainDivId).length == 0 && !b.hasClass($.datepicker.markerClassName) && !b.closest('.' + $.datepicker._triggerClass).length && $.datepicker._datepickerShowing && (!$.datepicker._inDialog || !$.blockUI) || b.hasClass($.datepicker.markerClassName) && $.datepicker._curInst != c) && $.datepicker._hideDatepicker()
  5602.     },
  5603.     _adjustDate: function (a, b, c) {
  5604.         var d = $(a),
  5605.         e = this._getInst(d[0]);
  5606.         if (this._isDisabledDatepicker(d[0])) return;
  5607.         this._adjustInstDate(e, b + (c == 'M' ? this._get(e, 'showCurrentAtPos')  : 0), c),
  5608.         this._updateDatepicker(e)
  5609.     },
  5610.     _gotoToday: function (a) {
  5611.         var b = $(a),
  5612.         c = this._getInst(b[0]);
  5613.         if (this._get(c, 'gotoCurrent') && c.currentDay) c.selectedDay = c.currentDay,
  5614.         c.drawMonth = c.selectedMonth = c.currentMonth,
  5615.         c.drawYear = c.selectedYear = c.currentYear;
  5616.          else {
  5617.             var d = new Date;
  5618.             c.selectedDay = d.getDate(),
  5619.             c.drawMonth = c.selectedMonth = d.getMonth(),
  5620.             c.drawYear = c.selectedYear = d.getFullYear()
  5621.         }
  5622.         this._notifyChange(c),
  5623.         this._adjustDate(b)
  5624.     },
  5625.     _selectMonthYear: function (a, b, c) {
  5626.         var d = $(a),
  5627.         e = this._getInst(d[0]);
  5628.         e['selected' + (c == 'M' ? 'Month' : 'Year')] = e['draw' + (c == 'M' ? 'Month' : 'Year')] = parseInt(b.options[b.selectedIndex].value, 10),
  5629.         this._notifyChange(e),
  5630.         this._adjustDate(d)
  5631.     },
  5632.     _selectDay: function (a, b, c, d) {
  5633.         var e = $(a);
  5634.         if ($(d).hasClass(this._unselectableClass) || this._isDisabledDatepicker(e[0])) return;
  5635.         var f = this._getInst(e[0]);
  5636.         f.selectedDay = f.currentDay = $('a', d).html(),
  5637.         f.selectedMonth = f.currentMonth = b,
  5638.         f.selectedYear = f.currentYear = c,
  5639.         this._selectDate(a, this._formatDate(f, f.currentDay, f.currentMonth, f.currentYear))
  5640.     },
  5641.     _clearDate: function (a) {
  5642.         var b = $(a),
  5643.         c = this._getInst(b[0]);
  5644.         this._selectDate(b, '')
  5645.     },
  5646.     _selectDate: function (a, b) {
  5647.         var c = $(a),
  5648.         d = this._getInst(c[0]);
  5649.         b = b != null ? b : this._formatDate(d),
  5650.         d.input && d.input.val(b),
  5651.         this._updateAlternate(d);
  5652.         var e = this._get(d, 'onSelect');
  5653.         e ? e.apply(d.input ? d.input[0] : null, [
  5654.             b,
  5655.             d
  5656.         ])  : d.input && d.input.trigger('change'),
  5657.         d.inline ? this._updateDatepicker(d)  : (this._hideDatepicker(), this._lastInput = d.input[0], typeof d.input[0] != 'object' && d.input.focus(), this._lastInput = null)
  5658.     },
  5659.     _updateAlternate: function (a) {
  5660.         var b = this._get(a, 'altField');
  5661.         if (b) {
  5662.             var c = this._get(a, 'altFormat') || this._get(a, 'dateFormat'),
  5663.             d = this._getDate(a),
  5664.             e = this.formatDate(c, d, this._getFormatConfig(a));
  5665.             $(b).each(function () {
  5666.                 $(this).val(e)
  5667.             })
  5668.         }
  5669.     },
  5670.     noWeekends: function (a) {
  5671.         var b = a.getDay();
  5672.         return [b > 0 && b < 6,
  5673.         '']
  5674.     },
  5675.     iso8601Week: function (a) {
  5676.         var b = new Date(a.getTime());
  5677.         b.setDate(b.getDate() + 4 - (b.getDay() || 7));
  5678.         var c = b.getTime();
  5679.         return b.setMonth(0),
  5680.         b.setDate(1),
  5681.         Math.floor(Math.round((c - b) / 86400000) / 7) + 1
  5682.     },
  5683.     parseDate: function (a, b, c) {
  5684.         if (a == null || b == null) throw 'Invalid arguments';
  5685.         b = typeof b == 'object' ? b.toString()  : b + '';
  5686.         if (b == '') return null;
  5687.         var d = (c ? c.shortYearCutoff : null) || this._defaults.shortYearCutoff;
  5688.         d = typeof d != 'string' ? d : (new Date).getFullYear() % 100 + parseInt(d, 10);
  5689.         var e = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort,
  5690.         f = (c ? c.dayNames : null) || this._defaults.dayNames,
  5691.         g = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort,
  5692.         h = (c ? c.monthNames : null) || this._defaults.monthNames,
  5693.         i = - 1,
  5694.         j = - 1,
  5695.         k = - 1,
  5696.         l = - 1,
  5697.         m = !1,
  5698.         n = function (b) {
  5699.             var c = s + 1 < a.length && a.charAt(s + 1) == b;
  5700.             return c && s++,
  5701.             c
  5702.         },
  5703.         o = function (a) {
  5704.             var c = n(a),
  5705.             d = a == '@' ? 14 : a == '!' ? 20 : a == 'y' && c ? 4 : a == 'o' ? 3 : 2,
  5706.             e = new RegExp('^\\d{1,' + d + '}'),
  5707.             f = b.substring(r).match(e);
  5708.             if (!f) throw 'Missing number at position ' + r;
  5709.             return r += f[0].length,
  5710.             parseInt(f[0], 10)
  5711.         },
  5712.         p = function (a, c, d) {
  5713.             var e = $.map(n(a) ? d : c, function (a, b) {
  5714.                 return [[b,
  5715.                 a]]
  5716.             }).sort(function (a, b) {
  5717.                 return - (a[1].length - b[1].length)
  5718.             }),
  5719.             f = - 1;
  5720.             $.each(e, function (a, c) {
  5721.                 var d = c[1];
  5722.                 if (b.substr(r, d.length).toLowerCase() == d.toLowerCase()) return f = c[0],
  5723.                 r += d.length,
  5724.                 !1
  5725.             });
  5726.             if (f != - 1) return f + 1;
  5727.             throw 'Unknown name at position ' + r
  5728.         },
  5729.         q = function () {
  5730.             if (b.charAt(r) != a.charAt(s)) throw 'Unexpected literal at position ' + r;
  5731.             r++
  5732.         },
  5733.         r = 0;
  5734.         for (var s = 0; s < a.length; s++) if (m) a.charAt(s) == '\'' && !n('\'') ? m = !1 : q();
  5735.          else switch (a.charAt(s)) {
  5736.             case 'd':
  5737.                 k = o('d');
  5738.                 break;
  5739.             case 'D':
  5740.                 p('D', e, f);
  5741.                 break;
  5742.             case 'o':
  5743.                 l = o('o');
  5744.                 break;
  5745.             case 'm':
  5746.                 j = o('m');
  5747.                 break;
  5748.             case 'M':
  5749.                 j = p('M', g, h);
  5750.                 break;
  5751.             case 'y':
  5752.                 i = o('y');
  5753.                 break;
  5754.             case '@':
  5755.                 var t = new Date(o('@'));
  5756.                 i = t.getFullYear(),
  5757.                 j = t.getMonth() + 1,
  5758.                 k = t.getDate();
  5759.                 break;
  5760.             case '!':
  5761.                 var t = new Date((o('!') - this._ticksTo1970) / 10000);
  5762.                 i = t.getFullYear(),
  5763.                 j = t.getMonth() + 1,
  5764.                 k = t.getDate();
  5765.                 break;
  5766.             case '\'':
  5767.                 n('\'') ? q()  : m = !0;
  5768.                 break;
  5769.             default:
  5770.                 q()
  5771.         }
  5772.         if (r < b.length) throw 'Extra/unparsed characters found in date: ' + b.substring(r);
  5773.         i == - 1 ? i = (new Date).getFullYear()  : i < 100 && (i += (new Date).getFullYear() - (new Date).getFullYear() % 100 + (i <= d ? 0 : - 100));
  5774.         if (l > - 1) {
  5775.             j = 1,
  5776.             k = l;
  5777.             do {
  5778.                 var u = this._getDaysInMonth(i, j - 1);
  5779.                 if (k <= u) break;
  5780.                 j++,
  5781.                 k -= u
  5782.             } while (!0)
  5783.     }
  5784.     var t = this._daylightSavingAdjust(new Date(i, j - 1, k));
  5785.     if (t.getFullYear() != i || t.getMonth() + 1 != j || t.getDate() != k) throw 'Invalid date';
  5786.     return t
  5787. },
  5788. ATOM: 'yy-mm-dd',
  5789. COOKIE: 'D, dd M yy',
  5790. ISO_8601: 'yy-mm-dd',
  5791. RFC_822: 'D, d M y',
  5792. RFC_850: 'DD, dd-M-y',
  5793. RFC_1036: 'D, d M y',
  5794. RFC_1123: 'D, d M yy',
  5795. RFC_2822: 'D, d M yy',
  5796. RSS: 'D, d M y',
  5797. TICKS: '!',
  5798. TIMESTAMP: '@',
  5799. W3C: 'yy-mm-dd',
  5800. _ticksTo1970: (718685 + Math.floor(492.5) - Math.floor(19.7) + Math.floor(4.925)) * 24 * 60 * 60 * 10000000,
  5801. formatDate: function (a, b, c) {
  5802.     if (!b) return '';
  5803.     var d = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort,
  5804.     e = (c ? c.dayNames : null) || this._defaults.dayNames,
  5805.     f = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort,
  5806.     g = (c ? c.monthNames : null) || this._defaults.monthNames,
  5807.     h = function (b) {
  5808.         var c = m + 1 < a.length && a.charAt(m + 1) == b;
  5809.         return c && m++,
  5810.         c
  5811.     },
  5812.     i = function (a, b, c) {
  5813.         var d = '' + b;
  5814.         if (h(a)) while (d.length < c) d = '0' + d;
  5815.         return d
  5816.     },
  5817.     j = function (a, b, c, d) {
  5818.         return h(a) ? d[b] : c[b]
  5819.     },
  5820.     k = '',
  5821.     l = !1;
  5822.     if (b) for (var m = 0; m < a.length; m++) if (l) a.charAt(m) == '\'' && !h('\'') ? l = !1 : k += a.charAt(m);
  5823.      else switch (a.charAt(m)) {
  5824.         case 'd':
  5825.             k += i('d', b.getDate(), 2);
  5826.             break;
  5827.         case 'D':
  5828.             k += j('D', b.getDay(), d, e);
  5829.             break;
  5830.         case 'o':
  5831.             k += i('o', Math.round(((new Date(b.getFullYear(), b.getMonth(), b.getDate())).getTime() - (new Date(b.getFullYear(), 0, 0)).getTime()) / 86400000), 3);
  5832.             break;
  5833.         case 'm':
  5834.             k += i('m', b.getMonth() + 1, 2);
  5835.             break;
  5836.         case 'M':
  5837.             k += j('M', b.getMonth(), f, g);
  5838.             break;
  5839.         case 'y':
  5840.             k += h('y') ? b.getFullYear()  : (b.getYear() % 100 < 10 ? '0' : '') + b.getYear() % 100;
  5841.             break;
  5842.         case '@':
  5843.             k += b.getTime();
  5844.             break;
  5845.         case '!':
  5846.             k += b.getTime() * 10000 + this._ticksTo1970;
  5847.             break;
  5848.         case '\'':
  5849.             h('\'') ? k += '\'' : l = !0;
  5850.             break;
  5851.         default:
  5852.             k += a.charAt(m)
  5853.     }
  5854.     return k
  5855. },
  5856. _possibleChars: function (a) {
  5857.     var b = '',
  5858.     c = !1,
  5859.     d = function (b) {
  5860.         var c = e + 1 < a.length && a.charAt(e + 1) == b;
  5861.         return c && e++,
  5862.         c
  5863.     };
  5864.     for (var e = 0; e < a.length; e++) if (c) a.charAt(e) == '\'' && !d('\'') ? c = !1 : b += a.charAt(e);
  5865.      else switch (a.charAt(e)) {
  5866.         case 'd':
  5867.         case 'm':
  5868.         case 'y':
  5869.         case '@':
  5870.             b += '0123456789';
  5871.             break;
  5872.         case 'D':
  5873.         case 'M':
  5874.             return null;
  5875.         case '\'':
  5876.             d('\'') ? b += '\'' : c = !0;
  5877.             break;
  5878.         default:
  5879.             b += a.charAt(e)
  5880.     }
  5881.     return b
  5882. },
  5883. _get: function (a, b) {
  5884.     return a.settings[b] !== undefined ? a.settings[b] : this._defaults[b]
  5885. },
  5886. _setDateFromField: function (a, b) {
  5887.     if (a.input.val() == a.lastVal) return;
  5888.     var c = this._get(a, 'dateFormat'),
  5889.     d = a.lastVal = a.input ? a.input.val()  : null,
  5890.     e,
  5891.     f;
  5892.     e = f = this._getDefaultDate(a);
  5893.     var g = this._getFormatConfig(a);
  5894.     try {
  5895.         e = this.parseDate(c, d, g) || f
  5896.     } catch (h) {
  5897.         this.log(h),
  5898.         d = b ? '' : d
  5899.     }
  5900.     a.selectedDay = e.getDate(),
  5901.     a.drawMonth = a.selectedMonth = e.getMonth(),
  5902.     a.drawYear = a.selectedYear = e.getFullYear(),
  5903.     a.currentDay = d ? e.getDate()  : 0,
  5904.     a.currentMonth = d ? e.getMonth()  : 0,
  5905.     a.currentYear = d ? e.getFullYear()  : 0,
  5906.     this._adjustInstDate(a)
  5907. },
  5908. _getDefaultDate: function (a) {
  5909.     return this._restrictMinMax(a, this._determineDate(a, this._get(a, 'defaultDate'), new Date))
  5910. },
  5911. _determineDate: function (a, b, c) {
  5912.     var d = function (a) {
  5913.         var b = new Date;
  5914.         return b.setDate(b.getDate() + a),
  5915.         b
  5916.     },
  5917.     e = function (b) {
  5918.         try {
  5919.             return $.datepicker.parseDate($.datepicker._get(a, 'dateFormat'), b, $.datepicker._getFormatConfig(a))
  5920.         } catch (c) {
  5921.         }
  5922.         var d = (b.toLowerCase().match(/^c/) ? $.datepicker._getDate(a)  : null) || new Date,
  5923.         e = d.getFullYear(),
  5924.         f = d.getMonth(),
  5925.         g = d.getDate(),
  5926.         h = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,
  5927.         i = h.exec(b);
  5928.         while (i) {
  5929.             switch (i[2] || 'd') {
  5930.                 case 'd':
  5931.                 case 'D':
  5932.                     g += parseInt(i[1], 10);
  5933.                     break;
  5934.                 case 'w':
  5935.                 case 'W':
  5936.                     g += parseInt(i[1], 10) * 7;
  5937.                     break;
  5938.                 case 'm':
  5939.                 case 'M':
  5940.                     f += parseInt(i[1], 10),
  5941.                     g = Math.min(g, $.datepicker._getDaysInMonth(e, f));
  5942.                     break;
  5943.                 case 'y':
  5944.                 case 'Y':
  5945.                     e += parseInt(i[1], 10),
  5946.                     g = Math.min(g, $.datepicker._getDaysInMonth(e, f))
  5947.             }
  5948.             i = h.exec(b)
  5949.         }
  5950.         return new Date(e, f, g)
  5951.     },
  5952.     f = b == null || b === '' ? c : typeof b == 'string' ? e(b)  : typeof b == 'number' ? isNaN(b) ? c : d(b)  : new Date(b.getTime());
  5953.     return f = f && f.toString() == 'Invalid Date' ? c : f,
  5954.     f && (f.setHours(0), f.setMinutes(0), f.setSeconds(0), f.setMilliseconds(0)),
  5955.     this._daylightSavingAdjust(f)
  5956. },
  5957. _daylightSavingAdjust: function (a) {
  5958.     return a ? (a.setHours(a.getHours() > 12 ? a.getHours() + 2 : 0), a)  : null
  5959. },
  5960. _setDate: function (a, b, c) {
  5961.     var d = !b,
  5962.     e = a.selectedMonth,
  5963.     f = a.selectedYear,
  5964.     g = this._restrictMinMax(a, this._determineDate(a, b, new Date));
  5965.     a.selectedDay = a.currentDay = g.getDate(),
  5966.     a.drawMonth = a.selectedMonth = a.currentMonth = g.getMonth(),
  5967.     a.drawYear = a.selectedYear = a.currentYear = g.getFullYear(),
  5968.     (e != a.selectedMonth || f != a.selectedYear) && !c && this._notifyChange(a),
  5969.     this._adjustInstDate(a),
  5970.     a.input && a.input.val(d ? '' : this._formatDate(a))
  5971. },
  5972. _getDate: function (a) {
  5973.     var b = !a.currentYear || a.input && a.input.val() == '' ? null : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay));
  5974.     return b
  5975. },
  5976. _attachHandlers: function (a) {
  5977.     var b = this._get(a, 'stepMonths'),
  5978.     c = '#' + a.id.replace(/\\\\/g, '\\');
  5979.     a.dpDiv.find('[data-handler]').map(function () {
  5980.         var a = {
  5981.             prev: function () {
  5982.                 window['DP_jQuery_' + dpuuid].datepicker._adjustDate(c, - b, 'M')
  5983.             },
  5984.             next: function () {
  5985.                 window['DP_jQuery_' + dpuuid].datepicker._adjustDate(c, + b, 'M')
  5986.             },
  5987.             hide: function () {
  5988.                 window['DP_jQuery_' + dpuuid].datepicker._hideDatepicker()
  5989.             },
  5990.             today: function () {
  5991.                 window['DP_jQuery_' + dpuuid].datepicker._gotoToday(c)
  5992.             },
  5993.             selectDay: function () {
  5994.                 return window['DP_jQuery_' + dpuuid].datepicker._selectDay(c, + this.getAttribute('data-month'), + this.getAttribute('data-year'), this),
  5995.                 !1
  5996.             },
  5997.             selectMonth: function () {
  5998.                 return window['DP_jQuery_' + dpuuid].datepicker._selectMonthYear(c, this, 'M'),
  5999.                 !1
  6000.             },
  6001.             selectYear: function () {
  6002.                 return window['DP_jQuery_' + dpuuid].datepicker._selectMonthYear(c, this, 'Y'),
  6003.                 !1
  6004.             }
  6005.         };
  6006.         $(this).bind(this.getAttribute('data-event'), a[this.getAttribute('data-handler')])
  6007.     })
  6008. },
  6009. _generateHTML: function (a) {
  6010.     var b = new Date;
  6011.     b = this._daylightSavingAdjust(new Date(b.getFullYear(), b.getMonth(), b.getDate()));
  6012.     var c = this._get(a, 'isRTL'),
  6013.     d = this._get(a, 'showButtonPanel'),
  6014.     e = this._get(a, 'hideIfNoPrevNext'),
  6015.     f = this._get(a, 'navigationAsDateFormat'),
  6016.     g = this._getNumberOfMonths(a),
  6017.     h = this._get(a, 'showCurrentAtPos'),
  6018.     i = this._get(a, 'stepMonths'),
  6019.     j = g[0] != 1 || g[1] != 1,
  6020.     k = this._daylightSavingAdjust(a.currentDay ? new Date(a.currentYear, a.currentMonth, a.currentDay)  : new Date(9999, 9, 9)),
  6021.     l = this._getMinMaxDate(a, 'min'),
  6022.     m = this._getMinMaxDate(a, 'max'),
  6023.     n = a.drawMonth - h,
  6024.     o = a.drawYear;
  6025.     n < 0 && (n += 12, o--);
  6026.     if (m) {
  6027.         var p = this._daylightSavingAdjust(new Date(m.getFullYear(), m.getMonth() - g[0] * g[1] + 1, m.getDate()));
  6028.         p = l && p < l ? l : p;
  6029.         while (this._daylightSavingAdjust(new Date(o, n, 1)) > p) n--,
  6030.         n < 0 && (n = 11, o--)
  6031.     }
  6032.     a.drawMonth = n,
  6033.     a.drawYear = o;
  6034.     var q = this._get(a, 'prevText');
  6035.     q = f ? this.formatDate(q, this._daylightSavingAdjust(new Date(o, n - i, 1)), this._getFormatConfig(a))  : q;
  6036.     var r = this._canAdjustMonth(a, - 1, o, n) ? '<a class="ui-datepicker-prev ui-corner-all" data-handler="prev" data-event="click" title="' + q + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? 'e' : 'w') + '">' + q + '</span></a>' : e ? '' : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="' + q + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? 'e' : 'w') + '">' + q + '</span></a>',
  6037.     s = this._get(a, 'nextText');
  6038.     s = f ? this.formatDate(s, this._daylightSavingAdjust(new Date(o, n + i, 1)), this._getFormatConfig(a))  : s;
  6039.     var t = this._canAdjustMonth(a, 1, o, n) ? '<a class="ui-datepicker-next ui-corner-all" data-handler="next" data-event="click" title="' + s + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? 'w' : 'e') + '">' + s + '</span></a>' : e ? '' : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="' + s + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? 'w' : 'e') + '">' + s + '</span></a>',
  6040.     u = this._get(a, 'currentText'),
  6041.     v = this._get(a, 'gotoCurrent') && a.currentDay ? k : b;
  6042.     u = f ? this.formatDate(u, v, this._getFormatConfig(a))  : u;
  6043.     var w = a.inline ? '' : '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" data-handler="hide" data-event="click">' + this._get(a, 'closeText') + '</button>',
  6044.     x = d ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (c ? w : '') + (this._isInRange(a, v) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" data-handler="today" data-event="click">' + u + '</button>' : '') + (c ? '' : w) + '</div>' : '',
  6045.     y = parseInt(this._get(a, 'firstDay'), 10);
  6046.     y = isNaN(y) ? 0 : y;
  6047.     var z = this._get(a, 'showWeek'),
  6048.     A = this._get(a, 'dayNames'),
  6049.     B = this._get(a, 'dayNamesShort'),
  6050.     C = this._get(a, 'dayNamesMin'),
  6051.     D = this._get(a, 'monthNames'),
  6052.     E = this._get(a, 'monthNamesShort'),
  6053.     F = this._get(a, 'beforeShowDay'),
  6054.     G = this._get(a, 'showOtherMonths'),
  6055.     H = this._get(a, 'selectOtherMonths'),
  6056.     I = this._get(a, 'calculateWeek') || this.iso8601Week,
  6057.     J = this._getDefaultDate(a),
  6058.     K = '';
  6059.     for (var L = 0; L < g[0]; L++) {
  6060.         var M = '';
  6061.         this.maxRows = 4;
  6062.         for (var N = 0; N < g[1]; N++) {
  6063.             var O = this._daylightSavingAdjust(new Date(o, n, a.selectedDay)),
  6064.             P = ' ui-corner-all',
  6065.             Q = '';
  6066.             if (j) {
  6067.                 Q += '<div class="ui-datepicker-group';
  6068.                 if (g[1] > 1) switch (N) {
  6069.                     case 0:
  6070.                         Q += ' ui-datepicker-group-first',
  6071.                         P = ' ui-corner-' + (c ? 'right' : 'left');
  6072.                         break;
  6073.                     case g[1] - 1:
  6074.                         Q += ' ui-datepicker-group-last',
  6075.                         P = ' ui-corner-' + (c ? 'left' : 'right');
  6076.                         break;
  6077.                     default:
  6078.                         Q += ' ui-datepicker-group-middle',
  6079.                         P = ''
  6080.                 }
  6081.                 Q += '">'
  6082.             }
  6083.             Q += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + P + '">' + (/all|left/.test(P) && L == 0 ? c ? t : r : '') + (/all|right/.test(P) && L == 0 ? c ? r : t : '') + this._generateMonthYearHeader(a, n, o, l, m, L > 0 || N > 0, D, E) + '</div><table class="ui-datepicker-calendar"><thead>' + '<tr>';
  6084.             var R = z ? '<th class="ui-datepicker-week-col">' + this._get(a, 'weekHeader') + '</th>' : '';
  6085.             for (var S = 0; S < 7; S++) {
  6086.                 var T = (S + y) % 7;
  6087.                 R += '<th' + ((S + y + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : '') + '>' + '<span title="' + A[T] + '">' + C[T] + '</span></th>'
  6088.             }
  6089.             Q += R + '</tr></thead><tbody>';
  6090.             var U = this._getDaysInMonth(o, n);
  6091.             o == a.selectedYear && n == a.selectedMonth && (a.selectedDay = Math.min(a.selectedDay, U));
  6092.             var V = (this._getFirstDayOfMonth(o, n) - y + 7) % 7,
  6093.             W = Math.ceil((V + U) / 7),
  6094.             X = j ? this.maxRows > W ? this.maxRows : W : W;
  6095.             this.maxRows = X;
  6096.             var Y = this._daylightSavingAdjust(new Date(o, n, 1 - V));
  6097.             for (var Z = 0; Z < X; Z++) {
  6098.                 Q += '<tr>';
  6099.                 var _ = z ? '<td class="ui-datepicker-week-col">' + this._get(a, 'calculateWeek') (Y) + '</td>' : '';
  6100.                 for (var S = 0; S < 7; S++) {
  6101.                     var ba = F ? F.apply(a.input ? a.input[0] : null, [
  6102.                         Y
  6103.                     ])  : [
  6104.                         !0,
  6105.                         ''
  6106.                     ],
  6107.                     bb = Y.getMonth() != n,
  6108.                     bc = bb && !H || !ba[0] || l && Y < l || m && Y > m;
  6109.                     _ += '<td class="' + ((S + y + 6) % 7 >= 5 ? ' ui-datepicker-week-end' : '') + (bb ? ' ui-datepicker-other-month' : '') + (Y.getTime() == O.getTime() && n == a.selectedMonth && a._keyEvent || J.getTime() == Y.getTime() && J.getTime() == O.getTime() ? ' ' + this._dayOverClass : '') + (bc ? ' ' + this._unselectableClass + ' ui-state-disabled' : '') + (bb && !G ? '' : ' ' + ba[1] + (Y.getTime() == k.getTime() ? ' ' + this._currentClass : '') + (Y.getTime() == b.getTime() ? ' ui-datepicker-today' : '')) + '"' + ((!bb || G) && ba[2] ? ' title="' + ba[2] + '"' : '') + (bc ? '' : ' data-handler="selectDay" data-event="click" data-month="' + Y.getMonth() + '" data-year="' + Y.getFullYear() + '"') + '>' + (bb && !G ? '&#xa0;' : bc ? '<span class="ui-state-default">' + Y.getDate() + '</span>' : '<a class="ui-state-default' + (Y.getTime() == b.getTime() ? ' ui-state-highlight' : '') + (Y.getTime() == k.getTime() ? ' ui-state-active' : '') + (bb ? ' ui-priority-secondary' : '') + '" href="#">' + Y.getDate() + '</a>') + '</td>',
  6110.                     Y.setDate(Y.getDate() + 1),
  6111.                     Y = this._daylightSavingAdjust(Y)
  6112.                 }
  6113.                 Q += _ + '</tr>'
  6114.             }
  6115.             n++,
  6116.             n > 11 && (n = 0, o++),
  6117.             Q += '</tbody></table>' + (j ? '</div>' + (g[0] > 0 && N == g[1] - 1 ? '<div class="ui-datepicker-row-break"></div>' : '')  : ''),
  6118.             M += Q
  6119.         }
  6120.         K += M
  6121.     }
  6122.     return K += x + ($.browser.msie && parseInt($.browser.version, 10) < 7 && !a.inline ? '<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' : ''),
  6123.     a._keyEvent = !1,
  6124.     K
  6125. },
  6126. _generateMonthYearHeader: function (a, b, c, d, e, f, g, h) {
  6127.     var i = this._get(a, 'changeMonth'),
  6128.     j = this._get(a, 'changeYear'),
  6129.     k = this._get(a, 'showMonthAfterYear'),
  6130.     l = '<div class="ui-datepicker-title">',
  6131.     m = '';
  6132.     if (f || !i) m += '<span class="ui-datepicker-month">' + g[b] + '</span>';
  6133.      else {
  6134.         var n = d && d.getFullYear() == c,
  6135.         o = e && e.getFullYear() == c;
  6136.         m += '<select class="ui-datepicker-month" data-handler="selectMonth" data-event="change">';
  6137.         for (var p = 0; p < 12; p++) (!n || p >= d.getMonth()) && (!o || p <= e.getMonth()) && (m += '<option value="' + p + '"' + (p == b ? ' selected="selected"' : '') + '>' + h[p] + '</option>');
  6138.         m += '</select>'
  6139.     }
  6140.     k || (l += m + (f || !i || !j ? '&#xa0;' : ''));
  6141.     if (!a.yearshtml) {
  6142.         a.yearshtml = '';
  6143.         if (f || !j) l += '<span class="ui-datepicker-year">' + c + '</span>';
  6144.          else {
  6145.             var q = this._get(a, 'yearRange').split(':'),
  6146.             r = (new Date).getFullYear(),
  6147.             s = function (a) {
  6148.                 var b = a.match(/c[+-].*/) ? c + parseInt(a.substring(1), 10)  : a.match(/[+-].*/) ? r + parseInt(a, 10)  : parseInt(a, 10);
  6149.                 return isNaN(b) ? r : b
  6150.             },
  6151.             t = s(q[0]),
  6152.             u = Math.max(t, s(q[1] || ''));
  6153.             t = d ? Math.max(t, d.getFullYear())  : t,
  6154.             u = e ? Math.min(u, e.getFullYear())  : u,
  6155.             a.yearshtml += '<select class="ui-datepicker-year" data-handler="selectYear" data-event="change">';
  6156.             for (; t <= u; t++) a.yearshtml += '<option value="' + t + '"' + (t == c ? ' selected="selected"' : '') + '>' + t + '</option>';
  6157.             a.yearshtml += '</select>',
  6158.             l += a.yearshtml,
  6159.             a.yearshtml = null
  6160.         }
  6161.     }
  6162.     return l += this._get(a, 'yearSuffix'),
  6163.     k && (l += (f || !i || !j ? '&#xa0;' : '') + m),
  6164.     l += '</div>',
  6165.     l
  6166. },
  6167. _adjustInstDate: function (a, b, c) {
  6168.     var d = a.drawYear + (c == 'Y' ? b : 0),
  6169.     e = a.drawMonth + (c == 'M' ? b : 0),
  6170.     f = Math.min(a.selectedDay, this._getDaysInMonth(d, e)) + (c == 'D' ? b : 0),
  6171.     g = this._restrictMinMax(a, this._daylightSavingAdjust(new Date(d, e, f)));
  6172.     a.selectedDay = g.getDate(),
  6173.     a.drawMonth = a.selectedMonth = g.getMonth(),
  6174.     a.drawYear = a.selectedYear = g.getFullYear(),
  6175.     (c == 'M' || c == 'Y') && this._notifyChange(a)
  6176. },
  6177. _restrictMinMax: function (a, b) {
  6178.     var c = this._getMinMaxDate(a, 'min'),
  6179.     d = this._getMinMaxDate(a, 'max'),
  6180.     e = c && b < c ? c : b;
  6181.     return e = d && e > d ? d : e,
  6182.     e
  6183. },
  6184. _notifyChange: function (a) {
  6185.     var b = this._get(a, 'onChangeMonthYear');
  6186.     b && b.apply(a.input ? a.input[0] : null, [
  6187.         a.selectedYear,
  6188.         a.selectedMonth + 1,
  6189.         a
  6190.     ])
  6191. },
  6192. _getNumberOfMonths: function (a) {
  6193.     var b = this._get(a, 'numberOfMonths');
  6194.     return b == null ? [
  6195.         1,
  6196.         1
  6197.     ] : typeof b == 'number' ? [
  6198.         1,
  6199.         b
  6200.     ] : b
  6201. },
  6202. _getMinMaxDate: function (a, b) {
  6203.     return this._determineDate(a, this._get(a, b + 'Date'), null)
  6204. },
  6205. _getDaysInMonth: function (a, b) {
  6206.     return 32 - this._daylightSavingAdjust(new Date(a, b, 32)).getDate()
  6207. },
  6208. _getFirstDayOfMonth: function (a, b) {
  6209.     return (new Date(a, b, 1)).getDay()
  6210. },
  6211. _canAdjustMonth: function (a, b, c, d) {
  6212.     var e = this._getNumberOfMonths(a),
  6213.     f = this._daylightSavingAdjust(new Date(c, d + (b < 0 ? b : e[0] * e[1]), 1));
  6214.     return b < 0 && f.setDate(this._getDaysInMonth(f.getFullYear(), f.getMonth())),
  6215.     this._isInRange(a, f)
  6216. },
  6217. _isInRange: function (a, b) {
  6218.     var c = this._getMinMaxDate(a, 'min'),
  6219.     d = this._getMinMaxDate(a, 'max');
  6220.     return (!c || b.getTime() >= c.getTime()) && (!d || b.getTime() <= d.getTime())
  6221. },
  6222. _getFormatConfig: function (a) {
  6223.     var b = this._get(a, 'shortYearCutoff');
  6224.     return b = typeof b != 'string' ? b : (new Date).getFullYear() % 100 + parseInt(b, 10),
  6225.     {
  6226.         shortYearCutoff: b,
  6227.         dayNamesShort: this._get(a, 'dayNamesShort'),
  6228.         dayNames: this._get(a, 'dayNames'),
  6229.         monthNamesShort: this._get(a, 'monthNamesShort'),
  6230.         monthNames: this._get(a, 'monthNames')
  6231.     }
  6232. },
  6233. _formatDate: function (a, b, c, d) {
  6234.     b || (a.currentDay = a.selectedDay, a.currentMonth = a.selectedMonth, a.currentYear = a.selectedYear);
  6235.     var e = b ? typeof b == 'object' ? b : this._daylightSavingAdjust(new Date(d, c, b))  : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay));
  6236.     return this.formatDate(this._get(a, 'dateFormat'), e, this._getFormatConfig(a))
  6237. }
  6238. }),
  6239. $.fn.datepicker = function (a) {
  6240. if (!this.length) return this;
  6241. $.datepicker.initialized || ($(document).mousedown($.datepicker._checkExternalClick).find('body').append($.datepicker.dpDiv), $.datepicker.initialized = !0);
  6242. var b = Array.prototype.slice.call(arguments, 1);
  6243. return typeof a != 'string' || a != 'isDisabled' && a != 'getDate' && a != 'widget' ? a == 'option' && arguments.length == 2 && typeof arguments[1] == 'string' ? $.datepicker['_' + a + 'Datepicker'].apply($.datepicker, [
  6244.     this[0]
  6245. ].concat(b))  : this.each(function () {
  6246.     typeof a == 'string' ? $.datepicker['_' + a + 'Datepicker'].apply($.datepicker, [
  6247.         this
  6248.     ].concat(b))  : $.datepicker._attachDatepicker(this, a)
  6249. })  : $.datepicker['_' + a + 'Datepicker'].apply($.datepicker, [
  6250.     this[0]
  6251. ].concat(b))
  6252. },
  6253. $.datepicker = new Datepicker,
  6254. $.datepicker.initialized = !1,
  6255. $.datepicker.uuid = (new Date).getTime(),
  6256. $.datepicker.version = '1.8.24',
  6257. window['DP_jQuery_' + dpuuid] = $
  6258. }) (jQuery);
  6259. ; /*! jQuery UI - v1.8.24 - 2012-09-28
  6260. * https://github.com/jquery/jquery-ui
  6261. * Includes: jquery.ui.progressbar.js
  6262. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  6263. (function (a, b) {
  6264. a.widget('ui.progressbar', {
  6265. options: {
  6266.     value: 0,
  6267.     max: 100
  6268. },
  6269. min: 0,
  6270. _create: function () {
  6271.     this.element.addClass('ui-progressbar ui-widget ui-widget-content ui-corner-all').attr({
  6272.         role: 'progressbar',
  6273.         'aria-valuemin': this.min,
  6274.         'aria-valuemax': this.options.max,
  6275.         'aria-valuenow': this._value()
  6276.     }),
  6277.     this.valueDiv = a('<div class=\'ui-progressbar-value ui-widget-header ui-corner-left\'></div>').appendTo(this.element),
  6278.     this.oldValue = this._value(),
  6279.     this._refreshValue()
  6280. },
  6281. destroy: function () {
  6282.     this.element.removeClass('ui-progressbar ui-widget ui-widget-content ui-corner-all').removeAttr('role').removeAttr('aria-valuemin').removeAttr('aria-valuemax').removeAttr('aria-valuenow'),
  6283.     this.valueDiv.remove(),
  6284.     a.Widget.prototype.destroy.apply(this, arguments)
  6285. },
  6286. value: function (a) {
  6287.     return a === b ? this._value()  : (this._setOption('value', a), this)
  6288. },
  6289. _setOption: function (b, c) {
  6290.     b === 'value' && (this.options.value = c, this._refreshValue(), this._value() === this.options.max && this._trigger('complete')),
  6291.     a.Widget.prototype._setOption.apply(this, arguments)
  6292. },
  6293. _value: function () {
  6294.     var a = this.options.value;
  6295.     return typeof a != 'number' && (a = 0),
  6296.     Math.min(this.options.max, Math.max(this.min, a))
  6297. },
  6298. _percentage: function () {
  6299.     return 100 * this._value() / this.options.max
  6300. },
  6301. _refreshValue: function () {
  6302.     var a = this.value(),
  6303.     b = this._percentage();
  6304.     this.oldValue !== a && (this.oldValue = a, this._trigger('change')),
  6305.     this.valueDiv.toggle(a > this.min).toggleClass('ui-corner-right', a === this.options.max).width(b.toFixed(0) + '%'),
  6306.     this.element.attr('aria-valuenow', a)
  6307. }
  6308. }),
  6309. a.extend(a.ui.progressbar, {
  6310. version: '1.8.24'
  6311. })
  6312. }) (jQuery);
  6313. ; /*! jQuery UI - v1.8.24 - 2012-09-28
  6314. * https://github.com/jquery/jquery-ui
  6315. * Includes: jquery.effects.core.js
  6316. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  6317. jQuery.effects || function (a, b) {
  6318. function c(b) {
  6319. var c;
  6320. return b && b.constructor == Array && b.length == 3 ? b : (c = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(b)) ? [
  6321.     parseInt(c[1], 10),
  6322.     parseInt(c[2], 10),
  6323.     parseInt(c[3], 10)
  6324. ] : (c = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(b)) ? [
  6325.     parseFloat(c[1]) * 2.55,
  6326.     parseFloat(c[2]) * 2.55,
  6327.     parseFloat(c[3]) * 2.55
  6328. ] : (c = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(b)) ? [
  6329.     parseInt(c[1], 16),
  6330.     parseInt(c[2], 16),
  6331.     parseInt(c[3], 16)
  6332. ] : (c = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(b)) ? [
  6333.     parseInt(c[1] + c[1], 16),
  6334.     parseInt(c[2] + c[2], 16),
  6335.     parseInt(c[3] + c[3], 16)
  6336. ] : (c = /rgba\(0, 0, 0, 0\)/.exec(b)) ? e.transparent : e[a.trim(b).toLowerCase()]
  6337. }
  6338. function d(b, d) {
  6339. var e;
  6340. do {
  6341.     e = (a.curCSS || a.css) (b, d);
  6342.     if (e != '' && e != 'transparent' || a.nodeName(b, 'body')) break;
  6343.     d = 'backgroundColor'
  6344. } while (b = b.parentNode);
  6345. return c(e)
  6346. }
  6347. function h() {
  6348. var a = document.defaultView ? document.defaultView.getComputedStyle(this, null)  : this.currentStyle,
  6349. b = {
  6350. },
  6351. c,
  6352. d;
  6353. if (a && a.length && a[0] && a[a[0]]) {
  6354.     var e = a.length;
  6355.     while (e--) c = a[e],
  6356.     typeof a[c] == 'string' && (d = c.replace(/\-(\w)/g, function (a, b) {
  6357.         return b.toUpperCase()
  6358.     }), b[d] = a[c])
  6359. } else for (c in a) typeof a[c] == 'string' && (b[c] = a[c]);
  6360. return b
  6361. }
  6362. function i(b) {
  6363. var c,
  6364. d;
  6365. for (c in b) d = b[c],
  6366. (d == null || a.isFunction(d) || c in g || /scrollbar/.test(c) || !/color/i.test(c) && isNaN(parseFloat(d))) && delete b[c];
  6367. return b
  6368. }
  6369. function j(a, b) {
  6370. var c = {
  6371.     _: 0
  6372. },
  6373. d;
  6374. for (d in b) a[d] != b[d] && (c[d] = b[d]);
  6375. return c
  6376. }
  6377. function k(b, c, d, e) {
  6378. typeof b == 'object' && (e = c, d = null, c = b, b = c.effect),
  6379. a.isFunction(c) && (e = c, d = null, c = {
  6380. });
  6381. if (typeof c == 'number' || a.fx.speeds[c]) e = d,
  6382. d = c,
  6383. c = {
  6384. };
  6385. return a.isFunction(d) && (e = d, d = null),
  6386. c = c || {
  6387. },
  6388. d = d || c.duration,
  6389. d = a.fx.off ? 0 : typeof d == 'number' ? d : d in a.fx.speeds ? a.fx.speeds[d] : a.fx.speeds._default,
  6390. e = e || c.complete,
  6391. [
  6392.     b,
  6393.     c,
  6394.     d,
  6395.     e
  6396. ]
  6397. }
  6398. function l(b) {
  6399. return !b || typeof b == 'number' || a.fx.speeds[b] ? !0 : typeof b == 'string' && !a.effects[b] ? !0 : !1
  6400. }
  6401. a.effects = {
  6402. },
  6403. a.each(['backgroundColor',
  6404. 'borderBottomColor',
  6405. 'borderLeftColor',
  6406. 'borderRightColor',
  6407. 'borderTopColor',
  6408. 'borderColor',
  6409. 'color',
  6410. 'outlineColor'], function (b, e) {
  6411. a.fx.step[e] = function (a) {
  6412.     a.colorInit || (a.start = d(a.elem, e), a.end = c(a.end), a.colorInit = !0),
  6413.     a.elem.style[e] = 'rgb(' + Math.max(Math.min(parseInt(a.pos * (a.end[0] - a.start[0]) + a.start[0], 10), 255), 0) + ',' + Math.max(Math.min(parseInt(a.pos * (a.end[1] - a.start[1]) + a.start[1], 10), 255), 0) + ',' + Math.max(Math.min(parseInt(a.pos * (a.end[2] - a.start[2]) + a.start[2], 10), 255), 0) + ')'
  6414. }
  6415. });
  6416. var e = {
  6417. aqua: [
  6418.     0,
  6419.     255,
  6420.     255
  6421. ],
  6422. azure: [
  6423.     240,
  6424.     255,
  6425.     255
  6426. ],
  6427. beige: [
  6428.     245,
  6429.     245,
  6430.     220
  6431. ],
  6432. black: [
  6433.     0,
  6434.     0,
  6435.     0
  6436. ],
  6437. blue: [
  6438.     0,
  6439.     0,
  6440.     255
  6441. ],
  6442. brown: [
  6443.     165,
  6444.     42,
  6445.     42
  6446. ],
  6447. cyan: [
  6448.     0,
  6449.     255,
  6450.     255
  6451. ],
  6452. darkblue: [
  6453.     0,
  6454.     0,
  6455.     139
  6456. ],
  6457. darkcyan: [
  6458.     0,
  6459.     139,
  6460.     139
  6461. ],
  6462. darkgrey: [
  6463.     169,
  6464.     169,
  6465.     169
  6466. ],
  6467. darkgreen: [
  6468.     0,
  6469.     100,
  6470.     0
  6471. ],
  6472. darkkhaki: [
  6473.     189,
  6474.     183,
  6475.     107
  6476. ],
  6477. darkmagenta: [
  6478.     139,
  6479.     0,
  6480.     139
  6481. ],
  6482. darkolivegreen: [
  6483.     85,
  6484.     107,
  6485.     47
  6486. ],
  6487. darkorange: [
  6488.     255,
  6489.     140,
  6490.     0
  6491. ],
  6492. darkorchid: [
  6493.     153,
  6494.     50,
  6495.     204
  6496. ],
  6497. darkred: [
  6498.     139,
  6499.     0,
  6500.     0
  6501. ],
  6502. darksalmon: [
  6503.     233,
  6504.     150,
  6505.     122
  6506. ],
  6507. darkviolet: [
  6508.     148,
  6509.     0,
  6510.     211
  6511. ],
  6512. fuchsia: [
  6513.     255,
  6514.     0,
  6515.     255
  6516. ],
  6517. gold: [
  6518.     255,
  6519.     215,
  6520.     0
  6521. ],
  6522. green: [
  6523.     0,
  6524.     128,
  6525.     0
  6526. ],
  6527. indigo: [
  6528.     75,
  6529.     0,
  6530.     130
  6531. ],
  6532. khaki: [
  6533.     240,
  6534.     230,
  6535.     140
  6536. ],
  6537. lightblue: [
  6538.     173,
  6539.     216,
  6540.     230
  6541. ],
  6542. lightcyan: [
  6543.     224,
  6544.     255,
  6545.     255
  6546. ],
  6547. lightgreen: [
  6548.     144,
  6549.     238,
  6550.     144
  6551. ],
  6552. lightgrey: [
  6553.     211,
  6554.     211,
  6555.     211
  6556. ],
  6557. lightpink: [
  6558.     255,
  6559.     182,
  6560.     193
  6561. ],
  6562. lightyellow: [
  6563.     255,
  6564.     255,
  6565.     224
  6566. ],
  6567. lime: [
  6568.     0,
  6569.     255,
  6570.     0
  6571. ],
  6572. magenta: [
  6573.     255,
  6574.     0,
  6575.     255
  6576. ],
  6577. maroon: [
  6578.     128,
  6579.     0,
  6580.     0
  6581. ],
  6582. navy: [
  6583.     0,
  6584.     0,
  6585.     128
  6586. ],
  6587. olive: [
  6588.     128,
  6589.     128,
  6590.     0
  6591. ],
  6592. orange: [
  6593.     255,
  6594.     165,
  6595.     0
  6596. ],
  6597. pink: [
  6598.     255,
  6599.     192,
  6600.     203
  6601. ],
  6602. purple: [
  6603.     128,
  6604.     0,
  6605.     128
  6606. ],
  6607. violet: [
  6608.     128,
  6609.     0,
  6610.     128
  6611. ],
  6612. red: [
  6613.     255,
  6614.     0,
  6615.     0
  6616. ],
  6617. silver: [
  6618.     192,
  6619.     192,
  6620.     192
  6621. ],
  6622. white: [
  6623.     255,
  6624.     255,
  6625.     255
  6626. ],
  6627. yellow: [
  6628.     255,
  6629.     255,
  6630.     0
  6631. ],
  6632. transparent: [
  6633.     255,
  6634.     255,
  6635.     255
  6636. ]
  6637. },
  6638. f = [
  6639. 'add',
  6640. 'remove',
  6641. 'toggle'
  6642. ],
  6643. g = {
  6644. border: 1,
  6645. borderBottom: 1,
  6646. borderColor: 1,
  6647. borderLeft: 1,
  6648. borderRight: 1,
  6649. borderTop: 1,
  6650. borderWidth: 1,
  6651. margin: 1,
  6652. padding: 1
  6653. };
  6654. a.effects.animateClass = function (b, c, d, e) {
  6655. return a.isFunction(d) && (e = d, d = null),
  6656. this.queue(function () {
  6657.     var g = a(this),
  6658.     k = g.attr('style') || ' ',
  6659.     l = i(h.call(this)),
  6660.     m,
  6661.     n = g.attr('class') || '';
  6662.     a.each(f, function (a, c) {
  6663.         b[c] && g[c + 'Class'](b[c])
  6664.     }),
  6665.     m = i(h.call(this)),
  6666.     g.attr('class', n),
  6667.     g.animate(j(l, m), {
  6668.         queue: !1,
  6669.         duration: c,
  6670.         easing: d,
  6671.         complete: function () {
  6672.             a.each(f, function (a, c) {
  6673.                 b[c] && g[c + 'Class'](b[c])
  6674.             }),
  6675.             typeof g.attr('style') == 'object' ? (g.attr('style').cssText = '', g.attr('style').cssText = k)  : g.attr('style', k),
  6676.             e && e.apply(this, arguments),
  6677.             a.dequeue(this)
  6678.         }
  6679.     })
  6680. })
  6681. },
  6682. a.fn.extend({
  6683. _addClass: a.fn.addClass,
  6684. addClass: function (b, c, d, e) {
  6685.     return c ? a.effects.animateClass.apply(this, [
  6686.         {
  6687.             add: b
  6688.         },
  6689.         c,
  6690.         d,
  6691.         e
  6692.     ])  : this._addClass(b)
  6693. },
  6694. _removeClass: a.fn.removeClass,
  6695. removeClass: function (b, c, d, e) {
  6696.     return c ? a.effects.animateClass.apply(this, [
  6697.         {
  6698.             remove: b
  6699.         },
  6700.         c,
  6701.         d,
  6702.         e
  6703.     ])  : this._removeClass(b)
  6704. },
  6705. _toggleClass: a.fn.toggleClass,
  6706. toggleClass: function (c, d, e, f, g) {
  6707.     return typeof d == 'boolean' || d === b ? e ? a.effects.animateClass.apply(this, [
  6708.         d ? {
  6709.             add: c
  6710.         }
  6711.          : {
  6712.             remove: c
  6713.         },
  6714.         e,
  6715.         f,
  6716.         g
  6717.     ])  : this._toggleClass(c, d)  : a.effects.animateClass.apply(this, [
  6718.         {
  6719.             toggle: c
  6720.         },
  6721.         d,
  6722.         e,
  6723.         f
  6724.     ])
  6725. },
  6726. switchClass: function (b, c, d, e, f) {
  6727.     return a.effects.animateClass.apply(this, [
  6728.         {
  6729.             add: c,
  6730.             remove: b
  6731.         },
  6732.         d,
  6733.         e,
  6734.         f
  6735.     ])
  6736. }
  6737. }),
  6738. a.extend(a.effects, {
  6739. version: '1.8.24',
  6740. save: function (a, b) {
  6741.     for (var c = 0; c < b.length; c++) b[c] !== null && a.data('ec.storage.' + b[c], a[0].style[b[c]])
  6742. },
  6743. restore: function (a, b) {
  6744.     for (var c = 0; c < b.length; c++) b[c] !== null && a.css(b[c], a.data('ec.storage.' + b[c]))
  6745. },
  6746. setMode: function (a, b) {
  6747.     return b == 'toggle' && (b = a.is(':hidden') ? 'show' : 'hide'),
  6748.     b
  6749. },
  6750. getBaseline: function (a, b) {
  6751.     var c,
  6752.     d;
  6753.     switch (a[0]) {
  6754.         case 'top':
  6755.             c = 0;
  6756.             break;
  6757.         case 'middle':
  6758.             c = 0.5;
  6759.             break;
  6760.         case 'bottom':
  6761.             c = 1;
  6762.             break;
  6763.         default:
  6764.             c = a[0] / b.height
  6765.     }
  6766.     switch (a[1]) {
  6767.         case 'left':
  6768.             d = 0;
  6769.             break;
  6770.         case 'center':
  6771.             d = 0.5;
  6772.             break;
  6773.         case 'right':
  6774.             d = 1;
  6775.             break;
  6776.         default:
  6777.             d = a[1] / b.width
  6778.     }
  6779.     return {
  6780.         x: d,
  6781.         y: c
  6782. }
  6783. },
  6784. createWrapper: function (b) {
  6785. if (b.parent().is('.ui-effects-wrapper')) return b.parent();
  6786. var c = {
  6787. width: b.outerWidth(!0),
  6788. height: b.outerHeight(!0),
  6789. 'float': b.css('float')
  6790. },
  6791. d = a('<div></div>').addClass('ui-effects-wrapper').css({
  6792. fontSize: '100%',
  6793. background: 'transparent',
  6794. border: 'none',
  6795. margin: 0,
  6796. padding: 0
  6797. }),
  6798. e = document.activeElement;
  6799. try {
  6800. e.id
  6801. } catch (f) {
  6802. e = document.body
  6803. }
  6804. return b.wrap(d),
  6805. (b[0] === e || a.contains(b[0], e)) && a(e).focus(),
  6806. d = b.parent(),
  6807. b.css('position') == 'static' ? (d.css({
  6808. position: 'relative'
  6809. }), b.css({
  6810. position: 'relative'
  6811. }))  : (a.extend(c, {
  6812. position: b.css('position'),
  6813. zIndex: b.css('z-index')
  6814. }), a.each(['top',
  6815. 'left',
  6816. 'bottom',
  6817. 'right'], function (a, d) {
  6818. c[d] = b.css(d),
  6819. isNaN(parseInt(c[d], 10)) && (c[d] = 'auto')
  6820. }), b.css({
  6821. position: 'relative',
  6822. top: 0,
  6823. left: 0,
  6824. right: 'auto',
  6825. bottom: 'auto'
  6826. })),
  6827. d.css(c).show()
  6828. },
  6829. removeWrapper: function (b) {
  6830. var c,
  6831. d = document.activeElement;
  6832. return b.parent().is('.ui-effects-wrapper') ? (c = b.parent().replaceWith(b), (b[0] === d || a.contains(b[0], d)) && a(d).focus(), c)  : b
  6833. },
  6834. setTransition: function (b, c, d, e) {
  6835. return e = e || {
  6836. },
  6837. a.each(c, function (a, c) {
  6838. var f = b.cssUnit(c);
  6839. f[0] > 0 && (e[c] = f[0] * d + f[1])
  6840. }),
  6841. e
  6842. }
  6843. }),
  6844. a.fn.extend({
  6845. effect: function (b, c, d, e) {
  6846. var f = k.apply(this, arguments),
  6847. g = {
  6848. options: f[1],
  6849. duration: f[2],
  6850. callback: f[3]
  6851. },
  6852. h = g.options.mode,
  6853. i = a.effects[b];
  6854. return a.fx.off || !i ? h ? this[h](g.duration, g.callback)  : this.each(function () {
  6855. g.callback && g.callback.call(this)
  6856. })  : i.call(this, g)
  6857. },
  6858. _show: a.fn.show,
  6859. show: function (a) {
  6860. if (l(a)) return this._show.apply(this, arguments);
  6861. var b = k.apply(this, arguments);
  6862. return b[1].mode = 'show',
  6863. this.effect.apply(this, b)
  6864. },
  6865. _hide: a.fn.hide,
  6866. hide: function (a) {
  6867. if (l(a)) return this._hide.apply(this, arguments);
  6868. var b = k.apply(this, arguments);
  6869. return b[1].mode = 'hide',
  6870. this.effect.apply(this, b)
  6871. },
  6872. __toggle: a.fn.toggle,
  6873. toggle: function (b) {
  6874. if (l(b) || typeof b == 'boolean' || a.isFunction(b)) return this.__toggle.apply(this, arguments);
  6875. var c = k.apply(this, arguments);
  6876. return c[1].mode = 'toggle',
  6877. this.effect.apply(this, c)
  6878. },
  6879. cssUnit: function (b) {
  6880. var c = this.css(b),
  6881. d = [
  6882. ];
  6883. return a.each(['em',
  6884. 'px',
  6885. '%',
  6886. 'pt'], function (a, b) {
  6887. c.indexOf(b) > 0 && (d = [
  6888. parseFloat(c),
  6889. b
  6890. ])
  6891. }),
  6892. d
  6893. }
  6894. });
  6895. var m = {
  6896. };
  6897. a.each(['Quad',
  6898. 'Cubic',
  6899. 'Quart',
  6900. 'Quint',
  6901. 'Expo'], function (a, b) {
  6902. m[b] = function (b) {
  6903. return Math.pow(b, a + 2)
  6904. }
  6905. }),
  6906. a.extend(m, {
  6907. Sine: function (a) {
  6908. return 1 - Math.cos(a * Math.PI / 2)
  6909. },
  6910. Circ: function (a) {
  6911. return 1 - Math.sqrt(1 - a * a)
  6912. },
  6913. Elastic: function (a) {
  6914. return a === 0 || a === 1 ? a : - Math.pow(2, 8 * (a - 1)) * Math.sin(((a - 1) * 80 - 7.5) * Math.PI / 15)
  6915. },
  6916. Back: function (a) {
  6917. return a * a * (3 * a - 2)
  6918. },
  6919. Bounce: function (a) {
  6920. var b,
  6921. c = 4;
  6922. while (a < ((b = Math.pow(2, --c)) - 1) / 11);
  6923. return 1 / Math.pow(4, 3 - c) - 7.5625 * Math.pow((b * 3 - 2) / 22 - a, 2)
  6924. }
  6925. }),
  6926. a.each(m, function (b, c) {
  6927. a.easing['easeIn' + b] = c,
  6928. a.easing['easeOut' + b] = function (a) {
  6929. return 1 - c(1 - a)
  6930. },
  6931. a.easing['easeInOut' + b] = function (a) {
  6932. return a < 0.5 ? c(a * 2) / 2 : c(a * - 2 + 2) / - 2 + 1
  6933. }
  6934. })
  6935. }(jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  6936. * https://github.com/jquery/jquery-ui
  6937. * Includes: jquery.effects.blind.js
  6938. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  6939. (function (a, b) {
  6940. a.effects.blind = function (b) {
  6941. return this.queue(function () {
  6942. var c = a(this),
  6943. d = [
  6944. 'position',
  6945. 'top',
  6946. 'bottom',
  6947. 'left',
  6948. 'right'
  6949. ],
  6950. e = a.effects.setMode(c, b.options.mode || 'hide'),
  6951. f = b.options.direction || 'vertical';
  6952. a.effects.save(c, d),
  6953. c.show();
  6954. var g = a.effects.createWrapper(c).css({
  6955. overflow: 'hidden'
  6956. }),
  6957. h = f == 'vertical' ? 'height' : 'width',
  6958. i = f == 'vertical' ? g.height()  : g.width();
  6959. e == 'show' && g.css(h, 0);
  6960. var j = {
  6961. };
  6962. j[h] = e == 'show' ? i : 0,
  6963. g.animate(j, b.duration, b.options.easing, function () {
  6964. e == 'hide' && c.hide(),
  6965. a.effects.restore(c, d),
  6966. a.effects.removeWrapper(c),
  6967. b.callback && b.callback.apply(c[0], arguments),
  6968. c.dequeue()
  6969. })
  6970. })
  6971. }
  6972. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  6973. * https://github.com/jquery/jquery-ui
  6974. * Includes: jquery.effects.bounce.js
  6975. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  6976. (function (a, b) {
  6977. a.effects.bounce = function (b) {
  6978. return this.queue(function () {
  6979. var c = a(this),
  6980. d = [
  6981. 'position',
  6982. 'top',
  6983. 'bottom',
  6984. 'left',
  6985. 'right'
  6986. ],
  6987. e = a.effects.setMode(c, b.options.mode || 'effect'),
  6988. f = b.options.direction || 'up',
  6989. g = b.options.distance || 20,
  6990. h = b.options.times || 5,
  6991. i = b.duration || 250;
  6992. /show|hide/.test(e) && d.push('opacity'),
  6993. a.effects.save(c, d),
  6994. c.show(),
  6995. a.effects.createWrapper(c);
  6996. var j = f == 'up' || f == 'down' ? 'top' : 'left',
  6997. k = f == 'up' || f == 'left' ? 'pos' : 'neg',
  6998. g = b.options.distance || (j == 'top' ? c.outerHeight(!0) / 3 : c.outerWidth(!0) / 3);
  6999. e == 'show' && c.css('opacity', 0).css(j, k == 'pos' ? - g : g),
  7000. e == 'hide' && (g = g / (h * 2)),
  7001. e != 'hide' && h--;
  7002. if (e == 'show') {
  7003. var l = {
  7004. opacity: 1
  7005. };
  7006. l[j] = (k == 'pos' ? '+=' : '-=') + g,
  7007. c.animate(l, i / 2, b.options.easing),
  7008. g = g / 2,
  7009. h--
  7010. }
  7011. for (var m = 0; m < h; m++) {
  7012. var n = {
  7013. },
  7014. p = {
  7015. };
  7016. n[j] = (k == 'pos' ? '-=' : '+=') + g,
  7017. p[j] = (k == 'pos' ? '+=' : '-=') + g,
  7018. c.animate(n, i / 2, b.options.easing).animate(p, i / 2, b.options.easing),
  7019. g = e == 'hide' ? g * 2 : g / 2
  7020. }
  7021. if (e == 'hide') {
  7022. var l = {
  7023. opacity: 0
  7024. };
  7025. l[j] = (k == 'pos' ? '-=' : '+=') + g,
  7026. c.animate(l, i / 2, b.options.easing, function () {
  7027. c.hide(),
  7028. a.effects.restore(c, d),
  7029. a.effects.removeWrapper(c),
  7030. b.callback && b.callback.apply(this, arguments)
  7031. })
  7032. } else {
  7033. var n = {
  7034. },
  7035. p = {
  7036. };
  7037. n[j] = (k == 'pos' ? '-=' : '+=') + g,
  7038. p[j] = (k == 'pos' ? '+=' : '-=') + g,
  7039. c.animate(n, i / 2, b.options.easing).animate(p, i / 2, b.options.easing, function () {
  7040. a.effects.restore(c, d),
  7041. a.effects.removeWrapper(c),
  7042. b.callback && b.callback.apply(this, arguments)
  7043. })
  7044. }
  7045. c.queue('fx', function () {
  7046. c.dequeue()
  7047. }),
  7048. c.dequeue()
  7049. })
  7050. }
  7051. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7052. * https://github.com/jquery/jquery-ui
  7053. * Includes: jquery.effects.clip.js
  7054. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7055. (function (a, b) {
  7056. a.effects.clip = function (b) {
  7057. return this.queue(function () {
  7058. var c = a(this),
  7059. d = [
  7060. 'position',
  7061. 'top',
  7062. 'bottom',
  7063. 'left',
  7064. 'right',
  7065. 'height',
  7066. 'width'
  7067. ],
  7068. e = a.effects.setMode(c, b.options.mode || 'hide'),
  7069. f = b.options.direction || 'vertical';
  7070. a.effects.save(c, d),
  7071. c.show();
  7072. var g = a.effects.createWrapper(c).css({
  7073. overflow: 'hidden'
  7074. }),
  7075. h = c[0].tagName == 'IMG' ? g : c,
  7076. i = {
  7077. size: f == 'vertical' ? 'height' : 'width',
  7078. position: f == 'vertical' ? 'top' : 'left'
  7079. },
  7080. j = f == 'vertical' ? h.height()  : h.width();
  7081. e == 'show' && (h.css(i.size, 0), h.css(i.position, j / 2));
  7082. var k = {
  7083. };
  7084. k[i.size] = e == 'show' ? j : 0,
  7085. k[i.position] = e == 'show' ? 0 : j / 2,
  7086. h.animate(k, {
  7087. queue: !1,
  7088. duration: b.duration,
  7089. easing: b.options.easing,
  7090. complete: function () {
  7091. e == 'hide' && c.hide(),
  7092. a.effects.restore(c, d),
  7093. a.effects.removeWrapper(c),
  7094. b.callback && b.callback.apply(c[0], arguments),
  7095. c.dequeue()
  7096. }
  7097. })
  7098. })
  7099. }
  7100. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7101. * https://github.com/jquery/jquery-ui
  7102. * Includes: jquery.effects.drop.js
  7103. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7104. (function (a, b) {
  7105. a.effects.drop = function (b) {
  7106. return this.queue(function () {
  7107. var c = a(this),
  7108. d = [
  7109. 'position',
  7110. 'top',
  7111. 'bottom',
  7112. 'left',
  7113. 'right',
  7114. 'opacity'
  7115. ],
  7116. e = a.effects.setMode(c, b.options.mode || 'hide'),
  7117. f = b.options.direction || 'left';
  7118. a.effects.save(c, d),
  7119. c.show(),
  7120. a.effects.createWrapper(c);
  7121. var g = f == 'up' || f == 'down' ? 'top' : 'left',
  7122. h = f == 'up' || f == 'left' ? 'pos' : 'neg',
  7123. i = b.options.distance || (g == 'top' ? c.outerHeight(!0) / 2 : c.outerWidth(!0) / 2);
  7124. e == 'show' && c.css('opacity', 0).css(g, h == 'pos' ? - i : i);
  7125. var j = {
  7126. opacity: e == 'show' ? 1 : 0
  7127. };
  7128. j[g] = (e == 'show' ? h == 'pos' ? '+=' : '-=' : h == 'pos' ? '-=' : '+=') + i,
  7129. c.animate(j, {
  7130. queue: !1,
  7131. duration: b.duration,
  7132. easing: b.options.easing,
  7133. complete: function () {
  7134. e == 'hide' && c.hide(),
  7135. a.effects.restore(c, d),
  7136. a.effects.removeWrapper(c),
  7137. b.callback && b.callback.apply(this, arguments),
  7138. c.dequeue()
  7139. }
  7140. })
  7141. })
  7142. }
  7143. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7144. * https://github.com/jquery/jquery-ui
  7145. * Includes: jquery.effects.explode.js
  7146. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7147. (function (a, b) {
  7148. a.effects.explode = function (b) {
  7149. return this.queue(function () {
  7150. var c = b.options.pieces ? Math.round(Math.sqrt(b.options.pieces))  : 3,
  7151. d = b.options.pieces ? Math.round(Math.sqrt(b.options.pieces))  : 3;
  7152. b.options.mode = b.options.mode == 'toggle' ? a(this).is(':visible') ? 'hide' : 'show' : b.options.mode;
  7153. var e = a(this).show().css('visibility', 'hidden'),
  7154. f = e.offset();
  7155. f.top -= parseInt(e.css('marginTop'), 10) || 0,
  7156. f.left -= parseInt(e.css('marginLeft'), 10) || 0;
  7157. var g = e.outerWidth(!0),
  7158. h = e.outerHeight(!0);
  7159. for (var i = 0; i < c; i++) for (var j = 0; j < d; j++) e.clone().appendTo('body').wrap('<div></div>').css({
  7160. position: 'absolute',
  7161. visibility: 'visible',
  7162. left: - j * (g / d),
  7163. top: - i * (h / c)
  7164. }).parent().addClass('ui-effects-explode').css({
  7165. position: 'absolute',
  7166. overflow: 'hidden',
  7167. width: g / d,
  7168. height: h / c,
  7169. left: f.left + j * (g / d) + (b.options.mode == 'show' ? (j - Math.floor(d / 2)) * (g / d)  : 0),
  7170. top: f.top + i * (h / c) + (b.options.mode == 'show' ? (i - Math.floor(c / 2)) * (h / c)  : 0),
  7171. opacity: b.options.mode == 'show' ? 0 : 1
  7172. }).animate({
  7173. left: f.left + j * (g / d) + (b.options.mode == 'show' ? 0 : (j - Math.floor(d / 2)) * (g / d)),
  7174. top: f.top + i * (h / c) + (b.options.mode == 'show' ? 0 : (i - Math.floor(c / 2)) * (h / c)),
  7175. opacity: b.options.mode == 'show' ? 1 : 0
  7176. }, b.duration || 500);
  7177. setTimeout(function () {
  7178. b.options.mode == 'show' ? e.css({
  7179. visibility: 'visible'
  7180. })  : e.css({
  7181. visibility: 'visible'
  7182. }).hide(),
  7183. b.callback && b.callback.apply(e[0]),
  7184. e.dequeue(),
  7185. a('div.ui-effects-explode').remove()
  7186. }, b.duration || 500)
  7187. })
  7188. }
  7189. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7190. * https://github.com/jquery/jquery-ui
  7191. * Includes: jquery.effects.fade.js
  7192. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7193. (function (a, b) {
  7194. a.effects.fade = function (b) {
  7195. return this.queue(function () {
  7196. var c = a(this),
  7197. d = a.effects.setMode(c, b.options.mode || 'hide');
  7198. c.animate({
  7199. opacity: d
  7200. }, {
  7201. queue: !1,
  7202. duration: b.duration,
  7203. easing: b.options.easing,
  7204. complete: function () {
  7205. b.callback && b.callback.apply(this, arguments),
  7206. c.dequeue()
  7207. }
  7208. })
  7209. })
  7210. }
  7211. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7212. * https://github.com/jquery/jquery-ui
  7213. * Includes: jquery.effects.fold.js
  7214. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7215. (function (a, b) {
  7216. a.effects.fold = function (b) {
  7217. return this.queue(function () {
  7218. var c = a(this),
  7219. d = [
  7220. 'position',
  7221. 'top',
  7222. 'bottom',
  7223. 'left',
  7224. 'right'
  7225. ],
  7226. e = a.effects.setMode(c, b.options.mode || 'hide'),
  7227. f = b.options.size || 15,
  7228. g = !!b.options.horizFirst,
  7229. h = b.duration ? b.duration / 2 : a.fx.speeds._default / 2;
  7230. a.effects.save(c, d),
  7231. c.show();
  7232. var i = a.effects.createWrapper(c).css({
  7233. overflow: 'hidden'
  7234. }),
  7235. j = e == 'show' != g,
  7236. k = j ? [
  7237. 'width',
  7238. 'height'
  7239. ] : [
  7240. 'height',
  7241. 'width'
  7242. ],
  7243. l = j ? [
  7244. i.width(),
  7245. i.height()
  7246. ] : [
  7247. i.height(),
  7248. i.width()
  7249. ],
  7250. m = /([0-9]+)%/.exec(f);
  7251. m && (f = parseInt(m[1], 10) / 100 * l[e == 'hide' ? 0 : 1]),
  7252. e == 'show' && i.css(g ? {
  7253. height: 0,
  7254. width: f
  7255. }
  7256.  : {
  7257. height: f,
  7258. width: 0
  7259. });
  7260. var n = {
  7261. },
  7262. p = {
  7263. };
  7264. n[k[0]] = e == 'show' ? l[0] : f,
  7265. p[k[1]] = e == 'show' ? l[1] : 0,
  7266. i.animate(n, h, b.options.easing).animate(p, h, b.options.easing, function () {
  7267. e == 'hide' && c.hide(),
  7268. a.effects.restore(c, d),
  7269. a.effects.removeWrapper(c),
  7270. b.callback && b.callback.apply(c[0], arguments),
  7271. c.dequeue()
  7272. })
  7273. })
  7274. }
  7275. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7276. * https://github.com/jquery/jquery-ui
  7277. * Includes: jquery.effects.highlight.js
  7278. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7279. (function (a, b) {
  7280. a.effects.highlight = function (b) {
  7281. return this.queue(function () {
  7282. var c = a(this),
  7283. d = [
  7284. 'backgroundImage',
  7285. 'backgroundColor',
  7286. 'opacity'
  7287. ],
  7288. e = a.effects.setMode(c, b.options.mode || 'show'),
  7289. f = {
  7290. backgroundColor: c.css('backgroundColor')
  7291. };
  7292. e == 'hide' && (f.opacity = 0),
  7293. a.effects.save(c, d),
  7294. c.show().css({
  7295. backgroundImage: 'none',
  7296. backgroundColor: b.options.color || '#ffff99'
  7297. }).animate(f, {
  7298. queue: !1,
  7299. duration: b.duration,
  7300. easing: b.options.easing,
  7301. complete: function () {
  7302. e == 'hide' && c.hide(),
  7303. a.effects.restore(c, d),
  7304. e == 'show' && !a.support.opacity && this.style.removeAttribute('filter'),
  7305. b.callback && b.callback.apply(this, arguments),
  7306. c.dequeue()
  7307. }
  7308. })
  7309. })
  7310. }
  7311. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7312. * https://github.com/jquery/jquery-ui
  7313. * Includes: jquery.effects.pulsate.js
  7314. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7315. (function (a, b) {
  7316. a.effects.pulsate = function (b) {
  7317. return this.queue(function () {
  7318. var c = a(this),
  7319. d = a.effects.setMode(c, b.options.mode || 'show'),
  7320. e = (b.options.times || 5) * 2 - 1,
  7321. f = b.duration ? b.duration / 2 : a.fx.speeds._default / 2,
  7322. g = c.is(':visible'),
  7323. h = 0;
  7324. g || (c.css('opacity', 0).show(), h = 1),
  7325. (d == 'hide' && g || d == 'show' && !g) && e--;
  7326. for (var i = 0; i < e; i++) c.animate({
  7327. opacity: h
  7328. }, f, b.options.easing),
  7329. h = (h + 1) % 2;
  7330. c.animate({
  7331. opacity: h
  7332. }, f, b.options.easing, function () {
  7333. h == 0 && c.hide(),
  7334. b.callback && b.callback.apply(this, arguments)
  7335. }),
  7336. c.queue('fx', function () {
  7337. c.dequeue()
  7338. }).dequeue()
  7339. })
  7340. }
  7341. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7342. * https://github.com/jquery/jquery-ui
  7343. * Includes: jquery.effects.scale.js
  7344. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7345. (function (a, b) {
  7346. a.effects.puff = function (b) {
  7347. return this.queue(function () {
  7348. var c = a(this),
  7349. d = a.effects.setMode(c, b.options.mode || 'hide'),
  7350. e = parseInt(b.options.percent, 10) || 150,
  7351. f = e / 100,
  7352. g = {
  7353. height: c.height(),
  7354. width: c.width()
  7355. };
  7356. a.extend(b.options, {
  7357. fade: !0,
  7358. mode: d,
  7359. percent: d == 'hide' ? e : 100,
  7360. from: d == 'hide' ? g : {
  7361. height: g.height * f,
  7362. width: g.width * f
  7363. }
  7364. }),
  7365. c.effect('scale', b.options, b.duration, b.callback),
  7366. c.dequeue()
  7367. })
  7368. },
  7369. a.effects.scale = function (b) {
  7370. return this.queue(function () {
  7371. var c = a(this),
  7372. d = a.extend(!0, {
  7373. }, b.options),
  7374. e = a.effects.setMode(c, b.options.mode || 'effect'),
  7375. f = parseInt(b.options.percent, 10) || (parseInt(b.options.percent, 10) == 0 ? 0 : e == 'hide' ? 0 : 100),
  7376. g = b.options.direction || 'both',
  7377. h = b.options.origin;
  7378. e != 'effect' && (d.origin = h || ['middle',
  7379. 'center'], d.restore = !0);
  7380. var i = {
  7381. height: c.height(),
  7382. width: c.width()
  7383. };
  7384. c.from = b.options.from || (e == 'show' ? {
  7385. height: 0,
  7386. width: 0
  7387. }
  7388.  : i);
  7389. var j = {
  7390. y: g != 'horizontal' ? f / 100 : 1,
  7391. x: g != 'vertical' ? f / 100 : 1
  7392. };
  7393. c.to = {
  7394. height: i.height * j.y,
  7395. width: i.width * j.x
  7396. },
  7397. b.options.fade && (e == 'show' && (c.from.opacity = 0, c.to.opacity = 1), e == 'hide' && (c.from.opacity = 1, c.to.opacity = 0)),
  7398. d.from = c.from,
  7399. d.to = c.to,
  7400. d.mode = e,
  7401. c.effect('size', d, b.duration, b.callback),
  7402. c.dequeue()
  7403. })
  7404. },
  7405. a.effects.size = function (b) {
  7406. return this.queue(function () {
  7407. var c = a(this),
  7408. d = [
  7409. 'position',
  7410. 'top',
  7411. 'bottom',
  7412. 'left',
  7413. 'right',
  7414. 'width',
  7415. 'height',
  7416. 'overflow',
  7417. 'opacity'
  7418. ],
  7419. e = [
  7420. 'position',
  7421. 'top',
  7422. 'bottom',
  7423. 'left',
  7424. 'right',
  7425. 'overflow',
  7426. 'opacity'
  7427. ],
  7428. f = [
  7429. 'width',
  7430. 'height',
  7431. 'overflow'
  7432. ],
  7433. g = [
  7434. 'fontSize'
  7435. ],
  7436. h = [
  7437. 'borderTopWidth',
  7438. 'borderBottomWidth',
  7439. 'paddingTop',
  7440. 'paddingBottom'
  7441. ],
  7442. i = [
  7443. 'borderLeftWidth',
  7444. 'borderRightWidth',
  7445. 'paddingLeft',
  7446. 'paddingRight'
  7447. ],
  7448. j = a.effects.setMode(c, b.options.mode || 'effect'),
  7449. k = b.options.restore || !1,
  7450. l = b.options.scale || 'both',
  7451. m = b.options.origin,
  7452. n = {
  7453. height: c.height(),
  7454. width: c.width()
  7455. };
  7456. c.from = b.options.from || n,
  7457. c.to = b.options.to || n;
  7458. if (m) {
  7459. var p = a.effects.getBaseline(m, n);
  7460. c.from.top = (n.height - c.from.height) * p.y,
  7461. c.from.left = (n.width - c.from.width) * p.x,
  7462. c.to.top = (n.height - c.to.height) * p.y,
  7463. c.to.left = (n.width - c.to.width) * p.x
  7464. }
  7465. var q = {
  7466. from: {
  7467. y: c.from.height / n.height,
  7468. x: c.from.width / n.width
  7469. },
  7470. to: {
  7471. y: c.to.height / n.height,
  7472. x: c.to.width / n.width
  7473. }
  7474. };
  7475. if (l == 'box' || l == 'both') q.from.y != q.to.y && (d = d.concat(h), c.from = a.effects.setTransition(c, h, q.from.y, c.from), c.to = a.effects.setTransition(c, h, q.to.y, c.to)),
  7476. q.from.x != q.to.x && (d = d.concat(i), c.from = a.effects.setTransition(c, i, q.from.x, c.from), c.to = a.effects.setTransition(c, i, q.to.x, c.to));
  7477. (l == 'content' || l == 'both') && q.from.y != q.to.y && (d = d.concat(g), c.from = a.effects.setTransition(c, g, q.from.y, c.from), c.to = a.effects.setTransition(c, g, q.to.y, c.to)),
  7478. a.effects.save(c, k ? d : e),
  7479. c.show(),
  7480. a.effects.createWrapper(c),
  7481. c.css('overflow', 'hidden').css(c.from);
  7482. if (l == 'content' || l == 'both') h = h.concat(['marginTop',
  7483. 'marginBottom']).concat(g),
  7484. i = i.concat(['marginLeft',
  7485. 'marginRight']),
  7486. f = d.concat(h).concat(i),
  7487. c.find('*[width]').each(function () {
  7488. var c = a(this);
  7489. k && a.effects.save(c, f);
  7490. var d = {
  7491. height: c.height(),
  7492. width: c.width()
  7493. };
  7494. c.from = {
  7495. height: d.height * q.from.y,
  7496. width: d.width * q.from.x
  7497. },
  7498. c.to = {
  7499. height: d.height * q.to.y,
  7500. width: d.width * q.to.x
  7501. },
  7502. q.from.y != q.to.y && (c.from = a.effects.setTransition(c, h, q.from.y, c.from), c.to = a.effects.setTransition(c, h, q.to.y, c.to)),
  7503. q.from.x != q.to.x && (c.from = a.effects.setTransition(c, i, q.from.x, c.from), c.to = a.effects.setTransition(c, i, q.to.x, c.to)),
  7504. c.css(c.from),
  7505. c.animate(c.to, b.duration, b.options.easing, function () {
  7506. k && a.effects.restore(c, f)
  7507. })
  7508. });
  7509. c.animate(c.to, {
  7510. queue: !1,
  7511. duration: b.duration,
  7512. easing: b.options.easing,
  7513. complete: function () {
  7514. c.to.opacity === 0 && c.css('opacity', c.from.opacity),
  7515. j == 'hide' && c.hide(),
  7516. a.effects.restore(c, k ? d : e),
  7517. a.effects.removeWrapper(c),
  7518. b.callback && b.callback.apply(this, arguments),
  7519. c.dequeue()
  7520. }
  7521. })
  7522. })
  7523. }
  7524. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7525. * https://github.com/jquery/jquery-ui
  7526. * Includes: jquery.effects.shake.js
  7527. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7528. (function (a, b) {
  7529. a.effects.shake = function (b) {
  7530. return this.queue(function () {
  7531. var c = a(this),
  7532. d = [
  7533. 'position',
  7534. 'top',
  7535. 'bottom',
  7536. 'left',
  7537. 'right'
  7538. ],
  7539. e = a.effects.setMode(c, b.options.mode || 'effect'),
  7540. f = b.options.direction || 'left',
  7541. g = b.options.distance || 20,
  7542. h = b.options.times || 3,
  7543. i = b.duration || b.options.duration || 140;
  7544. a.effects.save(c, d),
  7545. c.show(),
  7546. a.effects.createWrapper(c);
  7547. var j = f == 'up' || f == 'down' ? 'top' : 'left',
  7548. k = f == 'up' || f == 'left' ? 'pos' : 'neg',
  7549. l = {
  7550. },
  7551. m = {
  7552. },
  7553. n = {
  7554. };
  7555. l[j] = (k == 'pos' ? '-=' : '+=') + g,
  7556. m[j] = (k == 'pos' ? '+=' : '-=') + g * 2,
  7557. n[j] = (k == 'pos' ? '-=' : '+=') + g * 2,
  7558. c.animate(l, i, b.options.easing);
  7559. for (var p = 1; p < h; p++) c.animate(m, i, b.options.easing).animate(n, i, b.options.easing);
  7560. c.animate(m, i, b.options.easing).animate(l, i / 2, b.options.easing, function () {
  7561. a.effects.restore(c, d),
  7562. a.effects.removeWrapper(c),
  7563. b.callback && b.callback.apply(this, arguments)
  7564. }),
  7565. c.queue('fx', function () {
  7566. c.dequeue()
  7567. }),
  7568. c.dequeue()
  7569. })
  7570. }
  7571. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7572. * https://github.com/jquery/jquery-ui
  7573. * Includes: jquery.effects.slide.js
  7574. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7575. (function (a, b) {
  7576. a.effects.slide = function (b) {
  7577. return this.queue(function () {
  7578. var c = a(this),
  7579. d = [
  7580. 'position',
  7581. 'top',
  7582. 'bottom',
  7583. 'left',
  7584. 'right'
  7585. ],
  7586. e = a.effects.setMode(c, b.options.mode || 'show'),
  7587. f = b.options.direction || 'left';
  7588. a.effects.save(c, d),
  7589. c.show(),
  7590. a.effects.createWrapper(c).css({
  7591. overflow: 'hidden'
  7592. });
  7593. var g = f == 'up' || f == 'down' ? 'top' : 'left',
  7594. h = f == 'up' || f == 'left' ? 'pos' : 'neg',
  7595. i = b.options.distance || (g == 'top' ? c.outerHeight(!0)  : c.outerWidth(!0));
  7596. e == 'show' && c.css(g, h == 'pos' ? isNaN(i) ? '-' + i : - i : i);
  7597. var j = {
  7598. };
  7599. j[g] = (e == 'show' ? h == 'pos' ? '+=' : '-=' : h == 'pos' ? '-=' : '+=') + i,
  7600. c.animate(j, {
  7601. queue: !1,
  7602. duration: b.duration,
  7603. easing: b.options.easing,
  7604. complete: function () {
  7605. e == 'hide' && c.hide(),
  7606. a.effects.restore(c, d),
  7607. a.effects.removeWrapper(c),
  7608. b.callback && b.callback.apply(this, arguments),
  7609. c.dequeue()
  7610. }
  7611. })
  7612. })
  7613. }
  7614. }) (jQuery); ; /*! jQuery UI - v1.8.24 - 2012-09-28
  7615. * https://github.com/jquery/jquery-ui
  7616. * Includes: jquery.effects.transfer.js
  7617. * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
  7618. (function (a, b) {
  7619. a.effects.transfer = function (b) {
  7620. return this.queue(function () {
  7621. var c = a(this),
  7622. d = a(b.options.to),
  7623. e = d.offset(),
  7624. f = {
  7625. top: e.top,
  7626. left: e.left,
  7627. height: d.innerHeight(),
  7628. width: d.innerWidth()
  7629. },
  7630. g = c.offset(),
  7631. h = a('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(b.options.className).css({
  7632. top: g.top,
  7633. left: g.left,
  7634. height: c.innerHeight(),
  7635. width: c.innerWidth(),
  7636. position: 'absolute'
  7637. }).animate(f, b.duration, b.options.easing, function () {
  7638. h.remove(),
  7639. b.callback && b.callback.apply(c[0], arguments),
  7640. c.dequeue()
  7641. })
  7642. })
  7643. }
  7644. }) (jQuery); ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement