diff --git a/helpcenter.r7-office.ru/Web/Controls/Common/BaseHeader/BaseHeader.ascx b/helpcenter.r7-office.ru/Web/Controls/Common/BaseHeader/BaseHeader.ascx index 8b3c9821a..524a51dfa 100644 --- a/helpcenter.r7-office.ru/Web/Controls/Common/BaseHeader/BaseHeader.ascx +++ b/helpcenter.r7-office.ru/Web/Controls/Common/BaseHeader/BaseHeader.ascx @@ -42,6 +42,7 @@ diff --git a/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/ConvertingVBAMacros.ascx b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/ConvertingVBAMacros.ascx new file mode 100644 index 000000000..1e723ed7b --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/ConvertingVBAMacros.ascx @@ -0,0 +1,68 @@ +<%@ Control Language="C#" Inherits="BaseContentUserControls" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + +
+

Конвертация макросов MS VBA

+ +

Макросы в редакторах отличаются от макросов, используемых в программах Microsoft, поскольку в программных продуктах Microsoft используется скриптовый язык Visual Basic для приложений (VBA). Язык JavaScript является более гибким и может использоваться на любой платформе (что важно, поскольку наши редакторы доступны на разных платформах).

+ +

Это может быть причиной определённых неудобств в том случае, если до этого вы работали с Microsoft Office с использованием макросов, поскольку они несовместимы с макросами на JavaScript. Однако вы можете сконвертировать ваши старые макросы и использовать их с новыми редакторами.

+ +

Это не сложный процесс. Рассмотрим пример:

+ +
Sub Example()
+    Dim myRange
+    Dim result
+    Dim Run As Long
+ 
+    For Run = 1 To 3
+        Select Case Run
+        Case 1
+            result = "=SUM(A1:A100)"
+        Case 2
+            result = "=SUM(A1:A300)"
+        Case 3
+            result = "=SUM(A1:A25)"
+        End Select
+        ActiveSheet.range("B" & Run) = result
+    Next Run
+End Sub
+ +

Макрос выше считает сумму значений из трёх диапазонов ячеек столбца A и помещает результат в три ячейки столбца B.

+

Всё то же самое можно выполнить с помощью макросов JavaScript, код будет выглядеть почти идентично и легко читаем, если вы знаете и Visual Basic для приложений и JavaScript:

+ +
(function()
+{
+    for (let run = 1; run <= 3; run++)
+    {
+        var result = "";
+        switch (run)
+        {
+            case 1:
+                result = "=SUM(A1:A100)";
+                break;
+            case 2:
+                result = "=SUM(A1:A300)";
+                break;
+            case 3:
+                result = "=SUM(A1:A25)";
+                break;
+            default:
+                break;
+        }
+        Api.GetActiveSheet().GetRange("B" + run).Value = result;
+    }
+})();
+ +

Таким же образом можно сконвертировать любой другой скрипт, написанные на Visual Basic для приложений, в код JavaScript, который будет совместим с нашими редакторами.

+
diff --git a/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/MacroSamples.ascx b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/MacroSamples.ascx new file mode 100644 index 000000000..94385e6aa --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/MacroSamples.ascx @@ -0,0 +1,106 @@ +<%@ Control Language="C#" Inherits="BaseContentUserControls" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + +
+

Полезные примеры макросов

+ +

Примеры на этой странице продемонстрируют использование макросов и дадут возможность сравнить макросы, написанные на JavaScript, с макросами, написанными на Microsoft Visual Basic для приложений, чтобы вы могли увидеть разницу и понять, как можно сконвертировать уже имеющиеся макросы.

+ + +

Запись данных в ячейку таблицы

+

В этом примере мы запишем данные (фразу "Hello world") в ячейку, находящуюся в четвёртом столбце третьего ряда

+
(function()
+{
+    Api.GetActiveSheet().GetRange("C4").SetValue("Hello world");
+})();
+ +

Соответствующий код макроса Microsoft VBA

+
+
Sub example()
+    Cells(3, 4)="Hello world"
+End Sub
+
+ +

Изменение цветов шрифта и фона ячейки, выделение шрифта жирным

+

В этом примере мы установим жирный шрифт, изменим его цвет и цвет фона ячейки

+
(function()
+{
+    Api.GetActiveSheet().GetRange("A2").SetBold(true);
+    Api.GetActiveSheet().GetRange("B4").SetFontColor(Api.CreateColorFromRGB(255, 0, 0));
+    Api.GetActiveSheet().GetRange("B3").SetFillColor(Api.CreateColorFromRGB(0, 0, 250));
+})();
+

Соответствующий код макроса Microsoft VBA

+
+
Sub example()
+    Range("B4").Font.Color = RGB(255, 0, 0)
+    Range("B4").Font.Bold = True
+    Range("B3").Interior.Color = RGB(0, 0, 250)
+End Sub
+
+ +

Объединение и отмена объединения ячеек выбранного диапазона

+

В этом примере мы объединим ячейки одного диапазона и отменим объединение ячеек другого диапазона

+
(function()
+{
+    Api.GetActiveSheet().GetRange("A1:B3").Merge(true);
+    Api.GetActiveSheet().GetRange("C5:D10").UnMerge();
+})();
+

Соответствующий код макроса Microsoft VBA

+
+
Sub example()
+    Range("A1:B3").Merge
+    Range("C5:D10").UnMerge
+End Sub
+
+ +

Установка ширины столбца

+

В этом примере мы установим ширину второго столбца ("B")

+
(function()
+{
+    Api.GetActiveSheet().SetColumnWidth(1, 25);
+})();
+

Соответствующий код макроса Microsoft VBA

+
+
Sub example()
+    Columns("B").ColumnWidth = 25
+End Sub
+
+ +

Форматирование диапазона как таблицы

+

В этом примере мы отформатируем диапазон ячеек в таблицу

+
(function()
+{
+    Api.GetActiveSheet().FormatAsTable("A1:D10");
+})();
+

Соответствующий код макроса Microsoft VBA

+
+
Sub example()
+    Sheet1.ListObjects.Add(xlSrcRange, Range("A1:D10"), , xlYes).Name = "myTable1"
+End Sub
+
+ +

Добавление новой диаграммы для выбранного диапазона ячеек

+

В этом примере мы создадим диаграмму для данных из диапазона ячеек "C5:D7"

+
(function()
+{
+    Api.GetActiveSheet().AddChart("'Sheet1'!$C$5:$D$7", true, "bar", 2, 105 * 36000, 105 * 36000, 5, 2 * 36000, 1, 3 * 36000);
+})();
+

Соответствующий код макроса Microsoft VBA

+
+
Sub example()
+    With ActiveSheet.ChartObjects.Add(Left:=300, Width:=300, Top:=10, Height:=300)
+        .Chart.SetSourceData Source:=Sheets("Sheet1").Range("C5:D7")
+    End With
+End Sub
+
+
diff --git a/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/Macros.ascx b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/Macros.ascx new file mode 100644 index 000000000..8f4d01a05 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/Macros.ascx @@ -0,0 +1,45 @@ +<%@ Control Language="C#" Inherits="BaseContentUserControls" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + +
+

Макросы

+ +

Макросы - это небольшие скрипты, используемые для того, чтобы ускорить выполнение рутинных задач в различных типах документов. Макросы используют синтаксис языка JavaScript, поэтому методы, доступные в JavaScript, так же доступны в макросах.

+ +

Вы можете добавить собственные макросы в документы (поддерживаются все типы документов: текстовые, таблицы, презентации), отредактировать их, сохранить с документом, - всё, что может сделать вашу работу с документами легче и удобнее.

+ +

Начало работы с макросами

+ +

Макрос - это функция JavaScript, привязанная к документу. Простейшая функция, вставляющая фразу "Hello world!" в текстовый документ при запуске, будет выглядеть следующим образом:

+ +
(function()
+{
+    var oDocument = Api.GetDocument();
+    var oParagraph = Api.CreateParagraph();
+    oParagraph.AddText("Hello world!");
+    oDocument.InsertContent([oParagraph]);
+})();
+ +

В интерфейсе десктопных редакторов это будет выглядеть следующим образом:

+ +
+ Окно макросов" /> + Окно макросов" /> +
+
+ +

Для доступа к макросу, откройте или создайте документ нужного типа, нажмите кнопку плагинов Кнопка плагинов" /> и выберите Макросы. Откроется окно макросов. Нажмите Создать и введите ваш код скрипта в окно с правой стороны. Когда закончите, нажмите Выполнить для запуска кода в документе.

+ +

Вы также можете переименовать ваш макрос для того, чтобы отличать его от других в случае, если в документе несколько макросов, либо удалить ненужные.

+ +
diff --git a/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/WritingMacros.ascx b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/WritingMacros.ascx new file mode 100644 index 000000000..14cc01da0 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Controls/Help/Desktop/Documents/Plugins/Macros/WritingMacros.ascx @@ -0,0 +1,64 @@ +<%@ Control Language="C#" Inherits="BaseContentUserControls" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + +
+

Написание собственных макросов

+ +

Теперь, когда вы знаете, как работают макросы, давайте попробуем написать собственный макрос. К примеру, у нас есть таблица, в которой нужно раскрасить строки в разные цвета: нечётные строки в зелёный, а чётные в красный. В таблице 200 строк (если делать всё вручную, это займёт немало времени) и столбцы от A до S.

+ +
    +
  1. Откройте десктопные редакторы и создайте новую таблицу.
  2. +
  3. Откройте плагины и выберите Макросы. Откроется окно макросов.
  4. +
  5. Нажмите Создать. Создастся базовый шаблон функции, в который можно вставить нужный код: + +
    (function()
    +{
    +    // ... ваш код здесь ...
    +})();
    +
  6. +
  7. Что нужно для выполнения нашей задачи: +
      +
    • Сначала нужно получить текущий лист с помощью метода GetActiveSheet: +
      var oWorksheet = Api.GetActiveSheet();
      +
    • +
    • Затем создадим цикл, который пройдёт от первого до последней строки таблицы: +
      for (var i = 1; i < 200; i += 2) {
      +}
      +
    • +
    • Теперь зададим две переменных: одну для нечётных строк, вторую для чётных: +
      var rowOdd = i, rowEven = i + 1;
      +
    • +
    • Теперь мы можем раскрасить нечётные и чётные строки в нужные цвета. Установим эти цвета с помощью метода CreateColorFromRGB. Диапазон ячеек внутри ряда можно получить с помощью метода GetRange, цвет для нечётных строк устанавливается так: +
      oWorksheet.GetRange("A" + rowOdd + ":S" + rowOdd).SetFillColor(Api.CreateColorFromRGB(118, 190, 39));
      + То же самое для чётных строк, но цвет будет другим: +
      oWorksheet.GetRange("A" + rowEven + ":S" + rowEven).SetFillColor(Api.CreateColorFromRGB(186, 56, 46));
      +
    • +
    +
  8. +
+ +

Давайте подведём итог и запишем весь код:

+ +
(function()
+{
+    var oWorksheet = Api.GetActiveSheet();
+    for (var i = 1; i < 200; i += 2) {
+        var rowOdd = i, rowEven = i + 1;
+        oWorksheet.GetRange("A" + rowOdd + ":S" + rowOdd).SetFillColor(Api.CreateColorFromRGB(118, 190, 39));
+        oWorksheet.GetRange("A" + rowEven + ":S" + rowEven).SetFillColor(Api.CreateColorFromRGB(186, 56, 46));
+    }
+})();
+ +

Вставьте код из примера выше в окно макросов и нажмите Выполнить. Строки таблицы с 1 по 200 будут раскрашены в разные цвета менее чем за секунду.

+ +
diff --git a/helpcenter.r7-office.ru/Web/Controls/Help/SideMenu/macros/macros.ascx b/helpcenter.r7-office.ru/Web/Controls/Help/SideMenu/macros/macros.ascx new file mode 100644 index 000000000..ed1010cf8 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Controls/Help/SideMenu/macros/macros.ascx @@ -0,0 +1,8 @@ +<%@ Control Language="C#" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/Controls/Help/VariousControls/HelpLinks/MacrosLinks.ascx b/helpcenter.r7-office.ru/Web/Controls/Help/VariousControls/HelpLinks/MacrosLinks.ascx new file mode 100644 index 000000000..6bb5d4c68 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Controls/Help/VariousControls/HelpLinks/MacrosLinks.ascx @@ -0,0 +1,7 @@ +<%@ Control Language="C#" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/Controls/Help/VariousControls/TopControls/MacrosTop/MacrosTop.ascx b/helpcenter.r7-office.ru/Web/Controls/Help/VariousControls/TopControls/MacrosTop/MacrosTop.ascx new file mode 100644 index 000000000..35b8cbeb5 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Controls/Help/VariousControls/TopControls/MacrosTop/MacrosTop.ascx @@ -0,0 +1,3 @@ +<%@ Control Language="C#" Inherits="BaseContentUserControls"%> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> +
">Макросы
diff --git a/helpcenter.r7-office.ru/Web/Masters/Macros/MacrosArticles.master b/helpcenter.r7-office.ru/Web/Masters/Macros/MacrosArticles.master new file mode 100644 index 000000000..f42f890ef --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Masters/Macros/MacrosArticles.master @@ -0,0 +1,17 @@ +<%@ Master Language="C#" MasterPageFile="~/Masters/ArticlePage.master" %> + +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + + + + + + + + + + + + diff --git a/helpcenter.r7-office.ru/Web/Masters/Macros/MacrosList.master b/helpcenter.r7-office.ru/Web/Masters/Macros/MacrosList.master new file mode 100644 index 000000000..7947eddec --- /dev/null +++ b/helpcenter.r7-office.ru/Web/Masters/Macros/MacrosList.master @@ -0,0 +1,17 @@ +<%@ Master Language="C#" MasterPageFile="~/Masters/ArticleListPage.master" %> + +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + + + + + + + + + + + + diff --git a/helpcenter.r7-office.ru/Web/api/plugins/macros.aspx b/helpcenter.r7-office.ru/Web/api/plugins/macros.aspx new file mode 100644 index 000000000..a468b7f18 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/api/plugins/macros.aspx @@ -0,0 +1,14 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Macros/MacrosList.master" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + + + + + + + + +
+ \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/api/plugins/macros/convertingvbamacros.aspx b/helpcenter.r7-office.ru/Web/api/plugins/macros/convertingvbamacros.aspx new file mode 100644 index 000000000..704821a86 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/api/plugins/macros/convertingvbamacros.aspx @@ -0,0 +1,14 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Macros/MacrosList.master" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + + + + + + + + +
+ \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/api/plugins/macros/macrosamples.aspx b/helpcenter.r7-office.ru/Web/api/plugins/macros/macrosamples.aspx new file mode 100644 index 000000000..640735cd1 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/api/plugins/macros/macrosamples.aspx @@ -0,0 +1,14 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Macros/MacrosList.master" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + + + + + + + + +
+ \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/api/plugins/macros/writingmacros.aspx b/helpcenter.r7-office.ru/Web/api/plugins/macros/writingmacros.aspx new file mode 100644 index 000000000..b46fa9ec5 --- /dev/null +++ b/helpcenter.r7-office.ru/Web/api/plugins/macros/writingmacros.aspx @@ -0,0 +1,14 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Macros/MacrosList.master" %> +<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %> + + + + + + + + + + +
+ \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/css/common.less b/helpcenter.r7-office.ru/Web/css/common.less index d6c0d96f7..f274ce277 100644 --- a/helpcenter.r7-office.ru/Web/css/common.less +++ b/helpcenter.r7-office.ru/Web/css/common.less @@ -317,7 +317,8 @@ nav ul li a.menuitem:hover { .desktop_windows_version.desktop_editors #navitem_setup, .common_all_os.desktop_editors #navitem_setup, .document_editors #navitem_features, -.api_plugins #navitem_plugins { +.api_plugins #navitem_plugins, +.api_macros #navitem_macros { background: #F7F7F7; } .BaseFooter { diff --git a/helpcenter.r7-office.ru/Web/css/help.less b/helpcenter.r7-office.ru/Web/css/help.less index f6117a6b3..4995ed8f3 100644 --- a/helpcenter.r7-office.ru/Web/css/help.less +++ b/helpcenter.r7-office.ru/Web/css/help.less @@ -3746,6 +3746,9 @@ span.param-type { text-decoration: none; color: @textColor; } + p.spoiler_heading { + padding-bottom: 2px; + } } .InnerPage { .main { @@ -4421,4 +4424,13 @@ h1 { } .ONLYOFFICEFeatures { display: none; +} +.spoiler_heading { + color: #808080; + cursor: pointer; + border-bottom: 1px dotted #808080; + display: inline-block; +} +.spoiler_code { + display: none; } \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/images/Help/Guides/big/guide98/macros.png b/helpcenter.r7-office.ru/Web/images/Help/Guides/big/guide98/macros.png new file mode 100644 index 000000000..f6ebe8cdb Binary files /dev/null and b/helpcenter.r7-office.ru/Web/images/Help/Guides/big/guide98/macros.png differ diff --git a/helpcenter.r7-office.ru/Web/images/Help/Guides/small/guide98/macros.png b/helpcenter.r7-office.ru/Web/images/Help/Guides/small/guide98/macros.png new file mode 100644 index 000000000..bf1bfd59d Binary files /dev/null and b/helpcenter.r7-office.ru/Web/images/Help/Guides/small/guide98/macros.png differ diff --git a/helpcenter.r7-office.ru/Web/images/Help/api/plugins/macros.png b/helpcenter.r7-office.ru/Web/images/Help/api/plugins/macros.png new file mode 100644 index 000000000..8d97958fa Binary files /dev/null and b/helpcenter.r7-office.ru/Web/images/Help/api/plugins/macros.png differ diff --git a/helpcenter.r7-office.ru/Web/images/Help/api/plugins/plugin-button.png b/helpcenter.r7-office.ru/Web/images/Help/api/plugins/plugin-button.png new file mode 100644 index 000000000..a4234a983 Binary files /dev/null and b/helpcenter.r7-office.ru/Web/images/Help/api/plugins/plugin-button.png differ diff --git a/helpcenter.r7-office.ru/Web/js/help/scrollanchor.js b/helpcenter.r7-office.ru/Web/js/help/scrollanchor.js index 0f153cd2b..a251fc1f9 100644 --- a/helpcenter.r7-office.ru/Web/js/help/scrollanchor.js +++ b/helpcenter.r7-office.ru/Web/js/help/scrollanchor.js @@ -15,4 +15,7 @@ fixedHeaderOffset(hashID); } }); + $(".spoiler_heading").on("click", function () { + $(this).next(".spoiler_code").slideToggle("fast"); + }); }); \ No newline at end of file diff --git a/helpcenter.r7-office.ru/Web/js/scripts.js b/helpcenter.r7-office.ru/Web/js/scripts.js index 88cbbe217..13defbaa5 100644 --- a/helpcenter.r7-office.ru/Web/js/scripts.js +++ b/helpcenter.r7-office.ru/Web/js/scripts.js @@ -1 +1 @@ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(t,n){"use strict";var v=[],o=t.document,Ft=Object.getPrototypeOf,x=v.slice,Pe=v.concat,ne=v.push,F=v.indexOf,z={},Me=z.toString,X=z.hasOwnProperty,Re=X.toString,zt=Re.call(Object),a={},i=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},E=function(e){return null!=e&&e===e.window},Xt={type:!0,src:!0,noModule:!0};function Ie(e,t,n){var r,i=(t=t||o).createElement("script");if(i.text=e,n)for(r in Xt)n[r]&&(i[r]=n[r]);t.head.appendChild(i).parentNode.removeChild(i)}function k(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?z[Me.call(e)]||"object":typeof e}var on="3.3.1",e=function(t,n){return new e.fn.init(t,n)},Bt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;e.fn=e.prototype={jquery:"3.3.1",constructor:e,length:0,toArray:function(){return x.call(this)},get:function(e){return null==e?x.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(t){var n=e.merge(this.constructor(),t);return n.prevObject=this,n},each:function(t){return e.each(this,t)},map:function(t){return this.pushStack(e.map(this,function(e,n){return t.call(e,n,e)}))},slice:function(){return this.pushStack(x.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var n=this.length,t=+e+(e<0?n:0);return this.pushStack(t>=0&&t0&&t-1 in e)}var y=function(e){var k,a,t,j,K,D,W,Z,q,y,S,v,n,l,c,s,b,L,N,o="sizzle"+1*new Date,f=e.document,h=0,ce=0,ee=U(),te=U(),H=U(),B=function(e,t){return e===t&&(S=!0),0},fe={}.hasOwnProperty,w=[],pe=w.pop,de=w.push,x=w.push,ne=w.slice,T=function(e,t){for(var n=0,r=e.length;n+~]|"+r+")"+r+"*"),ye=new RegExp("="+r+"*([^\\]'\"]*?)"+r+"*\\]","g"),ve=new RegExp(z),xe=new RegExp("^"+C+"$"),P={ID:new RegExp("^#("+C+")"),CLASS:new RegExp("^\\.("+C+")"),TAG:new RegExp("^("+C+"|[*])"),ATTR:new RegExp("^"+re),PSEUDO:new RegExp("^"+z),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+r+"*(even|odd|(([+-]|)(\\d*)n|)"+r+"*(?:([+-]|)"+r+"*(\\d+)|))"+r+"*\\)|)","i"),bool:new RegExp("^(?:"+F+")$","i"),needsContext:new RegExp("^"+r+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+r+"*((?:-\\d)?\\d*)"+r+"*\\)|)(?=[^-]|$)","i")},be=/^(?:input|select|textarea|button)$/i,we=/^h\d$/i,A=/^[^{]+\{\s*\[native \w/,Te=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,X=/[+~]/,g=new RegExp("\\\\([\\da-f]{1,6}"+r+"?|("+r+")|.)","ig"),m=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},ie=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,oe=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ae=function(){v()},Ce=R(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{x.apply(w=ne.call(f.childNodes),f.childNodes),w[f.childNodes.length].nodeType}catch(u){x={apply:w.length?function(e,t){de.apply(e,ne.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function i(e,t,r,i){var l,m,p,d,y,b,w,g=t&&t.ownerDocument,h=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==h&&9!==h&&11!==h)return r;if(!i&&((t?t.ownerDocument||t:f)!==n&&v(t),t=t||n,c)){if(11!==h&&(y=Te.exec(e)))if(l=y[1]){if(9===h){if(!(p=t.getElementById(l)))return r;if(p.id===l)return r.push(p),r}else if(g&&(p=g.getElementById(l))&&N(t,p)&&p.id===l)return r.push(p),r}else{if(y[2])return x.apply(r,t.getElementsByTagName(e)),r;if((l=y[3])&&a.getElementsByClassName&&t.getElementsByClassName)return x.apply(r,t.getElementsByClassName(l)),r}if(a.qsa&&!H[e+" "]&&(!s||!s.test(e))){if(1!==h)g=t,w=e;else if("object"!==t.nodeName.toLowerCase()){(d=t.getAttribute("id"))?d=d.replace(ie,oe):t.setAttribute("id",d=o),m=(b=D(e)).length;while(m--)b[m]="#"+d+" "+M(b[m]);w=b.join(","),g=X.test(e)&&G(t.parentNode)||t}if(w)try{return x.apply(r,g.querySelectorAll(w)),r}catch(u){}finally{d===o&&t.removeAttribute("id")}}}return Z(e.replace(O,"$1"),t,r,i)}function U(){var n=[];function e(r,i){return n.push(r+" ")>t.cacheLength&&delete e[n.shift()],e[r+" "]=i}return e}function p(e){return e[o]=!0,e}function d(e){var r=n.createElement("fieldset");try{return!!e(r)}catch(t){return!1}finally{r.parentNode&&r.parentNode.removeChild(r),r=null}}function V(e,n){var r=e.split("|"),i=r.length;while(i--)t.attrHandle[r[i]]=n}function se(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function Ee(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function ke(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ue(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Ce(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function E(e){return p(function(t){return t=+t,p(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function G(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}a=i.support={},K=i.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},v=i.setDocument=function(e){var p,i,u=e?e.ownerDocument||e:f;return u!==n&&9===u.nodeType&&u.documentElement?(n=u,l=n.documentElement,c=!K(n),f!==n&&(i=n.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",ae,!1):i.attachEvent&&i.attachEvent("onunload",ae)),a.attributes=d(function(e){return e.className="i",!e.getAttribute("className")}),a.getElementsByTagName=d(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),a.getElementsByClassName=A.test(n.getElementsByClassName),a.getById=d(function(e){return l.appendChild(e).id=o,!n.getElementsByName||!n.getElementsByName(o).length}),a.getById?(t.filter.ID=function(e){var t=e.replace(g,m);return function(e){return e.getAttribute("id")===t}},t.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&c){var n=t.getElementById(e);return n?[n]:[]}}):(t.filter.ID=function(e){var t=e.replace(g,m);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},t.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&c){var r,i,o,n=t.getElementById(e);if(n){if((r=n.getAttributeNode("id"))&&r.value===e)return[n];o=t.getElementsByName(e),i=0;while(n=o[i++])if((r=n.getAttributeNode("id"))&&r.value===e)return[n]}return[]}}),t.find.TAG=a.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):a.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"===e){while(n=i[o++])1===n.nodeType&&r.push(n);return r}return i},t.find.CLASS=a.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&c)return t.getElementsByClassName(e)},b=[],s=[],(a.qsa=A.test(n.querySelectorAll))&&(d(function(e){l.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&s.push("[*^$]="+r+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||s.push("\\["+r+"*(?:value|"+F+")"),e.querySelectorAll("[id~="+o+"-]").length||s.push("~="),e.querySelectorAll(":checked").length||s.push(":checked"),e.querySelectorAll("a#"+o+"+*").length||s.push(".#.+[+~]")}),d(function(e){e.innerHTML="";var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&s.push("name"+r+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&s.push(":enabled",":disabled"),l.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&s.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),s.push(",.*:")})),(a.matchesSelector=A.test(L=l.matches||l.webkitMatchesSelector||l.mozMatchesSelector||l.oMatchesSelector||l.msMatchesSelector))&&d(function(e){a.disconnectedMatch=L.call(e,"*"),L.call(e,"[s!='']:x"),b.push("!=",z)}),s=s.length&&new RegExp(s.join("|")),b=b.length&&new RegExp(b.join("|")),p=A.test(l.compareDocumentPosition),N=p||A.test(l.contains)?function(e,t){var r=9===e.nodeType?e.documentElement:e,n=t&&t.parentNode;return e===n||!(!n||1!==n.nodeType||!(r.contains?r.contains(n):e.compareDocumentPosition&&16&e.compareDocumentPosition(n)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},B=p?function(e,t){if(e===t)return S=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!a.sortDetached&&t.compareDocumentPosition(e)===r?e===n||e.ownerDocument===f&&N(f,e)?-1:t===n||t.ownerDocument===f&&N(f,t)?1:y?T(y,e)-T(y,t):0:4&r?-1:1)}:function(e,t){if(e===t)return S=!0,0;var r,i=0,s=e.parentNode,u=t.parentNode,o=[e],a=[t];if(!s||!u)return e===n?-1:t===n?1:s?-1:u?1:y?T(y,e)-T(y,t):0;if(s===u)return se(e,t);r=e;while(r=r.parentNode)o.unshift(r);r=t;while(r=r.parentNode)a.unshift(r);while(o[i]===a[i])i++;return i?se(o[i],a[i]):o[i]===f?-1:a[i]===f?1:0},n):n},i.matches=function(e,t){return i(e,null,null,t)},i.matchesSelector=function(e,t){if((e.ownerDocument||e)!==n&&v(e),t=t.replace(ye,"='$1']"),a.matchesSelector&&c&&!H[t+" "]&&(!b||!b.test(t))&&(!s||!s.test(t)))try{var o=L.call(e,t);if(o||a.disconnectedMatch||e.document&&11!==e.document.nodeType)return o}catch(r){}return i(t,n,null,[e]).length>0},i.contains=function(e,t){return(e.ownerDocument||e)!==n&&v(e),N(e,t)},i.attr=function(e,r){(e.ownerDocument||e)!==n&&v(e);var o=t.attrHandle[r.toLowerCase()],i=o&&fe.call(t.attrHandle,r.toLowerCase())?o(e,r,!c):void 0;return void 0!==i?i:a.attributes||!c?e.getAttribute(r):(i=e.getAttributeNode(r))&&i.specified?i.value:null},i.escape=function(e){return(e+"").replace(ie,oe)},i.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},i.uniqueSort=function(e){var r,i=[],t=0,n=0;if(S=!a.detectDuplicates,y=!a.sortStable&&e.slice(0),e.sort(B),S){while(r=e[n++])r===e[n]&&(t=i.push(n));while(t--)e.splice(i[t],1)}return y=null,e},j=i.getText=function(e){var r,n="",i=0,t=e.nodeType;if(t){if(1===t||9===t||11===t){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=j(e)}else if(3===t||4===t)return e.nodeValue}else while(r=e[i++])n+=j(r);return n},(t=i.selectors={cacheLength:50,createPseudo:p,match:P,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(g,m),e[3]=(e[3]||e[4]||e[5]||"").replace(g,m),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||i.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&i.error(e[0]),e},PSEUDO:function(e){var n,t=!e[6]&&e[2];return P.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":t&&ve.test(t)&&(n=D(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(e[0]=e[0].slice(0,n),e[2]=t.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(g,m).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=ee[e+" "];return t||(t=new RegExp("(^|"+r+")"+e+"("+r+"|$)"))&&ee(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var o=i.attr(r,e);return null==o?"!="===t:!t||(o+="","="===t?o===n:"!="===t?o!==n:"^="===t?n&&0===o.indexOf(n):"*="===t?n&&o.indexOf(n)>-1:"$="===t?n&&o.slice(-n.length)===n:"~="===t?(" "+o.replace(he," ")+" ").indexOf(n)>-1:"|="===t&&(o===n||o.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var u="nth"!==e.slice(0,3),s="last"!==e.slice(-4),a="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var g,x,d,c,p,m,y=u!==s?"nextSibling":"previousSibling",v=t.parentNode,w=a&&t.nodeName.toLowerCase(),b=!l&&!a,f=!1;if(v){if(u){while(y){c=t;while(c=c[y])if(a?c.nodeName.toLowerCase()===w:1===c.nodeType)return!1;m=y="only"===e&&!m&&"nextSibling"}return!0}if(m=[s?v.firstChild:v.lastChild],s&&b){f=(p=(g=(x=(d=(c=v)[o]||(c[o]={}))[c.uniqueID]||(d[c.uniqueID]={}))[e]||[])[0]===h&&g[1])&&g[2],c=p&&v.childNodes[p];while(c=++p&&c&&c[y]||(f=p=0)||m.pop())if(1===c.nodeType&&++f&&c===t){x[e]=[h,p,f];break}}else if(b&&(f=p=(g=(x=(d=(c=t)[o]||(c[o]={}))[c.uniqueID]||(d[c.uniqueID]={}))[e]||[])[0]===h&&g[1]),!1===f)while(c=++p&&c&&c[y]||(f=p=0)||m.pop())if((a?c.nodeName.toLowerCase()===w:1===c.nodeType)&&++f&&(b&&((x=(d=c[o]||(c[o]={}))[c.uniqueID]||(d[c.uniqueID]={}))[e]=[h,f]),c===t))break;return(f-=i)===r||f%r==0&&f/r>=0}}},PSEUDO:function(e,n){var a,r=t.pseudos[e]||t.setFilters[e.toLowerCase()]||i.error("unsupported pseudo: "+e);return r[o]?r(n):r.length>1?(a=[e,e,"",n],t.setFilters.hasOwnProperty(e.toLowerCase())?p(function(e,t){var a,i=r(e,n),o=i.length;while(o--)e[a=T(e,i[o])]=!(t[a]=i[o])}):function(e){return r(e,0,a)}):r}},pseudos:{not:p(function(e){var t=[],r=[],n=W(e.replace(O,"$1"));return n[o]?p(function(e,t,r,i){var a,s=n(e,null,i,[]),o=e.length;while(o--)(a=s[o])&&(e[o]=!(t[o]=a))}):function(e,i,o){return t[0]=e,n(t,null,o,r),t[0]=null,!r.pop()}}),has:p(function(e){return function(t){return i(e,t).length>0}}),contains:p(function(e){return e=e.replace(g,m),function(t){return(t.textContent||t.innerText||j(t)).indexOf(e)>-1}}),lang:p(function(e){return xe.test(e||"")||i.error("unsupported lang: "+e),e=e.replace(g,m).toLowerCase(),function(t){var n;do{if(n=c?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===l},focus:function(e){return e===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ue(!1),disabled:ue(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!t.pseudos.empty(e)},header:function(e){return we.test(e.nodeName)},input:function(e){return be.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:E(function(){return[0]}),last:E(function(e,t){return[t-1]}),eq:E(function(e,t,n){return[n<0?n+t:n]}),even:E(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:E(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Se(e,t,n){for(var r=0,o=t.length;r-1&&(o[f]=!(a[f]=p))}}else l=I(l===a?l.splice(m,l.length):l),i?i(null,a,l,u):x.apply(a,l)})}function J(e){for(var s,i,r,u=e.length,l=t.relative[e[0].type],c=l||t.relative[" "],n=l?1:0,f=R(function(e){return e===s},c,!0),p=R(function(e){return T(s,e)>-1},c,!0),a=[function(e,t,n){var r=!l&&(n||t!==q)||((s=t).nodeType?f(e,t,n):p(e,t,n));return s=null,r}];n1&&Y(a),n>1&&M(e.slice(0,n-1).concat({value:" "===e[n-2].type?"*":""})).replace(O,"$1"),i,n0,a=e.length>0,s=function(s,u,l,f,p){var d,w,y,b=0,g="0",T=s&&[],m=[],C=q,E=s||a&&t.find.TAG("*",p),k=h+=null==C?1:Math.random()||.1,S=E.length;for(p&&(q=u===n||u||p);g!==S&&null!=(d=E[g]);g++){if(a&&d){w=0,u||d.ownerDocument===n||(v(d),l=!c);while(y=e[w++])if(y(d,u||n,l)){f.push(d);break}p&&(h=k)}o&&((d=!y&&d)&&b--,s&&T.push(d))}if(b+=g,o&&g!==b){w=0;while(y=r[w++])y(T,m,u,l);if(s){if(b>0)while(g--)T[g]||m[g]||(m[g]=pe.call(f));m=I(m)}x.apply(f,m),p&&!s&&m.length>0&&b+r.length>1&&i.uniqueSort(f)}return p&&(h=k,q=C),T};return o?p(s):s}return W=i.compile=function(e,t){var r,i=[],a=[],n=H[e+" "];if(!n){t||(t=D(e)),r=t.length;while(r--)(n=J(t[r]))[o]?i.push(n):a.push(n);(n=H(e,De(a,i))).selector=e}return n},Z=i.select=function(e,n,r,i){var s,o,a,f,p,l="function"==typeof e&&e,u=!i&&D(e=l.selector||e);if(r=r||[],1===u.length){if((o=u[0]=u[0].slice(0)).length>2&&"ID"===(a=o[0]).type&&9===n.nodeType&&c&&t.relative[o[1].type]){if(!(n=(t.find.ID(a.matches[0].replace(g,m),n)||[])[0]))return r;l&&(n=n.parentNode),e=e.slice(o.shift().value.length)}s=P.needsContext.test(e)?0:o.length;while(s--){if(a=o[s],t.relative[f=a.type])break;if((p=t.find[f])&&(i=p(a.matches[0].replace(g,m),X.test(o[0].type)&&G(n.parentNode)||n))){if(o.splice(s,1),!(e=i.length&&M(o)))return x.apply(r,i),r;break}}}return(l||W(e,u))(i,n,!c,r,!n||X.test(e)&&G(n.parentNode)||n),r},a.sortStable=o.split("").sort(B).join("")===o,a.detectDuplicates=!!S,v(),a.sortDetached=d(function(e){return 1&e.compareDocumentPosition(n.createElement("fieldset"))}),d(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||V("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),a.attributes&&d(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||V("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),d(function(e){return null==e.getAttribute("disabled")})||V(F,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),i}(t);e.find=y,e.expr=y.selectors,e.expr[":"]=e.expr.pseudos,e.uniqueSort=e.unique=y.uniqueSort,e.text=y.getText,e.isXMLDoc=y.isXML,e.contains=y.contains,e.escapeSelector=y.escape;var C=function(t,n,r){var i=[],o=void 0!==r;while((t=t[n])&&9!==t.nodeType)if(1===t.nodeType){if(o&&e(t).is(r))break;i.push(t)}return i},He=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},Oe=e.expr.match.needsContext;function d(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var Le=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function ie(t,n,r){return i(n)?e.grep(t,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?e.grep(t,function(e){return e===n!==r}):"string"!=typeof n?e.grep(t,function(e){return F.call(n,e)>-1!==r}):e.filter(n,t,r)}e.filter=function(t,n,r){var i=n[0];return r&&(t=":not("+t+")"),1===n.length&&1===i.nodeType?e.find.matchesSelector(i,t)?[i]:[]:e.find.matches(t,e.grep(n,function(e){return 1===e.nodeType}))},e.fn.extend({find:function(t){var n,r,i=this.length,o=this;if("string"!=typeof t)return this.pushStack(e(t).filter(function(){for(n=0;n1?e.uniqueSort(r):r},filter:function(e){return this.pushStack(ie(this,e||[],!1))},not:function(e){return this.pushStack(ie(this,e||[],!0))},is:function(t){return!!ie(this,"string"==typeof t&&Oe.test(t)?e(t):t||[],!1).length}});var qe,Wt=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(e.fn.init=function(t,n,r){var a,s;if(!t)return this;if(r=r||qe,"string"==typeof t){if(!(a="<"===t[0]&&">"===t[t.length-1]&&t.length>=3?[null,t,null]:Wt.exec(t))||!a[1]&&n)return!n||n.jquery?(n||r).find(t):this.constructor(n).find(t);if(a[1]){if(n=n instanceof e?n[0]:n,e.merge(this,e.parseHTML(a[1],n&&n.nodeType?n.ownerDocument||n:o,!0)),Le.test(a[1])&&e.isPlainObject(n))for(a in n)i(this[a])?this[a](n[a]):this.attr(a,n[a]);return this}return(s=o.getElementById(a[2]))&&(this[0]=s,this.length=1),this}return t.nodeType?(this[0]=t,this.length=1,this):i(t)?void 0!==r.ready?r.ready(t):t(e):e.makeArray(t,this)}).prototype=e.fn,qe=e(o);var Rt=/^(?:parents|prev(?:Until|All))/,It={children:!0,contents:!0,next:!0,prev:!0};e.fn.extend({has:function(t){var n=e(t,this),r=n.length;return this.filter(function(){for(var t=0;t-1:1===r.nodeType&&e.find.matchesSelector(r,t))){i.push(r);break}return this.pushStack(i.length>1?e.uniqueSort(i):i)},index:function(t){return t?"string"==typeof t?F.call(e(t),this[0]):F.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,n){return this.pushStack(e.uniqueSort(e.merge(this.get(),e(t,n))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function We(e,t){while((e=e[t])&&1!==e.nodeType);return e}e.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return C(e,"parentNode")},parentsUntil:function(e,t,n){return C(e,"parentNode",n)},next:function(e){return We(e,"nextSibling")},prev:function(e){return We(e,"previousSibling")},nextAll:function(e){return C(e,"nextSibling")},prevAll:function(e){return C(e,"previousSibling")},nextUntil:function(e,t,n){return C(e,"nextSibling",n)},prevUntil:function(e,t,n){return C(e,"previousSibling",n)},siblings:function(e){return He((e.parentNode||{}).firstChild,e)},children:function(e){return He(e.firstChild)},contents:function(t){return d(t,"iframe")?t.contentDocument:(d(t,"template")&&(t=t.content||t),e.merge([],t.childNodes))}},function(t,n){e.fn[t]=function(r,i){var o=e.map(this,n,r);return"Until"!==t.slice(-5)&&(i=r),i&&"string"==typeof i&&(o=e.filter(i,o)),this.length>1&&(It[t]||e.uniqueSort(o),Rt.test(t)&&o.reverse()),this.pushStack(o)}});var p=/[^\x20\t\r\n\f]+/g;function Ut(t){var n={};return e.each(t.match(p)||[],function(e,t){n[t]=!0}),n}e.Callbacks=function(t){t="string"==typeof t?Ut(t):e.extend({},t);var s,r,c,o,n=[],u=[],a=-1,f=function(){for(o=o||t.once,c=s=!0;u.length;a=-1){r=u.shift();while(++a-1)n.splice(i,1),i<=a&&a--}),this},has:function(t){return t?e.inArray(t,n)>-1:n.length>0},empty:function(){return n&&(n=[]),this},disable:function(){return o=u=[],n=r="",this},disabled:function(){return!n},lock:function(){return o=u=[],r||s||(n=r=""),this},locked:function(){return!!o},fireWith:function(e,t){return o||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),s||f()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!c}};return l};function S(e){return e}function U(e){throw e}function Be(e,t,n,r){var a;try{e&&i(a=e.promise)?a.call(e).done(t).fail(n):e&&i(a=e.then)?a.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(o){n.apply(void 0,[o])}}e.extend({Deferred:function(n){var o=[["notify","progress",e.Callbacks("memory"),e.Callbacks("memory"),2],["resolve","done",e.Callbacks("once memory"),e.Callbacks("once memory"),0,"resolved"],["reject","fail",e.Callbacks("once memory"),e.Callbacks("once memory"),1,"rejected"]],s="pending",a={state:function(){return s},always:function(){return r.done(arguments).fail(arguments),this},catch:function(e){return a.then(null,e)},pipe:function(){var t=arguments;return e.Deferred(function(n){e.each(o,function(e,o){var a=i(t[o[4]])&&t[o[4]];r[o[1]](function(){var e=a&&a.apply(this,arguments);e&&i(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[o[0]+"With"](this,a?[e]:arguments)})}),t=null}).promise()},then:function(n,r,a){var s=0;function u(n,r,o,a){return function(){var l=this,c=arguments,p=function(){var e,t;if(!(n=s&&(o!==U&&(l=void 0,c=[t]),r.rejectWith(l,c))}};n?f():(e.Deferred.getStackHook&&(f.stackTrace=e.Deferred.getStackHook()),t.setTimeout(f))}}return e.Deferred(function(e){o[0][3].add(u(0,e,i(a)?a:S,e.notifyWith)),o[1][3].add(u(0,e,i(n)?n:S)),o[2][3].add(u(0,e,i(r)?r:U))}).promise()},promise:function(t){return null!=t?e.extend(t,a):a}},r={};return e.each(o,function(e,t){var n=t[2],i=t[5];a[t[1]]=n.add,i&&n.add(function(){s=i},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),r[t[0]]=function(){return r[t[0]+"With"](this===r?void 0:this,arguments),this},r[t[0]+"With"]=n.fireWith}),a.promise(r),n&&n.call(r,r),r},when:function(t){var a=arguments.length,n=a,s=Array(n),o=x.call(arguments),r=e.Deferred(),u=function(e){return function(t){s[e]=this,o[e]=arguments.length>1?x.call(arguments):t,--a||r.resolveWith(s,o)}};if(a<=1&&(Be(t,r.done(u(n)).resolve,r.reject,!a),"pending"===r.state()||i(o[n]&&o[n].then)))return r.then();while(n--)Be(o[n],u(n),r.reject);return r.promise()}});var Mt=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;e.Deferred.exceptionHook=function(e,n){t.console&&t.console.warn&&e&&Mt.test(e.name)&&t.console.warn("jQuery.Deferred exception: "+e.message,e.stack,n)},e.readyException=function(e){t.setTimeout(function(){throw e})};var te=e.Deferred();e.fn.ready=function(t){return te.then(t)["catch"](function(t){e.readyException(t)}),this},e.extend({isReady:!1,readyWait:1,ready:function(t){(!0===t?--e.readyWait:e.isReady)||(e.isReady=!0,!0!==t&&--e.readyWait>0||te.resolveWith(o,[e]))}}),e.ready.then=te.then;function V(){o.removeEventListener("DOMContentLoaded",V),t.removeEventListener("load",V),e.ready()}"complete"===o.readyState||"loading"!==o.readyState&&!o.documentElement.doScroll?t.setTimeout(e.ready):(o.addEventListener("DOMContentLoaded",V),t.addEventListener("load",V));var m=function(t,n,r,o,a,u,l){var s=0,f=t.length,c=null==r;if("object"===k(r)){a=!0;for(s in r)m(t,n,s,r[s],!0,u,l)}else if(void 0!==o&&(a=!0,i(o)||(l=!0),c&&(l?(n.call(t,o),n=null):(c=n,n=function(t,n,r){return c.call(e(t),r)})),n))for(;s1,null,!0)},removeData:function(e){return this.each(function(){s.remove(this,e)})}}),e.extend({queue:function(t,n,i){var o;if(t)return n=(n||"fx")+"queue",o=r.get(t,n),i&&(!o||Array.isArray(i)?o=r.access(t,n,e.makeArray(i)):o.push(i)),o||[]},dequeue:function(t,n){n=n||"fx";var r=e.queue(t,n),a=r.length,i=r.shift(),o=e._queueHooks(t,n),s=function(){e.dequeue(t,n)};"inprogress"===i&&(i=r.shift(),a--),i&&("fx"===n&&r.unshift("inprogress"),delete o.stop,i.call(t,s,o)),!a&&o&&o.empty.fire()},_queueHooks:function(t,n){var i=n+"queueHooks";return r.get(t,i)||r.access(t,i,{empty:e.Callbacks("once memory").add(function(){r.remove(t,[n+"queue",i])})})}}),e.fn.extend({queue:function(t,n){var r=2;return"string"!=typeof t&&(n=t,t="fx",r--),arguments.length\x20\t\r\n\f]+)/i,De=/^$|^module$|\/(?:java|ecma)script/i,c={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};c.optgroup=c.option,c.tbody=c.tfoot=c.colgroup=c.caption=c.thead,c.th=c.td;function u(t,n){var r;return r="undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(n||"*"):"undefined"!=typeof t.querySelectorAll?t.querySelectorAll(n||"*"):[],void 0===n||n&&d(t,n)?e.merge([t],r):r}function oe(e,t){for(var n=0,i=e.length;n-1)a&&a.push(o);else if(m=e.contains(o.ownerDocument,o),s=u(l.appendChild(o),"script"),m&&oe(s),r){d=0;while(o=s[d++])De.test(o.type||"")&&r.push(o)}return l}!function(){var e=o.createDocumentFragment().appendChild(o.createElement("div")),t=o.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),a.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",a.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var I=o.documentElement,At=/^key/,jt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function G(){return!0}function N(){return!1}function Ue(){try{return o.activeElement}catch(e){}}function ae(t,n,r,i,o,a){var s,u;if("object"==typeof n){"string"!=typeof r&&(i=i||r,r=void 0);for(u in n)ae(t,u,r,i,n[u],a);return t}if(null==i&&null==o?(o=r,i=r=void 0):null==o&&("string"==typeof r?(o=i,i=void 0):(o=i,i=r,r=void 0)),!1===o)o=N;else if(!o)return t;return 1===a&&(s=o,(o=function(t){return e().off(t),s.apply(this,arguments)}).guid=s.guid||(s.guid=e.guid++)),t.each(function(){e.event.add(this,n,o,i,r)})}e.event={global:{},add:function(t,n,i,o,a){var g,d,v,h,m,l,u,c,s,y,x,f=r.get(t);if(f){i.handler&&(i=(g=i).handler,a=g.selector),a&&e.find.matchesSelector(I,a),i.guid||(i.guid=e.guid++),(h=f.events)||(h=f.events={}),(d=f.handle)||(d=f.handle=function(n){return"undefined"!=typeof e&&e.event.triggered!==n.type?e.event.dispatch.apply(t,arguments):void 0}),m=(n=(n||"").match(p)||[""]).length;while(m--)s=x=(v=Ee.exec(n[m])||[])[1],y=(v[2]||"").split(".").sort(),s&&(u=e.event.special[s]||{},s=(a?u.delegateType:u.bindType)||s,u=e.event.special[s]||{},l=e.extend({type:s,origType:x,data:o,handler:i,guid:i.guid,selector:a,needsContext:a&&e.expr.match.needsContext.test(a),namespace:y.join(".")},g),(c=h[s])||((c=h[s]=[]).delegateCount=0,u.setup&&!1!==u.setup.call(t,o,y,d)||t.addEventListener&&t.addEventListener(s,d)),u.add&&(u.add.call(t,l),l.handler.guid||(l.handler.guid=i.guid)),a?c.splice(c.delegateCount++,0,l):c.push(l),e.event.global[s]=!0)}},remove:function(t,n,i,o,a){var h,v,l,d,g,u,c,f,s,y,x,m=r.hasData(t)&&r.get(t);if(m&&(d=m.events)){g=(n=(n||"").match(p)||[""]).length;while(g--)if(l=Ee.exec(n[g])||[],s=x=l[1],y=(l[2]||"").split(".").sort(),s){c=e.event.special[s]||{},f=d[s=(o?c.delegateType:c.bindType)||s]||[],l=l[2]&&new RegExp("(^|\\.)"+y.join("\\.(?:.*\\.|)")+"(\\.|$)"),v=h=f.length;while(h--)u=f[h],!a&&x!==u.origType||i&&i.guid!==u.guid||l&&!l.test(u.namespace)||o&&o!==u.selector&&("**"!==o||!u.selector)||(f.splice(h,1),u.selector&&f.delegateCount--,c.remove&&c.remove.call(t,u));v&&!f.length&&(c.teardown&&!1!==c.teardown.call(t,y,m.handle)||e.removeEvent(t,s,m.handle),delete d[s])}else for(s in d)e.event.remove(t,s+n[g],i,o,!0);e.isEmptyObject(d)&&r.remove(t,"handle events")}},dispatch:function(t){var n=e.event.fix(t),i,l,c,a,o,f,u=new Array(arguments.length),p=(r.get(this,"events")||{})[n.type]||[],s=e.event.special[n.type]||{};for(u[0]=n,i=1;i=1))for(;r!==this;r=r.parentNode||this)if(1===r.nodeType&&("click"!==t.type||!0!==r.disabled)){for(a=[],s={},o=0;o-1:e.find(i,this,null,[r]).length),s[i]&&a.push(l);a.length&&c.push({elem:r,handlers:a})}return r=this,u\x20\t\r\n\f]*)[^>]*)\/>/gi,St=/\s*$/g;function Ve(t,n){return d(t,"table")&&d(11!==n.nodeType?n:n.firstChild,"tr")?e(t).children("tbody")[0]||t:t}function Qt(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Jt(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Ge(t,n){var i,c,o,u,l,f,p,a;if(1===n.nodeType){if(r.hasData(t)&&(u=r.access(t),l=r.set(n,u),a=u.events)){delete l.handle,l.events={};for(o in a)for(i=0,c=a[o].length;i1&&"string"==typeof g&&!a.checkClone&&Dt.test(g))return t.each(function(e){var r=t.eq(e);v&&(n[0]=g.call(this,e,r.html())),A(r,n,o,s)});if(h&&(f=Xe(n,t[0].ownerDocument,!1,t,s),m=f.firstChild,1===f.childNodes.length&&(f=m),m||s)){for(d=(p=e.map(u(f,"script"),Qt)).length;c")},clone:function(t,n,r){var i,c,s,o,l=t.cloneNode(!0),f=e.contains(t.ownerDocument,t);if(!(a.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||e.isXMLDoc(t)))for(o=u(l),i=0,c=(s=u(t)).length;i0&&oe(o,!f&&u(t,"script")),l},cleanData:function(t){for(var i,n,o,u=e.event.special,a=0;void 0!==(n=t[a]);a++)if(B(n)){if(i=n[r.expando]){if(i.events)for(o in i.events)u[o]?e.event.remove(n,o):e.removeEvent(n,o,i.handle);n[r.expando]=void 0}n[s.expando]&&(n[s.expando]=void 0)}}}),e.fn.extend({detach:function(e){return Ye(this,e,!0)},remove:function(e){return Ye(this,e)},text:function(t){return m(this,function(t){return void 0===t?e.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)})},null,t,arguments.length)},append:function(){return A(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Ve(this,e).appendChild(e)})},prepend:function(){return A(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ve(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return A(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return A(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var t,n=0;null!=(t=this[n]);n++)1===t.nodeType&&(e.cleanData(u(t,!1)),t.textContent="");return this},clone:function(t,n){return t=null!=t&&t,n=null==n?t:n,this.map(function(){return e.clone(this,t,n)})},html:function(t){return m(this,function(t){var r=this[0]||{},i=0,o=this.length;if(void 0===t&&1===r.nodeType)return r.innerHTML;if("string"==typeof t&&!St.test(t)&&!c[(Se.exec(t)||["",""])[1].toLowerCase()]){t=e.htmlPrefilter(t);try{for(;i=0&&(s+=Math.max(0,Math.ceil(t["offset"+n[0].toUpperCase()+n.slice(1)]-u-s-l-.5))),s}function Ze(t,n,r){var o=R(t),i=P(t,n,o),u="border-box"===e.css(t,"boxSizing",!1,o),s=u;if(ee.test(i)){if(!r)return i;i="auto"}return s=s&&(a.boxSizingReliable()||i===t.style[n]),("auto"===i||!parseFloat(i)&&"inline"===e.css(t,"display",!1,o))&&(i=t["offset"+n[0].toUpperCase()+n.slice(1)],s=!0),(i=parseFloat(i)||0)+se(t,n,r||(u?"border":"content"),s,o,i)+"px"}e.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=P(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(t,n,r,i){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var o,l,s,c=h(n),f=be.test(n),u=t.style;if(f||(n=Je(c)),s=e.cssHooks[n]||e.cssHooks[c],void 0===r)return s&&"get"in s&&void 0!==(o=s.get(t,!1,i))?o:u[n];"string"==(l=typeof r)&&(o=H.exec(r))&&o[1]&&(r=ze(t,n,o),l="number"),null!=r&&r===r&&("number"===l&&(r+=o&&o[3]||(e.cssNumber[c]?"":"px")),a.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&void 0===(r=s.set(t,r,i))||(f?u.setProperty(n,r):u[n]=r))}},css:function(t,n,r,i){var o,a,s,u=h(n);return be.test(n)||(n=Je(u)),(s=e.cssHooks[n]||e.cssHooks[u])&&"get"in s&&(o=s.get(t,!0,r)),void 0===o&&(o=P(t,n,i)),"normal"===o&&n in we&&(o=we[n]),""===r||r?(a=parseFloat(o),!0===r||isFinite(a)?a||0:o):o}}),e.each(["height","width"],function(t,n){e.cssHooks[n]={get:function(t,r,i){if(r)return!Tt.test(e.css(t,"display"))||t.getClientRects().length&&t.getBoundingClientRect().width?Ze(t,n,i):je(t,Ct,function(){return Ze(t,n,i)})},set:function(t,r,i){var u,o=R(t),l="border-box"===e.css(t,"boxSizing",!1,o),s=i&&se(t,n,i,l,o);return l&&a.scrollboxSize()===o.position&&(s-=Math.ceil(t["offset"+n[0].toUpperCase()+n.slice(1)]-parseFloat(o[n])-se(t,n,"border",!1,o)-.5)),s&&(u=H.exec(r))&&"px"!==(u[3]||"px")&&(t.style[n]=r,r=e.css(t,n)),Ke(t,r,s)}}}),e.cssHooks.marginLeft=Qe(a.reliableMarginLeft,function(e,t){if(t)return(parseFloat(P(e,"marginLeft"))||e.getBoundingClientRect().left-je(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),e.each({margin:"",padding:"",border:"Width"},function(t,n){e.cssHooks[t+n]={expand:function(e){for(var r=0,o={},i="string"==typeof e?e.split(" "):[e];r<4;r++)o[t+g[r]+n]=i[r]||i[r-2]||i[0];return o}},"margin"!==t&&(e.cssHooks[t+n].set=Ke)}),e.fn.extend({css:function(t,n){return m(this,function(t,n,r){var o,a,s={},i=0;if(Array.isArray(n)){for(o=R(t),a=n.length;i1)}});function l(e,t,n,r,i){return new l.prototype.init(e,t,n,r,i)}e.Tween=l,l.prototype={constructor:l,init:function(t,n,r,i,o,a){this.elem=t,this.prop=r,this.easing=o||e.easing._default,this.options=n,this.start=this.now=this.cur(),this.end=i,this.unit=a||(e.cssNumber[r]?"":"px")},cur:function(){var e=l.propHooks[this.prop];return e&&e.get?e.get(this):l.propHooks._default.get(this)},run:function(t){var n,r=l.propHooks[this.prop];return this.options.duration?this.pos=n=e.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=n=t,this.now=(this.end-this.start)*n+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),r&&r.set?r.set(this):l.propHooks._default.set(this),this}},l.prototype.init.prototype=l.prototype,l.propHooks={_default:{get:function(t){var n;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(n=e.css(t.elem,t.prop,""))&&"auto"!==n?n:0},set:function(t){e.fx.step[t.prop]?e.fx.step[t.prop](t):1!==t.elem.nodeType||null==t.elem.style[e.cssProps[t.prop]]&&!e.cssHooks[t.prop]?t.elem[t.prop]=t.now:e.style(t.elem,t.prop,t.now+t.unit)}}},l.propHooks.scrollTop=l.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},e.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},e.fx=l.prototype.init,e.fx.step={};var T,M,bt=/^(?:toggle|show|hide)$/,wt=/queueHooks$/;function ue(){M&&(!1===o.hidden&&t.requestAnimationFrame?t.requestAnimationFrame(ue):t.setTimeout(ue,e.fx.interval),e.fx.tick())}function et(){return t.setTimeout(function(){T=void 0}),T=Date.now()}function Y(e,t){var i,r=0,n={height:e};for(t=t?1:0;r<4;r+=2-t)n["margin"+(i=g[r])]=n["padding"+i]=e;return t&&(n.opacity=n.width=e),n}function tt(e,t,n){for(var i,o=(f.tweeners[t]||[]).concat(f.tweeners["*"]),r=0,a=o.length;r1)},removeAttr:function(t){return this.each(function(){e.removeAttr(this,t)})}}),e.extend({attr:function(t,n,r){var o,i,a=t.nodeType;if(3!==a&&8!==a&&2!==a)return"undefined"==typeof t.getAttribute?e.prop(t,n,r):(1===a&&e.isXMLDoc(t)||(i=e.attrHooks[n.toLowerCase()]||(e.expr.match.bool.test(n)?xe:void 0)),void 0!==r?null===r?void e.removeAttr(t,n):i&&"set"in i&&void 0!==(o=i.set(t,r,n))?o:(t.setAttribute(n,r+""),r):i&&"get"in i&&null!==(o=i.get(t,n))?o:null==(o=e.find.attr(t,n))?void 0:o)},attrHooks:{type:{set:function(e,t){if(!a.radioValue&&"radio"===t&&d(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,i=0,r=t&&t.match(p);if(r&&1===e.nodeType)while(n=r[i++])e.removeAttribute(n)}}),xe={set:function(t,n,r){return!1===n?e.removeAttr(t,r):t.setAttribute(r,r),r}},e.each(e.expr.match.bool.source.match(/\w+/g),function(t,n){var r=L[n]||e.find.attr;L[n]=function(e,t,n){var o,a,i=t.toLowerCase();return n||(a=L[i],L[i]=o,o=null!=r(e,t,n)?i:null,L[i]=a),o}});var vt=/^(?:input|select|textarea|button)$/i,xt=/^(?:a|area)$/i;e.fn.extend({prop:function(t,n){return m(this,e.prop,t,n,arguments.length>1)},removeProp:function(t){return this.each(function(){delete this[e.propFix[t]||t]})}}),e.extend({prop:function(t,n,r){var o,i,a=t.nodeType;if(3!==a&&8!==a&&2!==a)return 1===a&&e.isXMLDoc(t)||(n=e.propFix[n]||n,i=e.propHooks[n]),void 0!==r?i&&"set"in i&&void 0!==(o=i.set(t,r,n))?o:t[n]=r:i&&"get"in i&&null!==(o=i.get(t,n))?o:t[n]},propHooks:{tabIndex:{get:function(t){var n=e.find.attr(t,"tabindex");return n?parseInt(n,10):vt.test(t.nodeName)||xt.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),a.optSelected||(e.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),e.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){e.propFix[this.toLowerCase()]=this});function b(e){return(e.match(p)||[]).join(" ")}function w(e){return e.getAttribute&&e.getAttribute("class")||""}function le(e){return Array.isArray(e)?e:"string"==typeof e?e.match(p)||[]:[]}e.fn.extend({addClass:function(t){var s,n,r,o,a,u,l,c=0;if(i(t))return this.each(function(n){e(this).addClass(t.call(this,n,w(this)))});if((s=le(t)).length)while(n=this[c++])if(o=w(n),r=1===n.nodeType&&" "+b(o)+" "){u=0;while(a=s[u++])r.indexOf(" "+a+" ")<0&&(r+=a+" ");o!==(l=b(r))&&n.setAttribute("class",l)}return this},removeClass:function(t){var s,r,n,o,a,u,l,c=0;if(i(t))return this.each(function(n){e(this).removeClass(t.call(this,n,w(this)))});if(!arguments.length)return this.attr("class","");if((s=le(t)).length)while(r=this[c++])if(o=w(r),n=1===r.nodeType&&" "+b(o)+" "){u=0;while(a=s[u++])while(n.indexOf(" "+a+" ")>-1)n=n.replace(" "+a+" "," ");o!==(l=b(n))&&r.setAttribute("class",l)}return this},toggleClass:function(t,n){var o=typeof t,a="string"===o||Array.isArray(t);return"boolean"==typeof n&&a?n?this.addClass(t):this.removeClass(t):i(t)?this.each(function(r){e(this).toggleClass(t.call(this,r,w(this),n),n)}):this.each(function(){var n,s,i,u;if(a){s=0,i=e(this),u=le(t);while(n=u[s++])i.hasClass(n)?i.removeClass(n):i.addClass(n)}else void 0!==t&&"boolean"!==o||((n=w(this))&&r.set(this,"__className__",n),this.setAttribute&&this.setAttribute("class",n||!1===t?"":r.get(this,"__className__")||""))})},hasClass:function(e){var n,t,r=0;n=" "+e+" ";while(t=this[r++])if(1===t.nodeType&&(" "+b(w(t))+" ").indexOf(n)>-1)return!0;return!1}});var yt=/\r/g;e.fn.extend({val:function(t){var n,r,a,o=this[0];{if(arguments.length)return a=i(t),this.each(function(r){var i;1===this.nodeType&&(null==(i=a?t.call(this,r,e(this).val()):t)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=e.map(i,function(e){return null==e?"":e+""})),(n=e.valHooks[this.type]||e.valHooks[this.nodeName.toLowerCase()])&&"set"in n&&void 0!==n.set(this,i,"value")||(this.value=i))});if(o)return(n=e.valHooks[o.type]||e.valHooks[o.nodeName.toLowerCase()])&&"get"in n&&void 0!==(r=n.get(o,"value"))?r:"string"==typeof(r=o.value)?r.replace(yt,""):null==r?"":r}}}),e.extend({valHooks:{option:{get:function(t){var n=e.find.attr(t,"value");return null!=n?n:b(e.text(t))}},select:{get:function(t){var a,n,r,s=t.options,i=t.selectedIndex,o="select-one"===t.type,u=o?null:[],l=o?i+1:s.length;for(r=i<0?l:o?i:0;r-1)&&(r=!0);return r||(t.selectedIndex=-1),a}}}}),e.each(["radio","checkbox"],function(){e.valHooks[this]={set:function(t,n){if(Array.isArray(n))return t.checked=e.inArray(e(t).val(),n)>-1}},a.checkOn||(e.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),a.focusin="onfocusin"in t;var ye=/^(?:focusinfocus|focusoutblur)$/,ve=function(e){e.stopPropagation()};e.extend(e.event,{trigger:function(n,a,s,u){var v,c,f,x,d,h,p,g,m=[s||o],l=X.call(n,"type")?n.type:n,y=X.call(n,"namespace")?n.namespace.split("."):[];if(c=g=f=s=s||o,3!==s.nodeType&&8!==s.nodeType&&!ye.test(l+e.event.triggered)&&(l.indexOf(".")>-1&&(l=(y=l.split(".")).shift(),y.sort()),d=l.indexOf(":")<0&&"on"+l,n=n[e.expando]?n:new e.Event(l,"object"==typeof n&&n),n.isTrigger=u?2:3,n.namespace=y.join("."),n.rnamespace=n.namespace?new RegExp("(^|\\.)"+y.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=void 0,n.target||(n.target=s),a=null==a?[n]:e.makeArray(a,[n]),p=e.event.special[l]||{},u||!p.trigger||!1!==p.trigger.apply(s,a))){if(!u&&!p.noBubble&&!E(s)){for(x=p.delegateType||l,ye.test(x+l)||(c=c.parentNode);c;c=c.parentNode)m.push(c),f=c;f===(s.ownerDocument||o)&&m.push(f.defaultView||f.parentWindow||t)}v=0;while((c=m[v++])&&!n.isPropagationStopped())g=c,n.type=v>1?x:p.bindType||l,(h=(r.get(c,"events")||{})[n.type]&&r.get(c,"handle"))&&h.apply(c,a),(h=d&&c[d])&&h.apply&&B(c)&&(n.result=h.apply(c,a),!1===n.result&&n.preventDefault());return n.type=l,u||n.isDefaultPrevented()||p._default&&!1!==p._default.apply(m.pop(),a)||!B(s)||d&&i(s[l])&&!E(s)&&((f=s[d])&&(s[d]=null),e.event.triggered=l,n.isPropagationStopped()&&g.addEventListener(l,ve),s[l](),n.isPropagationStopped()&&g.removeEventListener(l,ve),e.event.triggered=void 0,f&&(s[d]=f)),n.result}},simulate:function(t,n,r){var i=e.extend(new e.Event,r,{type:t,isSimulated:!0});e.event.trigger(i,null,n)}}),e.fn.extend({trigger:function(t,n){return this.each(function(){e.event.trigger(t,n,this)})},triggerHandler:function(t,n){var r=this[0];if(r)return e.event.trigger(t,n,r,!0)}}),a.focusin||e.each({focus:"focusin",blur:"focusout"},function(t,n){var i=function(t){e.event.simulate(n,t.target,e.event.fix(t))};e.event.special[n]={setup:function(){var e=this.ownerDocument||this,o=r.access(e,n);o||e.addEventListener(t,i,!0),r.access(e,n,(o||0)+1)},teardown:function(){var e=this.ownerDocument||this,o=r.access(e,n)-1;o?r.access(e,n,o):(e.removeEventListener(t,i,!0),r.remove(e,n))}}});var q=t.location,me=Date.now(),Z=/\?/;e.parseXML=function(n){var i;if(!n||"string"!=typeof n)return null;try{i=(new t.DOMParser).parseFromString(n,"text/xml")}catch(r){i=void 0}return i&&!i.getElementsByTagName("parsererror").length||e.error("Invalid XML: "+n),i};var ht=/\[\]$/,ge=/\r?\n/g,gt=/^(?:submit|button|image|reset|file)$/i,mt=/^(?:input|select|textarea|keygen)/i;function ce(t,n,r,i){var o;if(Array.isArray(n))e.each(n,function(e,n){r||ht.test(t)?i(t,n):ce(t+"["+("object"==typeof n&&null!=n?e:"")+"]",n,r,i)});else if(r||"object"!==k(n))i(t,n);else for(o in n)ce(t+"["+o+"]",n[o],r,i)}e.param=function(t,n){var r,o=[],a=function(e,t){var n=i(t)?t():t;o[o.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(t)||t.jquery&&!e.isPlainObject(t))e.each(t,function(){a(this.name,this.value)});else for(r in t)ce(r,t[r],n,a);return o.join("&")},e.fn.extend({serialize:function(){return e.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=e.prop(this,"elements");return t?e.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!e(this).is(":disabled")&&mt.test(this.nodeName)&&!gt.test(t)&&(this.checked||!ke.test(t))}).map(function(t,n){var r=e(this).val();return null==r?null:Array.isArray(r)?e.map(r,function(e){return{name:n.name,value:e.replace(ge,"\r\n")}}):{name:n.name,value:r.replace(ge,"\r\n")}}).get()}});var st=/%20/g,ut=/#.*$/,lt=/([?&])_=[^&]*/,ct=/^(.*?):[ \t]*([^\r\n]*)$/gm,ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,pt=/^(?:GET|HEAD)$/,dt=/^\/\//,de={},J={},he="*/".concat("*"),K=o.createElement("a");K.href=q.href;function nt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,o=0,a=t.toLowerCase().match(p)||[];if(i(n))while(r=a[o++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function rt(t,n,r,i){var o={},s=t===J;function a(u){var l;return o[u]=!0,e.each(t[u]||[],function(e,t){var u=t(n,r,i);return"string"!=typeof u||s||o[u]?s?!(l=u):void 0:(n.dataTypes.unshift(u),a(u),!1)}),l}return a(n.dataTypes[0])||!o["*"]&&a("*")}function fe(t,n){var r,i,o=e.ajaxSettings.flatOptions||{};for(r in n)void 0!==n[r]&&((o[r]?t:i||(i={}))[r]=n[r]);return i&&e.extend(!0,t,i),t}function nn(e,t,n){var a,i,o,s,u=e.contents,r=e.dataTypes;while("*"===r[0])r.shift(),void 0===a&&(a=e.mimeType||t.getResponseHeader("Content-Type"));if(a)for(i in u)if(u[i]&&u[i].test(a)){r.unshift(i);break}if(r[0]in n)o=r[0];else{for(i in n){if(!r[0]||e.converters[i+" "+r[0]]){o=i;break}s||(s=i)}o=o||s}if(o)return o!==r[0]&&r.unshift(o),n[o]}function rn(e,t,n,r){var c,o,a,l,s,u={},f=e.dataTypes.slice();if(f[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];o=f.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!s&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),s=o,o=f.shift())if("*"===o)o=s;else if("*"!==s&&s!==o){if(!(a=u[s+" "+o]||u["* "+o]))for(c in u)if((l=c.split(" "))[1]===o&&(a=u[s+" "+l[0]]||u["* "+l[0]])){!0===a?a=u[c]:!0!==u[c]&&(o=l[0],f.unshift(l[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(i){return{state:"parsererror",error:a?i:"No conversion from "+s+" to "+o}}}return{state:"success",data:t}}e.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:q.href,type:"GET",isLocal:ft.test(q.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":he,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":e.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,n){return n?fe(fe(t,e.ajaxSettings),n):fe(e.ajaxSettings,t)},ajaxPrefilter:nt(de),ajaxTransport:nt(J),ajax:function(n,r){"object"==typeof n&&(r=n,n=void 0),r=r||{};var d,u,x,h,b,f,l,g,w,m,i=e.ajaxSetup({},r),c=i.context||i,T=i.context&&(c.nodeType||c.jquery)?e(c):e.event,C=e.Deferred(),E=e.Callbacks("once memory"),y=i.statusCode||{},k={},S={},D="canceled",a={readyState:0,getResponseHeader:function(e){var t;if(l){if(!h){h={};while(t=ct.exec(x))h[t[1].toLowerCase()]=t[2]}t=h[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return l?x:null},setRequestHeader:function(e,t){return null==l&&(e=S[e.toLowerCase()]=S[e.toLowerCase()]||e,k[e]=t),this},overrideMimeType:function(e){return null==l&&(i.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)a.always(e[a.status]);else for(t in e)y[t]=[y[t],e[t]];return this},abort:function(e){var t=e||D;return d&&d.abort(t),v(0,t),this}};if(C.promise(a),i.url=((n||i.url||q.href)+"").replace(dt,q.protocol+"//"),i.type=r.method||r.type||i.method||i.type,i.dataTypes=(i.dataType||"*").toLowerCase().match(p)||[""],null==i.crossDomain){f=o.createElement("a");try{f.href=i.url,f.href=f.href,i.crossDomain=K.protocol+"//"+K.host!=f.protocol+"//"+f.host}catch(s){i.crossDomain=!0}}if(i.data&&i.processData&&"string"!=typeof i.data&&(i.data=e.param(i.data,i.traditional)),rt(de,i,r,a),l)return a;(g=e.event&&i.global)&&0==e.active++&&e.event.trigger("ajaxStart"),i.type=i.type.toUpperCase(),i.hasContent=!pt.test(i.type),u=i.url.replace(ut,""),i.hasContent?i.data&&i.processData&&0===(i.contentType||"").indexOf("application/x-www-form-urlencoded")&&(i.data=i.data.replace(st,"+")):(m=i.url.slice(u.length),i.data&&(i.processData||"string"==typeof i.data)&&(u+=(Z.test(u)?"&":"?")+i.data,delete i.data),!1===i.cache&&(u=u.replace(lt,"$1"),m=(Z.test(u)?"&":"?")+"_="+me+++m),i.url=u+m),i.ifModified&&(e.lastModified[u]&&a.setRequestHeader("If-Modified-Since",e.lastModified[u]),e.etag[u]&&a.setRequestHeader("If-None-Match",e.etag[u])),(i.data&&i.hasContent&&!1!==i.contentType||r.contentType)&&a.setRequestHeader("Content-Type",i.contentType),a.setRequestHeader("Accept",i.dataTypes[0]&&i.accepts[i.dataTypes[0]]?i.accepts[i.dataTypes[0]]+("*"!==i.dataTypes[0]?", "+he+"; q=0.01":""):i.accepts["*"]);for(w in i.headers)a.setRequestHeader(w,i.headers[w]);if(i.beforeSend&&(!1===i.beforeSend.call(c,a,i)||l))return a.abort();if(D="abort",E.add(i.complete),a.done(i.success),a.fail(i.error),d=rt(J,i,r,a)){if(a.readyState=1,g&&T.trigger("ajaxSend",[a,i]),l)return a;i.async&&i.timeout>0&&(b=t.setTimeout(function(){a.abort("timeout")},i.timeout));try{l=!1,d.send(k,v)}catch(s){if(l)throw s;v(-1,s)}}else v(-1,"No Transport");function v(n,r,o,s){var p,w,m,h,v,f=r;l||(l=!0,b&&t.clearTimeout(b),d=void 0,x=s||"",a.readyState=n>0?4:0,p=n>=200&&n<300||304===n,o&&(h=nn(i,a,o)),h=rn(i,h,a,p),p?(i.ifModified&&((v=a.getResponseHeader("Last-Modified"))&&(e.lastModified[u]=v),(v=a.getResponseHeader("etag"))&&(e.etag[u]=v)),204===n||"HEAD"===i.type?f="nocontent":304===n?f="notmodified":(f=h.state,w=h.data,p=!(m=h.error))):(m=f,!n&&f||(f="error",n<0&&(n=0))),a.status=n,a.statusText=(r||f)+"",p?C.resolveWith(c,[w,f,a]):C.rejectWith(c,[a,f,m]),a.statusCode(y),y=void 0,g&&T.trigger(p?"ajaxSuccess":"ajaxError",[a,i,p?w:m]),E.fireWith(c,[a,f]),g&&(T.trigger("ajaxComplete",[a,i]),--e.active||e.event.trigger("ajaxStop")))}return a},getJSON:function(t,n,r){return e.get(t,n,r,"json")},getScript:function(t,n){return e.get(t,void 0,n,"script")}}),e.each(["get","post"],function(t,n){e[n]=function(t,r,o,a){return i(r)&&(a=a||o,o=r,r=void 0),e.ajax(e.extend({url:t,type:n,dataType:a,data:r,success:o},e.isPlainObject(t)&&t))}}),e._evalUrl=function(t){return e.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},e.fn.extend({wrapAll:function(t){var n;return this[0]&&(i(t)&&(t=t.call(this[0])),n=e(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&n.insertBefore(this[0]),n.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(t){return i(t)?this.each(function(n){e(this).wrapInner(t.call(this,n))}):this.each(function(){var n=e(this),r=n.contents();r.length?r.wrapAll(t):n.append(t)})},wrap:function(t){var n=i(t);return this.each(function(r){e(this).wrapAll(n?t.call(this,r):t)})},unwrap:function(t){return this.parent(t).not("body").each(function(){e(this).replaceWith(this.childNodes)}),this}}),e.expr.pseudos.hidden=function(t){return!e.expr.pseudos.visible(t)},e.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},e.ajaxSettings.xhr=function(){try{return new t.XMLHttpRequest}catch(e){}};var at={0:200,1223:204},j=e.ajaxSettings.xhr();a.cors=!!j&&"withCredentials"in j,a.ajax=j=!!j,e.ajaxTransport(function(e){var n,r;if(a.cors||j&&!e.crossDomain)return{send:function(i,o){var u,a=e.xhr();if(a.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(u in e.xhrFields)a[u]=e.xhrFields[u];e.mimeType&&a.overrideMimeType&&a.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(u in i)a.setRequestHeader(u,i[u]);n=function(e){return function(){n&&(n=r=a.onload=a.onerror=a.onabort=a.ontimeout=a.onreadystatechange=null,"abort"===e?a.abort():"error"===e?"number"!=typeof a.status?o(0,"error"):o(a.status,a.statusText):o(at[a.status]||a.status,a.statusText,"text"!==(a.responseType||"text")||"string"!=typeof a.responseText?{binary:a.response}:{text:a.responseText},a.getAllResponseHeaders()))}},a.onload=n(),r=a.onerror=a.ontimeout=n("error"),void 0!==a.onabort?a.onabort=r:a.onreadystatechange=function(){4===a.readyState&&t.setTimeout(function(){n&&r()})},n=n("abort");try{a.send(e.hasContent&&e.data||null)}catch(s){if(n)throw s}},abort:function(){n&&n()}}}),e.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),e.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return e.globalEval(t),t}}}),e.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),e.ajaxTransport("script",function(t){if(t.crossDomain){var r,n;return{send:function(i,a){r=e("