-
Notifications
You must be signed in to change notification settings - Fork 8
/
app.b885261f.js
189 lines (189 loc) · 427 KB
/
app.b885261f.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
!function(t){var e={};function i(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,i),o.l=!0,o.exports}i.m=t,i.c=e,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)i.d(n,o,function(e){return t[e]}.bind(null,o));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="assets/",i(i.s=0)}({"/iRC":function(t,e,i){(function(t){!function(t){"use strict";var e={pluralRules:{ak:{one:"n = 0..1"},am:{one:"i = 0 or n = 1"},ar:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n % 100 = 3..10",many:"n % 100 = 11..99"},ars:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n % 100 = 3..10",many:"n % 100 = 11..99"},as:{one:"i = 0 or n = 1"},be:{one:"n % 10 = 1 and n % 100 != 11",few:"n % 10 = 2..4 and n % 100 != 12..14",many:"n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14"},bh:{one:"n = 0..1"},bn:{one:"i = 0 or n = 1"},br:{one:"n % 10 = 1 and n % 100 != 11,71,91",two:"n % 10 = 2 and n % 100 != 12,72,92",few:"n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99",many:"n != 0 and n % 1000000 = 0"},bs:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},cs:{one:"i = 1 and v = 0",few:"i = 2..4 and v = 0",many:"v != 0"},cy:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n = 3",many:"n = 6"},da:{one:"n = 1 or t != 0 and i = 0,1"},dsb:{one:"v = 0 and i % 100 = 1 or f % 100 = 1",two:"v = 0 and i % 100 = 2 or f % 100 = 2",few:"v = 0 and i % 100 = 3..4 or f % 100 = 3..4"},fa:{one:"i = 0 or n = 1"},ff:{one:"i = 0,1"},fil:{one:"v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9"},fr:{one:"i = 0,1"},ga:{one:"n = 1",two:"n = 2",few:"n = 3..6",many:"n = 7..10"},gd:{one:"n = 1,11",two:"n = 2,12",few:"n = 3..10,13..19"},gu:{one:"i = 0 or n = 1"},guw:{one:"n = 0..1"},gv:{one:"v = 0 and i % 10 = 1",two:"v = 0 and i % 10 = 2",few:"v = 0 and i % 100 = 0,20,40,60,80",many:"v != 0"},he:{one:"i = 1 and v = 0",two:"i = 2 and v = 0",many:"v = 0 and n != 0..10 and n % 10 = 0"},hi:{one:"i = 0 or n = 1"},hr:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},hsb:{one:"v = 0 and i % 100 = 1 or f % 100 = 1",two:"v = 0 and i % 100 = 2 or f % 100 = 2",few:"v = 0 and i % 100 = 3..4 or f % 100 = 3..4"},hy:{one:"i = 0,1"},is:{one:"t = 0 and i % 10 = 1 and i % 100 != 11 or t != 0"},iu:{one:"n = 1",two:"n = 2"},iw:{one:"i = 1 and v = 0",two:"i = 2 and v = 0",many:"v = 0 and n != 0..10 and n % 10 = 0"},kab:{one:"i = 0,1"},kn:{one:"i = 0 or n = 1"},kw:{one:"n = 1",two:"n = 2"},lag:{zero:"n = 0",one:"i = 0,1 and n != 0"},ln:{one:"n = 0..1"},lt:{one:"n % 10 = 1 and n % 100 != 11..19",few:"n % 10 = 2..9 and n % 100 != 11..19",many:"f != 0"},lv:{zero:"n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19",one:"n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1"},mg:{one:"n = 0..1"},mk:{one:"v = 0 and i % 10 = 1 or f % 10 = 1"},mo:{one:"i = 1 and v = 0",few:"v != 0 or n = 0 or n != 1 and n % 100 = 1..19"},mr:{one:"i = 0 or n = 1"},mt:{one:"n = 1",few:"n = 0 or n % 100 = 2..10",many:"n % 100 = 11..19"},naq:{one:"n = 1",two:"n = 2"},nso:{one:"n = 0..1"},pa:{one:"n = 0..1"},pl:{one:"i = 1 and v = 0",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 12..14"},prg:{zero:"n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19",one:"n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1"},pt:{one:"i = 0..1"},ro:{one:"i = 1 and v = 0",few:"v != 0 or n = 0 or n != 1 and n % 100 = 1..19"},ru:{one:"v = 0 and i % 10 = 1 and i % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14"},se:{one:"n = 1",two:"n = 2"},sh:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},shi:{one:"i = 0 or n = 1",few:"n = 2..10"},si:{one:"n = 0,1 or i = 0 and f = 1"},sk:{one:"i = 1 and v = 0",few:"i = 2..4 and v = 0",many:"v != 0"},sl:{one:"v = 0 and i % 100 = 1",two:"v = 0 and i % 100 = 2",few:"v = 0 and i % 100 = 3..4 or v != 0"},sma:{one:"n = 1",two:"n = 2"},smi:{one:"n = 1",two:"n = 2"},smj:{one:"n = 1",two:"n = 2"},smn:{one:"n = 1",two:"n = 2"},sms:{one:"n = 1",two:"n = 2"},sr:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},ti:{one:"n = 0..1"},tl:{one:"v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9"},tzm:{one:"n = 0..1 or n = 11..99"},uk:{one:"v = 0 and i % 10 = 1 and i % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14"},wa:{one:"n = 0..1"},zu:{one:"i = 0 or n = 1"}},convertPlural:function(e,i){var n,o,s,a,r=new RegExp("\\d+=","i");if(!i||0===i.length)return"";for(s=0;s<i.length;s++)if(a=i[s],r.test(a)){if(parseInt(a.slice(0,a.indexOf("=")),10)===e)return a.slice(a.indexOf("=")+1);i[s]=void 0}return i=t.map(i,function(t){if(void 0!==t)return t}),(n=this.pluralRules[t.i18n().locale])?(o=this.getPluralForm(e,n),i[o=Math.min(o,i.length-1)]):1===e?i[0]:i[1]},getPluralForm:function(t,e){var i,n=["zero","one","two","few","many","other"],o=0;for(i=0;i<n.length;i++)if(e[n[i]]){if(pluralRuleParser(e[n[i]],t))return o;o++}return o},convertNumber:function(e,i){var n,o,s,a,r,l;if(a=this.digitTransformTable(t.i18n().locale),r=String(e),l="",!a)return e;if(i){if(parseFloat(e,10)===e)return e;for(o in n=[],a)n[a[o]]=o;a=n}for(s=0;s<r.length;s++)a[r[s]]?l+=a[r[s]]:l+=r[s];return i?parseFloat(l,10):l},convertGrammar:function(t,e){return t},gender:function(t,e){if(!e||0===e.length)return"";for(;e.length<2;)e.push(e[e.length-1]);return"male"===t?e[0]:"female"===t?e[1]:3===e.length?e[2]:e[0]},digitTransformTable:function(t){var e={ar:"٠١٢٣٤٥٦٧٨٩",fa:"۰۱۲۳۴۵۶۷۸۹",ml:"൦൧൨൩൪൫൬൭൮൯",kn:"೦೧೨೩೪೫೬೭೮೯",lo:"໐໑໒໓໔໕໖໗໘໙",or:"୦୧୨୩୪୫୬୭୮୯",kh:"០១២៣៤៥៦៧៨៩",pa:"੦੧੨੩੪੫੬੭੮੯",gu:"૦૧૨૩૪૫૬૭૮૯",hi:"०१२३४५६७८९",my:"၀၁၂၃၄၅၆၇၈၉",ta:"௦௧௨௩௪௫௬௭௮௯",te:"౦౧౨౩౪౫౬౭౮౯",th:"๐๑๒๓๔๕๖๗๘๙",bo:"༠༡༢༣༤༥༦༧༨༩"};return!!e[t]&&e[t].split("")}};t.extend(t.i18n.languages,{default:e})}(t)}).call(this,i("EVdn"))},0:function(t,e,i){i("EVdn"),i("ovuR"),i("mF8h"),i("0hJh"),i("5yuI"),i("6NS1"),i("vuU+"),i("IvOP"),i("nmF7"),i("tPeR"),i("uzZt"),i("mJPs"),i("/iRC"),i("viYT"),i("anCX"),i("3iwj"),i("Mh5E"),i("6R2C"),i("KPT6"),i("J1iX"),i("0oQ0"),i("IJar"),i("Nrnj"),i("9Rgn"),i("1Wo5"),i("zoyU"),i("qXYj"),i("W28u"),i("ML86"),i("iGkt"),i("IUhG"),i("zXW2"),t.exports=i("Mv9J")},"0hJh":function(t,e,i){(function(t){
/*!
* OOUI v0.30.0
* https://www.mediawiki.org/wiki/OOUI
*
* Copyright 2011–2018 OOUI Team and other contributors.
* Released under the MIT license
* http://oojs.mit-license.org
*
* Date: 2018-12-20T06:10:28Z
*/
!function(t){"use strict";t.ui.WikimediaUITheme=function(){t.ui.WikimediaUITheme.parent.call(this)},t.inheritClass(t.ui.WikimediaUITheme,t.ui.Theme),t.ui.WikimediaUITheme.prototype.getElementClasses=function(e){var i,n,o,s,a={warning:!1,invert:!1,progressive:!1,destructive:!1},r=t.ui.WikimediaUITheme.parent.prototype.getElementClasses.call(this,e);for(i in e instanceof t.ui.IconWidget&&e.$element.hasClass("oo-ui-checkboxInputWidget-checkIcon")?a.invert=!0:e.supports(["hasFlag"])&&(n=e.supports(["isFramed"])&&e.isFramed(),o=e.supports(["isActive"])&&e.isActive(),s=t.ui.Tool&&e instanceof t.ui.Tool||t.ui.ToolGroup&&e instanceof t.ui.ToolGroup,n&&(o||e.isDisabled()||e.hasFlag("primary"))||s&&e.hasFlag("primary")?a.invert=!0:!n&&e.isDisabled()?a.invert=!1:e.isDisabled()||(a.progressive=e.hasFlag("progressive")||s&&o||(e instanceof t.ui.MenuOptionWidget||t.ui.OutlineOptionWidget&&e instanceof t.ui.OutlineOptionWidget)&&(e.isPressed()||e.isSelected()),a.destructive=e.hasFlag("destructive"),a.warning=e.hasFlag("warning"))),a)r[a[i]?"on":"off"].push("oo-ui-image-"+i);return r},t.ui.WikimediaUITheme.prototype.getDialogTransitionDuration=function(){return 250},t.ui.theme=new t.ui.WikimediaUITheme}(t)}).call(this,i("ovuR"))},"0oQ0":function(t,e,i){(function(t){!function(t){"use strict";var e;(e=function(e,i){var n;for(n in this.$element=t(e),this.options=t.extend({},t.fn.uls.defaults,i),this.$menu=t('<div class="grid uls-menu"> \t\t\t<div id="search" class="row uls-search"> \t\t\t\t<div class="uls-search-wrapper"> \t\t\t\t\t<label class="uls-search-label" for="uls-languagefilter"></label>\t\t\t\t\t<div class="uls-search-input-wrapper">\t\t\t\t\t\t<span class="uls-languagefilter-clear"></span>\t\t\t\t\t\t<input type="text" class="uls-filterinput uls-filtersuggestion"\t\t\t\t\t\t\tdisabled="true" autocomplete="off">\t\t\t\t\t\t<input type="text" class="uls-filterinput uls-languagefilter"\t\t\t\t\t\t\tmaxlength="40"\t\t\t\t\t\t\tdata-clear="uls-languagefilter-clear"\t\t\t\t\t\t\tdata-suggestion="uls-filtersuggestion"\t\t\t\t\t\t\tplaceholder="Search for a language" autocomplete="off">\t\t\t\t\t</div>\t\t\t\t</div>\t\t\t</div>\t\t\t<div class="row uls-language-list"></div>\t\t\t<div class="row" id="uls-settings-block"></div>\t\t</div>'),this.languages=this.options.languages,this.languages)void 0===t.uls.data.languages[n]&&delete this.languages[n];this.left=this.options.left,this.top=this.options.top,this.shown=!1,this.initialized=!1,this.shouldRecreate=!1,this.menuWidth=this.getMenuWidth(),this.$languageFilter=this.$menu.find(".uls-languagefilter"),this.$resultsView=this.$menu.find(".uls-language-list"),this.render(),this.listen(),this.ready()}).prototype={constructor:e,ready:function(){this.options.onReady&&this.options.onReady.call(this)},visible:function(){this.options.onVisible&&this.options.onVisible.call(this)},position:function(){var e,i=this.top,n=this.left;return void 0===i&&(i=(e=t.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight})).top+e.height),void 0===n&&(n=t(window).width()/2-this.$menu.outerWidth()/2),{top:i,left:n}},show:function(){this.$menu.addClass({wide:"uls-wide",medium:"uls-medium",narrow:"uls-narrow"}[this.menuWidth]),this.initialized||(t("body").prepend(this.$menu),this.i18n(),this.initialized=!0),this.$menu.css(this.position()),this.$menu.show(),this.$menu.scrollIntoView(),this.shown=!0,this.isMobile()||this.$languageFilter.focus(),this.visible()},i18n:function(){t.i18n&&(this.$menu.find("[data-i18n]").i18n(),this.$languageFilter.prop("placeholder",t.i18n("uls-search-placeholder")))},hide:function(){this.$menu.hide(),this.shown=!1,this.$menu.removeClass("uls-wide uls-medium uls-narrow"),this.shouldRecreate&&this.recreateLanguageFilter(),this.options.onCancel&&this.options.onCancel.call(this)},render:function(){},success:function(){this.$resultsView.show()},createLanguageFilter:function(){var t,e;e=Object.keys(this.options.languages).length,t=this.$resultsView.lcd({languages:this.languages,columns:{wide:4,medium:2,narrow:1}[this.menuWidth],quickList:e>12?this.options.quickList:[],clickhandler:this.select.bind(this),showRegions:this.options.showRegions,languageDecorator:this.options.languageDecorator,noResultsTemplate:this.options.noResultsTemplate,itemsPerColumn:this.options.itemsPerColumn,groupByRegion:this.options.groupByRegion}).data("lcd"),this.$languageFilter.languagefilter({lcd:t,languages:this.languages,ulsPurpose:this.options.ulsPurpose,searchAPI:this.options.searchAPI,onSelect:this.select.bind(this)}),this.$languageFilter.on("noresults.uls",t.noResults.bind(t))},recreateLanguageFilter:function(){this.$resultsView.removeData("lcd"),this.$resultsView.empty(),this.$languageFilter.removeData("languagefilter"),this.createLanguageFilter(),this.shouldRecreate=!1},listen:function(){this.$element.on("click",this.click.bind(this)),this.$menu.on("click",function(t){t.stopPropagation()}),this.$menu.on("keydown",this.keypress.bind(this)),this.createLanguageFilter(),this.$languageFilter.on("resultsfound.uls",this.success.bind(this)),t("html").click(this.cancel.bind(this)),t(window).resize(t.fn.uls.debounce(this.resize.bind(this),250))},resize:function(){var t=this.getMenuWidth();this.menuWidth!==t&&(this.menuWidth=t,this.shouldRecreate=!0,this.shown||this.recreateLanguageFilter())},select:function(t,e){this.hide(),this.options.onSelect&&this.options.onSelect.call(this,t,e)},cancel:function(e){e&&(this.$element.is(e.target)||t.contains(this.$element[0],e.target))||this.hide()},keypress:function(t){this.shown&&27===t.keyCode&&(this.cancel(),t.preventDefault(),t.stopPropagation())},click:function(){this.shown?this.hide():this.show()},getMenuWidth:function(){var t,e=document.documentElement.clientWidth;return this.options.menuWidth?this.options.menuWidth:(t=Object.keys(this.options.languages).length,e>900&&t>=48?"wide":e>500&&t>=24?"medium":"narrow")},isMobile:function(){return navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry)/)}},t.fn.uls=function(i){return this.each(function(){var n=t(this),o=n.data("uls"),s="object"==typeof i&&i;o||n.data("uls",o=new e(this,s)),"string"==typeof i&&o[i]()})},t.fn.uls.defaults={top:void 0,left:void 0,onSelect:void 0,onCancel:void 0,onReady:void 0,onVisible:void 0,languages:t.uls.data.getAutonyms(),menuWidth:void 0,ulsPurpose:"",quickList:[],showRegions:void 0,languageDecorator:void 0,noResultsTemplate:void 0,itemsPerColumn:void 0,groupByRegion:void 0,searchAPI:void 0},t.fn.i18n||(t.fn.i18n=function(){}),t.fn.uls.debounce=function(t,e,i){var n;return function(){var o,s=this;o=i&&!n,clearTimeout(n),n=setTimeout(function(){n=null,i||t.apply(s,arguments)},e||100),o&&t.apply(s,arguments)}},t.fn.scrollIntoView=function(){return this.each(function(){var e,i=t(window),n=i.height(),o=i.scrollTop(),s=o+n,a=t(this),r=a.height(),l=a.offset().top,u=l+r;(l<o||u>s)&&(e=o>l?l:u-n,t("html, body").stop().animate({scrollTop:e},500))})},t.fn.uls.Constructor=e}(t)}).call(this,i("EVdn"))},"1Wo5":function(t,e,i){(function(t,e,n){e.OO=t,e.App={},i("mwPO"),i("6efa"),i("5gvb"),n(function(){var t=n("html").attr("lang"),e={},i={};e[t]=appConfig.assetsPath+"/i18n/jquery.uls/"+t+".json",i[t]=appConfig.assetsPath+"/i18n/app/"+t+".json","en"!==t&&(e.en=appConfig.assetsPath+"/i18n/jquery.uls/en.json",i.en=appConfig.assetsPath+"/i18n/app/en.json"),n.i18n().locale=t,n.i18n().load(e),n.i18n().load(i).then(App.addLanguageSettingsLink)}),App.getCookieVal=function(t,e){var n=i("p46w").get("svgtranslate");if(n)try{return JSON.parse(n)[t]}catch(t){return e}return e},App.addLanguageSettingsLink=function(){var e=n("<a>").html(n.i18n("language-settings")).attr("href","#lang-dialog").on("click",function(){var e=t.ui.getWindowManager(),i=new App.LanguageDialog({interfaceLang:n("html").attr("lang")});e.isElementAttached()||n("body").append(e.$element),e.addWindows([i]),e.openWindow(i)});n("nav.user ul").prepend(n("<li>").append(e))},n(function(){var e=n("#search-widget");e.length>0&&t.ui.infuse(e)})}).call(this,i("ovuR"),i("yLpj"),i("EVdn"))},"3iwj":function(t,e,i){(function(t){!function(t){"use strict";t.i18n.languages.ml=t.extend({},t.i18n.languages.default,{convertGrammar:function(t,e){switch(e=e.toLowerCase()){case"ഉദ്ദേശിക":case"dative":"ു"===t.slice(-1)||"ൂ"===t.slice(-1)||"ൗ"===t.slice(-1)||"ൌ"===t.slice(-1)?t+="വിന്":"ം"===t.slice(-1)?t=t.slice(0,-1)+"ത്തിന്":"ൻ"===t.slice(-1)?t=t.slice(0,-1)+"ന്":"ന്"===t.slice(-3)?t=t.slice(0,-1):"ൾ"===t.slice(-1)||"ള്"===t.slice(-3)?t+="ക്ക്":"ർ"===t.slice(-1)||"ര്"===t.slice(-3)?t+="ക്ക്":"ൽ"===t.slice(-1)?t=t.slice(0,-1)+"ലിന്":"ല്"===t.slice(-3)?t=t.slice(0,-2)+"ിന്":"ു്"===t.slice(-2)?t=t.slice(0,-2)+"ിന്":"്"===t.slice(-1)?t=t.slice(0,-1)+"ിന്":t+="യ്ക്ക്";break;case"സംബന്ധിക":case"genitive":"ം"===t.slice(-1)?t=t.slice(0,-1)+"ത്തിന്റെ":"ു്"===t.slice(-2)?t=t.slice(0,-2)+"ിന്റെ":"്"===t.slice(-1)?t=t.slice(0,-1)+"ിന്റെ":"ു"===t.slice(-1)||"ൂ"===t.slice(-1)||"ൗ"===t.slice(-1)||"ൌ"===t.slice(-1)?t+="വിന്റെ":"ൻ"===t.slice(-1)?t=t.slice(0,-1)+"ന്റെ":"ന്"===t.slice(-3)?t=t.slice(0,-1)+"റെ":"ള്"===t.slice(-3)?t=t.slice(0,-2)+"ുടെ":"ൾ"===t.slice(-1)?t=t.slice(0,-1)+"ളുടെ":"ൽ"===t.slice(-1)?t=t.slice(0,-1)+"ലിന്റെ":"ല്"===t.slice(-3)?t=t.slice(0,-2)+"ിന്റെ":"ര്"===t.slice(-3)?t=t.slice(0,-2)+"ുടെ":"ർ"===t.slice(-1)?t=t.slice(0,-1)+"രുടെ":t+="യുടെ"}return t}})}(t)}).call(this,i("EVdn"))},"5gvb":function(t,e){t.exports="../assets/images/download.82450a39.svg"},"5yuI":function(t,e,i){},"6NS1":function(t,e,i){},"6R2C":function(t,e,i){(function(t){!function(t){"use strict";t.uls.data.isRedirect=function(e){return void 0!==t.uls.data.languages[e]&&1===t.uls.data.languages[e].length&&t.uls.data.languages[e][0]},t.uls.data.getScript=function(e){var i=t.uls.data.isRedirect(e);return i?t.uls.data.getScript(i):t.uls.data.languages[e]?t.uls.data.languages[e][0]:"Zyyy"},t.uls.data.getRegions=function(e){var i=t.uls.data.isRedirect(e);return i?t.uls.data.getRegions(i):t.uls.data.languages[e]&&t.uls.data.languages[e][1]||"UNKNOWN"},t.uls.data.getAutonym=function(e){var i=t.uls.data.isRedirect(e);return i?t.uls.data.getAutonym(i):t.uls.data.languages[e]&&t.uls.data.languages[e][2]||e},t.uls.data.getAutonyms=function(){var e,i={};for(e in t.uls.data.languages)t.uls.data.isRedirect(e)||(i[e]=t.uls.data.getAutonym(e));return i},t.uls.data.getLanguagesInScript=function(e){return t.uls.data.getLanguagesInScripts([e])},t.uls.data.getLanguagesInScripts=function(e){var i,n,o=[];for(i in t.uls.data.languages)if(!t.uls.data.isRedirect(i))for(n=0;n<e.length;n++)if(e[n]===t.uls.data.getScript(i)){o.push(i);break}return o},t.uls.data.getLanguagesByScriptGroupInRegion=function(e){return t.uls.data.getLanguagesByScriptGroupInRegions([e])},t.uls.data.getLanguagesByScriptGroup=function(e){var i,n,o,s,a={};for(n=0;n<e.length;n++)i=e[n],o=t.uls.data.isRedirect(i)||i,a[s=t.uls.data.getScriptGroupOfLanguage(o)]||(a[s]=[]),a[s].push(i);return a},t.uls.data.getLanguagesByScriptGroupInRegions=function(e){var i,n,o,s={};for(i in t.uls.data.languages)if(!t.uls.data.isRedirect(i))for(n=0;n<e.length;n++)if(-1!==t.uls.data.getRegions(i).indexOf(e[n])){void 0===s[o=t.uls.data.getScriptGroupOfLanguage(i)]&&(s[o]=[]),s[o].push(i);break}return s},t.uls.data.getGroupOfScript=function(e){var i;for(i in t.uls.data.scriptgroups)if(-1!==t.uls.data.scriptgroups[i].indexOf(e))return i;return"Other"},t.uls.data.getScriptGroupOfLanguage=function(e){return t.uls.data.getGroupOfScript(t.uls.data.getScript(e))},t.uls.data.sortByScriptGroup=function(e){var i,n,o,s=[];for(i=t.uls.data.getLanguagesByScriptGroup(e),n=Object.keys(i).sort(),o=0;o<n.length;o++)s=s.concat(i[n[o]]);return s},t.uls.data.sortByAutonym=function(e,i){var n=t.uls.data.getAutonym(e)||e,o=t.uls.data.getAutonym(i)||i;return n.toLowerCase()<o.toLowerCase()?-1:1},t.uls.data.isRtl=function(e){return-1!==t.uls.data.rtlscripts.indexOf(t.uls.data.getScript(e))},t.uls.data.getDir=function(e){return t.uls.data.isRtl(e)?"rtl":"ltr"},t.uls.data.getLanguagesInTerritory=function(e){return t.uls.data.territories[e]},t.uls.data.addLanguage=function(e,i){i.target?t.uls.data.languages[e]=[i.target]:t.uls.data.languages[e]=[i.script,i.regions,i.autonym]},t.uls.data.deleteLanguage=function(e){return!!t.uls.data.languages[e]&&(delete t.uls.data.languages[e],!0)}}(t)}).call(this,i("EVdn"))},"6efa":function(t,e){t.exports="../assets/images/logo-Wikimedia-Commons.01a57418.svg"},"9Rgn":function(t,e,i){},EVdn:function(t,e,i){var n;
/*!
* jQuery JavaScript Library v3.3.1
* https://jquery.com/
*
* Includes Sizzle.js
* https://sizzlejs.com/
*
* Copyright JS Foundation and other contributors
* Released under the MIT license
* https://jquery.org/license
*
* Date: 2018-01-20T17:24Z
*/
/*!
* jQuery JavaScript Library v3.3.1
* https://jquery.com/
*
* Includes Sizzle.js
* https://sizzlejs.com/
*
* Copyright JS Foundation and other contributors
* Released under the MIT license
* https://jquery.org/license
*
* Date: 2018-01-20T17:24Z
*/
!function(e,i){"use strict";"object"==typeof t.exports?t.exports=e.document?i(e,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return i(t)}:i(e)}("undefined"!=typeof window?window:this,function(i,o){"use strict";var s=[],a=i.document,r=Object.getPrototypeOf,l=s.slice,u=s.concat,c=s.push,h=s.indexOf,d={},p=d.toString,g=d.hasOwnProperty,f=g.toString,m=f.call(Object),y={},b=function(t){return"function"==typeof t&&"number"!=typeof t.nodeType},v=function(t){return null!=t&&t===t.window},w={type:!0,src:!0,noModule:!0};function x(t,e,i){var n,o=(e=e||a).createElement("script");if(o.text=t,i)for(n in w)i[n]&&(o[n]=i[n]);e.head.appendChild(o).parentNode.removeChild(o)}function E(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?d[p.call(t)]||"object":typeof t}var W=function(t,e){return new W.fn.init(t,e)},C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function $(t){var e=!!t&&"length"in t&&t.length,i=E(t);return!b(t)&&!v(t)&&("array"===i||0===e||"number"==typeof e&&e>0&&e-1 in t)}W.fn=W.prototype={jquery:"3.3.1",constructor:W,length:0,toArray:function(){return l.call(this)},get:function(t){return null==t?l.call(this):t<0?this[t+this.length]:this[t]},pushStack:function(t){var e=W.merge(this.constructor(),t);return e.prevObject=this,e},each:function(t){return W.each(this,t)},map:function(t){return this.pushStack(W.map(this,function(e,i){return t.call(e,i,e)}))},slice:function(){return this.pushStack(l.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(t){var e=this.length,i=+t+(t<0?e:0);return this.pushStack(i>=0&&i<e?[this[i]]:[])},end:function(){return this.prevObject||this.constructor()},push:c,sort:s.sort,splice:s.splice},W.extend=W.fn.extend=function(){var t,e,i,n,o,s,a=arguments[0]||{},r=1,l=arguments.length,u=!1;for("boolean"==typeof a&&(u=a,a=arguments[r]||{},r++),"object"==typeof a||b(a)||(a={}),r===l&&(a=this,r--);r<l;r++)if(null!=(t=arguments[r]))for(e in t)i=a[e],a!==(n=t[e])&&(u&&n&&(W.isPlainObject(n)||(o=Array.isArray(n)))?(o?(o=!1,s=i&&Array.isArray(i)?i:[]):s=i&&W.isPlainObject(i)?i:{},a[e]=W.extend(u,s,n)):void 0!==n&&(a[e]=n));return a},W.extend({expando:"jQuery"+("3.3.1"+Math.random()).replace(/\D/g,""),isReady:!0,error:function(t){throw new Error(t)},noop:function(){},isPlainObject:function(t){var e,i;return!(!t||"[object Object]"!==p.call(t))&&(!(e=r(t))||"function"==typeof(i=g.call(e,"constructor")&&e.constructor)&&f.call(i)===m)},isEmptyObject:function(t){var e;for(e in t)return!1;return!0},globalEval:function(t){x(t)},each:function(t,e){var i,n=0;if($(t))for(i=t.length;n<i&&!1!==e.call(t[n],n,t[n]);n++);else for(n in t)if(!1===e.call(t[n],n,t[n]))break;return t},trim:function(t){return null==t?"":(t+"").replace(C,"")},makeArray:function(t,e){var i=e||[];return null!=t&&($(Object(t))?W.merge(i,"string"==typeof t?[t]:t):c.call(i,t)),i},inArray:function(t,e,i){return null==e?-1:h.call(e,t,i)},merge:function(t,e){for(var i=+e.length,n=0,o=t.length;n<i;n++)t[o++]=e[n];return t.length=o,t},grep:function(t,e,i){for(var n=[],o=0,s=t.length,a=!i;o<s;o++)!e(t[o],o)!==a&&n.push(t[o]);return n},map:function(t,e,i){var n,o,s=0,a=[];if($(t))for(n=t.length;s<n;s++)null!=(o=e(t[s],s,i))&&a.push(o);else for(s in t)null!=(o=e(t[s],s,i))&&a.push(o);return u.apply([],a)},guid:1,support:y}),"function"==typeof Symbol&&(W.fn[Symbol.iterator]=s[Symbol.iterator]),W.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(t,e){d["[object "+e+"]"]=e.toLowerCase()});var I=
/*!
* Sizzle CSS Selector Engine v2.3.3
* https://sizzlejs.com/
*
* Copyright jQuery Foundation and other contributors
* Released under the MIT license
* http://jquery.org/license
*
* Date: 2016-08-08
*/
function(t){var e,i,n,o,s,a,r,l,u,c,h,d,p,g,f,m,y,b,v,w="sizzle"+1*new Date,x=t.document,E=0,W=0,C=at(),$=at(),I=at(),T=function(t,e){return t===e&&(h=!0),0},L={}.hasOwnProperty,D=[],S=D.pop,k=D.push,A=D.push,M=D.slice,P=function(t,e){for(var i=0,n=t.length;i<n;i++)if(t[i]===e)return i;return-1},F="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",O="[\\x20\\t\\r\\n\\f]",B="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",R="\\["+O+"*("+B+")(?:"+O+"*([*^$|!~]?=)"+O+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+B+"))|)"+O+"*\\]",z=":("+B+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+R+")*)|.*)\\)|)",H=new RegExp(O+"+","g"),U=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),N=new RegExp("^"+O+"*,"+O+"*"),K=new RegExp("^"+O+"*([>+~]|"+O+")"+O+"*"),G=new RegExp("="+O+"*([^\\]'\"]*?)"+O+"*\\]","g"),j=new RegExp(z),V=new RegExp("^"+B+"$"),q={ID:new RegExp("^#("+B+")"),CLASS:new RegExp("^\\.("+B+")"),TAG:new RegExp("^("+B+"|[*])"),ATTR:new RegExp("^"+R),PSEUDO:new RegExp("^"+z),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),bool:new RegExp("^(?:"+F+")$","i"),needsContext:new RegExp("^"+O+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)","i")},Q=/^(?:input|select|textarea|button)$/i,_=/^h\d$/i,X=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,Y=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+O+"?|("+O+")|.)","ig"),tt=function(t,e,i){var n="0x"+e-65536;return n!=n||i?e:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320)},et=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,it=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},nt=function(){d()},ot=bt(function(t){return!0===t.disabled&&("form"in t||"label"in t)},{dir:"parentNode",next:"legend"});try{A.apply(D=M.call(x.childNodes),x.childNodes),D[x.childNodes.length].nodeType}catch(t){A={apply:D.length?function(t,e){k.apply(t,M.call(e))}:function(t,e){for(var i=t.length,n=0;t[i++]=e[n++];);t.length=i-1}}}function st(t,e,n,o){var s,r,u,c,h,g,y,b=e&&e.ownerDocument,E=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==E&&9!==E&&11!==E)return n;if(!o&&((e?e.ownerDocument||e:x)!==p&&d(e),e=e||p,f)){if(11!==E&&(h=J.exec(t)))if(s=h[1]){if(9===E){if(!(u=e.getElementById(s)))return n;if(u.id===s)return n.push(u),n}else if(b&&(u=b.getElementById(s))&&v(e,u)&&u.id===s)return n.push(u),n}else{if(h[2])return A.apply(n,e.getElementsByTagName(t)),n;if((s=h[3])&&i.getElementsByClassName&&e.getElementsByClassName)return A.apply(n,e.getElementsByClassName(s)),n}if(i.qsa&&!I[t+" "]&&(!m||!m.test(t))){if(1!==E)b=e,y=t;else if("object"!==e.nodeName.toLowerCase()){for((c=e.getAttribute("id"))?c=c.replace(et,it):e.setAttribute("id",c=w),r=(g=a(t)).length;r--;)g[r]="#"+c+" "+yt(g[r]);y=g.join(","),b=Y.test(t)&&ft(e.parentNode)||e}if(y)try{return A.apply(n,b.querySelectorAll(y)),n}catch(t){}finally{c===w&&e.removeAttribute("id")}}}return l(t.replace(U,"$1"),e,n,o)}function at(){var t=[];return function e(i,o){return t.push(i+" ")>n.cacheLength&&delete e[t.shift()],e[i+" "]=o}}function rt(t){return t[w]=!0,t}function lt(t){var e=p.createElement("fieldset");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function ut(t,e){for(var i=t.split("|"),o=i.length;o--;)n.attrHandle[i[o]]=e}function ct(t,e){var i=e&&t,n=i&&1===t.nodeType&&1===e.nodeType&&t.sourceIndex-e.sourceIndex;if(n)return n;if(i)for(;i=i.nextSibling;)if(i===e)return-1;return t?1:-1}function ht(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function dt(t){return function(e){var i=e.nodeName.toLowerCase();return("input"===i||"button"===i)&&e.type===t}}function pt(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ot(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function gt(t){return rt(function(e){return e=+e,rt(function(i,n){for(var o,s=t([],i.length,e),a=s.length;a--;)i[o=s[a]]&&(i[o]=!(n[o]=i[o]))})})}function ft(t){return t&&void 0!==t.getElementsByTagName&&t}for(e in i=st.support={},s=st.isXML=function(t){var e=t&&(t.ownerDocument||t).documentElement;return!!e&&"HTML"!==e.nodeName},d=st.setDocument=function(t){var e,o,a=t?t.ownerDocument||t:x;return a!==p&&9===a.nodeType&&a.documentElement?(g=(p=a).documentElement,f=!s(p),x!==p&&(o=p.defaultView)&&o.top!==o&&(o.addEventListener?o.addEventListener("unload",nt,!1):o.attachEvent&&o.attachEvent("onunload",nt)),i.attributes=lt(function(t){return t.className="i",!t.getAttribute("className")}),i.getElementsByTagName=lt(function(t){return t.appendChild(p.createComment("")),!t.getElementsByTagName("*").length}),i.getElementsByClassName=X.test(p.getElementsByClassName),i.getById=lt(function(t){return g.appendChild(t).id=w,!p.getElementsByName||!p.getElementsByName(w).length}),i.getById?(n.filter.ID=function(t){var e=t.replace(Z,tt);return function(t){return t.getAttribute("id")===e}},n.find.ID=function(t,e){if(void 0!==e.getElementById&&f){var i=e.getElementById(t);return i?[i]:[]}}):(n.filter.ID=function(t){var e=t.replace(Z,tt);return function(t){var i=void 0!==t.getAttributeNode&&t.getAttributeNode("id");return i&&i.value===e}},n.find.ID=function(t,e){if(void 0!==e.getElementById&&f){var i,n,o,s=e.getElementById(t);if(s){if((i=s.getAttributeNode("id"))&&i.value===t)return[s];for(o=e.getElementsByName(t),n=0;s=o[n++];)if((i=s.getAttributeNode("id"))&&i.value===t)return[s]}return[]}}),n.find.TAG=i.getElementsByTagName?function(t,e){return void 0!==e.getElementsByTagName?e.getElementsByTagName(t):i.qsa?e.querySelectorAll(t):void 0}:function(t,e){var i,n=[],o=0,s=e.getElementsByTagName(t);if("*"===t){for(;i=s[o++];)1===i.nodeType&&n.push(i);return n}return s},n.find.CLASS=i.getElementsByClassName&&function(t,e){if(void 0!==e.getElementsByClassName&&f)return e.getElementsByClassName(t)},y=[],m=[],(i.qsa=X.test(p.querySelectorAll))&&(lt(function(t){g.appendChild(t).innerHTML="<a id='"+w+"'></a><select id='"+w+"-\r\\' msallowcapture=''><option selected=''></option></select>",t.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]="+O+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||m.push("\\["+O+"*(?:value|"+F+")"),t.querySelectorAll("[id~="+w+"-]").length||m.push("~="),t.querySelectorAll(":checked").length||m.push(":checked"),t.querySelectorAll("a#"+w+"+*").length||m.push(".#.+[+~]")}),lt(function(t){t.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var e=p.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&m.push("name"+O+"*[*^$|!~]?="),2!==t.querySelectorAll(":enabled").length&&m.push(":enabled",":disabled"),g.appendChild(t).disabled=!0,2!==t.querySelectorAll(":disabled").length&&m.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),m.push(",.*:")})),(i.matchesSelector=X.test(b=g.matches||g.webkitMatchesSelector||g.mozMatchesSelector||g.oMatchesSelector||g.msMatchesSelector))&<(function(t){i.disconnectedMatch=b.call(t,"*"),b.call(t,"[s!='']:x"),y.push("!=",z)}),m=m.length&&new RegExp(m.join("|")),y=y.length&&new RegExp(y.join("|")),e=X.test(g.compareDocumentPosition),v=e||X.test(g.contains)?function(t,e){var i=9===t.nodeType?t.documentElement:t,n=e&&e.parentNode;return t===n||!(!n||1!==n.nodeType||!(i.contains?i.contains(n):t.compareDocumentPosition&&16&t.compareDocumentPosition(n)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},T=e?function(t,e){if(t===e)return h=!0,0;var n=!t.compareDocumentPosition-!e.compareDocumentPosition;return n||(1&(n=(t.ownerDocument||t)===(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!i.sortDetached&&e.compareDocumentPosition(t)===n?t===p||t.ownerDocument===x&&v(x,t)?-1:e===p||e.ownerDocument===x&&v(x,e)?1:c?P(c,t)-P(c,e):0:4&n?-1:1)}:function(t,e){if(t===e)return h=!0,0;var i,n=0,o=t.parentNode,s=e.parentNode,a=[t],r=[e];if(!o||!s)return t===p?-1:e===p?1:o?-1:s?1:c?P(c,t)-P(c,e):0;if(o===s)return ct(t,e);for(i=t;i=i.parentNode;)a.unshift(i);for(i=e;i=i.parentNode;)r.unshift(i);for(;a[n]===r[n];)n++;return n?ct(a[n],r[n]):a[n]===x?-1:r[n]===x?1:0},p):p},st.matches=function(t,e){return st(t,null,null,e)},st.matchesSelector=function(t,e){if((t.ownerDocument||t)!==p&&d(t),e=e.replace(G,"='$1']"),i.matchesSelector&&f&&!I[e+" "]&&(!y||!y.test(e))&&(!m||!m.test(e)))try{var n=b.call(t,e);if(n||i.disconnectedMatch||t.document&&11!==t.document.nodeType)return n}catch(t){}return st(e,p,null,[t]).length>0},st.contains=function(t,e){return(t.ownerDocument||t)!==p&&d(t),v(t,e)},st.attr=function(t,e){(t.ownerDocument||t)!==p&&d(t);var o=n.attrHandle[e.toLowerCase()],s=o&&L.call(n.attrHandle,e.toLowerCase())?o(t,e,!f):void 0;return void 0!==s?s:i.attributes||!f?t.getAttribute(e):(s=t.getAttributeNode(e))&&s.specified?s.value:null},st.escape=function(t){return(t+"").replace(et,it)},st.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},st.uniqueSort=function(t){var e,n=[],o=0,s=0;if(h=!i.detectDuplicates,c=!i.sortStable&&t.slice(0),t.sort(T),h){for(;e=t[s++];)e===t[s]&&(o=n.push(s));for(;o--;)t.splice(n[o],1)}return c=null,t},o=st.getText=function(t){var e,i="",n=0,s=t.nodeType;if(s){if(1===s||9===s||11===s){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)i+=o(t)}else if(3===s||4===s)return t.nodeValue}else for(;e=t[n++];)i+=o(e);return i},(n=st.selectors={cacheLength:50,createPseudo:rt,match:q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(Z,tt),t[3]=(t[3]||t[4]||t[5]||"").replace(Z,tt),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||st.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&st.error(t[0]),t},PSEUDO:function(t){var e,i=!t[6]&&t[2];return q.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":i&&j.test(i)&&(e=a(i,!0))&&(e=i.indexOf(")",i.length-e)-i.length)&&(t[0]=t[0].slice(0,e),t[2]=i.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(Z,tt).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=C[t+" "];return e||(e=new RegExp("(^|"+O+")"+t+"("+O+"|$)"))&&C(t,function(t){return e.test("string"==typeof t.className&&t.className||void 0!==t.getAttribute&&t.getAttribute("class")||"")})},ATTR:function(t,e,i){return function(n){var o=st.attr(n,t);return null==o?"!="===e:!e||(o+="","="===e?o===i:"!="===e?o!==i:"^="===e?i&&0===o.indexOf(i):"*="===e?i&&o.indexOf(i)>-1:"$="===e?i&&o.slice(-i.length)===i:"~="===e?(" "+o.replace(H," ")+" ").indexOf(i)>-1:"|="===e&&(o===i||o.slice(0,i.length+1)===i+"-"))}},CHILD:function(t,e,i,n,o){var s="nth"!==t.slice(0,3),a="last"!==t.slice(-4),r="of-type"===e;return 1===n&&0===o?function(t){return!!t.parentNode}:function(e,i,l){var u,c,h,d,p,g,f=s!==a?"nextSibling":"previousSibling",m=e.parentNode,y=r&&e.nodeName.toLowerCase(),b=!l&&!r,v=!1;if(m){if(s){for(;f;){for(d=e;d=d[f];)if(r?d.nodeName.toLowerCase()===y:1===d.nodeType)return!1;g=f="only"===t&&!g&&"nextSibling"}return!0}if(g=[a?m.firstChild:m.lastChild],a&&b){for(v=(p=(u=(c=(h=(d=m)[w]||(d[w]={}))[d.uniqueID]||(h[d.uniqueID]={}))[t]||[])[0]===E&&u[1])&&u[2],d=p&&m.childNodes[p];d=++p&&d&&d[f]||(v=p=0)||g.pop();)if(1===d.nodeType&&++v&&d===e){c[t]=[E,p,v];break}}else if(b&&(v=p=(u=(c=(h=(d=e)[w]||(d[w]={}))[d.uniqueID]||(h[d.uniqueID]={}))[t]||[])[0]===E&&u[1]),!1===v)for(;(d=++p&&d&&d[f]||(v=p=0)||g.pop())&&((r?d.nodeName.toLowerCase()!==y:1!==d.nodeType)||!++v||(b&&((c=(h=d[w]||(d[w]={}))[d.uniqueID]||(h[d.uniqueID]={}))[t]=[E,v]),d!==e)););return(v-=o)===n||v%n==0&&v/n>=0}}},PSEUDO:function(t,e){var i,o=n.pseudos[t]||n.setFilters[t.toLowerCase()]||st.error("unsupported pseudo: "+t);return o[w]?o(e):o.length>1?(i=[t,t,"",e],n.setFilters.hasOwnProperty(t.toLowerCase())?rt(function(t,i){for(var n,s=o(t,e),a=s.length;a--;)t[n=P(t,s[a])]=!(i[n]=s[a])}):function(t){return o(t,0,i)}):o}},pseudos:{not:rt(function(t){var e=[],i=[],n=r(t.replace(U,"$1"));return n[w]?rt(function(t,e,i,o){for(var s,a=n(t,null,o,[]),r=t.length;r--;)(s=a[r])&&(t[r]=!(e[r]=s))}):function(t,o,s){return e[0]=t,n(e,null,s,i),e[0]=null,!i.pop()}}),has:rt(function(t){return function(e){return st(t,e).length>0}}),contains:rt(function(t){return t=t.replace(Z,tt),function(e){return(e.textContent||e.innerText||o(e)).indexOf(t)>-1}}),lang:rt(function(t){return V.test(t||"")||st.error("unsupported lang: "+t),t=t.replace(Z,tt).toLowerCase(),function(e){var i;do{if(i=f?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(i=i.toLowerCase())===t||0===i.indexOf(t+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var i=t.location&&t.location.hash;return i&&i.slice(1)===e.id},root:function(t){return t===g},focus:function(t){return t===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:pt(!1),disabled:pt(!0),checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!n.pseudos.empty(t)},header:function(t){return _.test(t.nodeName)},input:function(t){return Q.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){var e;return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:gt(function(){return[0]}),last:gt(function(t,e){return[e-1]}),eq:gt(function(t,e,i){return[i<0?i+e:i]}),even:gt(function(t,e){for(var i=0;i<e;i+=2)t.push(i);return t}),odd:gt(function(t,e){for(var i=1;i<e;i+=2)t.push(i);return t}),lt:gt(function(t,e,i){for(var n=i<0?i+e:i;--n>=0;)t.push(n);return t}),gt:gt(function(t,e,i){for(var n=i<0?i+e:i;++n<e;)t.push(n);return t})}}).pseudos.nth=n.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})n.pseudos[e]=ht(e);for(e in{submit:!0,reset:!0})n.pseudos[e]=dt(e);function mt(){}function yt(t){for(var e=0,i=t.length,n="";e<i;e++)n+=t[e].value;return n}function bt(t,e,i){var n=e.dir,o=e.next,s=o||n,a=i&&"parentNode"===s,r=W++;return e.first?function(e,i,o){for(;e=e[n];)if(1===e.nodeType||a)return t(e,i,o);return!1}:function(e,i,l){var u,c,h,d=[E,r];if(l){for(;e=e[n];)if((1===e.nodeType||a)&&t(e,i,l))return!0}else for(;e=e[n];)if(1===e.nodeType||a)if(c=(h=e[w]||(e[w]={}))[e.uniqueID]||(h[e.uniqueID]={}),o&&o===e.nodeName.toLowerCase())e=e[n]||e;else{if((u=c[s])&&u[0]===E&&u[1]===r)return d[2]=u[2];if(c[s]=d,d[2]=t(e,i,l))return!0}return!1}}function vt(t){return t.length>1?function(e,i,n){for(var o=t.length;o--;)if(!t[o](e,i,n))return!1;return!0}:t[0]}function wt(t,e,i,n,o){for(var s,a=[],r=0,l=t.length,u=null!=e;r<l;r++)(s=t[r])&&(i&&!i(s,n,o)||(a.push(s),u&&e.push(r)));return a}function xt(t,e,i,n,o,s){return n&&!n[w]&&(n=xt(n)),o&&!o[w]&&(o=xt(o,s)),rt(function(s,a,r,l){var u,c,h,d=[],p=[],g=a.length,f=s||function(t,e,i){for(var n=0,o=e.length;n<o;n++)st(t,e[n],i);return i}(e||"*",r.nodeType?[r]:r,[]),m=!t||!s&&e?f:wt(f,d,t,r,l),y=i?o||(s?t:g||n)?[]:a:m;if(i&&i(m,y,r,l),n)for(u=wt(y,p),n(u,[],r,l),c=u.length;c--;)(h=u[c])&&(y[p[c]]=!(m[p[c]]=h));if(s){if(o||t){if(o){for(u=[],c=y.length;c--;)(h=y[c])&&u.push(m[c]=h);o(null,y=[],u,l)}for(c=y.length;c--;)(h=y[c])&&(u=o?P(s,h):d[c])>-1&&(s[u]=!(a[u]=h))}}else y=wt(y===a?y.splice(g,y.length):y),o?o(null,a,y,l):A.apply(a,y)})}function Et(t){for(var e,i,o,s=t.length,a=n.relative[t[0].type],r=a||n.relative[" "],l=a?1:0,c=bt(function(t){return t===e},r,!0),h=bt(function(t){return P(e,t)>-1},r,!0),d=[function(t,i,n){var o=!a&&(n||i!==u)||((e=i).nodeType?c(t,i,n):h(t,i,n));return e=null,o}];l<s;l++)if(i=n.relative[t[l].type])d=[bt(vt(d),i)];else{if((i=n.filter[t[l].type].apply(null,t[l].matches))[w]){for(o=++l;o<s&&!n.relative[t[o].type];o++);return xt(l>1&&vt(d),l>1&&yt(t.slice(0,l-1).concat({value:" "===t[l-2].type?"*":""})).replace(U,"$1"),i,l<o&&Et(t.slice(l,o)),o<s&&Et(t=t.slice(o)),o<s&&yt(t))}d.push(i)}return vt(d)}return mt.prototype=n.filters=n.pseudos,n.setFilters=new mt,a=st.tokenize=function(t,e){var i,o,s,a,r,l,u,c=$[t+" "];if(c)return e?0:c.slice(0);for(r=t,l=[],u=n.preFilter;r;){for(a in i&&!(o=N.exec(r))||(o&&(r=r.slice(o[0].length)||r),l.push(s=[])),i=!1,(o=K.exec(r))&&(i=o.shift(),s.push({value:i,type:o[0].replace(U," ")}),r=r.slice(i.length)),n.filter)!(o=q[a].exec(r))||u[a]&&!(o=u[a](o))||(i=o.shift(),s.push({value:i,type:a,matches:o}),r=r.slice(i.length));if(!i)break}return e?r.length:r?st.error(t):$(t,l).slice(0)},r=st.compile=function(t,e){var i,o=[],s=[],r=I[t+" "];if(!r){for(e||(e=a(t)),i=e.length;i--;)(r=Et(e[i]))[w]?o.push(r):s.push(r);(r=I(t,function(t,e){var i=e.length>0,o=t.length>0,s=function(s,a,r,l,c){var h,g,m,y=0,b="0",v=s&&[],w=[],x=u,W=s||o&&n.find.TAG("*",c),C=E+=null==x?1:Math.random()||.1,$=W.length;for(c&&(u=a===p||a||c);b!==$&&null!=(h=W[b]);b++){if(o&&h){for(g=0,a||h.ownerDocument===p||(d(h),r=!f);m=t[g++];)if(m(h,a||p,r)){l.push(h);break}c&&(E=C)}i&&((h=!m&&h)&&y--,s&&v.push(h))}if(y+=b,i&&b!==y){for(g=0;m=e[g++];)m(v,w,a,r);if(s){if(y>0)for(;b--;)v[b]||w[b]||(w[b]=S.call(l));w=wt(w)}A.apply(l,w),c&&!s&&w.length>0&&y+e.length>1&&st.uniqueSort(l)}return c&&(E=C,u=x),v};return i?rt(s):s}(s,o))).selector=t}return r},l=st.select=function(t,e,i,o){var s,l,u,c,h,d="function"==typeof t&&t,p=!o&&a(t=d.selector||t);if(i=i||[],1===p.length){if((l=p[0]=p[0].slice(0)).length>2&&"ID"===(u=l[0]).type&&9===e.nodeType&&f&&n.relative[l[1].type]){if(!(e=(n.find.ID(u.matches[0].replace(Z,tt),e)||[])[0]))return i;d&&(e=e.parentNode),t=t.slice(l.shift().value.length)}for(s=q.needsContext.test(t)?0:l.length;s--&&(u=l[s],!n.relative[c=u.type]);)if((h=n.find[c])&&(o=h(u.matches[0].replace(Z,tt),Y.test(l[0].type)&&ft(e.parentNode)||e))){if(l.splice(s,1),!(t=o.length&&yt(l)))return A.apply(i,o),i;break}}return(d||r(t,p))(o,e,!f,i,!e||Y.test(t)&&ft(e.parentNode)||e),i},i.sortStable=w.split("").sort(T).join("")===w,i.detectDuplicates=!!h,d(),i.sortDetached=lt(function(t){return 1&t.compareDocumentPosition(p.createElement("fieldset"))}),lt(function(t){return t.innerHTML="<a href='#'></a>","#"===t.firstChild.getAttribute("href")})||ut("type|href|height|width",function(t,e,i){if(!i)return t.getAttribute(e,"type"===e.toLowerCase()?1:2)}),i.attributes&<(function(t){return t.innerHTML="<input/>",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")})||ut("value",function(t,e,i){if(!i&&"input"===t.nodeName.toLowerCase())return t.defaultValue}),lt(function(t){return null==t.getAttribute("disabled")})||ut(F,function(t,e,i){var n;if(!i)return!0===t[e]?e.toLowerCase():(n=t.getAttributeNode(e))&&n.specified?n.value:null}),st}(i);W.find=I,W.expr=I.selectors,W.expr[":"]=W.expr.pseudos,W.uniqueSort=W.unique=I.uniqueSort,W.text=I.getText,W.isXMLDoc=I.isXML,W.contains=I.contains,W.escapeSelector=I.escape;var T=function(t,e,i){for(var n=[],o=void 0!==i;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(o&&W(t).is(i))break;n.push(t)}return n},L=function(t,e){for(var i=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&i.push(t);return i},D=W.expr.match.needsContext;function S(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()}var k=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function A(t,e,i){return b(e)?W.grep(t,function(t,n){return!!e.call(t,n,t)!==i}):e.nodeType?W.grep(t,function(t){return t===e!==i}):"string"!=typeof e?W.grep(t,function(t){return h.call(e,t)>-1!==i}):W.filter(e,t,i)}W.filter=function(t,e,i){var n=e[0];return i&&(t=":not("+t+")"),1===e.length&&1===n.nodeType?W.find.matchesSelector(n,t)?[n]:[]:W.find.matches(t,W.grep(e,function(t){return 1===t.nodeType}))},W.fn.extend({find:function(t){var e,i,n=this.length,o=this;if("string"!=typeof t)return this.pushStack(W(t).filter(function(){for(e=0;e<n;e++)if(W.contains(o[e],this))return!0}));for(i=this.pushStack([]),e=0;e<n;e++)W.find(t,o[e],i);return n>1?W.uniqueSort(i):i},filter:function(t){return this.pushStack(A(this,t||[],!1))},not:function(t){return this.pushStack(A(this,t||[],!0))},is:function(t){return!!A(this,"string"==typeof t&&D.test(t)?W(t):t||[],!1).length}});var M,P=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(W.fn.init=function(t,e,i){var n,o;if(!t)return this;if(i=i||M,"string"==typeof t){if(!(n="<"===t[0]&&">"===t[t.length-1]&&t.length>=3?[null,t,null]:P.exec(t))||!n[1]&&e)return!e||e.jquery?(e||i).find(t):this.constructor(e).find(t);if(n[1]){if(e=e instanceof W?e[0]:e,W.merge(this,W.parseHTML(n[1],e&&e.nodeType?e.ownerDocument||e:a,!0)),k.test(n[1])&&W.isPlainObject(e))for(n in e)b(this[n])?this[n](e[n]):this.attr(n,e[n]);return this}return(o=a.getElementById(n[2]))&&(this[0]=o,this.length=1),this}return t.nodeType?(this[0]=t,this.length=1,this):b(t)?void 0!==i.ready?i.ready(t):t(W):W.makeArray(t,this)}).prototype=W.fn,M=W(a);var F=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function B(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}W.fn.extend({has:function(t){var e=W(t,this),i=e.length;return this.filter(function(){for(var t=0;t<i;t++)if(W.contains(this,e[t]))return!0})},closest:function(t,e){var i,n=0,o=this.length,s=[],a="string"!=typeof t&&W(t);if(!D.test(t))for(;n<o;n++)for(i=this[n];i&&i!==e;i=i.parentNode)if(i.nodeType<11&&(a?a.index(i)>-1:1===i.nodeType&&W.find.matchesSelector(i,t))){s.push(i);break}return this.pushStack(s.length>1?W.uniqueSort(s):s)},index:function(t){return t?"string"==typeof t?h.call(W(t),this[0]):h.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(W.uniqueSort(W.merge(this.get(),W(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),W.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return T(t,"parentNode")},parentsUntil:function(t,e,i){return T(t,"parentNode",i)},next:function(t){return B(t,"nextSibling")},prev:function(t){return B(t,"previousSibling")},nextAll:function(t){return T(t,"nextSibling")},prevAll:function(t){return T(t,"previousSibling")},nextUntil:function(t,e,i){return T(t,"nextSibling",i)},prevUntil:function(t,e,i){return T(t,"previousSibling",i)},siblings:function(t){return L((t.parentNode||{}).firstChild,t)},children:function(t){return L(t.firstChild)},contents:function(t){return S(t,"iframe")?t.contentDocument:(S(t,"template")&&(t=t.content||t),W.merge([],t.childNodes))}},function(t,e){W.fn[t]=function(i,n){var o=W.map(this,e,i);return"Until"!==t.slice(-5)&&(n=i),n&&"string"==typeof n&&(o=W.filter(n,o)),this.length>1&&(O[t]||W.uniqueSort(o),F.test(t)&&o.reverse()),this.pushStack(o)}});var R=/[^\x20\t\r\n\f]+/g;function z(t){return t}function H(t){throw t}function U(t,e,i,n){var o;try{t&&b(o=t.promise)?o.call(t).done(e).fail(i):t&&b(o=t.then)?o.call(t,e,i):e.apply(void 0,[t].slice(n))}catch(t){i.apply(void 0,[t])}}W.Callbacks=function(t){t="string"==typeof t?function(t){var e={};return W.each(t.match(R)||[],function(t,i){e[i]=!0}),e}(t):W.extend({},t);var e,i,n,o,s=[],a=[],r=-1,l=function(){for(o=o||t.once,n=e=!0;a.length;r=-1)for(i=a.shift();++r<s.length;)!1===s[r].apply(i[0],i[1])&&t.stopOnFalse&&(r=s.length,i=!1);t.memory||(i=!1),e=!1,o&&(s=i?[]:"")},u={add:function(){return s&&(i&&!e&&(r=s.length-1,a.push(i)),function e(i){W.each(i,function(i,n){b(n)?t.unique&&u.has(n)||s.push(n):n&&n.length&&"string"!==E(n)&&e(n)})}(arguments),i&&!e&&l()),this},remove:function(){return W.each(arguments,function(t,e){for(var i;(i=W.inArray(e,s,i))>-1;)s.splice(i,1),i<=r&&r--}),this},has:function(t){return t?W.inArray(t,s)>-1:s.length>0},empty:function(){return s&&(s=[]),this},disable:function(){return o=a=[],s=i="",this},disabled:function(){return!s},lock:function(){return o=a=[],i||e||(s=i=""),this},locked:function(){return!!o},fireWith:function(t,i){return o||(i=[t,(i=i||[]).slice?i.slice():i],a.push(i),e||l()),this},fire:function(){return u.fireWith(this,arguments),this},fired:function(){return!!n}};return u},W.extend({Deferred:function(t){var e=[["notify","progress",W.Callbacks("memory"),W.Callbacks("memory"),2],["resolve","done",W.Callbacks("once memory"),W.Callbacks("once memory"),0,"resolved"],["reject","fail",W.Callbacks("once memory"),W.Callbacks("once memory"),1,"rejected"]],n="pending",o={state:function(){return n},always:function(){return s.done(arguments).fail(arguments),this},catch:function(t){return o.then(null,t)},pipe:function(){var t=arguments;return W.Deferred(function(i){W.each(e,function(e,n){var o=b(t[n[4]])&&t[n[4]];s[n[1]](function(){var t=o&&o.apply(this,arguments);t&&b(t.promise)?t.promise().progress(i.notify).done(i.resolve).fail(i.reject):i[n[0]+"With"](this,o?[t]:arguments)})}),t=null}).promise()},then:function(t,n,o){var s=0;function a(t,e,n,o){return function(){var r=this,l=arguments,u=function(){var i,u;if(!(t<s)){if((i=n.apply(r,l))===e.promise())throw new TypeError("Thenable self-resolution");u=i&&("object"==typeof i||"function"==typeof i)&&i.then,b(u)?o?u.call(i,a(s,e,z,o),a(s,e,H,o)):(s++,u.call(i,a(s,e,z,o),a(s,e,H,o),a(s,e,z,e.notifyWith))):(n!==z&&(r=void 0,l=[i]),(o||e.resolveWith)(r,l))}},c=o?u:function(){try{u()}catch(i){W.Deferred.exceptionHook&&W.Deferred.exceptionHook(i,c.stackTrace),t+1>=s&&(n!==H&&(r=void 0,l=[i]),e.rejectWith(r,l))}};t?c():(W.Deferred.getStackHook&&(c.stackTrace=W.Deferred.getStackHook()),i.setTimeout(c))}}return W.Deferred(function(i){e[0][3].add(a(0,i,b(o)?o:z,i.notifyWith)),e[1][3].add(a(0,i,b(t)?t:z)),e[2][3].add(a(0,i,b(n)?n:H))}).promise()},promise:function(t){return null!=t?W.extend(t,o):o}},s={};return W.each(e,function(t,i){var a=i[2],r=i[5];o[i[1]]=a.add,r&&a.add(function(){n=r},e[3-t][2].disable,e[3-t][3].disable,e[0][2].lock,e[0][3].lock),a.add(i[3].fire),s[i[0]]=function(){return s[i[0]+"With"](this===s?void 0:this,arguments),this},s[i[0]+"With"]=a.fireWith}),o.promise(s),t&&t.call(s,s),s},when:function(t){var e=arguments.length,i=e,n=Array(i),o=l.call(arguments),s=W.Deferred(),a=function(t){return function(i){n[t]=this,o[t]=arguments.length>1?l.call(arguments):i,--e||s.resolveWith(n,o)}};if(e<=1&&(U(t,s.done(a(i)).resolve,s.reject,!e),"pending"===s.state()||b(o[i]&&o[i].then)))return s.then();for(;i--;)U(o[i],a(i),s.reject);return s.promise()}});var N=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;W.Deferred.exceptionHook=function(t,e){i.console&&i.console.warn&&t&&N.test(t.name)&&i.console.warn("jQuery.Deferred exception: "+t.message,t.stack,e)},W.readyException=function(t){i.setTimeout(function(){throw t})};var K=W.Deferred();function G(){a.removeEventListener("DOMContentLoaded",G),i.removeEventListener("load",G),W.ready()}W.fn.ready=function(t){return K.then(t).catch(function(t){W.readyException(t)}),this},W.extend({isReady:!1,readyWait:1,ready:function(t){(!0===t?--W.readyWait:W.isReady)||(W.isReady=!0,!0!==t&&--W.readyWait>0||K.resolveWith(a,[W]))}}),W.ready.then=K.then,"complete"===a.readyState||"loading"!==a.readyState&&!a.documentElement.doScroll?i.setTimeout(W.ready):(a.addEventListener("DOMContentLoaded",G),i.addEventListener("load",G));var j=function(t,e,i,n,o,s,a){var r=0,l=t.length,u=null==i;if("object"===E(i))for(r in o=!0,i)j(t,e,r,i[r],!0,s,a);else if(void 0!==n&&(o=!0,b(n)||(a=!0),u&&(a?(e.call(t,n),e=null):(u=e,e=function(t,e,i){return u.call(W(t),i)})),e))for(;r<l;r++)e(t[r],i,a?n:n.call(t[r],r,e(t[r],i)));return o?t:u?e.call(t):l?e(t[0],i):s},V=/^-ms-/,q=/-([a-z])/g;function Q(t,e){return e.toUpperCase()}function _(t){return t.replace(V,"ms-").replace(q,Q)}var X=function(t){return 1===t.nodeType||9===t.nodeType||!+t.nodeType};function J(){this.expando=W.expando+J.uid++}J.uid=1,J.prototype={cache:function(t){var e=t[this.expando];return e||(e={},X(t)&&(t.nodeType?t[this.expando]=e:Object.defineProperty(t,this.expando,{value:e,configurable:!0}))),e},set:function(t,e,i){var n,o=this.cache(t);if("string"==typeof e)o[_(e)]=i;else for(n in e)o[_(n)]=e[n];return o},get:function(t,e){return void 0===e?this.cache(t):t[this.expando]&&t[this.expando][_(e)]},access:function(t,e,i){return void 0===e||e&&"string"==typeof e&&void 0===i?this.get(t,e):(this.set(t,e,i),void 0!==i?i:e)},remove:function(t,e){var i,n=t[this.expando];if(void 0!==n){if(void 0!==e){i=(e=Array.isArray(e)?e.map(_):(e=_(e))in n?[e]:e.match(R)||[]).length;for(;i--;)delete n[e[i]]}(void 0===e||W.isEmptyObject(n))&&(t.nodeType?t[this.expando]=void 0:delete t[this.expando])}},hasData:function(t){var e=t[this.expando];return void 0!==e&&!W.isEmptyObject(e)}};var Y=new J,Z=new J,tt=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,et=/[A-Z]/g;function it(t,e,i){var n;if(void 0===i&&1===t.nodeType)if(n="data-"+e.replace(et,"-$&").toLowerCase(),"string"==typeof(i=t.getAttribute(n))){try{i=function(t){return"true"===t||"false"!==t&&("null"===t?null:t===+t+""?+t:tt.test(t)?JSON.parse(t):t)}(i)}catch(t){}Z.set(t,e,i)}else i=void 0;return i}W.extend({hasData:function(t){return Z.hasData(t)||Y.hasData(t)},data:function(t,e,i){return Z.access(t,e,i)},removeData:function(t,e){Z.remove(t,e)},_data:function(t,e,i){return Y.access(t,e,i)},_removeData:function(t,e){Y.remove(t,e)}}),W.fn.extend({data:function(t,e){var i,n,o,s=this[0],a=s&&s.attributes;if(void 0===t){if(this.length&&(o=Z.get(s),1===s.nodeType&&!Y.get(s,"hasDataAttrs"))){for(i=a.length;i--;)a[i]&&0===(n=a[i].name).indexOf("data-")&&(n=_(n.slice(5)),it(s,n,o[n]));Y.set(s,"hasDataAttrs",!0)}return o}return"object"==typeof t?this.each(function(){Z.set(this,t)}):j(this,function(e){var i;if(s&&void 0===e)return void 0!==(i=Z.get(s,t))?i:void 0!==(i=it(s,t))?i:void 0;this.each(function(){Z.set(this,t,e)})},null,e,arguments.length>1,null,!0)},removeData:function(t){return this.each(function(){Z.remove(this,t)})}}),W.extend({queue:function(t,e,i){var n;if(t)return e=(e||"fx")+"queue",n=Y.get(t,e),i&&(!n||Array.isArray(i)?n=Y.access(t,e,W.makeArray(i)):n.push(i)),n||[]},dequeue:function(t,e){e=e||"fx";var i=W.queue(t,e),n=i.length,o=i.shift(),s=W._queueHooks(t,e);"inprogress"===o&&(o=i.shift(),n--),o&&("fx"===e&&i.unshift("inprogress"),delete s.stop,o.call(t,function(){W.dequeue(t,e)},s)),!n&&s&&s.empty.fire()},_queueHooks:function(t,e){var i=e+"queueHooks";return Y.get(t,i)||Y.access(t,i,{empty:W.Callbacks("once memory").add(function(){Y.remove(t,[e+"queue",i])})})}}),W.fn.extend({queue:function(t,e){var i=2;return"string"!=typeof t&&(e=t,t="fx",i--),arguments.length<i?W.queue(this[0],t):void 0===e?this:this.each(function(){var i=W.queue(this,t,e);W._queueHooks(this,t),"fx"===t&&"inprogress"!==i[0]&&W.dequeue(this,t)})},dequeue:function(t){return this.each(function(){W.dequeue(this,t)})},clearQueue:function(t){return this.queue(t||"fx",[])},promise:function(t,e){var i,n=1,o=W.Deferred(),s=this,a=this.length,r=function(){--n||o.resolveWith(s,[s])};for("string"!=typeof t&&(e=t,t=void 0),t=t||"fx";a--;)(i=Y.get(s[a],t+"queueHooks"))&&i.empty&&(n++,i.empty.add(r));return r(),o.promise(e)}});var nt=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ot=new RegExp("^(?:([+-])=|)("+nt+")([a-z%]*)$","i"),st=["Top","Right","Bottom","Left"],at=function(t,e){return"none"===(t=e||t).style.display||""===t.style.display&&W.contains(t.ownerDocument,t)&&"none"===W.css(t,"display")},rt=function(t,e,i,n){var o,s,a={};for(s in e)a[s]=t.style[s],t.style[s]=e[s];for(s in o=i.apply(t,n||[]),e)t.style[s]=a[s];return o};function lt(t,e,i,n){var o,s,a=20,r=n?function(){return n.cur()}:function(){return W.css(t,e,"")},l=r(),u=i&&i[3]||(W.cssNumber[e]?"":"px"),c=(W.cssNumber[e]||"px"!==u&&+l)&&ot.exec(W.css(t,e));if(c&&c[3]!==u){for(l/=2,u=u||c[3],c=+l||1;a--;)W.style(t,e,c+u),(1-s)*(1-(s=r()/l||.5))<=0&&(a=0),c/=s;c*=2,W.style(t,e,c+u),i=i||[]}return i&&(c=+c||+l||0,o=i[1]?c+(i[1]+1)*i[2]:+i[2],n&&(n.unit=u,n.start=c,n.end=o)),o}var ut={};function ct(t){var e,i=t.ownerDocument,n=t.nodeName,o=ut[n];return o||(e=i.body.appendChild(i.createElement(n)),o=W.css(e,"display"),e.parentNode.removeChild(e),"none"===o&&(o="block"),ut[n]=o,o)}function ht(t,e){for(var i,n,o=[],s=0,a=t.length;s<a;s++)(n=t[s]).style&&(i=n.style.display,e?("none"===i&&(o[s]=Y.get(n,"display")||null,o[s]||(n.style.display="")),""===n.style.display&&at(n)&&(o[s]=ct(n))):"none"!==i&&(o[s]="none",Y.set(n,"display",i)));for(s=0;s<a;s++)null!=o[s]&&(t[s].style.display=o[s]);return t}W.fn.extend({show:function(){return ht(this,!0)},hide:function(){return ht(this)},toggle:function(t){return"boolean"==typeof t?t?this.show():this.hide():this.each(function(){at(this)?W(this).show():W(this).hide()})}});var dt=/^(?:checkbox|radio)$/i,pt=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,gt=/^$|^module$|\/(?:java|ecma)script/i,ft={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function mt(t,e){var i;return i=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[],void 0===e||e&&S(t,e)?W.merge([t],i):i}function yt(t,e){for(var i=0,n=t.length;i<n;i++)Y.set(t[i],"globalEval",!e||Y.get(e[i],"globalEval"))}ft.optgroup=ft.option,ft.tbody=ft.tfoot=ft.colgroup=ft.caption=ft.thead,ft.th=ft.td;var bt,vt,wt=/<|&#?\w+;/;function xt(t,e,i,n,o){for(var s,a,r,l,u,c,h=e.createDocumentFragment(),d=[],p=0,g=t.length;p<g;p++)if((s=t[p])||0===s)if("object"===E(s))W.merge(d,s.nodeType?[s]:s);else if(wt.test(s)){for(a=a||h.appendChild(e.createElement("div")),r=(pt.exec(s)||["",""])[1].toLowerCase(),l=ft[r]||ft._default,a.innerHTML=l[1]+W.htmlPrefilter(s)+l[2],c=l[0];c--;)a=a.lastChild;W.merge(d,a.childNodes),(a=h.firstChild).textContent=""}else d.push(e.createTextNode(s));for(h.textContent="",p=0;s=d[p++];)if(n&&W.inArray(s,n)>-1)o&&o.push(s);else if(u=W.contains(s.ownerDocument,s),a=mt(h.appendChild(s),"script"),u&&yt(a),i)for(c=0;s=a[c++];)gt.test(s.type||"")&&i.push(s);return h}bt=a.createDocumentFragment().appendChild(a.createElement("div")),(vt=a.createElement("input")).setAttribute("type","radio"),vt.setAttribute("checked","checked"),vt.setAttribute("name","t"),bt.appendChild(vt),y.checkClone=bt.cloneNode(!0).cloneNode(!0).lastChild.checked,bt.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!bt.cloneNode(!0).lastChild.defaultValue;var Et=a.documentElement,Wt=/^key/,Ct=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,$t=/^([^.]*)(?:\.(.+)|)/;function It(){return!0}function Tt(){return!1}function Lt(){try{return a.activeElement}catch(t){}}function Dt(t,e,i,n,o,s){var a,r;if("object"==typeof e){for(r in"string"!=typeof i&&(n=n||i,i=void 0),e)Dt(t,r,i,n,e[r],s);return t}if(null==n&&null==o?(o=i,n=i=void 0):null==o&&("string"==typeof i?(o=n,n=void 0):(o=n,n=i,i=void 0)),!1===o)o=Tt;else if(!o)return t;return 1===s&&(a=o,(o=function(t){return W().off(t),a.apply(this,arguments)}).guid=a.guid||(a.guid=W.guid++)),t.each(function(){W.event.add(this,e,o,n,i)})}W.event={global:{},add:function(t,e,i,n,o){var s,a,r,l,u,c,h,d,p,g,f,m=Y.get(t);if(m)for(i.handler&&(i=(s=i).handler,o=s.selector),o&&W.find.matchesSelector(Et,o),i.guid||(i.guid=W.guid++),(l=m.events)||(l=m.events={}),(a=m.handle)||(a=m.handle=function(e){return void 0!==W&&W.event.triggered!==e.type?W.event.dispatch.apply(t,arguments):void 0}),u=(e=(e||"").match(R)||[""]).length;u--;)p=f=(r=$t.exec(e[u])||[])[1],g=(r[2]||"").split(".").sort(),p&&(h=W.event.special[p]||{},p=(o?h.delegateType:h.bindType)||p,h=W.event.special[p]||{},c=W.extend({type:p,origType:f,data:n,handler:i,guid:i.guid,selector:o,needsContext:o&&W.expr.match.needsContext.test(o),namespace:g.join(".")},s),(d=l[p])||((d=l[p]=[]).delegateCount=0,h.setup&&!1!==h.setup.call(t,n,g,a)||t.addEventListener&&t.addEventListener(p,a)),h.add&&(h.add.call(t,c),c.handler.guid||(c.handler.guid=i.guid)),o?d.splice(d.delegateCount++,0,c):d.push(c),W.event.global[p]=!0)},remove:function(t,e,i,n,o){var s,a,r,l,u,c,h,d,p,g,f,m=Y.hasData(t)&&Y.get(t);if(m&&(l=m.events)){for(u=(e=(e||"").match(R)||[""]).length;u--;)if(p=f=(r=$t.exec(e[u])||[])[1],g=(r[2]||"").split(".").sort(),p){for(h=W.event.special[p]||{},d=l[p=(n?h.delegateType:h.bindType)||p]||[],r=r[2]&&new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=s=d.length;s--;)c=d[s],!o&&f!==c.origType||i&&i.guid!==c.guid||r&&!r.test(c.namespace)||n&&n!==c.selector&&("**"!==n||!c.selector)||(d.splice(s,1),c.selector&&d.delegateCount--,h.remove&&h.remove.call(t,c));a&&!d.length&&(h.teardown&&!1!==h.teardown.call(t,g,m.handle)||W.removeEvent(t,p,m.handle),delete l[p])}else for(p in l)W.event.remove(t,p+e[u],i,n,!0);W.isEmptyObject(l)&&Y.remove(t,"handle events")}},dispatch:function(t){var e,i,n,o,s,a,r=W.event.fix(t),l=new Array(arguments.length),u=(Y.get(this,"events")||{})[r.type]||[],c=W.event.special[r.type]||{};for(l[0]=r,e=1;e<arguments.length;e++)l[e]=arguments[e];if(r.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,r)){for(a=W.event.handlers.call(this,r,u),e=0;(o=a[e++])&&!r.isPropagationStopped();)for(r.currentTarget=o.elem,i=0;(s=o.handlers[i++])&&!r.isImmediatePropagationStopped();)r.rnamespace&&!r.rnamespace.test(s.namespace)||(r.handleObj=s,r.data=s.data,void 0!==(n=((W.event.special[s.origType]||{}).handle||s.handler).apply(o.elem,l))&&!1===(r.result=n)&&(r.preventDefault(),r.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,r),r.result}},handlers:function(t,e){var i,n,o,s,a,r=[],l=e.delegateCount,u=t.target;if(l&&u.nodeType&&!("click"===t.type&&t.button>=1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&("click"!==t.type||!0!==u.disabled)){for(s=[],a={},i=0;i<l;i++)void 0===a[o=(n=e[i]).selector+" "]&&(a[o]=n.needsContext?W(o,this).index(u)>-1:W.find(o,this,null,[u]).length),a[o]&&s.push(n);s.length&&r.push({elem:u,handlers:s})}return u=this,l<e.length&&r.push({elem:u,handlers:e.slice(l)}),r},addProp:function(t,e){Object.defineProperty(W.Event.prototype,t,{enumerable:!0,configurable:!0,get:b(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(t){return t[W.expando]?t:new W.Event(t)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==Lt()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===Lt()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&S(this,"input"))return this.click(),!1},_default:function(t){return S(t.target,"a")}},beforeunload:{postDispatch:function(t){void 0!==t.result&&t.originalEvent&&(t.originalEvent.returnValue=t.result)}}}},W.removeEvent=function(t,e,i){t.removeEventListener&&t.removeEventListener(e,i)},W.Event=function(t,e){if(!(this instanceof W.Event))return new W.Event(t,e);t&&t.type?(this.originalEvent=t,this.type=t.type,this.isDefaultPrevented=t.defaultPrevented||void 0===t.defaultPrevented&&!1===t.returnValue?It:Tt,this.target=t.target&&3===t.target.nodeType?t.target.parentNode:t.target,this.currentTarget=t.currentTarget,this.relatedTarget=t.relatedTarget):this.type=t,e&&W.extend(this,e),this.timeStamp=t&&t.timeStamp||Date.now(),this[W.expando]=!0},W.Event.prototype={constructor:W.Event,isDefaultPrevented:Tt,isPropagationStopped:Tt,isImmediatePropagationStopped:Tt,isSimulated:!1,preventDefault:function(){var t=this.originalEvent;this.isDefaultPrevented=It,t&&!this.isSimulated&&t.preventDefault()},stopPropagation:function(){var t=this.originalEvent;this.isPropagationStopped=It,t&&!this.isSimulated&&t.stopPropagation()},stopImmediatePropagation:function(){var t=this.originalEvent;this.isImmediatePropagationStopped=It,t&&!this.isSimulated&&t.stopImmediatePropagation(),this.stopPropagation()}},W.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(t){var e=t.button;return null==t.which&&Wt.test(t.type)?null!=t.charCode?t.charCode:t.keyCode:!t.which&&void 0!==e&&Ct.test(t.type)?1&e?1:2&e?3:4&e?2:0:t.which}},W.event.addProp),W.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(t,e){W.event.special[t]={delegateType:e,bindType:e,handle:function(t){var i,n=t.relatedTarget,o=t.handleObj;return n&&(n===this||W.contains(this,n))||(t.type=o.origType,i=o.handler.apply(this,arguments),t.type=e),i}}}),W.fn.extend({on:function(t,e,i,n){return Dt(this,t,e,i,n)},one:function(t,e,i,n){return Dt(this,t,e,i,n,1)},off:function(t,e,i){var n,o;if(t&&t.preventDefault&&t.handleObj)return n=t.handleObj,W(t.delegateTarget).off(n.namespace?n.origType+"."+n.namespace:n.origType,n.selector,n.handler),this;if("object"==typeof t){for(o in t)this.off(o,e,t[o]);return this}return!1!==e&&"function"!=typeof e||(i=e,e=void 0),!1===i&&(i=Tt),this.each(function(){W.event.remove(this,t,i,e)})}});var St=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,kt=/<script|<style|<link/i,At=/checked\s*(?:[^=]|=\s*.checked.)/i,Mt=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Pt(t,e){return S(t,"table")&&S(11!==e.nodeType?e:e.firstChild,"tr")&&W(t).children("tbody")[0]||t}function Ft(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function Ot(t){return"true/"===(t.type||"").slice(0,5)?t.type=t.type.slice(5):t.removeAttribute("type"),t}function Bt(t,e){var i,n,o,s,a,r,l,u;if(1===e.nodeType){if(Y.hasData(t)&&(s=Y.access(t),a=Y.set(e,s),u=s.events))for(o in delete a.handle,a.events={},u)for(i=0,n=u[o].length;i<n;i++)W.event.add(e,o,u[o][i]);Z.hasData(t)&&(r=Z.access(t),l=W.extend({},r),Z.set(e,l))}}function Rt(t,e,i,n){e=u.apply([],e);var o,s,a,r,l,c,h=0,d=t.length,p=d-1,g=e[0],f=b(g);if(f||d>1&&"string"==typeof g&&!y.checkClone&&At.test(g))return t.each(function(o){var s=t.eq(o);f&&(e[0]=g.call(this,o,s.html())),Rt(s,e,i,n)});if(d&&(s=(o=xt(e,t[0].ownerDocument,!1,t,n)).firstChild,1===o.childNodes.length&&(o=s),s||n)){for(r=(a=W.map(mt(o,"script"),Ft)).length;h<d;h++)l=o,h!==p&&(l=W.clone(l,!0,!0),r&&W.merge(a,mt(l,"script"))),i.call(t[h],l,h);if(r)for(c=a[a.length-1].ownerDocument,W.map(a,Ot),h=0;h<r;h++)l=a[h],gt.test(l.type||"")&&!Y.access(l,"globalEval")&&W.contains(c,l)&&(l.src&&"module"!==(l.type||"").toLowerCase()?W._evalUrl&&W._evalUrl(l.src):x(l.textContent.replace(Mt,""),c,l))}return t}function zt(t,e,i){for(var n,o=e?W.filter(e,t):t,s=0;null!=(n=o[s]);s++)i||1!==n.nodeType||W.cleanData(mt(n)),n.parentNode&&(i&&W.contains(n.ownerDocument,n)&&yt(mt(n,"script")),n.parentNode.removeChild(n));return t}W.extend({htmlPrefilter:function(t){return t.replace(St,"<$1></$2>")},clone:function(t,e,i){var n,o,s,a,r,l,u,c=t.cloneNode(!0),h=W.contains(t.ownerDocument,t);if(!(y.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||W.isXMLDoc(t)))for(a=mt(c),n=0,o=(s=mt(t)).length;n<o;n++)r=s[n],l=a[n],u=void 0,"input"===(u=l.nodeName.toLowerCase())&&dt.test(r.type)?l.checked=r.checked:"input"!==u&&"textarea"!==u||(l.defaultValue=r.defaultValue);if(e)if(i)for(s=s||mt(t),a=a||mt(c),n=0,o=s.length;n<o;n++)Bt(s[n],a[n]);else Bt(t,c);return(a=mt(c,"script")).length>0&&yt(a,!h&&mt(t,"script")),c},cleanData:function(t){for(var e,i,n,o=W.event.special,s=0;void 0!==(i=t[s]);s++)if(X(i)){if(e=i[Y.expando]){if(e.events)for(n in e.events)o[n]?W.event.remove(i,n):W.removeEvent(i,n,e.handle);i[Y.expando]=void 0}i[Z.expando]&&(i[Z.expando]=void 0)}}}),W.fn.extend({detach:function(t){return zt(this,t,!0)},remove:function(t){return zt(this,t)},text:function(t){return j(this,function(t){return void 0===t?W.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 Rt(this,arguments,function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Pt(this,t).appendChild(t)})},prepend:function(){return Rt(this,arguments,function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=Pt(this,t);e.insertBefore(t,e.firstChild)}})},before:function(){return Rt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return Rt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(W.cleanData(mt(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map(function(){return W.clone(this,t,e)})},html:function(t){return j(this,function(t){var e=this[0]||{},i=0,n=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!kt.test(t)&&!ft[(pt.exec(t)||["",""])[1].toLowerCase()]){t=W.htmlPrefilter(t);try{for(;i<n;i++)1===(e=this[i]||{}).nodeType&&(W.cleanData(mt(e,!1)),e.innerHTML=t);e=0}catch(t){}}e&&this.empty().append(t)},null,t,arguments.length)},replaceWith:function(){var t=[];return Rt(this,arguments,function(e){var i=this.parentNode;W.inArray(this,t)<0&&(W.cleanData(mt(this)),i&&i.replaceChild(e,this))},t)}}),W.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(t,e){W.fn[t]=function(t){for(var i,n=[],o=W(t),s=o.length-1,a=0;a<=s;a++)i=a===s?this:this.clone(!0),W(o[a])[e](i),c.apply(n,i.get());return this.pushStack(n)}});var Ht=new RegExp("^("+nt+")(?!px)[a-z%]+$","i"),Ut=function(t){var e=t.ownerDocument.defaultView;return e&&e.opener||(e=i),e.getComputedStyle(t)},Nt=new RegExp(st.join("|"),"i");function Kt(t,e,i){var n,o,s,a,r=t.style;return(i=i||Ut(t))&&(""!==(a=i.getPropertyValue(e)||i[e])||W.contains(t.ownerDocument,t)||(a=W.style(t,e)),!y.pixelBoxStyles()&&Ht.test(a)&&Nt.test(e)&&(n=r.width,o=r.minWidth,s=r.maxWidth,r.minWidth=r.maxWidth=r.width=a,a=i.width,r.width=n,r.minWidth=o,r.maxWidth=s)),void 0!==a?a+"":a}function Gt(t,e){return{get:function(){if(!t())return(this.get=e).apply(this,arguments);delete this.get}}}!function(){function t(){if(c){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",c.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",Et.appendChild(u).appendChild(c);var t=i.getComputedStyle(c);n="1%"!==t.top,l=12===e(t.marginLeft),c.style.right="60%",r=36===e(t.right),o=36===e(t.width),c.style.position="absolute",s=36===c.offsetWidth||"absolute",Et.removeChild(u),c=null}}function e(t){return Math.round(parseFloat(t))}var n,o,s,r,l,u=a.createElement("div"),c=a.createElement("div");c.style&&(c.style.backgroundClip="content-box",c.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===c.style.backgroundClip,W.extend(y,{boxSizingReliable:function(){return t(),o},pixelBoxStyles:function(){return t(),r},pixelPosition:function(){return t(),n},reliableMarginLeft:function(){return t(),l},scrollboxSize:function(){return t(),s}}))}();var jt=/^(none|table(?!-c[ea]).+)/,Vt=/^--/,qt={position:"absolute",visibility:"hidden",display:"block"},Qt={letterSpacing:"0",fontWeight:"400"},_t=["Webkit","Moz","ms"],Xt=a.createElement("div").style;function Jt(t){var e=W.cssProps[t];return e||(e=W.cssProps[t]=function(t){if(t in Xt)return t;for(var e=t[0].toUpperCase()+t.slice(1),i=_t.length;i--;)if((t=_t[i]+e)in Xt)return t}(t)||t),e}function Yt(t,e,i){var n=ot.exec(e);return n?Math.max(0,n[2]-(i||0))+(n[3]||"px"):e}function Zt(t,e,i,n,o,s){var a="width"===e?1:0,r=0,l=0;if(i===(n?"border":"content"))return 0;for(;a<4;a+=2)"margin"===i&&(l+=W.css(t,i+st[a],!0,o)),n?("content"===i&&(l-=W.css(t,"padding"+st[a],!0,o)),"margin"!==i&&(l-=W.css(t,"border"+st[a]+"Width",!0,o))):(l+=W.css(t,"padding"+st[a],!0,o),"padding"!==i?l+=W.css(t,"border"+st[a]+"Width",!0,o):r+=W.css(t,"border"+st[a]+"Width",!0,o));return!n&&s>=0&&(l+=Math.max(0,Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-s-l-r-.5))),l}function te(t,e,i){var n=Ut(t),o=Kt(t,e,n),s="border-box"===W.css(t,"boxSizing",!1,n),a=s;if(Ht.test(o)){if(!i)return o;o="auto"}return a=a&&(y.boxSizingReliable()||o===t.style[e]),("auto"===o||!parseFloat(o)&&"inline"===W.css(t,"display",!1,n))&&(o=t["offset"+e[0].toUpperCase()+e.slice(1)],a=!0),(o=parseFloat(o)||0)+Zt(t,e,i||(s?"border":"content"),a,n,o)+"px"}function ee(t,e,i,n,o){return new ee.prototype.init(t,e,i,n,o)}W.extend({cssHooks:{opacity:{get:function(t,e){if(e){var i=Kt(t,"opacity");return""===i?"1":i}}}},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,e,i,n){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var o,s,a,r=_(e),l=Vt.test(e),u=t.style;if(l||(e=Jt(r)),a=W.cssHooks[e]||W.cssHooks[r],void 0===i)return a&&"get"in a&&void 0!==(o=a.get(t,!1,n))?o:u[e];"string"===(s=typeof i)&&(o=ot.exec(i))&&o[1]&&(i=lt(t,e,o),s="number"),null!=i&&i==i&&("number"===s&&(i+=o&&o[3]||(W.cssNumber[r]?"":"px")),y.clearCloneStyle||""!==i||0!==e.indexOf("background")||(u[e]="inherit"),a&&"set"in a&&void 0===(i=a.set(t,i,n))||(l?u.setProperty(e,i):u[e]=i))}},css:function(t,e,i,n){var o,s,a,r=_(e);return Vt.test(e)||(e=Jt(r)),(a=W.cssHooks[e]||W.cssHooks[r])&&"get"in a&&(o=a.get(t,!0,i)),void 0===o&&(o=Kt(t,e,n)),"normal"===o&&e in Qt&&(o=Qt[e]),""===i||i?(s=parseFloat(o),!0===i||isFinite(s)?s||0:o):o}}),W.each(["height","width"],function(t,e){W.cssHooks[e]={get:function(t,i,n){if(i)return!jt.test(W.css(t,"display"))||t.getClientRects().length&&t.getBoundingClientRect().width?te(t,e,n):rt(t,qt,function(){return te(t,e,n)})},set:function(t,i,n){var o,s=Ut(t),a="border-box"===W.css(t,"boxSizing",!1,s),r=n&&Zt(t,e,n,a,s);return a&&y.scrollboxSize()===s.position&&(r-=Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-parseFloat(s[e])-Zt(t,e,"border",!1,s)-.5)),r&&(o=ot.exec(i))&&"px"!==(o[3]||"px")&&(t.style[e]=i,i=W.css(t,e)),Yt(0,i,r)}}}),W.cssHooks.marginLeft=Gt(y.reliableMarginLeft,function(t,e){if(e)return(parseFloat(Kt(t,"marginLeft"))||t.getBoundingClientRect().left-rt(t,{marginLeft:0},function(){return t.getBoundingClientRect().left}))+"px"}),W.each({margin:"",padding:"",border:"Width"},function(t,e){W.cssHooks[t+e]={expand:function(i){for(var n=0,o={},s="string"==typeof i?i.split(" "):[i];n<4;n++)o[t+st[n]+e]=s[n]||s[n-2]||s[0];return o}},"margin"!==t&&(W.cssHooks[t+e].set=Yt)}),W.fn.extend({css:function(t,e){return j(this,function(t,e,i){var n,o,s={},a=0;if(Array.isArray(e)){for(n=Ut(t),o=e.length;a<o;a++)s[e[a]]=W.css(t,e[a],!1,n);return s}return void 0!==i?W.style(t,e,i):W.css(t,e)},t,e,arguments.length>1)}}),W.Tween=ee,ee.prototype={constructor:ee,init:function(t,e,i,n,o,s){this.elem=t,this.prop=i,this.easing=o||W.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=n,this.unit=s||(W.cssNumber[i]?"":"px")},cur:function(){var t=ee.propHooks[this.prop];return t&&t.get?t.get(this):ee.propHooks._default.get(this)},run:function(t){var e,i=ee.propHooks[this.prop];return this.options.duration?this.pos=e=W.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),i&&i.set?i.set(this):ee.propHooks._default.set(this),this}},ee.prototype.init.prototype=ee.prototype,ee.propHooks={_default:{get:function(t){var e;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(e=W.css(t.elem,t.prop,""))&&"auto"!==e?e:0},set:function(t){W.fx.step[t.prop]?W.fx.step[t.prop](t):1!==t.elem.nodeType||null==t.elem.style[W.cssProps[t.prop]]&&!W.cssHooks[t.prop]?t.elem[t.prop]=t.now:W.style(t.elem,t.prop,t.now+t.unit)}}},ee.propHooks.scrollTop=ee.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},W.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},W.fx=ee.prototype.init,W.fx.step={};var ie,ne,oe=/^(?:toggle|show|hide)$/,se=/queueHooks$/;function ae(){ne&&(!1===a.hidden&&i.requestAnimationFrame?i.requestAnimationFrame(ae):i.setTimeout(ae,W.fx.interval),W.fx.tick())}function re(){return i.setTimeout(function(){ie=void 0}),ie=Date.now()}function le(t,e){var i,n=0,o={height:t};for(e=e?1:0;n<4;n+=2-e)o["margin"+(i=st[n])]=o["padding"+i]=t;return e&&(o.opacity=o.width=t),o}function ue(t,e,i){for(var n,o=(ce.tweeners[e]||[]).concat(ce.tweeners["*"]),s=0,a=o.length;s<a;s++)if(n=o[s].call(i,e,t))return n}function ce(t,e,i){var n,o,s=0,a=ce.prefilters.length,r=W.Deferred().always(function(){delete l.elem}),l=function(){if(o)return!1;for(var e=ie||re(),i=Math.max(0,u.startTime+u.duration-e),n=1-(i/u.duration||0),s=0,a=u.tweens.length;s<a;s++)u.tweens[s].run(n);return r.notifyWith(t,[u,n,i]),n<1&&a?i:(a||r.notifyWith(t,[u,1,0]),r.resolveWith(t,[u]),!1)},u=r.promise({elem:t,props:W.extend({},e),opts:W.extend(!0,{specialEasing:{},easing:W.easing._default},i),originalProperties:e,originalOptions:i,startTime:ie||re(),duration:i.duration,tweens:[],createTween:function(e,i){var n=W.Tween(t,u.opts,e,i,u.opts.specialEasing[e]||u.opts.easing);return u.tweens.push(n),n},stop:function(e){var i=0,n=e?u.tweens.length:0;if(o)return this;for(o=!0;i<n;i++)u.tweens[i].run(1);return e?(r.notifyWith(t,[u,1,0]),r.resolveWith(t,[u,e])):r.rejectWith(t,[u,e]),this}}),c=u.props;for(!function(t,e){var i,n,o,s,a;for(i in t)if(o=e[n=_(i)],s=t[i],Array.isArray(s)&&(o=s[1],s=t[i]=s[0]),i!==n&&(t[n]=s,delete t[i]),(a=W.cssHooks[n])&&"expand"in a)for(i in s=a.expand(s),delete t[n],s)i in t||(t[i]=s[i],e[i]=o);else e[n]=o}(c,u.opts.specialEasing);s<a;s++)if(n=ce.prefilters[s].call(u,t,c,u.opts))return b(n.stop)&&(W._queueHooks(u.elem,u.opts.queue).stop=n.stop.bind(n)),n;return W.map(c,ue,u),b(u.opts.start)&&u.opts.start.call(t,u),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always),W.fx.timer(W.extend(l,{elem:t,anim:u,queue:u.opts.queue})),u}W.Animation=W.extend(ce,{tweeners:{"*":[function(t,e){var i=this.createTween(t,e);return lt(i.elem,t,ot.exec(e),i),i}]},tweener:function(t,e){b(t)?(e=t,t=["*"]):t=t.match(R);for(var i,n=0,o=t.length;n<o;n++)i=t[n],ce.tweeners[i]=ce.tweeners[i]||[],ce.tweeners[i].unshift(e)},prefilters:[function(t,e,i){var n,o,s,a,r,l,u,c,h="width"in e||"height"in e,d=this,p={},g=t.style,f=t.nodeType&&at(t),m=Y.get(t,"fxshow");for(n in i.queue||(null==(a=W._queueHooks(t,"fx")).unqueued&&(a.unqueued=0,r=a.empty.fire,a.empty.fire=function(){a.unqueued||r()}),a.unqueued++,d.always(function(){d.always(function(){a.unqueued--,W.queue(t,"fx").length||a.empty.fire()})})),e)if(o=e[n],oe.test(o)){if(delete e[n],s=s||"toggle"===o,o===(f?"hide":"show")){if("show"!==o||!m||void 0===m[n])continue;f=!0}p[n]=m&&m[n]||W.style(t,n)}if((l=!W.isEmptyObject(e))||!W.isEmptyObject(p))for(n in h&&1===t.nodeType&&(i.overflow=[g.overflow,g.overflowX,g.overflowY],null==(u=m&&m.display)&&(u=Y.get(t,"display")),"none"===(c=W.css(t,"display"))&&(u?c=u:(ht([t],!0),u=t.style.display||u,c=W.css(t,"display"),ht([t]))),("inline"===c||"inline-block"===c&&null!=u)&&"none"===W.css(t,"float")&&(l||(d.done(function(){g.display=u}),null==u&&(c=g.display,u="none"===c?"":c)),g.display="inline-block")),i.overflow&&(g.overflow="hidden",d.always(function(){g.overflow=i.overflow[0],g.overflowX=i.overflow[1],g.overflowY=i.overflow[2]})),l=!1,p)l||(m?"hidden"in m&&(f=m.hidden):m=Y.access(t,"fxshow",{display:u}),s&&(m.hidden=!f),f&&ht([t],!0),d.done(function(){for(n in f||ht([t]),Y.remove(t,"fxshow"),p)W.style(t,n,p[n])})),l=ue(f?m[n]:0,n,d),n in m||(m[n]=l.start,f&&(l.end=l.start,l.start=0))}],prefilter:function(t,e){e?ce.prefilters.unshift(t):ce.prefilters.push(t)}}),W.speed=function(t,e,i){var n=t&&"object"==typeof t?W.extend({},t):{complete:i||!i&&e||b(t)&&t,duration:t,easing:i&&e||e&&!b(e)&&e};return W.fx.off?n.duration=0:"number"!=typeof n.duration&&(n.duration in W.fx.speeds?n.duration=W.fx.speeds[n.duration]:n.duration=W.fx.speeds._default),null!=n.queue&&!0!==n.queue||(n.queue="fx"),n.old=n.complete,n.complete=function(){b(n.old)&&n.old.call(this),n.queue&&W.dequeue(this,n.queue)},n},W.fn.extend({fadeTo:function(t,e,i,n){return this.filter(at).css("opacity",0).show().end().animate({opacity:e},t,i,n)},animate:function(t,e,i,n){var o=W.isEmptyObject(t),s=W.speed(e,i,n),a=function(){var e=ce(this,W.extend({},t),s);(o||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,o||!1===s.queue?this.each(a):this.queue(s.queue,a)},stop:function(t,e,i){var n=function(t){var e=t.stop;delete t.stop,e(i)};return"string"!=typeof t&&(i=e,e=t,t=void 0),e&&!1!==t&&this.queue(t||"fx",[]),this.each(function(){var e=!0,o=null!=t&&t+"queueHooks",s=W.timers,a=Y.get(this);if(o)a[o]&&a[o].stop&&n(a[o]);else for(o in a)a[o]&&a[o].stop&&se.test(o)&&n(a[o]);for(o=s.length;o--;)s[o].elem!==this||null!=t&&s[o].queue!==t||(s[o].anim.stop(i),e=!1,s.splice(o,1));!e&&i||W.dequeue(this,t)})},finish:function(t){return!1!==t&&(t=t||"fx"),this.each(function(){var e,i=Y.get(this),n=i[t+"queue"],o=i[t+"queueHooks"],s=W.timers,a=n?n.length:0;for(i.finish=!0,W.queue(this,t,[]),o&&o.stop&&o.stop.call(this,!0),e=s.length;e--;)s[e].elem===this&&s[e].queue===t&&(s[e].anim.stop(!0),s.splice(e,1));for(e=0;e<a;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete i.finish})}}),W.each(["toggle","show","hide"],function(t,e){var i=W.fn[e];W.fn[e]=function(t,n,o){return null==t||"boolean"==typeof t?i.apply(this,arguments):this.animate(le(e,!0),t,n,o)}}),W.each({slideDown:le("show"),slideUp:le("hide"),slideToggle:le("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(t,e){W.fn[t]=function(t,i,n){return this.animate(e,t,i,n)}}),W.timers=[],W.fx.tick=function(){var t,e=0,i=W.timers;for(ie=Date.now();e<i.length;e++)(t=i[e])()||i[e]!==t||i.splice(e--,1);i.length||W.fx.stop(),ie=void 0},W.fx.timer=function(t){W.timers.push(t),W.fx.start()},W.fx.interval=13,W.fx.start=function(){ne||(ne=!0,ae())},W.fx.stop=function(){ne=null},W.fx.speeds={slow:600,fast:200,_default:400},W.fn.delay=function(t,e){return t=W.fx&&W.fx.speeds[t]||t,e=e||"fx",this.queue(e,function(e,n){var o=i.setTimeout(e,t);n.stop=function(){i.clearTimeout(o)}})},function(){var t=a.createElement("input"),e=a.createElement("select").appendChild(a.createElement("option"));t.type="checkbox",y.checkOn=""!==t.value,y.optSelected=e.selected,(t=a.createElement("input")).value="t",t.type="radio",y.radioValue="t"===t.value}();var he,de=W.expr.attrHandle;W.fn.extend({attr:function(t,e){return j(this,W.attr,t,e,arguments.length>1)},removeAttr:function(t){return this.each(function(){W.removeAttr(this,t)})}}),W.extend({attr:function(t,e,i){var n,o,s=t.nodeType;if(3!==s&&8!==s&&2!==s)return void 0===t.getAttribute?W.prop(t,e,i):(1===s&&W.isXMLDoc(t)||(o=W.attrHooks[e.toLowerCase()]||(W.expr.match.bool.test(e)?he:void 0)),void 0!==i?null===i?void W.removeAttr(t,e):o&&"set"in o&&void 0!==(n=o.set(t,i,e))?n:(t.setAttribute(e,i+""),i):o&&"get"in o&&null!==(n=o.get(t,e))?n:null==(n=W.find.attr(t,e))?void 0:n)},attrHooks:{type:{set:function(t,e){if(!y.radioValue&&"radio"===e&&S(t,"input")){var i=t.value;return t.setAttribute("type",e),i&&(t.value=i),e}}}},removeAttr:function(t,e){var i,n=0,o=e&&e.match(R);if(o&&1===t.nodeType)for(;i=o[n++];)t.removeAttribute(i)}}),he={set:function(t,e,i){return!1===e?W.removeAttr(t,i):t.setAttribute(i,i),i}},W.each(W.expr.match.bool.source.match(/\w+/g),function(t,e){var i=de[e]||W.find.attr;de[e]=function(t,e,n){var o,s,a=e.toLowerCase();return n||(s=de[a],de[a]=o,o=null!=i(t,e,n)?a:null,de[a]=s),o}});var pe=/^(?:input|select|textarea|button)$/i,ge=/^(?:a|area)$/i;function fe(t){return(t.match(R)||[]).join(" ")}function me(t){return t.getAttribute&&t.getAttribute("class")||""}function ye(t){return Array.isArray(t)?t:"string"==typeof t&&t.match(R)||[]}W.fn.extend({prop:function(t,e){return j(this,W.prop,t,e,arguments.length>1)},removeProp:function(t){return this.each(function(){delete this[W.propFix[t]||t]})}}),W.extend({prop:function(t,e,i){var n,o,s=t.nodeType;if(3!==s&&8!==s&&2!==s)return 1===s&&W.isXMLDoc(t)||(e=W.propFix[e]||e,o=W.propHooks[e]),void 0!==i?o&&"set"in o&&void 0!==(n=o.set(t,i,e))?n:t[e]=i:o&&"get"in o&&null!==(n=o.get(t,e))?n:t[e]},propHooks:{tabIndex:{get:function(t){var e=W.find.attr(t,"tabindex");return e?parseInt(e,10):pe.test(t.nodeName)||ge.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),y.optSelected||(W.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null},set:function(t){var e=t.parentNode;e&&(e.selectedIndex,e.parentNode&&e.parentNode.selectedIndex)}}),W.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){W.propFix[this.toLowerCase()]=this}),W.fn.extend({addClass:function(t){var e,i,n,o,s,a,r,l=0;if(b(t))return this.each(function(e){W(this).addClass(t.call(this,e,me(this)))});if((e=ye(t)).length)for(;i=this[l++];)if(o=me(i),n=1===i.nodeType&&" "+fe(o)+" "){for(a=0;s=e[a++];)n.indexOf(" "+s+" ")<0&&(n+=s+" ");o!==(r=fe(n))&&i.setAttribute("class",r)}return this},removeClass:function(t){var e,i,n,o,s,a,r,l=0;if(b(t))return this.each(function(e){W(this).removeClass(t.call(this,e,me(this)))});if(!arguments.length)return this.attr("class","");if((e=ye(t)).length)for(;i=this[l++];)if(o=me(i),n=1===i.nodeType&&" "+fe(o)+" "){for(a=0;s=e[a++];)for(;n.indexOf(" "+s+" ")>-1;)n=n.replace(" "+s+" "," ");o!==(r=fe(n))&&i.setAttribute("class",r)}return this},toggleClass:function(t,e){var i=typeof t,n="string"===i||Array.isArray(t);return"boolean"==typeof e&&n?e?this.addClass(t):this.removeClass(t):b(t)?this.each(function(i){W(this).toggleClass(t.call(this,i,me(this),e),e)}):this.each(function(){var e,o,s,a;if(n)for(o=0,s=W(this),a=ye(t);e=a[o++];)s.hasClass(e)?s.removeClass(e):s.addClass(e);else void 0!==t&&"boolean"!==i||((e=me(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===t?"":Y.get(this,"__className__")||""))})},hasClass:function(t){var e,i,n=0;for(e=" "+t+" ";i=this[n++];)if(1===i.nodeType&&(" "+fe(me(i))+" ").indexOf(e)>-1)return!0;return!1}});var be=/\r/g;W.fn.extend({val:function(t){var e,i,n,o=this[0];return arguments.length?(n=b(t),this.each(function(i){var o;1===this.nodeType&&(null==(o=n?t.call(this,i,W(this).val()):t)?o="":"number"==typeof o?o+="":Array.isArray(o)&&(o=W.map(o,function(t){return null==t?"":t+""})),(e=W.valHooks[this.type]||W.valHooks[this.nodeName.toLowerCase()])&&"set"in e&&void 0!==e.set(this,o,"value")||(this.value=o))})):o?(e=W.valHooks[o.type]||W.valHooks[o.nodeName.toLowerCase()])&&"get"in e&&void 0!==(i=e.get(o,"value"))?i:"string"==typeof(i=o.value)?i.replace(be,""):null==i?"":i:void 0}}),W.extend({valHooks:{option:{get:function(t){var e=W.find.attr(t,"value");return null!=e?e:fe(W.text(t))}},select:{get:function(t){var e,i,n,o=t.options,s=t.selectedIndex,a="select-one"===t.type,r=a?null:[],l=a?s+1:o.length;for(n=s<0?l:a?s:0;n<l;n++)if(((i=o[n]).selected||n===s)&&!i.disabled&&(!i.parentNode.disabled||!S(i.parentNode,"optgroup"))){if(e=W(i).val(),a)return e;r.push(e)}return r},set:function(t,e){for(var i,n,o=t.options,s=W.makeArray(e),a=o.length;a--;)((n=o[a]).selected=W.inArray(W.valHooks.option.get(n),s)>-1)&&(i=!0);return i||(t.selectedIndex=-1),s}}}}),W.each(["radio","checkbox"],function(){W.valHooks[this]={set:function(t,e){if(Array.isArray(e))return t.checked=W.inArray(W(t).val(),e)>-1}},y.checkOn||(W.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})}),y.focusin="onfocusin"in i;var ve=/^(?:focusinfocus|focusoutblur)$/,we=function(t){t.stopPropagation()};W.extend(W.event,{trigger:function(t,e,n,o){var s,r,l,u,c,h,d,p,f=[n||a],m=g.call(t,"type")?t.type:t,y=g.call(t,"namespace")?t.namespace.split("."):[];if(r=p=l=n=n||a,3!==n.nodeType&&8!==n.nodeType&&!ve.test(m+W.event.triggered)&&(m.indexOf(".")>-1&&(y=m.split("."),m=y.shift(),y.sort()),c=m.indexOf(":")<0&&"on"+m,(t=t[W.expando]?t:new W.Event(m,"object"==typeof t&&t)).isTrigger=o?2:3,t.namespace=y.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+y.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),e=null==e?[t]:W.makeArray(e,[t]),d=W.event.special[m]||{},o||!d.trigger||!1!==d.trigger.apply(n,e))){if(!o&&!d.noBubble&&!v(n)){for(u=d.delegateType||m,ve.test(u+m)||(r=r.parentNode);r;r=r.parentNode)f.push(r),l=r;l===(n.ownerDocument||a)&&f.push(l.defaultView||l.parentWindow||i)}for(s=0;(r=f[s++])&&!t.isPropagationStopped();)p=r,t.type=s>1?u:d.bindType||m,(h=(Y.get(r,"events")||{})[t.type]&&Y.get(r,"handle"))&&h.apply(r,e),(h=c&&r[c])&&h.apply&&X(r)&&(t.result=h.apply(r,e),!1===t.result&&t.preventDefault());return t.type=m,o||t.isDefaultPrevented()||d._default&&!1!==d._default.apply(f.pop(),e)||!X(n)||c&&b(n[m])&&!v(n)&&((l=n[c])&&(n[c]=null),W.event.triggered=m,t.isPropagationStopped()&&p.addEventListener(m,we),n[m](),t.isPropagationStopped()&&p.removeEventListener(m,we),W.event.triggered=void 0,l&&(n[c]=l)),t.result}},simulate:function(t,e,i){var n=W.extend(new W.Event,i,{type:t,isSimulated:!0});W.event.trigger(n,null,e)}}),W.fn.extend({trigger:function(t,e){return this.each(function(){W.event.trigger(t,e,this)})},triggerHandler:function(t,e){var i=this[0];if(i)return W.event.trigger(t,e,i,!0)}}),y.focusin||W.each({focus:"focusin",blur:"focusout"},function(t,e){var i=function(t){W.event.simulate(e,t.target,W.event.fix(t))};W.event.special[e]={setup:function(){var n=this.ownerDocument||this,o=Y.access(n,e);o||n.addEventListener(t,i,!0),Y.access(n,e,(o||0)+1)},teardown:function(){var n=this.ownerDocument||this,o=Y.access(n,e)-1;o?Y.access(n,e,o):(n.removeEventListener(t,i,!0),Y.remove(n,e))}}});var xe=i.location,Ee=Date.now(),We=/\?/;W.parseXML=function(t){var e;if(!t||"string"!=typeof t)return null;try{e=(new i.DOMParser).parseFromString(t,"text/xml")}catch(t){e=void 0}return e&&!e.getElementsByTagName("parsererror").length||W.error("Invalid XML: "+t),e};var Ce=/\[\]$/,$e=/\r?\n/g,Ie=/^(?:submit|button|image|reset|file)$/i,Te=/^(?:input|select|textarea|keygen)/i;function Le(t,e,i,n){var o;if(Array.isArray(e))W.each(e,function(e,o){i||Ce.test(t)?n(t,o):Le(t+"["+("object"==typeof o&&null!=o?e:"")+"]",o,i,n)});else if(i||"object"!==E(e))n(t,e);else for(o in e)Le(t+"["+o+"]",e[o],i,n)}W.param=function(t,e){var i,n=[],o=function(t,e){var i=b(e)?e():e;n[n.length]=encodeURIComponent(t)+"="+encodeURIComponent(null==i?"":i)};if(Array.isArray(t)||t.jquery&&!W.isPlainObject(t))W.each(t,function(){o(this.name,this.value)});else for(i in t)Le(i,t[i],e,o);return n.join("&")},W.fn.extend({serialize:function(){return W.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=W.prop(this,"elements");return t?W.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!W(this).is(":disabled")&&Te.test(this.nodeName)&&!Ie.test(t)&&(this.checked||!dt.test(t))}).map(function(t,e){var i=W(this).val();return null==i?null:Array.isArray(i)?W.map(i,function(t){return{name:e.name,value:t.replace($e,"\r\n")}}):{name:e.name,value:i.replace($e,"\r\n")}}).get()}});var De=/%20/g,Se=/#.*$/,ke=/([?&])_=[^&]*/,Ae=/^(.*?):[ \t]*([^\r\n]*)$/gm,Me=/^(?:GET|HEAD)$/,Pe=/^\/\//,Fe={},Oe={},Be="*/".concat("*"),Re=a.createElement("a");function ze(t){return function(e,i){"string"!=typeof e&&(i=e,e="*");var n,o=0,s=e.toLowerCase().match(R)||[];if(b(i))for(;n=s[o++];)"+"===n[0]?(n=n.slice(1)||"*",(t[n]=t[n]||[]).unshift(i)):(t[n]=t[n]||[]).push(i)}}function He(t,e,i,n){var o={},s=t===Oe;function a(r){var l;return o[r]=!0,W.each(t[r]||[],function(t,r){var u=r(e,i,n);return"string"!=typeof u||s||o[u]?s?!(l=u):void 0:(e.dataTypes.unshift(u),a(u),!1)}),l}return a(e.dataTypes[0])||!o["*"]&&a("*")}function Ue(t,e){var i,n,o=W.ajaxSettings.flatOptions||{};for(i in e)void 0!==e[i]&&((o[i]?t:n||(n={}))[i]=e[i]);return n&&W.extend(!0,t,n),t}Re.href=xe.href,W.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:xe.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(xe.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Be,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":W.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?Ue(Ue(t,W.ajaxSettings),e):Ue(W.ajaxSettings,t)},ajaxPrefilter:ze(Fe),ajaxTransport:ze(Oe),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0),e=e||{};var n,o,s,r,l,u,c,h,d,p,g=W.ajaxSetup({},e),f=g.context||g,m=g.context&&(f.nodeType||f.jquery)?W(f):W.event,y=W.Deferred(),b=W.Callbacks("once memory"),v=g.statusCode||{},w={},x={},E="canceled",C={readyState:0,getResponseHeader:function(t){var e;if(c){if(!r)for(r={};e=Ae.exec(s);)r[e[1].toLowerCase()]=e[2];e=r[t.toLowerCase()]}return null==e?null:e},getAllResponseHeaders:function(){return c?s:null},setRequestHeader:function(t,e){return null==c&&(t=x[t.toLowerCase()]=x[t.toLowerCase()]||t,w[t]=e),this},overrideMimeType:function(t){return null==c&&(g.mimeType=t),this},statusCode:function(t){var e;if(t)if(c)C.always(t[C.status]);else for(e in t)v[e]=[v[e],t[e]];return this},abort:function(t){var e=t||E;return n&&n.abort(e),$(0,e),this}};if(y.promise(C),g.url=((t||g.url||xe.href)+"").replace(Pe,xe.protocol+"//"),g.type=e.method||e.type||g.method||g.type,g.dataTypes=(g.dataType||"*").toLowerCase().match(R)||[""],null==g.crossDomain){u=a.createElement("a");try{u.href=g.url,u.href=u.href,g.crossDomain=Re.protocol+"//"+Re.host!=u.protocol+"//"+u.host}catch(t){g.crossDomain=!0}}if(g.data&&g.processData&&"string"!=typeof g.data&&(g.data=W.param(g.data,g.traditional)),He(Fe,g,e,C),c)return C;for(d in(h=W.event&&g.global)&&0==W.active++&&W.event.trigger("ajaxStart"),g.type=g.type.toUpperCase(),g.hasContent=!Me.test(g.type),o=g.url.replace(Se,""),g.hasContent?g.data&&g.processData&&0===(g.contentType||"").indexOf("application/x-www-form-urlencoded")&&(g.data=g.data.replace(De,"+")):(p=g.url.slice(o.length),g.data&&(g.processData||"string"==typeof g.data)&&(o+=(We.test(o)?"&":"?")+g.data,delete g.data),!1===g.cache&&(o=o.replace(ke,"$1"),p=(We.test(o)?"&":"?")+"_="+Ee+++p),g.url=o+p),g.ifModified&&(W.lastModified[o]&&C.setRequestHeader("If-Modified-Since",W.lastModified[o]),W.etag[o]&&C.setRequestHeader("If-None-Match",W.etag[o])),(g.data&&g.hasContent&&!1!==g.contentType||e.contentType)&&C.setRequestHeader("Content-Type",g.contentType),C.setRequestHeader("Accept",g.dataTypes[0]&&g.accepts[g.dataTypes[0]]?g.accepts[g.dataTypes[0]]+("*"!==g.dataTypes[0]?", "+Be+"; q=0.01":""):g.accepts["*"]),g.headers)C.setRequestHeader(d,g.headers[d]);if(g.beforeSend&&(!1===g.beforeSend.call(f,C,g)||c))return C.abort();if(E="abort",b.add(g.complete),C.done(g.success),C.fail(g.error),n=He(Oe,g,e,C)){if(C.readyState=1,h&&m.trigger("ajaxSend",[C,g]),c)return C;g.async&&g.timeout>0&&(l=i.setTimeout(function(){C.abort("timeout")},g.timeout));try{c=!1,n.send(w,$)}catch(t){if(c)throw t;$(-1,t)}}else $(-1,"No Transport");function $(t,e,a,r){var u,d,p,w,x,E=e;c||(c=!0,l&&i.clearTimeout(l),n=void 0,s=r||"",C.readyState=t>0?4:0,u=t>=200&&t<300||304===t,a&&(w=function(t,e,i){for(var n,o,s,a,r=t.contents,l=t.dataTypes;"*"===l[0];)l.shift(),void 0===n&&(n=t.mimeType||e.getResponseHeader("Content-Type"));if(n)for(o in r)if(r[o]&&r[o].test(n)){l.unshift(o);break}if(l[0]in i)s=l[0];else{for(o in i){if(!l[0]||t.converters[o+" "+l[0]]){s=o;break}a||(a=o)}s=s||a}if(s)return s!==l[0]&&l.unshift(s),i[s]}(g,C,a)),w=function(t,e,i,n){var o,s,a,r,l,u={},c=t.dataTypes.slice();if(c[1])for(a in t.converters)u[a.toLowerCase()]=t.converters[a];for(s=c.shift();s;)if(t.responseFields[s]&&(i[t.responseFields[s]]=e),!l&&n&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),l=s,s=c.shift())if("*"===s)s=l;else if("*"!==l&&l!==s){if(!(a=u[l+" "+s]||u["* "+s]))for(o in u)if((r=o.split(" "))[1]===s&&(a=u[l+" "+r[0]]||u["* "+r[0]])){!0===a?a=u[o]:!0!==u[o]&&(s=r[0],c.unshift(r[1]));break}if(!0!==a)if(a&&t.throws)e=a(e);else try{e=a(e)}catch(t){return{state:"parsererror",error:a?t:"No conversion from "+l+" to "+s}}}return{state:"success",data:e}}(g,w,C,u),u?(g.ifModified&&((x=C.getResponseHeader("Last-Modified"))&&(W.lastModified[o]=x),(x=C.getResponseHeader("etag"))&&(W.etag[o]=x)),204===t||"HEAD"===g.type?E="nocontent":304===t?E="notmodified":(E=w.state,d=w.data,u=!(p=w.error))):(p=E,!t&&E||(E="error",t<0&&(t=0))),C.status=t,C.statusText=(e||E)+"",u?y.resolveWith(f,[d,E,C]):y.rejectWith(f,[C,E,p]),C.statusCode(v),v=void 0,h&&m.trigger(u?"ajaxSuccess":"ajaxError",[C,g,u?d:p]),b.fireWith(f,[C,E]),h&&(m.trigger("ajaxComplete",[C,g]),--W.active||W.event.trigger("ajaxStop")))}return C},getJSON:function(t,e,i){return W.get(t,e,i,"json")},getScript:function(t,e){return W.get(t,void 0,e,"script")}}),W.each(["get","post"],function(t,e){W[e]=function(t,i,n,o){return b(i)&&(o=o||n,n=i,i=void 0),W.ajax(W.extend({url:t,type:e,dataType:o,data:i,success:n},W.isPlainObject(t)&&t))}}),W._evalUrl=function(t){return W.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},W.fn.extend({wrapAll:function(t){var e;return this[0]&&(b(t)&&(t=t.call(this[0])),e=W(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this},wrapInner:function(t){return b(t)?this.each(function(e){W(this).wrapInner(t.call(this,e))}):this.each(function(){var e=W(this),i=e.contents();i.length?i.wrapAll(t):e.append(t)})},wrap:function(t){var e=b(t);return this.each(function(i){W(this).wrapAll(e?t.call(this,i):t)})},unwrap:function(t){return this.parent(t).not("body").each(function(){W(this).replaceWith(this.childNodes)}),this}}),W.expr.pseudos.hidden=function(t){return!W.expr.pseudos.visible(t)},W.expr.pseudos.visible=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},W.ajaxSettings.xhr=function(){try{return new i.XMLHttpRequest}catch(t){}};var Ne={0:200,1223:204},Ke=W.ajaxSettings.xhr();y.cors=!!Ke&&"withCredentials"in Ke,y.ajax=Ke=!!Ke,W.ajaxTransport(function(t){var e,n;if(y.cors||Ke&&!t.crossDomain)return{send:function(o,s){var a,r=t.xhr();if(r.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)r[a]=t.xhrFields[a];for(a in t.mimeType&&r.overrideMimeType&&r.overrideMimeType(t.mimeType),t.crossDomain||o["X-Requested-With"]||(o["X-Requested-With"]="XMLHttpRequest"),o)r.setRequestHeader(a,o[a]);e=function(t){return function(){e&&(e=n=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===t?r.abort():"error"===t?"number"!=typeof r.status?s(0,"error"):s(r.status,r.statusText):s(Ne[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=e(),n=r.onerror=r.ontimeout=e("error"),void 0!==r.onabort?r.onabort=n:r.onreadystatechange=function(){4===r.readyState&&i.setTimeout(function(){e&&n()})},e=e("abort");try{r.send(t.hasContent&&t.data||null)}catch(t){if(e)throw t}},abort:function(){e&&e()}}}),W.ajaxPrefilter(function(t){t.crossDomain&&(t.contents.script=!1)}),W.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 W.globalEval(t),t}}}),W.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),W.ajaxTransport("script",function(t){var e,i;if(t.crossDomain)return{send:function(n,o){e=W("<script>").prop({charset:t.scriptCharset,src:t.url}).on("load error",i=function(t){e.remove(),i=null,t&&o("error"===t.type?404:200,t.type)}),a.head.appendChild(e[0])},abort:function(){i&&i()}}});var Ge,je=[],Ve=/(=)\?(?=&|$)|\?\?/;W.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var t=je.pop()||W.expando+"_"+Ee++;return this[t]=!0,t}}),W.ajaxPrefilter("json jsonp",function(t,e,n){var o,s,a,r=!1!==t.jsonp&&(Ve.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ve.test(t.data)&&"data");if(r||"jsonp"===t.dataTypes[0])return o=t.jsonpCallback=b(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,r?t[r]=t[r].replace(Ve,"$1"+o):!1!==t.jsonp&&(t.url+=(We.test(t.url)?"&":"?")+t.jsonp+"="+o),t.converters["script json"]=function(){return a||W.error(o+" was not called"),a[0]},t.dataTypes[0]="json",s=i[o],i[o]=function(){a=arguments},n.always(function(){void 0===s?W(i).removeProp(o):i[o]=s,t[o]&&(t.jsonpCallback=e.jsonpCallback,je.push(o)),a&&b(s)&&s(a[0]),a=s=void 0}),"script"}),y.createHTMLDocument=((Ge=a.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Ge.childNodes.length),W.parseHTML=function(t,e,i){return"string"!=typeof t?[]:("boolean"==typeof e&&(i=e,e=!1),e||(y.createHTMLDocument?((n=(e=a.implementation.createHTMLDocument("")).createElement("base")).href=a.location.href,e.head.appendChild(n)):e=a),s=!i&&[],(o=k.exec(t))?[e.createElement(o[1])]:(o=xt([t],e,s),s&&s.length&&W(s).remove(),W.merge([],o.childNodes)));var n,o,s},W.fn.load=function(t,e,i){var n,o,s,a=this,r=t.indexOf(" ");return r>-1&&(n=fe(t.slice(r)),t=t.slice(0,r)),b(e)?(i=e,e=void 0):e&&"object"==typeof e&&(o="POST"),a.length>0&&W.ajax({url:t,type:o||"GET",dataType:"html",data:e}).done(function(t){s=arguments,a.html(n?W("<div>").append(W.parseHTML(t)).find(n):t)}).always(i&&function(t,e){a.each(function(){i.apply(this,s||[t.responseText,e,t])})}),this},W.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(t,e){W.fn[e]=function(t){return this.on(e,t)}}),W.expr.pseudos.animated=function(t){return W.grep(W.timers,function(e){return t===e.elem}).length},W.offset={setOffset:function(t,e,i){var n,o,s,a,r,l,u=W.css(t,"position"),c=W(t),h={};"static"===u&&(t.style.position="relative"),r=c.offset(),s=W.css(t,"top"),l=W.css(t,"left"),("absolute"===u||"fixed"===u)&&(s+l).indexOf("auto")>-1?(a=(n=c.position()).top,o=n.left):(a=parseFloat(s)||0,o=parseFloat(l)||0),b(e)&&(e=e.call(t,i,W.extend({},r))),null!=e.top&&(h.top=e.top-r.top+a),null!=e.left&&(h.left=e.left-r.left+o),"using"in e?e.using.call(t,h):c.css(h)}},W.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){W.offset.setOffset(this,t,e)});var e,i,n=this[0];return n?n.getClientRects().length?(e=n.getBoundingClientRect(),i=n.ownerDocument.defaultView,{top:e.top+i.pageYOffset,left:e.left+i.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var t,e,i,n=this[0],o={top:0,left:0};if("fixed"===W.css(n,"position"))e=n.getBoundingClientRect();else{for(e=this.offset(),i=n.ownerDocument,t=n.offsetParent||i.documentElement;t&&(t===i.body||t===i.documentElement)&&"static"===W.css(t,"position");)t=t.parentNode;t&&t!==n&&1===t.nodeType&&((o=W(t).offset()).top+=W.css(t,"borderTopWidth",!0),o.left+=W.css(t,"borderLeftWidth",!0))}return{top:e.top-o.top-W.css(n,"marginTop",!0),left:e.left-o.left-W.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent;t&&"static"===W.css(t,"position");)t=t.offsetParent;return t||Et})}}),W.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,e){var i="pageYOffset"===e;W.fn[t]=function(n){return j(this,function(t,n,o){var s;if(v(t)?s=t:9===t.nodeType&&(s=t.defaultView),void 0===o)return s?s[e]:t[n];s?s.scrollTo(i?s.pageXOffset:o,i?o:s.pageYOffset):t[n]=o},t,n,arguments.length)}}),W.each(["top","left"],function(t,e){W.cssHooks[e]=Gt(y.pixelPosition,function(t,i){if(i)return i=Kt(t,e),Ht.test(i)?W(t).position()[e]+"px":i})}),W.each({Height:"height",Width:"width"},function(t,e){W.each({padding:"inner"+t,content:e,"":"outer"+t},function(i,n){W.fn[n]=function(o,s){var a=arguments.length&&(i||"boolean"!=typeof o),r=i||(!0===o||!0===s?"margin":"border");return j(this,function(e,i,o){var s;return v(e)?0===n.indexOf("outer")?e["inner"+t]:e.document.documentElement["client"+t]:9===e.nodeType?(s=e.documentElement,Math.max(e.body["scroll"+t],s["scroll"+t],e.body["offset"+t],s["offset"+t],s["client"+t])):void 0===o?W.css(e,i,r):W.style(e,i,o,r)},e,a?o:void 0,a)}})}),W.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(t,e){W.fn[e]=function(t,i){return arguments.length>0?this.on(e,null,t,i):this.trigger(e)}}),W.fn.extend({hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)}}),W.fn.extend({bind:function(t,e,i){return this.on(t,null,e,i)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,i,n){return this.on(e,t,i,n)},undelegate:function(t,e,i){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",i)}}),W.proxy=function(t,e){var i,n,o;if("string"==typeof e&&(i=t[e],e=t,t=i),b(t))return n=l.call(arguments,2),(o=function(){return t.apply(e||this,n.concat(l.call(arguments)))}).guid=t.guid=t.guid||W.guid++,o},W.holdReady=function(t){t?W.readyWait++:W.ready(!0)},W.isArray=Array.isArray,W.parseJSON=JSON.parse,W.nodeName=S,W.isFunction=b,W.isWindow=v,W.camelCase=_,W.type=E,W.now=Date.now,W.isNumeric=function(t){var e=W.type(t);return("number"===e||"string"===e)&&!isNaN(t-parseFloat(t))},void 0===(n=function(){return W}.apply(e,[]))||(t.exports=n);var qe=i.jQuery,Qe=i.$;return W.noConflict=function(t){return i.$===W&&(i.$=Qe),t&&i.jQuery===W&&(i.jQuery=qe),W},o||(i.jQuery=i.$=W),W})},IJar:function(t,e,i){},IUhG:function(t,e,i){(function(t,e){App.LanguageDialog=function(t){App.LanguageDialog.super.call(this,t),this.$element.attr("id","lang-dialog"),this.interfaceLang=t.interfaceLang},t.inheritClass(App.LanguageDialog,t.ui.ProcessDialog),App.LanguageDialog.static.name="languageDialog",App.LanguageDialog.static.size="medium",App.LanguageDialog.prototype.getBodyHeight=function(){return 300},App.LanguageDialog.prototype.getSetupProcess=function(t){return t=e.extend({title:e.i18n("language-settings"),actions:[{label:e.i18n("done"),flags:["primary","progressive"],action:"done"},{label:e.i18n("cancel"),flags:"safe"}]},t),App.LanguageDialog.super.prototype.getSetupProcess.call(this,t)},App.LanguageDialog.prototype.initialize=function(){var i,n,o;App.LanguageDialog.super.prototype.initialize.apply(this,arguments),this.interfaceLangButton=new App.InterfaceLangButton({interfaceLang:this.interfaceLang}),n=new t.ui.FieldLayout(this.interfaceLangButton,{align:"top",label:e.i18n("interface-lang-field-label"),help:e.i18n("interface-lang-field-help"),helpInline:!0}),this.preferredLangsWidget=new App.UlsTagMultiselectWidget,this.preferredLangsButton=new t.ui.ButtonInputWidget({label:e.i18n("add-preferred-lang"),indicator:"down"}),this.preferredLangsButton.$element.uls({ulsPurpose:"preferredLangs",onSelect:this.preferredLangsWidget.onUlsSelect.bind(this.preferredLangsWidget),top:this.calculateUlsTop.bind(this.preferredLangsButton.$element)}),o=new t.ui.ActionFieldLayout(this.preferredLangsWidget,this.preferredLangsButton,{align:"top",label:e.i18n("preferred-langs-field-label"),help:e.i18n("preferred-langs-field-help"),helpInline:!0}),(i=new t.ui.PanelLayout({padded:!0,expanded:!1})).$element.append(n.$element,o.$element),this.$body.append(i.$element)},App.LanguageDialog.prototype.calculateUlsTop=function(){return e(this).offset().top-e(this).outerHeight()/2},App.LanguageDialog.prototype.getActionProcess=function(n){var o=this;return"done"===n?new t.ui.Process(function(){var t,e={interfaceLang:o.interfaceLangButton.currentLang,preferredLangs:o.preferredLangsWidget.getValue()};i("p46w").set("svgtranslate",e),t=window.location.href.slice(0,window.location.href.indexOf("#")),window.location.href=t,o.close({action:n})}):(e(".uls-menu").hide(),App.LanguageDialog.super.prototype.getActionProcess.call(this,n))}}).call(this,i("ovuR"),i("EVdn"))},IvOP:function(t,e,i){(function(t){
/*!
* jQuery Internationalization library
*
* Copyright (C) 2012 Santhosh Thottingal
*
* jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
* anything special to choose one license or the other and you don't have to
* notify anyone which license you are using. You are free to use
* UniversalLanguageSelector in commercial projects as long as the copyright
* header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
*
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
!function(t){"use strict";var e,i,n,o=Array.prototype.slice;(e=function(i){this.options=t.extend({},e.defaults,i),this.parser=this.options.parser,this.locale=this.options.locale,this.messageStore=this.options.messageStore,this.languages={}}).prototype={localize:function(e){var i,n,o,s,a,r;for(o=this.locale,s=0;o;){n=(i=o.split("-")).length;do{if(a=i.slice(0,n).join("-"),r=this.messageStore.get(a,e))return r;n--}while(n);if("en"===o)break;o=t.i18n.fallbacks[this.locale]&&t.i18n.fallbacks[this.locale][s]||this.options.fallbackLocale,t.i18n.log("Trying fallback locale for "+this.locale+": "+o+" ("+e+")"),s++}return""},destroy:function(){t.removeData(document,"i18n")},load:function(e,i){var n,o,s,a={};if(e||i||(e="i18n/"+t.i18n().locale+".json",i=t.i18n().locale),"string"==typeof e&&"json"!==e.split("?")[0].split(".").pop()){for(a[i]=e+"/"+i+".json",n=(t.i18n.fallbacks[i]||[]).concat(this.options.fallbackLocale),o=0;o<n.length;o++)a[s=n[o]]=e+"/"+s+".json";return this.load(a)}return this.messageStore.load(e,i)},parse:function(e,i){var n=this.localize(e);return this.parser.language=t.i18n.languages[t.i18n().locale]||t.i18n.languages.default,""===n&&(n=e),this.parser.parse(n,i)}},t.i18n=function(i,n){var s,a=t.data(document,"i18n"),r="object"==typeof i&&i;return r&&r.locale&&a&&a.locale!==r.locale&&(a.locale=r.locale),a||(a=new e(r),t.data(document,"i18n",a)),"string"==typeof i?(s=void 0!==n?o.call(arguments,1):[],a.parse(i,s)):a},t.fn.i18n=function(){var i=t.data(document,"i18n");return i||(i=new e,t.data(document,"i18n",i)),this.each(function(){var e,n,o,s,a=t(this),r=a.data("i18n");r?(e=r.indexOf("["),n=r.indexOf("]"),-1!==e&&-1!==n&&e<n?(o=r.slice(e+1,n),s=r.slice(n+1),"html"===o?a.html(i.parse(s)):a.attr(o,i.parse(s))):a.text(i.parse(r))):a.find("[data-i18n]").i18n()})},t.i18n.languages={},t.i18n.messageStore=t.i18n.messageStore||{},t.i18n.parser={parse:function(t,e){return t.replace(/\$(\d+)/g,function(t,i){var n=parseInt(i,10)-1;return void 0!==e[n]?e[n]:"$"+i})},emitter:{}},t.i18n.fallbacks={},t.i18n.debug=!1,t.i18n.log=function(){window.console&&t.i18n.debug&&window.console.log.apply(window.console,arguments)},e.defaults={locale:(n=t("html").attr("lang"),n||(n=void 0!==typeof window.navigator&&((i=window.navigator).language||i.userLanguage)||""),n),fallbackLocale:"en",parser:t.i18n.parser,messageStore:t.i18n.messageStore},t.i18n.constructor=e}(t)}).call(this,i("EVdn"))},J1iX:function(t,e,i){(function(t){!function(t){"use strict";var e;(e=function(e,i){this.$element=t(e),this.options=t.extend({},t.fn.languagefilter.defaults,i),this.$element.addClass("languagefilter"),this.resultCount=0,this.$suggestion=this.$element.siblings("."+this.$element.data("suggestion")),this.$clear=this.$element.siblings("."+this.$element.data("clear")),this.selectedLanguage=null,this.init(),this.listen()}).prototype={init:function(){this.search()},listen:function(){this.$element.on("keydown",this.keypress.bind(this)),this.$element.on("input",t.fn.uls.debounce(this.onInputChange.bind(this),300)),this.$clear.length&&this.$clear.on("click",this.clear.bind(this)),this.toggleClear()},onInputChange:function(){this.selectedLanguage=null,this.$element.val()?(this.options.lcd.empty(),this.search()):this.clear(),this.toggleClear()},keypress:function(e){var i,n;switch(e.keyCode){case 9:(i=this.$suggestion.val())&&i!==this.$element.val()&&(this.$element.val(i),e.preventDefault(),e.stopPropagation());break;case 13:if(!this.options.onSelect)break;e.preventDefault(),e.stopPropagation(),n=t.trim(this.$element.val()).toLowerCase(),this.selectedLanguage?this.options.onSelect(this.selectedLanguage):this.options.languages[n]&&this.options.onSelect(n)}},deactivate:function(){this.$element.val(""),t.fn.uls.Constructor.prototype.isMobile()||this.$element.focus(),this.toggleClear(),this.autofill()},clear:function(){this.deactivate(),this.search()},toggleClear:function(){this.$clear.length&&(this.$element.val()?this.$clear.show():this.$clear.hide())},search:function(){var e,i=Object.keys(this.options.languages),n=t.trim(this.$element.val()).toLowerCase();if(""===n)return this.options.lcd.setGroupByRegionOverride(null),void this.resultHandler(n,i);this.options.lcd.setGroupByRegionOverride(!1),e=i.filter(function(t){return this.filter(t,n)}.bind(this)),this.options.searchAPI?this.searchAPI(n).done(this.resultHandler.bind(this)).fail(this.resultHandler.bind(this,n,e,void 0)):this.resultHandler(n,e)},searchAPI:function(e){return t.get(this.options.searchAPI,{search:e}).then(function(i){var n,o=[];return t.each(i.languagesearch,function(e,i){var s,a;if(this.options.languages[e])s=e;else{if(!(a=t.uls.data.isRedirect(e))||!this.options.languages[a])return;s=a}-1===o.indexOf(s)&&(n=n||i,o.push(s))}.bind(this)),t.Deferred().resolve(e,o,n)}.bind(this))},resultHandler:function(t,e,i){if(0===e.length)return this.$suggestion.val(""),void this.$element.trigger("noresults.uls",{query:t,ulsPurpose:this.options.ulsPurpose});t&&(this.selectedLanguage=e[0],this.autofill(e[0],i)),e.map(this.render.bind(this)),this.$element.trigger("resultsfound.uls",[t,e.length])},autofill:function(e,i){var n,o,s;this.$suggestion.length&&(this.$element.val()?(i=i||this.options.languages[e])&&((s=(o=this.$element.val())+i.substring(o.length,i.length)).toLowerCase()!==i.toLowerCase()&&(s=o+(n=t.uls.data.getAutonym(e)||"").substring(o.length,n.length))!==n&&(s=""),"െേൈൊോൌெேைொோௌେୈୋୌિਿिিেৈোৌෙේෛොෝෞ".indexOf(s[o.length])<=0||(s=""),this.$suggestion.val(s)):this.$suggestion.val(""))},render:function(t){return this.options.lcd.append(t)},escapeRegex:function(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(e,i){var n=new RegExp("^"+this.escapeRegex(i),"i"),o=this.options.languages[e];return n.test(o)||n.test(t.uls.data.getAutonym(e))||n.test(e)||n.test(t.uls.data.getScript(e))}},t.fn.languagefilter=function(i){return this.each(function(){var n=t(this),o=n.data("languagefilter"),s="object"==typeof i&&i;o||n.data("languagefilter",o=new e(this,s)),"string"==typeof i&&o[i]()})},t.fn.languagefilter.defaults={lcd:void 0,searchAPI:void 0,ulsPurpose:"",languages:[],onSelect:void 0},t.fn.languagefilter.Constructor=e}(t)}).call(this,i("EVdn"))},KPT6:function(t,e,i){(function(t){!function(e){"use strict";function i(t,i){this.$element=e(t),this.options=e.extend({},e.fn.lcd.defaults,i),-1===this.options.showRegions.indexOf("all")&&this.options.showRegions.push("all"),this.$element.addClass("uls-lcd"),this.regionLanguages={},this.renderTimeout=null,this.cachedQuicklist=null,this.groupByRegionOverride=null,this.render(),this.listen()}i.prototype={constructor:i,append:function(t,i){var n,o;if(!e.uls.data.languages[t])return!1;if(this.isGroupingByRegionEnabled())o=i?[i]:e.uls.data.getRegions(t);else if(o=["all"],this.regionLanguages.all.indexOf(t)>-1)return!0;for(n=0;n<o.length;n++)this.regionLanguages[o[n]].push(t);return clearTimeout(this.renderTimeout),this.renderTimeout=setTimeout(function(){this.renderRegions()}.bind(this),50),!0},isGroupingByRegionEnabled:function(){return null!==this.groupByRegionOverride?this.groupByRegionOverride:"auto"!==this.options.groupByRegion?this.options.groupByRegion:this.options.columns>1},setGroupByRegionOverride:function(t){this.groupByRegionOverride=t},render:function(){var t,i=this.buildQuicklist(),n=[],o={all:"All languages",WW:"Worldwide",SP:"Special",AM:"America",EU:"Europe",ME:"Middle East",AS:"Asia",AF:"Africa",PA:"Pacific"};i.length?n.push(i):this.$element.addClass("uls-lcd--no-quicklist"),this.options.showRegions.forEach(function(i){this.regionLanguages[i]=[],t=e("<div>").addClass("uls-lcd-region-section hide").attr("data-region",i),e("<h3>").attr("data-i18n","uls-region-"+i).addClass("uls-lcd-region-title").text(o[i]).appendTo(t),n.push(t)}.bind(this)),this.$element.append(n),this.i18n()},renderRegions:function(){var t,i=this;this.$element.removeClass("uls-no-results"),this.$element.children(".uls-lcd-region-section").each(function(){var n=e(this),o=n.data("region");n.is(".uls-lcd-quicklist")||(n.children(".uls-language-block").remove(),(t=i.regionLanguages[o])&&0!==t.length?(i.renderRegion(n,t,i.options.itemsPerColumn,i.options.columns),n.removeClass("hide"),i.regionLanguages[o]=[]):n.addClass("hide"))})},renderRegion:function(t,i,n,o){var s,a,r,l,u,c,h=i.length,d=[],p=[],g=[];if(i=e.uls.data.sortByScriptGroup(i.sort(e.uls.data.sortByAutonym)),s=1===o?"twelve columns":2===o?"six columns":"three columns",1===this.options.columns){for(a=0;a<h;a++)d.push(this.renderItem(i[a]));p.push(e("<ul>").addClass(s).append(d)),g.push(e("<div>").addClass("row uls-language-block").append(p))}else for(a=0;a<h;a++)c=!1,u=e.uls.data.getScriptGroupOfLanguage(i[a+1]),r=h-a==1,0!==a&&this.isGroupingByRegionEnabled()?l!==u&&d.length>1&&(c=!0):l=e.uls.data.getScriptGroupOfLanguage(i[a]),l=u,d.push(this.renderItem(i[a])),(d.length>=n||r||c)&&(p.push(e("<ul>").addClass(s).append(d)),d=[],(p.length>=o||r)&&(g.push(e("<div>").addClass("row uls-language-block").append(p)),p=[]));t.append(g)},renderItem:function(t){var i,n,o,s;return n=this.options.languages[t],o=e.uls.data.getAutonym(t)||n||t,(s=document.createElement("li")).title=n,s.setAttribute("data-code",t),(i=document.createElement("a")).appendChild(document.createTextNode(o)),i.className="autonym",i.lang=t,i.dir=e.uls.data.getDir(t),s.appendChild(i),this.options.languageDecorator&&this.options.languageDecorator(e(i),t),s},i18n:function(){this.$element.find("[data-i18n]").i18n()},quicklist:function(){this.$element.find(".uls-lcd-quicklist").removeClass("hide")},buildQuicklist:function(){var t,i,n;return null!==this.cachedQuicklist?this.cachedQuicklist:(e.isFunction(this.options.quickList)&&(this.options.quickList=this.options.quickList()),this.options.quickList.length?((t=(t=this.options.quickList).slice(0,16)).sort(e.uls.data.sortByAutonym),i=e("<div>").addClass("uls-lcd-region-section uls-lcd-quicklist"),n=e("<h3>").attr("data-i18n","uls-common-languages").addClass("uls-lcd-region-title").text("Suggested languages"),i.append(n),this.renderRegion(i,t,this.options.itemsPerColumn,this.options.columns),n.i18n(),this.cachedQuicklist=i,this.cachedQuicklist):(this.cachedQuicklist=e([]),this.cachedQuicklist))},show:function(){this.regionDivs||this.render()},empty:function(){this.$element.addClass("uls-lcd--no-quicklist"),this.$element.find(".uls-lcd-quicklist").addClass("hide")},focus:function(){this.$element.focus()},noResults:function(e,i){var n;if(this.$element.addClass("uls-no-results"),this.$element.find(".uls-no-results-view").remove(),"function"==typeof this.options.noResultsTemplate)n=this.options.noResultsTemplate.call(this,i.query);else{if(!(this.options.noResultsTemplate instanceof t))throw new Error("noResultsTemplate option must be either jQuery or function returning jQuery");n=this.options.noResultsTemplate}this.$element.append(n.addClass("uls-no-results-view").i18n())},listen:function(){var t=this;this.options.clickhandler&&this.$element.on("click",".row li",function(i){t.options.clickhandler.call(this,e(this).data("code"),i)})}},e.fn.lcd=function(t){return this.each(function(){var n=e(this),o=n.data("lcd"),s="object"==typeof t&&t;o||n.data("lcd",o=new i(this,s)),"string"==typeof t&&o[t]()})},e.fn.lcd.defaults={languages:[],showRegions:["WW","AM","EU","ME","AF","AS","PA"],groupByRegion:"auto",itemsPerColumn:8,columns:4,languageDecorator:void 0,quickList:[],clickhandler:void 0,noResultsTemplate:function(){var t,i=e('<div class="uls-no-results-view"> \t\t<h2 data-i18n="uls-no-results-found" class="uls-no-results-found-title">No results found</h2> \t\t<div class="uls-no-results-suggestions"></div> \t\t<div class="uls-no-found-more"> \t\t<div data-i18n="uls-search-help">You can search by language name, script name, ISO code of language or you can browse by region.</div> \t\t</div></div>');return(t=this.buildQuicklist().clone()).removeClass("hide").find("h3").data("i18n","uls-no-results-suggestion-title").text("You may be interested in:").i18n(),i.find(".uls-no-results-suggestions").append(t),i}}}(t)}).call(this,i("EVdn"))},ML86:function(t,e,i){},Mh5E:function(t,e,i){(function(t){var e;!function(){return function t(i,n,o){function s(r,l){if(!n[r]){if(!i[r]){if(!l&&"function"==typeof e&&e)return e(r,!0);if(a)return a(r,!0);var u=new Error("Cannot find module '"+r+"'");throw u.code="MODULE_NOT_FOUND",u}var c=n[r]={exports:{}};i[r][0].call(c.exports,function(t){return s(i[r][1][t]||t)},c,c.exports,t,i,n,o)}return n[r].exports}for(var a="function"==typeof e&&e,r=0;r<o.length;r++)s(o[r]);return s}}()({1:[function(e,i,n){var o;i.exports=((o=t).uls=o.uls||{},void(o.uls.data={languages:{aa:["Latn",["AF"],"Qafár af"],ab:["Cyrl",["EU"],"Аҧсшәа"],abe:["Latn",["AM"],"Wôbanakiôdwawôgan"],abs:["Latn",["AS"],"Bahasa Ambon"],ace:["Latn",["AS","PA"],"Acèh"],acf:["Latn",["AM"],"kwéyòl"],ady:["Cyrl",["EU","ME"],"Адыгабзэ"],"ady-cyrl":["ady"],"ady-latn":["Latn",["EU","ME"],"Adygabze"],aeb:["aeb-arab"],"aeb-arab":["Arab",["AF"],"تونسي"],"aeb-latn":["Latn",["AF"],"Tûnsî"],af:["Latn",["AF"],"Afrikaans"],ahr:["Deva",["AS"],"अहिराणी"],ais:["Latn",["AS"],"Sakizaya"],ak:["Latn",["AF"],"Akan"],akz:["Latn",["AM"],"Albaamo innaaɬiilka"],aln:["Latn",["EU"],"Gegë"],am:["Ethi",["AF"],"አማርኛ"],ami:["Latn",["AS"],"Pangcah"],an:["Latn",["EU"],"aragonés"],ang:["Latn",["EU"],"Ænglisc"],anp:["Deva",["AS"],"अङ्गिका"],ar:["Arab",["ME"],"العربية"],arc:["Syrc",["ME"],"ܐܪܡܝܐ"],arn:["Latn",["AM"],"mapudungun"],aro:["Latn",["AM"],"Araona"],arq:["Arab",["AF"],"جازايرية"],ary:["Latn",["ME"],"Maġribi"],arz:["Arab",["ME"],"مصرى"],as:["Beng",["AS"],"অসমীয়া"],ase:["Sgnw",["AM"],"American sign language"],ast:["Latn",["EU"],"asturianu"],atj:["Latn",["AM"],"atikamekw"],av:["Cyrl",["EU"],"авар"],avk:["Latn",["WW"],"Kotava"],ay:["Latn",["AM"],"Aymar aru"],az:["az-latn"],"az-arab":["Arab",["AS","ME"],"تۆرکجه"],"az-latn":["Latn",["EU","ME"],"azərbaycanca"],"az-cyrl":["Cyrl",["EU","ME"],"азәрбајҹанҹа"],azb:["az-arab"],azj:["az-latn"],ba:["Cyrl",["EU"],"башҡортса"],ban:["Bali",["AS"],"ᬩᬲᬩᬮᬶ"],bar:["Latn",["EU"],"Boarisch"],"bat-smg":["sgs"],"bbc-latn":["Latn",["AS"],"Batak Toba"],"bbc-batk":["Batk",["AS"],"ᯅᯖᯂ᯲ ᯖᯬᯅ"],bbc:["bbc-latn"],bcc:["Arab",["AS","ME"],"جهلسری بلوچی"],bcl:["Latn",["AS"],"Bikol Central"],"be-tarask":["Cyrl",["EU"],"беларуская (тарашкевіца)"],"be-x-old":["be-tarask"],be:["Cyrl",["EU"],"беларуская"],bew:["Latn",["AS"],"Bahasa Betawi"],bfa:["Latn",["AF"],"Bari"],bft:["Arab",["AS"],"بلتی"],bfq:["Taml",["AS"],"படகா"],bg:["Cyrl",["EU"],"български"],bgn:["Arab",["AS","ME"],"روچ کپتین بلوچی"],bh:["bho"],bho:["Deva",["AS"],"भोजपुरी"],bi:["Latn",["PA"],"Bislama"],bjn:["Latn",["AS"],"Bahasa Banjar"],bm:["Latn",["AF"],"bamanankan"],bn:["Beng",["AS"],"বাংলা"],bnn:["Latn",["AS"],"Bunun"],bo:["Tibt",["AS"],"བོད་ཡིག"],bpy:["Beng",["AS"],"বিষ্ণুপ্রিয়া মণিপুরী"],bqi:["Arab",["AS","ME"],"بختیاری"],br:["Latn",["EU"],"brezhoneg"],brh:["Latn",["ME","AS"],"Bráhuí"],brx:["Deva",["AS"],"बर'"],bs:["Latn",["EU"],"bosanski"],btm:["Latn",["AS"],"Mandailing"],bto:["Latn",["AS"],"Iriga Bicolano"],bug:["Bugi",["AS"],"ᨅᨔ ᨕᨘᨁᨗ"],bxr:["Cyrl",["AS"],"буряад"],byn:["Ethi",["AF"],"ብሊን"],ca:["Latn",["EU"],"català"],cak:["Latn",["AM"],"Kaqchikel"],"cbk-zam":["Latn",["AS"],"Chavacano de Zamboanga"],cdo:["Latn",["AS"],"Mìng-dĕ̤ng-ngṳ̄"],ce:["Cyrl",["EU"],"нохчийн"],ceb:["Latn",["AS"],"Cebuano"],ch:["Latn",["PA"],"Chamoru"],chm:["mhr"],chn:["Latn",["AM"],"chinuk wawa"],cho:["Latn",["AM"],"Choctaw"],chr:["Cher",["AM"],"ᏣᎳᎩ"],chy:["Latn",["AM"],"Tsetsêhestâhese"],ciw:["Latn",["AM"],"Ojibwemowin"],cjy:["cjy-hant"],"cjy-hans":["Hans",["AS"],"晋语(简化字)"],"cjy-hant":["Hant",["AS"],"晉語"],ckb:["Arab",["ME"],"کوردی"],cnh:["Latn",["AS"],"Lai holh"],cnr:["cnr-latn"],"cnr-cyrl":["Cyrl",["EU"],"црногорски"],"cnr-latn":["Latn",["EU"],"crnogorski"],co:["Latn",["EU"],"corsu"],cop:["Copt",["AF","ME"],"ϯⲙⲉⲧⲣⲉⲙⲛ̀ⲭⲏⲙⲓ"],cps:["Latn",["AS"],"Capiceño"],cr:["Cans",["AM"],"ᓀᐦᐃᔭᐍᐏᐣ"],"cr-cans":["cr"],"cr-latn":["Latn",["AM"],"Nēhiyawēwin"],crh:["Latn",["EU"],"qırımtatarca"],"crh-cyrl":["Cyrl",["EU"],"къырымтатарджа"],"crh-latn":["crh"],cs:["Latn",["EU"],"čeština"],csb:["Latn",["EU"],"kaszëbsczi"],cu:["Cyrl",["EU"],"словѣньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ"],cv:["Cyrl",["EU"],"Чӑвашла"],cy:["Latn",["EU"],"Cymraeg"],da:["Latn",["EU"],"dansk"],dag:["Latn",["AF"],"dagbanli"],"de-at":["Latn",["EU"],"Österreichisches Deutsch"],"de-ch":["Latn",["EU"],"Schweizer Hochdeutsch"],"de-formal":["Latn",["EU"],"Deutsch (Sie-Form)"],de:["Latn",["EU"],"Deutsch"],din:["Latn",["AF"],"Thuɔŋjäŋ"],diq:["Latn",["EU","AS"],"Zazaki"],doi:["Deva",["AS"],"डोगरी"],dsb:["Latn",["EU"],"dolnoserbski"],dtp:["Latn",["AS"],"Dusun Bundu-liwan"],dty:["Deva",["AS"],"डोटेली"],dv:["Thaa",["AS"],"ދިވެހިބަސް"],dz:["Tibt",["AS"],"ཇོང་ཁ"],ee:["Latn",["AF"],"eʋegbe"],egl:["Latn",["EU"],"Emiliàn"],el:["Grek",["EU"],"Ελληνικά"],eml:["Latn",["EU"],"emiliàn e rumagnòl"],"en-ca":["Latn",["AM"],"Canadian English"],"en-gb":["Latn",["EU","AS","PA"],"British English"],en:["Latn",["EU","AM","AF","ME","AS","PA","WW"],"English"],eo:["Latn",["WW"],"Esperanto"],"es-419":["Latn",["AM"],"español de América Latina"],"es-formal":["Latn",["EU","AM","AF","WW"],"español (formal)"],es:["Latn",["EU","AM","AF","WW","PA"],"español"],"es-ni":["Latn",["AM"],"español nicaragüense"],esu:["Latn",["AM"],"Yup'ik"],et:["Latn",["EU"],"eesti"],eu:["Latn",["EU"],"euskara"],ext:["Latn",["EU"],"estremeñu"],eya:["Latn",["AM"],"I·ya·q"],fa:["Arab",["AS","ME"],"فارسی"],fan:["Latn",["AF"],"Faŋ"],fax:["Latn",["EU"],"Fala"],ff:["Latn",["AF"],"Fulfulde"],fi:["Latn",["EU"],"suomi"],fil:["tl"],fit:["Latn",["EU"],"meänkieli"],"fiu-vro":["vro"],fj:["Latn",["PA"],"Na Vosa Vakaviti"],fkv:["Latn",["EU"],"kvääni"],fo:["Latn",["EU"],"føroyskt"],fon:["Latn",["AF"],"fɔ̀ngbè"],fr:["Latn",["EU","AM","WW"],"français"],frc:["Latn",["AM"],"français cadien"],frp:["Latn",["EU"],"arpetan"],frr:["Latn",["EU"],"Nordfriisk"],fuf:["Latn",["AF"],"Fuuta Jalon"],fur:["Latn",["EU"],"furlan"],fy:["Latn",["EU"],"Frysk"],ga:["Latn",["EU"],"Gaeilge"],gaa:["Latn",["AF"],"Ga"],gag:["Latn",["EU"],"Gagauz"],gah:["Latn",["AS"],"Alekano"],"gan-hans":["Hans",["AS"],"赣语(简体)"],"gan-hant":["gan"],gan:["Hant",["AS"],"贛語"],gbm:["Deva",["AS"],"गढ़वळि"],gbz:["Latn",["AS"],"Dari-e Mazdeyasnā"],gcf:["Latn",["AM"],"Guadeloupean Creole French"],gcr:["Latn",["AM"],"kréyòl gwiyanè"],gd:["Latn",["EU"],"Gàidhlig"],gez:["Ethi",["AF"],"ግዕዝ"],gl:["Latn",["EU"],"galego"],glk:["Arab",["AS","ME"],"گیلکی"],gn:["Latn",["AM"],"Avañe'ẽ"],gom:["gom-deva"],"gom-deva":["Deva",["AS"],"गोंयची कोंकणी"],"gom-latn":["Latn",["AS"],"Gõychi Konknni"],gor:["Latn",["AS"],"Bahasa Hulontalo"],got:["Goth",["EU"],"𐌲𐌿𐍄𐌹𐍃𐌺"],grc:["Grek",["EU"],"Ἀρχαία ἑλληνικὴ"],gsw:["Latn",["EU"],"Alemannisch"],gu:["Gujr",["AS"],"ગુજરાતી"],guc:["Latn",["AM"],"Wayúu"],gum:["Latn",["AM"],"Namtrik"],gur:["Latn",["AF"],"Gurenɛ"],gv:["Latn",["EU"],"Gaelg"],"ha-arab":["Arab",["AF"],"هَوُسَ"],"ha-latn":["Latn",["AF"],"Hausa"],ha:["ha-latn"],hai:["Latn",["AM"],"X̱aat Kíl"],hak:["Latn",["AS"],"Hak-kâ-fa"],haw:["Latn",["AM","PA"],"Hawai`i"],he:["Hebr",["ME"],"עברית"],"hak-hans":["Hans",["AS"],"客家语(简体)"],"hak-hant":["Hant",["AS"],"客家語(繁體)"],hi:["Deva",["AS"],"हिन्दी"],hif:["Latn",["PA","AS"],"Fiji Hindi"],"hif-deva":["Deva",["AS"],"फ़ीजी हिन्दी"],"hif-latn":["hif"],hil:["Latn",["AS"],"Ilonggo"],hne:["Deva",["AS"],"छत्तीसगढ़ी"],ho:["Latn",["PA"],"Hiri Motu"],hoc:["Wara",["AS"],"𑢹𑣉𑣉"],hr:["Latn",["EU"],"hrvatski"],hrx:["Latn",["AM"],"Hunsrik"],hsb:["Latn",["EU"],"hornjoserbsce"],hsn:["Hans",["AS"],"湘语"],ht:["Latn",["AM"],"Kreyòl ayisyen"],"hu-formal":["Latn",["EU"],"Magyar (magázó)"],hu:["Latn",["EU"],"magyar"],hy:["Armn",["EU","ME"],"հայերեն"],hyw:["Armn",["EU","ME"],"արեւմտահայերէն"],hz:["Latn",["AF"],"Otsiherero"],ia:["Latn",["WW"],"interlingua"],id:["Latn",["AS"],"Bahasa Indonesia"],ie:["Latn",["WW"],"Interlingue"],ig:["Latn",["AF"],"Igbo"],ii:["Yiii",["AS"],"ꆇꉙ"],ik:["Latn",["AM"],"Iñupiak"],"ike-cans":["Cans",["AM"],"ᐃᓄᒃᑎᑐᑦ"],"ike-latn":["Latn",["AM"],"inuktitut"],ilo:["Latn",["AS"],"Ilokano"],inh:["Cyrl",["EU"],"ГӀалгӀай"],io:["Latn",["WW"],"Ido"],is:["Latn",["EU"],"íslenska"],it:["Latn",["EU"],"italiano"],iu:["ike-cans"],ja:["Jpan",["AS"],"日本語"],jam:["Latn",["AM"],"Patois"],jbo:["Latn",["WW"],"lojban"],jdt:["jdt-cyrl"],"jdt-cyrl":["Cyrl",["EU","AS"],"жугьури"],jut:["Latn",["EU"],"jysk"],jv:["Latn",["AS","PA"],"Basa Jawa"],"jv-java":["Java",["AS","PA"],"ꦧꦱꦗꦮ"],ka:["Geor",["EU"],"ქართული"],kaa:["Latn",["AS"],"Qaraqalpaqsha"],kab:["Latn",["AF","EU"],"Taqbaylit"],kac:["Latn",["AS"],"Jinghpaw"],"kbd-cyrl":["kbd"],"kbd-latn":["Latn",["EU"],"Qabardjajəbza"],kbd:["Cyrl",["EU","ME"],"Адыгэбзэ"],kbp:["Latn",["AF"],"Kabɩyɛ"],kea:["Latn",["AF"],"Kabuverdianu"],kg:["Latn",["AF"],"Kongo"],kgp:["Latn",["AM"],"Kaingáng"],khw:["Arab",["ME","AS"],"کھوار"],ki:["Latn",["AF"],"Gĩkũyũ"],kiu:["Latn",["EU","ME"],"Kırmancki"],kj:["Latn",["AF"],"Kwanyama"],kjh:["Cyrl",["AS"],"хакас"],kjp:["Mymr",["AS"],"ဖၠုံလိက်"],kk:["kk-cyrl"],"kk-arab":["Arab",["EU","AS"],"قازاقشا (تٶتە)"],"kk-cn":["kk-arab"],"kk-cyrl":["Cyrl",["EU","AS"],"қазақша"],"kk-kz":["kk-cyrl"],"kk-latn":["Latn",["EU","AS","ME"],"qazaqşa"],"kk-tr":["kk-latn"],kl:["Latn",["AM","EU"],"kalaallisut"],km:["Khmr",["AS"],"ភាសាខ្មែរ"],kn:["Knda",["AS"],"ಕನ್ನಡ"],knn:["Deva",["AS"],"महाराष्ट्रीय कोंकणी"],"ko-kp":["Kore",["AS"],"조선말"],ko:["Kore",["AS"],"한국어"],koi:["Cyrl",["EU"],"Перем Коми"],koy:["Latn",["AM"],"Denaakkenaageʼ"],kr:["Latn",["AF"],"Kanuri"],krc:["Cyrl",["EU"],"къарачай-малкъар"],kri:["Latn",["AF"],"Krio"],krj:["Latn",["ME","EU"],"Kinaray-a"],krl:["Latn",["EU"],"Karjala"],"ks-arab":["Arab",["AS"],"کٲشُر"],"ks-deva":["Deva",["AS"],"कॉशुर"],ks:["ks-arab"],ksf:["Latn",["AF"],"Bafia"],ksh:["Latn",["EU"],"Ripoarisch"],ku:["ku-latn"],"ku-arab":["Arab",["EU","ME"],"كوردي"],"ku-latn":["Latn",["EU","ME"],"kurdî"],kum:["Cyrl",["EU"],"къумукъ"],kv:["Cyrl",["EU"],"коми"],kw:["Latn",["EU"],"kernowek"],ky:["Cyrl",["AS"],"Кыргызча"],la:["Latn",["EU"],"Latina"],lad:["lad-latn"],"lad-latn":["Latn",["ME","EU","AM"],"Ladino"],"lad-hebr":["Hebr",["ME","EU","AM"],"לאדינו"],lag:["Latn",["AF"],"Kilaangi"],lb:["Latn",["EU"],"Lëtzebuergesch"],lbe:["Cyrl",["EU"],"лакку"],lez:["Cyrl",["EU"],"лезги"],lfn:["Latn",["WW"],"Lingua Franca Nova"],lg:["Latn",["AF"],"Luganda"],li:["Latn",["EU"],"Limburgs"],lij:["Latn",["EU"],"Ligure"],liv:["Latn",["EU"],"Līvõ kēļ"],lki:["Arab",["AS","ME"],"لەکی"],lkt:["Latn",["AM"],"Lakȟótiyapi"],lld:["Latn",["EU"],"Ladin"],lmo:["Latn",["EU"],"lumbaart"],ln:["Latn",["AF"],"lingála"],lo:["Laoo",["AS"],"ລາວ"],loz:["Latn",["AF"],"Silozi"],lt:["Latn",["EU"],"lietuvių"],lrc:["Arab",["AS","ME"],"لۊری شومالی"],ltg:["Latn",["EU"],"latgaļu"],lud:["Latn",["EU"],"lüüdi"],lus:["Latn",["AS"],"Mizo ţawng"],lut:["Latn",["AM"],"dxʷləšucid"],luz:["Arab",["ME"],"لئری دوٙمینی"],lv:["Latn",["EU"],"latviešu"],lzh:["Hant",["AS"],"文言"],lzz:["Latn",["EU","ME"],"Lazuri"],mai:["Deva",["AS"],"मैथिली"],"map-bms":["Latn",["AS"],"Basa Banyumasan"],mdf:["Cyrl",["EU"],"мокшень"],mfe:["Latn",["AM"],"Morisyen"],mg:["Latn",["AF"],"Malagasy"],mh:["Latn",["PA"],"Ebon"],mhr:["Cyrl",["EU"],"олык марий"],mi:["Latn",["PA"],"Māori"],mic:["Latn",["AM"],"Mi'kmaq"],min:["Latn",["AS"],"Baso Minangkabau"],miq:["Latn",["AM"],"Mískitu"],mk:["Cyrl",["EU"],"македонски"],ml:["Mlym",["AS","ME"],"മലയാളം"],mn:["Cyrl",["AS"],"монгол"],mnc:["Mong",["AS"],"ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ"],mni:["Beng",["AS"],"মেইতেই লোন্"],mnw:["Mymr",["AS"],"ဘာသာ မန်"],mo:["Cyrl",["EU"],"молдовеняскэ"],moe:["Latn",["AM"],"Innu-aimun"],mr:["Deva",["AS","ME"],"मराठी"],mrj:["Cyrl",["EU"],"кырык мары"],ms:["Latn",["AS"],"Bahasa Melayu"],mt:["Latn",["EU"],"Malti"],mui:["Latn",["AS"],"Musi"],mus:["Latn",["AM"],"Mvskoke"],mwl:["Latn",["EU"],"Mirandés"],mwv:["Latn",["AS"],"Behase Mentawei"],mww:["mww-latn"],"mww-latn":["Latn",["AS"],"Hmoob Dawb"],my:["Mymr",["AS"],"မြန်မာဘာသာ"],myv:["Cyrl",["EU"],"эрзянь"],mzn:["Arab",["ME","AS"],"مازِرونی"],na:["Latn",["PA"],"Dorerin Naoero"],nah:["Latn",["AM"],"Nāhuatl"],nan:["Latn",["AS"],"Bân-lâm-gú"],nap:["Latn",["EU"],"Napulitano"],nb:["Latn",["EU"],"norsk (bokmål)"],nd:["Latn",["AF"],"siNdebele saseNyakatho"],"nds-nl":["Latn",["EU"],"Nedersaksisch"],nds:["Latn",["EU"],"Plattdüütsch"],ne:["Deva",["AS"],"नेपाली"],new:["Deva",["AS"],"नेपाल भाषा"],ng:["Latn",["AF"],"Oshiwambo"],niu:["Latn",["PA"],"ko e vagahau Niuē"],njo:["Latn",["AS"],"Ao"],"nl-informal":["Latn",["EU","AM"],"Nederlands (informeel)"],nl:["Latn",["EU","AM"],"Nederlands"],nn:["Latn",["EU"],"norsk (nynorsk)"],no:["Latn",["EU"],"norsk"],nod:["Thai",["AS"],"คำเมือง"],nov:["Latn",["WW"],"Novial"],nqo:["Nkoo",["AF"],"ߒߞߏ"],nr:["Latn",["AF"],"isiNdebele seSewula"],nrm:["Latn",["EU"],"Nouormand"],nso:["Latn",["AF"],"Sesotho sa Leboa"],nv:["Latn",["AM"],"Diné bizaad"],ny:["Latn",["AF"],"Chi-Chewa"],nys:["Latn",["PA"],"Nyungar"],oc:["Latn",["EU"],"occitan"],oka:["Latn",["AM"],"n̓səl̓xcin̓"],olo:["Latn",["AS","EU"],"Livvinkarjala"],om:["Latn",["AF"],"Oromoo"],ood:["Latn",["AM"],"ʼOʼodham ha-ñeʼokĭ"],or:["Orya",["AS"],"ଓଡ଼ିଆ"],os:["Cyrl",["EU"],"Ирон"],ota:["Arab",["AS","EU"],"لسان عثمانى"],ovd:["Latn",["EU"],"övdalsk"],pa:["pa-guru"],"pa-guru":["Guru",["AS"],"ਪੰਜਾਬੀ"],pag:["Latn",["AS"],"Pangasinan"],pam:["Latn",["AS"],"Kapampangan"],pap:["Latn",["AM"],"Papiamentu"],pbb:["Latn",["AM"],"Nasa Yuwe"],pcd:["Latn",["EU"],"Picard"],pdc:["Latn",["EU","AM"],"Deitsch"],pdt:["Latn",["EU","AM"],"Plautdietsch"],pfl:["Latn",["EU"],"Pälzisch"],pi:["Deva",["AS"],"पालि"],pih:["Latn",["PA"],"Norfuk / Pitkern"],pis:["Latn",["PA"],"Pijin"],pjt:["Latn",["PA"],"Pitjantjatjara"],pko:["Latn",["AF"],"Pökoot"],pl:["Latn",["EU"],"polski"],pms:["Latn",["EU"],"Piemontèis"],pnb:["Arab",["AS","ME"],"پنجابی"],pnt:["Grek",["EU"],"Ποντιακά"],ppl:["Latn",["AM"],"Nawat"],prg:["Latn",["EU"],"Prūsiskan"],prs:["Arab",["AS","ME"],"دری"],ps:["Arab",["AS","ME"],"پښتو"],"pt-br":["Latn",["AM"],"português do Brasil"],pt:["Latn",["EU","AM","AS","PA","AF","WW"],"português"],qu:["Latn",["AM"],"Runa Simi"],quc:["Latn",["AM"],"K'iche'"],qug:["Latn",["AM"],"Runa shimi"],qwh:["Latn",["AM"],"anqash qichwa"],rap:["Latn",["AM"],"arero rapa nui"],rcf:["Latn",["AF"],"Kreol Réyoné"],rgn:["Latn",["EU"],"Rumagnôl"],rif:["Latn",["AF"],"Tarifit"],rki:["Mymr",["AS"],"ရခိုင်"],rm:["Latn",["EU"],"rumantsch"],rmf:["Latn",["EU"],"kaalengo tšimb"],rmy:["Latn",["EU"],"Romani"],rn:["Latn",["AF"],"Kirundi"],ro:["Latn",["EU"],"română"],"roa-rup":["rup"],"roa-tara":["Latn",["EU"],"tarandíne"],rtm:["Latn",["PA"],"Faeag Rotuma"],ru:["Cyrl",["EU","AS","ME"],"русский"],rue:["Cyrl",["EU"],"русиньскый"],rup:["Latn",["EU"],"armãneashti"],ruq:["Cyrl",["EU"],"Влахесте"],"ruq-cyrl":["ruq"],"ruq-grek":["Grek",["EU"],"Megleno-Romanian (Greek script)"],"ruq-latn":["Latn",["EU"],"Vlăheşte"],rut:["Cyrl",["EU"],"мыхаӀбишды"],rw:["Latn",["AF"],"Kinyarwanda"],rwr:["Deva",["AS"],"मारवाड़ी"],ryu:["Kana",["AS"],"ʔucināguci"],sa:["Deva",["AS"],"संस्कृतम्"],sah:["Cyrl",["EU","AS"],"саха тыла"],sat:["Olck",["AS"],"ᱥᱟᱱᱛᱟᱲᱤ"],saz:["Saur",["AS"],"ꢱꣃꢬꢵꢯ꣄ꢡ꣄ꢬꢵ"],sc:["Latn",["EU"],"sardu"],scn:["Latn",["EU"],"sicilianu"],sco:["Latn",["EU"],"Scots"],sd:["Arab",["AS"],"سنڌي"],sdc:["Latn",["EU"],"Sassaresu"],sdh:["Arab",["ME"],"کوردی خوارگ"],se:["Latn",["EU"],"davvisámegiella"],ses:["Latn",["AF"],"Koyraboro Senni"],sei:["Latn",["AM"],"Cmique Itom"],sg:["Latn",["AF"],"Sängö"],sgs:["Latn",["EU"],"žemaitėška"],sh:["Latn",["EU"],"srpskohrvatski"],"shi-latn":["Latn",["AF"],"Tašlḥiyt"],"shi-tfng":["Tfng",["AF"],"ⵜⴰⵛⵍⵃⵉⵜ"],shi:["shi-latn"],shn:["Mymr",["AS"],"လိၵ်ႈတႆး"],si:["Sinh",["AS"],"සිංහල"],simple:["Latn",["WW"],"Simple English"],sjd:["Cyrl",["EU"],"Кӣллт са̄мь кӣлл"],sje:["Latn",["EU"],"bidumsámegiella"],sjo:["Mong",["AS"],"ᠰᡞᠪᡝ ᡤᡞᠰᡠᠨ"],sju:["Latn",["EU"],"ubmejensámien giella"],sk:["Latn",["EU"],"slovenčina"],sl:["Latn",["EU"],"slovenščina"],sli:["Latn",["EU"],"Schläsch"],slr:["Latn",["AS"],"Salırça"],sly:["Latn",["AS"],"Bahasa Selayar"],"skr-arab":["Arab",["AS"],"سرائیکی"],skr:["skr-arab"],syc:["Syrc",["ME"],"ܣܘܪܝܝܐ"],sm:["Latn",["PA"],"Gagana Samoa"],sma:["Latn",["EU"],"åarjelsaemien"],smj:["Latn",["EU"],"julevsámegiella"],smn:["Latn",["EU"],"anarâškielâ"],sms:["Latn",["EU"],"sää´mǩiõll"],sn:["Latn",["AF"],"chiShona"],so:["Latn",["AF"],"Soomaaliga"],son:["Latn",["AF"],"soŋay"],sq:["Latn",["EU"],"shqip"],sr:["sr-cyrl"],"sr-ec":["sr-cyrl"],"sr-cyrl":["Cyrl",["EU"],"српски"],"sr-el":["sr-latn"],"sr-latn":["Latn",["EU"],"srpski"],srn:["Latn",["AM","EU"],"Sranantongo"],ss:["Latn",["AF"],"SiSwati"],st:["Latn",["AF"],"Sesotho"],stq:["Latn",["EU"],"Seeltersk"],sty:["Cyrl",["EU","AS"],"себертатар"],su:["Latn",["AS"],"Basa Sunda"],sv:["Latn",["EU"],"svenska"],sw:["Latn",["AF"],"Kiswahili"],swb:["Latn",["AF"],"Shikomoro"],sxu:["Latn",["EU"],"Säggssch"],szl:["Latn",["EU"],"ślůnski"],ta:["Taml",["AS"],"தமிழ்"],tay:["Latn",["AS"],"Tayal"],tcy:["Knda",["AS"],"ತುಳು"],te:["Telu",["AS"],"తెలుగు"],tet:["Latn",["AS","PA"],"tetun"],"tg-cyrl":["Cyrl",["AS"],"тоҷикӣ"],"tg-latn":["Latn",["AS"],"tojikī"],tg:["tg-cyrl"],th:["Thai",["AS"],"ไทย"],ti:["Ethi",["AF"],"ትግርኛ"],tig:["Ethi",["AF"],"ትግረ"],tk:["Latn",["AS"],"Türkmençe"],tkr:["Cyrl",["AS"],"ЦӀаӀхна миз"],tl:["Latn",["AS"],"Tagalog"],tly:["Cyrl",["EU","AS","ME"],"толышә зывон"],tmr:["Hebr",["ME","EU","AM"],"ארמית בבלית"],tn:["Latn",["AF"],"Setswana"],to:["Latn",["PA"],"lea faka-Tonga"],tokipona:["Latn",["WW"],"Toki Pona"],tpi:["Latn",["PA","AS"],"Tok Pisin"],tr:["Latn",["EU","ME"],"Türkçe"],trp:["Latn",["AS"],"Kokborok (Tripuri)"],tru:["Latn",["AS"],"Ṫuroyo"],trv:["Latn",["AS"],"Sediq Taroko"],ts:["Latn",["AF"],"Xitsonga"],tsd:["Grek",["EU"],"Τσακωνικά"],tt:["Cyrl",["EU"],"татарча"],"tt-cyrl":["tt"],"tt-latn":["Latn",["EU"],"tatarça"],ttt:["Cyrl",["AS"],"Tati"],tum:["Latn",["AF"],"chiTumbuka"],tw:["Latn",["AF"],"Twi"],twd:["Latn",["EU"],"Tweants"],ty:["Latn",["PA"],"reo tahiti"],tyv:["Cyrl",["AS"],"тыва дыл"],tzl:["Latn",["WW"],"Talossan"],tzm:["Tfng",["AF"],"ⵜⴰⵎⴰⵣⵉⵖⵜ"],udm:["Cyrl",["EU"],"удмурт"],ug:["ug-arab"],"ug-arab":["Arab",["AS"],"ئۇيغۇرچە"],"ug-latn":["Latn",["AS"],"uyghurche"],"ug-cyrl":["Cyrl",["AS"],"уйғурчә"],uk:["Cyrl",["EU"],"українська"],umu:["Latn",["AM"],"Huluníixsuwaakan"],ur:["Arab",["AS","ME"],"اردو"],uz:["Latn",["AS"],"oʻzbekcha"],ve:["Latn",["AF"],"Tshivenda"],vec:["Latn",["EU"],"vèneto"],vep:["Latn",["EU"],"vepsän kel’"],vi:["Latn",["AS"],"Tiếng Việt"],vls:["Latn",["EU"],"West-Vlams"],vmf:["Latn",["EU"],"Mainfränkisch"],vo:["Latn",["WW"],"Volapük"],vot:["Latn",["EU"],"Vaďďa"],vro:["Latn",["EU"],"Võro"],wa:["Latn",["EU"],"walon"],war:["Latn",["AS"],"Winaray"],wls:["Latn",["PA"],"Faka'uvea"],wo:["Latn",["AF"],"Wolof"],wuu:["Hans",["AS"],"吴语"],xal:["Cyrl",["EU"],"хальмг"],xh:["Latn",["AF"],"isiXhosa"],xmf:["Geor",["EU"],"მარგალური"],xsy:["Latn",["AS"],"SaiSiyat"],ydd:["Hebr",["AS","EU"],"Eastern Yiddish"],yi:["Hebr",["ME","EU","AM"],"ייִדיש"],yo:["Latn",["AF"],"Yorùbá"],yrk:["Cyrl",["AS"],"Ненэцяʼ вада"],yrl:["Latn",["AM"],"ñe'engatú"],yua:["Latn",["AM"],"Maaya T'aan"],yue:["Hant",["AS"],"粵語"],za:["Latn",["AS"],"Vahcuengh"],zea:["Latn",["EU"],"Zeêuws"],zgh:["Tfng",["AF"],"ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ"],zh:["Hans",["AS"],"中文"],"zh-classical":["lzh"],"zh-cn":["Hans",["AS"],"中文(中国大陆)"],"zh-hans":["Hans",["AS"],"中文(简体)"],"zh-hant":["Hant",["AS"],"中文(繁體)"],"zh-hk":["Hant",["AS"],"中文(香港)"],"zh-min-nan":["nan"],"zh-mo":["Hant",["AS"],"中文(澳門)"],"zh-my":["Hans",["AS"],"中文(马来西亚)"],"zh-sg":["Hans",["AS"],"中文(新加坡)"],"zh-tw":["Hant",["AS"],"中文(台灣)"],"zh-yue":["yue"],zu:["Latn",["AF"],"isiZulu"],zun:["Latn",["AM"],"Shiwi'ma"]},scriptgroups:{Latin:["Latn","Goth"],Greek:["Grek"],WestCaucasian:["Armn","Geor"],Arabic:["Arab"],MiddleEastern:["Hebr","Syrc"],African:["Ethi","Nkoo","Tfng","Copt"],SouthAsian:["Beng","Deva","Gujr","Guru","Knda","Mlym","Olck","Orya","Saur","Sinh","Taml","Telu","Tibt","Thaa","Wara"],Cyrillic:["Cyrl"],CJK:["Hans","Hant","Kana","Kore","Jpan","Yiii"],SouthEastAsian:["Bali","Batk","Bugi","Java","Khmr","Laoo","Mymr","Thai"],Mongolian:["Mong"],SignWriting:["Sgnw"],NativeAmerican:["Cher","Cans"],Special:["Zyyy"]},rtlscripts:["Arab","Hebr","Syrc","Nkoo","Thaa"],regiongroups:{WW:1,SP:1,AM:2,EU:3,ME:3,AF:3,AS:4,PA:4},territories:{AC:["en"],AD:["ca","es","fr"],AE:["ar","ml","ps","fa"],AF:["fa","ps","uz","tk","bgn","ug-arab","kk-arab","kk-cyrl"],AG:["en","pt"],AI:["en"],AL:["sq","el","mk"],AM:["hy","ku-latn","az-latn"],AO:["pt","ln"],AR:["es","en","cy","gn"],AS:["sm","en"],AT:["de","bar","en","fr","it","hr","sl","hu"],AU:["en","zh-hant","zh","it"],AW:["nl","pap","en"],AX:["sv"],AZ:["az-latn","az-cyrl","tly","ku-latn","ttt","tkr"],BA:["bs","en","hr","sr-cyrl","sr-latn"],BB:["en"],BD:["bn","en","my","mni"],BE:["en","nl","fr","de","vls","wa"],BF:["fr","ff"],BG:["bg","en","ru","tr","de"],BH:["ar","ml"],BI:["rn","fr","sw","en"],BJ:["fr","fon","yo"],BL:["fr"],BM:["en"],BN:["ms","zh-hant","zh","en"],BO:["es","qu","ay","gn","aro"],BQ:["pap","nl"],BR:["pt","en","de","it","ja","es","ko","kgp","yrl"],BS:["en"],BT:["dz","ne","en"],BW:["en","tn","af"],BY:["be","ru"],BZ:["en","es"],CA:["en","fr","it","de","pdt","cr","yi","ike-cans","moe","atj"],CC:["ms","en"],CD:["sw","fr","ln","kg","rw"],CF:["fr","sg","ln"],CG:["fr","ln"],CH:["de","gsw","en","fr","it","lmo","pt","rm"],CI:["fr"],CK:["en"],CL:["es","en","arn"],CM:["fr","en","ff","ar","ksf","ha-arab","ha-latn"],CN:["zh","wuu","yue","hsn","hak","nan","gan","ii","ug-arab","za","mn","bo","ko","kk-arab","kk-cyrl","ky","en","ru","vi","uz","lzh"],CO:["es","guc"],CR:["es"],CU:["es"],CV:["kea","pt"],CW:["pap","nl","es"],CX:["en"],CY:["el","en","tr","fr","hy","ar"],CZ:["cs","en","sk","de","pl"],DE:["de","en","fr","bar","nds","nl","it","es","ru","vmf","tr","gsw","da","hr","ku-latn","el","ksh","pl","hsb","frr","dsb","stq","pfl"],DG:["en"],DJ:["aa","so","ar","fr"],DK:["da","en","de","sv","fo","kl","jut"],DM:["en"],DO:["es","en"],DZ:["arq","ar","fr","kab","en"],EA:["es"],EC:["es","qu","qug"],EE:["et","ru","en","fi","vro"],EG:["ar","arz","en","el"],EH:["ar"],ER:["ti","en","tig","ar","aa","byn"],ES:["es","en","ca","gl","eu","ast","ext"],ET:["en","am","om","so","ti","aa"],FI:["fi","en","sv","de","ru","et","rmf","se","smn","sms"],FJ:["en","hi","hif","fj","rtm"],FK:["en"],FM:["en"],FO:["fo"],FR:["fr","en","es","de","oc","it","pt","pcd","gsw","br","co","ca","nl","eu","frp","ia"],GA:["fr"],GB:["en","fr","de","sco","pa-guru","cy","bn","zh-hant","zh","el","it","ks-arab","gd","yi","ml","ga","kw"],GD:["en"],GE:["ka","xmf","ru","hy","ab","os","ku-latn"],GF:["fr","gcr","zh-hant","zh"],GG:["en"],GH:["ak","en","ee","gur","gaa","ha-latn","ff"],GI:["en","es"],GL:["kl","da"],GM:["en","ff"],GN:["fr","ff","nqo"],GP:["fr"],GQ:["es","fan","fr","pt"],GR:["el","en","fr","de","pnt","mk","tr","bg","sq","tsd"],GT:["es","quc"],GU:["en","ch"],GW:["pt","ff"],GY:["en"],HK:["zh-hant","zh","yue","en"],HN:["es","en"],HR:["hr","en","it"],HT:["ht","fr"],HU:["hu","en","de","fr","ro","hr","sk","sl"],IC:["es"],ID:["id","jv","su","ms","min","bew","ban","bug","bjn","ace","bbc-latn","zh-hant","zh","gor","sly","mwv"],IE:["en","ga","fr"],IL:["he","en","ar","ru","ro","yi","pl","lad-latn","hu","am","ti","ml"],IM:["en","gv"],IN:["hi","en","bn","te","mr","ta","ur","gu","kn","ml","or","pa-guru","bho","as","mai","hne","ne","sat","ks-arab","gom-deva","gbm","sd","doi","tcy","brx","mni","hoc","saz","bfq","njo","bo","bpy","bft","sa","dv","dz"],IO:["en"],IQ:["ar","en","ckb","az-arab","az-latn","fa","lrc"],IR:["fa","az-arab","az-latn","mzn","glk","ckb","sdh","tk","lrc","ar","bqi","luz","lki","bgn","hy","ps","ka","gbz","kk-arab","kk-cyrl"],IS:["is","da"],IT:["it","en","fr","sc","de","vec","nap","lij","scn","sl","sdc","fur","egl","ca","el","lmo","pms","hr","rgn"],JE:["en"],JM:["en","jam"],JO:["ar","en"],JP:["ja","ryu","ko"],KE:["sw","en","ki","so","pko","om","ar","pa-guru","gu"],KG:["ky","ru"],KH:["km"],KI:["en"],KM:["ar","fr"],KN:["en"],KP:["ko"],KR:["ko"],KW:["ar"],KY:["en"],KZ:["ru","kk-cyrl","en","de","ug-cyrl","ug-arab"],LA:["lo"],LB:["ar","en","hy","ku-arab","ku-latn","fr"],LC:["en"],LI:["de","gsw"],LK:["si","ta","en"],LR:["en","ff"],LS:["st","en","zu","ss","xh"],LT:["lt","ru","en","de","sgs"],LU:["fr","lb","de","en","pt"],LV:["lv","en","ru","ltg"],LY:["ar"],MA:["ary","ar","zgh","fr","en","tzm","shi-latn","rif","es"],MC:["fr"],MD:["ro","uk","bg","gag","ru"],ME:["sr-latn","sr-cyrl","sq"],MF:["fr"],MG:["mg","fr","en"],MH:["en","mh"],MK:["mk","sq","tr"],ML:["bm","fr","ses","ar"],MM:["my","shn","kac","mnw"],MN:["mn","kk-arab","kk-cyrl","zh","ru","ug-cyrl","ug-arab"],MO:["zh-hant","zh","pt","en"],MP:["en","ch"],MQ:["fr"],MR:["ar","fr","ff","wo"],MS:["en"],MT:["mt","en","it","fr"],MU:["mfe","en","bho","ur","fr","ta"],MV:["dv"],MW:["en","ny","tum","zu"],MX:["es","en","yua","sei"],MY:["ms","en","zh-hant","zh","ta","jv","dtp","ml","bug","bjn"],MZ:["pt","ts","ny","sw","zu"],NA:["af","kj","ng","hz","en","de","tn"],NC:["fr"],NE:["ha-latn","fr","ar","ff"],NF:["en"],NG:["en","ha-latn","ig","yo","ha-arab","ar","ff"],NI:["es"],NL:["nl","en","de","fr","nds","li","fy","id","zea","rif","tr"],NO:["nb","nn","se"],NP:["ne","mai","bho","new","en","dty","hi","bo","bn"],NR:["en","na"],NU:["en","niu"],NZ:["en","mi"],OM:["ar","fa"],PA:["es","en","zh-hant","zh"],PE:["es","qu","ay"],PF:["fr","ty","zh-hant","zh"],PG:["tpi","en","ho"],PH:["en","tl","es","ceb","ilo","hil","war","pam","pag","zh-hant","zh","cps","krj","bto"],PK:["ur","pa-guru","en","ps","sd","skr-arab","brh","fa","bgn","tg-cyrl","bft","khw","ks-arab"],PL:["pl","en","de","ru","szl","be","uk","csb","sli","lt"],PM:["fr","en"],PN:["en"],PR:["es","en"],PS:["ar"],PT:["pt","en","fr","es","gl"],PW:["en"],PY:["gn","es","de"],QA:["ar","fa","ml"],RE:["fr","rcf","ta"],RO:["ro","en","fr","es","hu","de","tr","sr-latn","sr-cyrl","bg","el","pl"],RS:["sr-cyrl","sr-latn","sq","hu","ro","hr","sk","uk"],RU:["ru","tt","ba","cv","hy","ce","av","udm","mhr","sah","os","kbd","myv","mdf","kum","kv","lez","krc","inh","tyv","az-cyrl","az-latn","ady","krl","lbe","koi","mrj","fi","sr-latn","sr-cyrl","vep","mn","vot","cu"],RW:["rw","en","fr"],SA:["ar"],SB:["en"],SC:["fr","en"],SD:["ar","en","ha-arab","ha-latn"],SE:["sv","en","fi","fit","se","yi","smj","sma","ia"],SG:["en","zh","ms","ta","ml","pa-guru"],SH:["en"],SI:["sl","hr","en","de","hu","it"],SJ:["nb","ru"],SK:["sk","cs","en","de","hu","uk","pl"],SL:["kri","en","ff"],SM:["it","eo"],SN:["wo","fr","ff"],SO:["so","ar","sw","om"],SR:["nl","srn","zh-hant","zh"],SS:["ar","en"],ST:["pt"],SV:["es"],SX:["en","es","nl"],SY:["ar","ku-latn","fr","hy"],SZ:["en","ss","zu","ts"],TA:["en"],TC:["en"],TD:["fr","ar"],TF:["fr"],TG:["fr","ee"],TH:["th","en","nod","zh-hant","zh","mnw","shn"],TJ:["tg-cyrl","ru","fa","ar"],TK:["en"],TL:["pt","tet"],TM:["tk","ru","uz","ku-latn"],TN:["aeb-arab","ar","fr"],TO:["to","en"],TR:["tr","en","ku-latn","kbd","az-latn","az-arab","ar","bg","ady","kiu","hy","ka","sr-latn","sr-cyrl","lzz","sq","ab","el","tru","uz","ky","kk-cyrl"],TT:["en","es"],TV:["en"],TW:["zh-hant","zh","trv"],TZ:["sw","en","lag"],UA:["uk","ru","pl","yi","rue","be","crh","ro","bg","tr","hu","el"],UG:["sw","lg","en","rw","hi"],UM:["en"],US:["en","es","zh-hant","zh","fr","de","tl","it","vi","ko","ru","nv","yi","pdc","haw","frc","chr","esu","cho","lkt","ik","mus"],UY:["es"],UZ:["uz","ru","kaa","tr"],VA:["it","la"],VC:["en"],VE:["es"],VG:["en"],VI:["en"],VN:["vi","zh-hant","zh"],VU:["bi","en","fr"],WF:["wls","fr"],WS:["sm","en"],XK:["sq","aln","sr-cyrl","sr-latn"],YE:["ar","en"],YT:["swb","fr","sw"],ZA:["en","zu","xh","af","nso","tn","st","ts","ss","ve","hi","nr","sw"],ZM:["en","ny","loz"],ZW:["sn","en","nd","ny","ve","tn"]}}))},{}]},{},[1])}).call(this,i("EVdn"))},Mv9J:function(t,e,i){(function(t,e){App.UlsTagMultiselectWidget=function(e){var i,n=App.getCookieVal("preferredLangs",[]),o=[];for(i=0;i<n.length;i++)o.push({data:n[i],label:t.uls.data.languages[n[i]][2]});e=t.extend({allowedValues:Object.keys(t.uls.data.languages),selected:o,inputPosition:"none"},e),App.UlsTagMultiselectWidget.parent.call(this,e)},e.inheritClass(App.UlsTagMultiselectWidget,e.ui.TagMultiselectWidget),App.UlsTagMultiselectWidget.prototype.onUlsSelect=function(e){this.addTag(e,t.uls.data.languages[e][2])}}).call(this,i("EVdn"),i("ovuR"))},Nrnj:function(t,e,i){},W28u:function(t,e,i){(function(t,e){t(function(){var i,n=t(".target-lang-widget");0!==n.length&&(i=e.ui.infuse(n)).$element.uls({onSelect:function(i){var n,o;this.setLabel(t.uls.data.languages[i][2]),this.setData(i),this.setValue(i),t(".translation-fields .oo-ui-fieldLayout").each(function(){var n=e.ui.infuse(t(this)).getField(),o=n.data["tspan-id"];appConfig.translations[o]&&appConfig.translations[o][i]?n.setValue(appConfig.translations[o][i].text):n.setValue("")}),o=(n=t(".image img")).attr("src").replace(/[a-z_-]*\.png.*$/,i+".png"),n.attr("src",o)}.bind(i),quickList:App.getCookieVal("preferredLangs",[]),left:i.$element.offset().left})}),t(function(){var i,n=t(".source-lang-widget");1===n.length&&(i=e.ui.infuse(n[0])).on("change",function(){var n=i.getValue();t(".translation-fields .oo-ui-fieldLayout").each(function(){var i=e.ui.infuse(t(this)),o=i.getField().data.nodeId;void 0===appConfig.translations[o][n]?(i.setLabel(t.i18n("source-lang-not-found",[appConfig.translations[o].fallback.text])),i.$element.addClass("source-lang-not-found")):i.setLabel(appConfig.translations[o][n].text)})})}),t(function(){t(".translation-fields .oo-ui-fieldLayout .oo-ui-inputWidget").each(function(){var i=e.ui.infuse(t(this)),n=t(".image img"),o=e.ui.infuse(t(".target-lang-widget")).getValue(),s={},a=function(){t(".translation-fields .oo-ui-fieldLayout").each(function(){var i=e.ui.infuse(t(this)),n=i.getField().data["tspan-id"];s[n]=i.getField().getValue()}),t.ajax({type:"POST",url:appConfig.baseUrl+"api/translate/"+n.data("filename")+"/"+o,data:s,success:function(t){n.attr("src",t.imageSrc)},error:function(){e.ui.alert(t.i18n("preview-error-occurred"))}})};i.$input.on("blur",a),i.on("change",e.ui.debounce(a,2e3))}),t(".translation-fields .oo-ui-fieldLayout .oo-ui-inputWidget input").trigger("blur")})}).call(this,i("EVdn"),i("ovuR"))},anCX:function(t,e,i){(function(t){!function(t){"use strict";t.i18n.languages.fi=t.extend({},t.i18n.languages.default,{convertGrammar:function(t,e){var i=t.match(/[aou][^äöy]*$/i),n=t;switch(t.match(/wiki$/i)&&(i=!1),t.match(/[bcdfghjklmnpqrstvwxz]$/i)&&(t+="i"),e){case"genitive":t+="n";break;case"elative":t+=i?"sta":"stä";break;case"partitive":t+=i?"a":"ä";break;case"illative":t+=t.slice(-1)+"n";break;case"inessive":t+=i?"ssa":"ssä";break;default:t=n}return t}})}(t)}).call(this,i("EVdn"))},iGkt:function(t,e,i){(function(t,e){App.InterfaceLangButton=function(e){this.interfaceLang=e.interfaceLang,this.currentLang=this.interfaceLang,e=t.extend({indicator:"down",label:appConfig.languages[this.interfaceLang]},e),App.InterfaceLangButton.super.call(this,e)},e.inheritClass(App.InterfaceLangButton,e.ui.ButtonWidget),App.InterfaceLangButton.prototype.onClick=function(t){this.$element.uls({ulsPurpose:"interfaceLang",languages:appConfig.languages,onSelect:this.onUlsSelect.bind(this),top:App.LanguageDialog.prototype.calculateUlsTop.bind(this.$element)})},App.InterfaceLangButton.prototype.onUlsSelect=function(t){this.setLabel(appConfig.languages[t]),this.currentLang=t}}).call(this,i("EVdn"),i("ovuR"))},mF8h:function(t,e,i){(function(t,e){
/*!
* OOUI v0.30.0
* https://www.mediawiki.org/wiki/OOUI
*
* Copyright 2011–2018 OOUI Team and other contributors.
* Released under the MIT license
* http://oojs.mit-license.org
*
* Date: 2018-12-20T06:10:28Z
*/
!function(t){"use strict";var i;t.ui={},t.ui.bind=e.proxy,t.ui.Keys={UNDEFINED:0,BACKSPACE:8,DELETE:46,LEFT:37,RIGHT:39,UP:38,DOWN:40,ENTER:13,END:35,HOME:36,TAB:9,PAGEUP:33,PAGEDOWN:34,ESCAPE:27,SHIFT:16,SPACE:32},t.ui.MouseButtons={LEFT:1,MIDDLE:2,RIGHT:3},t.ui.elementId=0,t.ui.generateElementId=function(){return t.ui.elementId++,"ooui-"+t.ui.elementId},t.ui.isFocusableElement=function(t){var i,n=t[0];return!n.disabled&&(!(!e.expr.pseudos.visible(n)||t.parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length)&&("true"===n.contentEditable||(t.prop("tabIndex")>=0||(i=n.nodeName.toLowerCase(),-1!==["input","select","textarea","button","object"].indexOf(i)||("a"===i||"area"===i)&&void 0!==t.attr("href")))))},t.ui.findFocusable=function(i,n){var o=e([]),s=i.find("input, select, textarea, button, object, a, area, [contenteditable], [tabindex]");return n&&(s=Array.prototype.reverse.call(s)),s.each(function(){var i=e(this);if(t.ui.isFocusableElement(i))return o=i,!1}),o},t.ui.getUserLanguages=function(){return["en"]},t.ui.getLocalValue=function(e,i,n){var o,s,a;if(e[i])return e[i];for(o=0,s=(a=t.ui.getUserLanguages()).length;o<s;o++)if(e[i=a[o]])return e[i];if(e[n])return e[n];for(i in e)return e[i]},t.ui.contains=function(t,i,n){var o;for(Array.isArray(t)||(t=[t]),o=t.length-1;o>=0;o--)if(n&&i===t[o]||e.contains(t[o],i))return!0;return!1},t.ui.debounce=function(t,e,i){var n;return function(){var o=this,s=arguments;i&&!n&&t.apply(o,s),n&&!e||(clearTimeout(n),n=setTimeout(function(){n=null,i||t.apply(o,s)},e))}},t.ui.warnDeprecation=function(e){void 0!==t.getProp(window,"console","warn")&&console.warn(e)},t.ui.throttle=function(e,i){var n,o,s,a=0,r=function(){s=null,a=t.ui.now(),e.apply(n,o)};return function(){var e=i-(t.ui.now()-a);n=this,o=arguments,e<=0?(clearTimeout(s),r()):s||(s=setTimeout(r,e))}},t.ui.now=Date.now||function(){return(new Date).getTime()},t.ui.infuse=function(e,i){return t.ui.Element.static.infuse(e,i)},i={"ooui-outline-control-move-down":"Move item down","ooui-outline-control-move-up":"Move item up","ooui-outline-control-remove":"Remove item","ooui-toolbar-more":"More","ooui-toolgroup-expand":"More","ooui-toolgroup-collapse":"Fewer","ooui-item-remove":"Remove","ooui-dialog-message-accept":"OK","ooui-dialog-message-reject":"Cancel","ooui-dialog-process-error":"Something went wrong","ooui-dialog-process-dismiss":"Dismiss","ooui-dialog-process-retry":"Try again","ooui-dialog-process-continue":"Continue","ooui-combobox-button-label":"Dropdown for combobox","ooui-selectfile-button-select":"Select a file","ooui-selectfile-not-supported":"File selection is not supported","ooui-selectfile-placeholder":"No file is selected","ooui-selectfile-dragdrop-placeholder":"Drop file here","ooui-field-help":"Help"},t.ui.msg=function(t){var e=i[t],n=Array.prototype.slice.call(arguments,1);return e="string"==typeof e?e.replace(/\$(\d+)/g,function(t,e){var i=parseInt(e,10);return void 0!==n[i-1]?n[i-1]:"$"+e}):"["+t+"]"},t.ui.deferMsg=function(){var e=arguments;return function(){return t.ui.msg.apply(t.ui,e)}},t.ui.resolveMsg=function(t){return"function"==typeof t?t():t},t.ui.isSafeUrl=function(t){var e,i;function n(t,e){return t.substr(0,e.length)===e}if(i=["bitcoin","ftp","ftps","geo","git","gopher","http","https","irc","ircs","magnet","mailto","mms","news","nntp","redis","sftp","sip","sips","sms","ssh","svn","tel","telnet","urn","worldwind","xmpp"],""===t)return!0;for(e=0;e<i.length;e++)if(n(t,i[e]+":"))return!0;return!(!n(t,"/")&&!n(t,"./"))||!(!n(t,"?")&&!n(t,"#"))},t.ui.isMobile=function(){return!1},t.ui.getViewportSpacing=function(){return{top:0,right:0,bottom:0,left:0}},t.ui.getDefaultOverlay=function(){return t.ui.$defaultOverlay||(t.ui.$defaultOverlay=e("<div>").addClass("oo-ui-defaultOverlay"),e("body").append(t.ui.$defaultOverlay)),t.ui.$defaultOverlay},
/*!
* Mixin namespace.
*/
t.ui.mixin={},t.ui.Element=function(i){t.ui.isDemo&&(this.initialConfig=i),i=i||{},this.$=e,this.elementId=null,this.visible=!0,this.data=i.data,this.$element=i.$element||e(document.createElement(this.getTagName())),this.elementGroup=null,Array.isArray(i.classes)&&this.$element.addClass(i.classes),i.id&&this.setElementId(i.id),i.text&&this.$element.text(i.text),i.content&&this.$element.append(i.content.map(function(e){return"string"==typeof e?document.createTextNode(e):e instanceof t.ui.HtmlSnippet?e.toString():e instanceof t.ui.Element?e.$element:e})),i.$content&&this.$element.append(i.$content)},t.initClass(t.ui.Element),t.ui.Element.static.tagName="div",t.ui.Element.static.infuse=function(e,i){var n=t.ui.Element.static.unsafeInfuse(e,i,!1);return"string"==typeof e&&t.ui.warnDeprecation("Passing a string ID to infuse is deprecated. Use an HTMLElement or jQuery collection instead."),n},t.ui.Element.static.unsafeInfuse=function(i,n,o){var s,a,r,l,u,c,h,d,p,g,f;if("string"==typeof i?(s=i,a=e(document.getElementById(s))):s=(a=e(i)).attr("id"),!a.length)throw r="string"==typeof i?"Widget not found: "+i:i&&i.selector?"Widget not found: "+i.selector:"Widget not found",new Error(r);if(a[0].oouiInfused&&(a=a[0].oouiInfused),l=a.data("ooui-infused")){if(!0===l)throw new Error("Circular dependency! "+s);return o&&(g=l.constructor.static.gatherPreInfuseState(a,l),o.done(l.restorePreInfuseState.bind(l,g)),(f=a.data("ooui-infused-children"))&&f.length&&f.forEach(function(t){var e=t.constructor.static.gatherPreInfuseState(a,t);o.done(t.restorePreInfuseState.bind(t,e))})),l}if(!(l=a.attr("data-ooui")))throw new Error("No infusion data found: "+s);try{l=JSON.parse(l)}catch(t){l=null}if(!l||!l._)throw new Error("No valid infusion data found: "+s);if("Tag"===l._)return new t.ui.Element(e.extend({},n,{$element:a}));if(c=l._.split("."),void 0===(u=t.getProp.apply(t,[window].concat(c))))throw new Error("Unknown widget type: id: "+s+", class: "+l._);for(h=u.parent;void 0!==h&&h!==t.ui.Element;)h=h.parent;if(h!==t.ui.Element)throw new Error("Unknown widget type: id: "+s+", class: "+l._);return o||(p=e.Deferred(),o=p.promise()),a.data("ooui-infused",!0),l.id=s,f=[],l=t.copy(l,null,function(e){var i;if(t.isPlainObject(e)){if(e.tag)return i=t.ui.Element.static.unsafeInfuse(e.tag,n,o),f.push(i),f.push.apply(f,i.$element.data("ooui-infused-children")||[]),i.$element.removeData("ooui-infused-children"),i;if(void 0!==e.html)return new t.ui.HtmlSnippet(e.html)}}),l=u.static.reusePreInfuseDOM(a[0],l),g=u.static.gatherPreInfuseState(a[0],l),d=new u(e.extend({},n,l)),a[0].oouiInfused=d.$element,p&&(a[0]!==d.$element[0]&&a.replaceWith(d.$element),p.resolve()),d.$element.data("ooui-infused",d),d.$element.data("ooui-infused-children",f),d.$element.attr("data-ooui",""),o.done(d.restorePreInfuseState.bind(d,g)),d},t.ui.Element.static.reusePreInfuseDOM=function(t,e){return e},t.ui.Element.static.gatherPreInfuseState=function(){return{}},t.ui.Element.static.getJQuery=function(t,i){function n(t){return e(t,n.context)}return n.context=this.getDocument(t),i&&(n.$iframe=i),n},t.ui.Element.static.getDocument=function(t){return t[0]&&t[0].ownerDocument||t.context||t.ownerDocument||t.document||t.nodeType===Node.DOCUMENT_NODE&&t||null},t.ui.Element.static.getWindow=function(t){return this.getDocument(t).defaultView},t.ui.Element.static.getDir=function(t){var i,n;return t instanceof e&&(t=t[0]),i=t.nodeType===Node.DOCUMENT_NODE,n=void 0!==t.document,(i||n)&&(n&&(t=t.document),t=t.body),e(t).css("direction")},t.ui.Element.static.getFrameOffset=function(t,e,i){var n,o,s,a,r;if(e||(e=window),i||(i={top:0,left:0}),t.parent===t)return i;for(n=0,o=(s=t.parent.document.getElementsByTagName("iframe")).length;n<o;n++)if(s[n].contentWindow===t){a=s[n];break}return a&&(r=a.getBoundingClientRect(),i.left+=r.left,i.top+=r.top,t!==e&&this.getFrameOffset(t.parent,i)),i},t.ui.Element.static.getRelativePosition=function(t,i){for(var n,o,s=t.offset(),a=i.offset(),r=this.getDocument(t),l=this.getDocument(i);r!==l;){if(!(n=r.defaultView.frameElement))throw new Error("$element frame is not contained in $anchor frame");o=e(n).offset(),s.left+=o.left,s.top+=o.top,r=n.ownerDocument}return s.left-=a.left,s.top-=a.top,s},t.ui.Element.static.getBorders=function(t){var i=t.ownerDocument.defaultView.getComputedStyle(t,null),n=e(t);return{top:parseFloat(i?i.borderTopWidth:n.css("borderTopWidth"))||0,left:parseFloat(i?i.borderLeftWidth:n.css("borderLeftWidth"))||0,bottom:parseFloat(i?i.borderBottomWidth:n.css("borderBottomWidth"))||0,right:parseFloat(i?i.borderRightWidth:n.css("borderRightWidth"))||0}},t.ui.Element.static.getDimensions=function(t){var i,n,o=t.ownerDocument||t.document,s=o.defaultView;return s===t||t===o.documentElement?{borders:{top:0,left:0,bottom:0,right:0},scroll:{top:(n=e(s)).scrollTop(),left:n.scrollLeft()},scrollbar:{right:0,bottom:0},rect:{top:0,left:0,bottom:n.innerHeight(),right:n.innerWidth()}}:(i=e(t),{borders:this.getBorders(t),scroll:{top:i.scrollTop(),left:i.scrollLeft()},scrollbar:{right:i.innerWidth()-t.clientWidth,bottom:i.innerHeight()-t.clientHeight},rect:t.getBoundingClientRect()})},t.ui.Element.static.getScrollLeft=function(){var t=null;return function(i){var n,o,s=i.window===i||i===i.ownerDocument.body||i===i.ownerDocument.documentElement,a=s?e(window).scrollLeft():i.scrollLeft;return"rtl"===(s?"ltr":e(i).css("direction"))&&(null===t&&(n=e("<div>").attr({dir:"rtl",style:"font-size: 14px; width: 1px; height: 1px; position: absolute; top: -1000px; overflow: scroll;"}).text("A"),o=n[0],n.appendTo("body"),o.scrollLeft>0?t="default":(o.scrollLeft=1,t=0===o.scrollLeft?"negative":"reverse"),n.remove()),"reverse"===t?a=-a:"default"===t&&(a=a-i.scrollWidth+i.clientWidth)),a}}(),t.ui.Element.static.getRootScrollableElement=function(e){var i,n;return void 0===t.ui.scrollableElement&&(i=(n=e.ownerDocument.body).scrollTop,n.scrollTop=1,1===Math.round(n.scrollTop)?(n.scrollTop=i,t.ui.scrollableElement="body"):t.ui.scrollableElement="documentElement"),e.ownerDocument[t.ui.scrollableElement]},t.ui.Element.static.getClosestScrollableContainer=function(t,i){var n,o,s=["overflow-x","overflow-y"],a=e(t).parent();if("x"!==i&&"y"!==i||(s=["overflow-"+i]),e(t).is("html, body"))return this.getRootScrollableElement(t);for(;a.length;){if(a[0]===this.getRootScrollableElement(t))return a[0];for(n=s.length;n--;)if("auto"===(o=a.css(s[n]))||"scroll"===o)return a[0];a=a.parent()}return this.getRootScrollableElement(t)},t.ui.Element.static.scrollIntoView=function(t,i){var n,o,s,a,r,l,u,c=e.Deferred();return i=i||{},o={},s=this.getClosestScrollableContainer(t,i.direction),a=e(s),r=this.getDimensions(t),l=this.getDimensions(s),u=e(this.getWindow(t)),n=a.is("html, body")?{top:r.rect.top,bottom:u.innerHeight()-r.rect.bottom,left:r.rect.left,right:u.innerWidth()-r.rect.right}:{top:r.rect.top-(l.rect.top+l.borders.top),bottom:l.rect.bottom-l.borders.bottom-l.scrollbar.bottom-r.rect.bottom,left:r.rect.left-(l.rect.left+l.borders.left),right:l.rect.right-l.borders.right-l.scrollbar.right-r.rect.right},i.direction&&"y"!==i.direction||(n.top<0?o.scrollTop=l.scroll.top+n.top:n.top>0&&n.bottom<0&&(o.scrollTop=l.scroll.top+Math.min(n.top,-n.bottom))),i.direction&&"x"!==i.direction||(n.left<0?o.scrollLeft=l.scroll.left+n.left:n.left>0&&n.right<0&&(o.scrollLeft=l.scroll.left+Math.min(n.left,-n.right))),e.isEmptyObject(o)?c.resolve():(a.stop(!0).animate(o,void 0===i.duration?"fast":i.duration),a.queue(function(t){c.resolve(),t()})),c.promise()},t.ui.Element.static.reconsiderScrollbars=function(t){var e,i,n,o,s=[];for(n=t.scrollLeft,o=t.scrollTop;t.firstChild;)s.push(t.firstChild),t.removeChild(t.firstChild);for(t.offsetHeight,e=0,i=s.length;e<i;e++)t.appendChild(s[e]);t.scrollLeft=n,t.scrollTop=o},t.ui.Element.prototype.toggle=function(t){return(t=void 0===t?!this.visible:!!t)!==this.isVisible()&&(this.visible=t,this.$element.toggleClass("oo-ui-element-hidden",!this.visible),this.emit("toggle",t)),this},t.ui.Element.prototype.isVisible=function(){return this.visible},t.ui.Element.prototype.getData=function(){return this.data},t.ui.Element.prototype.setData=function(t){return this.data=t,this},t.ui.Element.prototype.setElementId=function(t){return this.elementId=t,this.$element.attr("id",t),this},t.ui.Element.prototype.getElementId=function(){return null===this.elementId&&this.setElementId(t.ui.generateElementId()),this.elementId},t.ui.Element.prototype.supports=function(t){var e,i,n=0;for(e=0,i=(t=Array.isArray(t)?t:[t]).length;e<i;e++)"function"==typeof this[t[e]]&&n++;return t.length===n},t.ui.Element.prototype.updateThemeClasses=function(){t.ui.theme.queueUpdateElementClasses(this)},t.ui.Element.prototype.getTagName=function(){return this.constructor.static.tagName},t.ui.Element.prototype.isElementAttached=function(){return e.contains(this.getElementDocument(),this.$element[0])},t.ui.Element.prototype.getElementDocument=function(){return t.ui.Element.static.getDocument(this.$element)},t.ui.Element.prototype.getElementWindow=function(){return t.ui.Element.static.getWindow(this.$element)},t.ui.Element.prototype.getClosestScrollableElementContainer=function(){return t.ui.Element.static.getClosestScrollableContainer(this.$element[0])},t.ui.Element.prototype.getElementGroup=function(){return this.elementGroup},t.ui.Element.prototype.setElementGroup=function(t){return this.elementGroup=t,this},t.ui.Element.prototype.scrollElementIntoView=function(i){return!this.isElementAttached()||!this.isVisible()||this.getElementGroup()&&!this.getElementGroup().isVisible()?e.Deferred().resolve():t.ui.Element.static.scrollIntoView(this.$element[0],i)},t.ui.Element.prototype.restorePreInfuseState=function(){},t.ui.HtmlSnippet=function(t){this.content=t},t.initClass(t.ui.HtmlSnippet),t.ui.HtmlSnippet.prototype.toString=function(){return this.content},t.ui.Layout=function(e){e=e||{},t.ui.Layout.parent.call(this,e),t.EventEmitter.call(this),this.$element.addClass("oo-ui-layout")},t.inheritClass(t.ui.Layout,t.ui.Element),t.mixinClass(t.ui.Layout,t.EventEmitter),t.ui.Layout.prototype.resetScroll=function(){return this.$element[0].scrollTop=0,this},t.ui.Widget=function(i){i=e.extend({disabled:!1},i),t.ui.Widget.parent.call(this,i),t.EventEmitter.call(this),this.disabled=null,this.wasDisabled=null,this.$element.addClass("oo-ui-widget"),this.setDisabled(!!i.disabled)},t.inheritClass(t.ui.Widget,t.ui.Element),t.mixinClass(t.ui.Widget,t.EventEmitter),t.ui.Widget.prototype.isDisabled=function(){return this.disabled},t.ui.Widget.prototype.setDisabled=function(t){var e;return this.disabled=!!t,(e=this.isDisabled())!==this.wasDisabled&&(this.$element.toggleClass("oo-ui-widget-disabled",e),this.$element.toggleClass("oo-ui-widget-enabled",!e),this.$element.attr("aria-disabled",e.toString()),this.emit("disable",e),this.updateThemeClasses()),this.wasDisabled=e,this},t.ui.Widget.prototype.updateDisabled=function(){return this.setDisabled(this.disabled),this},t.ui.Widget.prototype.getInputId=function(){return null},t.ui.Widget.prototype.simulateLabelClick=function(){},t.ui.Theme=function(){this.elementClassesQueue=[],this.debouncedUpdateQueuedElementClasses=t.ui.debounce(this.updateQueuedElementClasses)},t.initClass(t.ui.Theme),t.ui.Theme.prototype.getElementClasses=function(){return{on:[],off:[]}},t.ui.Theme.prototype.updateElementClasses=function(t){var i=e([]),n=this.getElementClasses(t);t.$icon&&(i=i.add(t.$icon)),t.$indicator&&(i=i.add(t.$indicator)),i.removeClass(n.off).addClass(n.on)},t.ui.Theme.prototype.updateQueuedElementClasses=function(){var t;for(t=0;t<this.elementClassesQueue.length;t++)this.updateElementClasses(this.elementClassesQueue[t]);this.elementClassesQueue=[]},t.ui.Theme.prototype.queueUpdateElementClasses=function(t){-1===this.elementClassesQueue.lastIndexOf(t)&&(this.elementClassesQueue.push(t),this.debouncedUpdateQueuedElementClasses())},t.ui.Theme.prototype.getDialogTransitionDuration=function(){return 0},t.ui.mixin.TabIndexedElement=function(t){t=e.extend({tabIndex:0},t),this.$tabIndexed=null,this.tabIndex=null,this.connect(this,{disable:"onTabIndexedElementDisable"}),this.setTabIndex(t.tabIndex),this.setTabIndexedElement(t.$tabIndexed||this.$element)},t.initClass(t.ui.mixin.TabIndexedElement),t.ui.mixin.TabIndexedElement.prototype.setTabIndexedElement=function(t){var e=this.tabIndex;return this.setTabIndex(null),this.$tabIndexed=t,this.tabIndex=e,this.updateTabIndex()},t.ui.mixin.TabIndexedElement.prototype.setTabIndex=function(t){return t=/^-?\d+$/.test(t)?Number(t):null,this.tabIndex!==t&&(this.tabIndex=t,this.updateTabIndex()),this},t.ui.mixin.TabIndexedElement.prototype.updateTabIndex=function(){return this.$tabIndexed&&(null!==this.tabIndex?this.$tabIndexed.attr({tabindex:this.isDisabled()?-1:this.tabIndex,"aria-disabled":this.isDisabled().toString()}):this.$tabIndexed.removeAttr("tabindex aria-disabled")),this},t.ui.mixin.TabIndexedElement.prototype.onTabIndexedElementDisable=function(){this.updateTabIndex()},t.ui.mixin.TabIndexedElement.prototype.getTabIndex=function(){return this.tabIndex},t.ui.mixin.TabIndexedElement.prototype.getInputId=function(){var e;return this.$tabIndexed&&this.isLabelableNode(this.$tabIndexed)?(void 0===(e=this.$tabIndexed.attr("id"))&&(e=t.ui.generateElementId(),this.$tabIndexed.attr("id",e)),e):null},t.ui.mixin.TabIndexedElement.prototype.isLabelableNode=function(t){var e=t.prop("tagName").toLowerCase();return"input"===e&&"hidden"!==t.attr("type")||-1!==["button","meter","output","progress","select","textarea"].indexOf(e)},t.ui.mixin.TabIndexedElement.prototype.focus=function(){return this.isDisabled()||this.$tabIndexed.focus(),this},t.ui.mixin.TabIndexedElement.prototype.blur=function(){return this.$tabIndexed.blur(),this},t.ui.mixin.TabIndexedElement.prototype.simulateLabelClick=function(){this.focus()},t.ui.mixin.ButtonElement=function(t){t=t||{},this.$button=null,this.framed=null,this.active=void 0!==t.active&&t.active,this.onDocumentMouseUpHandler=this.onDocumentMouseUp.bind(this),this.onMouseDownHandler=this.onMouseDown.bind(this),this.onDocumentKeyUpHandler=this.onDocumentKeyUp.bind(this),this.onKeyDownHandler=this.onKeyDown.bind(this),this.onClickHandler=this.onClick.bind(this),this.onKeyPressHandler=this.onKeyPress.bind(this),this.$element.addClass("oo-ui-buttonElement"),this.toggleFramed(void 0===t.framed||t.framed),this.setButtonElement(t.$button||e("<a>"))},t.initClass(t.ui.mixin.ButtonElement),t.ui.mixin.ButtonElement.static.cancelButtonMouseDownEvents=!0,t.ui.mixin.ButtonElement.prototype.setButtonElement=function(t){this.$button&&this.$button.removeClass("oo-ui-buttonElement-button").removeAttr("role accesskey").off({mousedown:this.onMouseDownHandler,keydown:this.onKeyDownHandler,click:this.onClickHandler,keypress:this.onKeyPressHandler}),this.$button=t.addClass("oo-ui-buttonElement-button").on({mousedown:this.onMouseDownHandler,keydown:this.onKeyDownHandler,click:this.onClickHandler,keypress:this.onKeyPressHandler}),"A"===this.$button.prop("tagName").toUpperCase()&&this.$button.attr("role","button")},t.ui.mixin.ButtonElement.prototype.onMouseDown=function(e){if(!this.isDisabled()&&e.which===t.ui.MouseButtons.LEFT)return this.$element.addClass("oo-ui-buttonElement-pressed"),this.getElementDocument().addEventListener("mouseup",this.onDocumentMouseUpHandler,!0),!this.constructor.static.cancelButtonMouseDownEvents&&void 0},t.ui.mixin.ButtonElement.prototype.onDocumentMouseUp=function(e){this.isDisabled()||e.which!==t.ui.MouseButtons.LEFT||(this.$element.removeClass("oo-ui-buttonElement-pressed"),this.getElementDocument().removeEventListener("mouseup",this.onDocumentMouseUpHandler,!0))},t.ui.mixin.ButtonElement.prototype.onMouseUp=function(){t.ui.warnDeprecation("onMouseUp is deprecated, use onDocumentMouseUp instead"),this.onDocumentMouseUp.apply(this,arguments)},t.ui.mixin.ButtonElement.prototype.onClick=function(e){if(!this.isDisabled()&&e.which===t.ui.MouseButtons.LEFT&&this.emit("click"))return!1},t.ui.mixin.ButtonElement.prototype.onKeyDown=function(e){this.isDisabled()||e.which!==t.ui.Keys.SPACE&&e.which!==t.ui.Keys.ENTER||(this.$element.addClass("oo-ui-buttonElement-pressed"),this.getElementDocument().addEventListener("keyup",this.onDocumentKeyUpHandler,!0))},t.ui.mixin.ButtonElement.prototype.onDocumentKeyUp=function(e){this.isDisabled()||e.which!==t.ui.Keys.SPACE&&e.which!==t.ui.Keys.ENTER||(this.$element.removeClass("oo-ui-buttonElement-pressed"),this.getElementDocument().removeEventListener("keyup",this.onDocumentKeyUpHandler,!0))},t.ui.mixin.ButtonElement.prototype.onKeyUp=function(){t.ui.warnDeprecation("onKeyUp is deprecated, use onDocumentKeyUp instead"),this.onDocumentKeyUp.apply(this,arguments)},t.ui.mixin.ButtonElement.prototype.onKeyPress=function(e){if(!this.isDisabled()&&(e.which===t.ui.Keys.SPACE||e.which===t.ui.Keys.ENTER)&&this.emit("click"))return!1},t.ui.mixin.ButtonElement.prototype.isFramed=function(){return this.framed},t.ui.mixin.ButtonElement.prototype.toggleFramed=function(t){return(t=void 0===t?!this.framed:!!t)!==this.framed&&(this.framed=t,this.$element.toggleClass("oo-ui-buttonElement-frameless",!t).toggleClass("oo-ui-buttonElement-framed",t),this.updateThemeClasses()),this},t.ui.mixin.ButtonElement.prototype.setActive=function(t){return this.active=!!t,this.$element.toggleClass("oo-ui-buttonElement-active",this.active),this.updateThemeClasses(),this},t.ui.mixin.ButtonElement.prototype.isActive=function(){return this.active},t.ui.mixin.GroupElement=function(i){i=i||{},t.EmitterList.call(this,i),this.$group=null,this.setGroupElement(i.$group||e("<div>"))},t.mixinClass(t.ui.mixin.GroupElement,t.EmitterList),t.ui.mixin.GroupElement.prototype.setGroupElement=function(t){var e,i;for(this.$group=t,e=0,i=this.items.length;e<i;e++)this.$group.append(this.items[e].$element)},t.ui.mixin.GroupElement.prototype.findItemFromData=function(e){var i,n,o,s=t.getHash(e);for(i=0,n=this.items.length;i<n;i++)if(o=this.items[i],s===t.getHash(o.getData()))return o;return null},t.ui.mixin.GroupElement.prototype.findItemsFromData=function(e){var i,n,o,s=t.getHash(e),a=[];for(i=0,n=this.items.length;i<n;i++)o=this.items[i],s===t.getHash(o.getData())&&a.push(o);return a},t.ui.mixin.GroupElement.prototype.addItems=function(e,i){return t.EmitterList.prototype.addItems.call(this,e,i),this.emit("change",this.getItems()),this},t.ui.mixin.GroupElement.prototype.moveItem=function(e,i){return this.insertItemElements(e,i),i=t.EmitterList.prototype.moveItem.call(this,e,i)},t.ui.mixin.GroupElement.prototype.insertItem=function(e,i){return e.setElementGroup(this),this.insertItemElements(e,i),i=t.EmitterList.prototype.insertItem.call(this,e,i)},t.ui.mixin.GroupElement.prototype.insertItemElements=function(t,e){void 0===e||e<0||e>=this.items.length?this.$group.append(t.$element):0===e?this.$group.prepend(t.$element):this.items[e].$element.before(t.$element)},t.ui.mixin.GroupElement.prototype.removeItems=function(e){var i,n,o;for(i=0,n=e.length;i<n;i++)o=e[i],-1!==this.items.indexOf(o)&&(o.setElementGroup(null),o.$element.detach());return t.EmitterList.prototype.removeItems.call(this,e),this.emit("change",this.getItems()),this},t.ui.mixin.GroupElement.prototype.clearItems=function(){var e,i;for(e=0,i=this.items.length;e<i;e++)this.items[e].setElementGroup(null),this.items[e].$element.detach();return t.EmitterList.prototype.clearItems.call(this),this.emit("change",this.getItems()),this},t.ui.mixin.LabelElement=function(t){t=t||{},this.$label=null,this.label=null,this.invisibleLabel=null,this.setLabel(t.label||this.constructor.static.label),this.setLabelElement(t.$label||e("<span>")),this.setInvisibleLabel(t.invisibleLabel)},t.initClass(t.ui.mixin.LabelElement),t.ui.mixin.LabelElement.static.label=null,t.ui.mixin.LabelElement.static.highlightQuery=function(t,i,n){var o,s,a,r=-1,l=e("<span>");if(n)for(s=t.length,a=i.length,o=0;-1===r&&o<=s-a;o++)0===n(i,t.slice(o,o+a))&&(r=o);else r=t.toLowerCase().indexOf(i.toLowerCase());return i.length&&-1!==r?l.append(document.createTextNode(t.slice(0,r)),e("<span>").addClass("oo-ui-labelElement-label-highlight").text(t.slice(r,r+i.length)),document.createTextNode(t.slice(r+i.length))):l.text(t),l.contents()},t.ui.mixin.LabelElement.prototype.setLabelElement=function(t){this.$label&&this.$label.removeClass("oo-ui-labelElement-label").empty(),this.$label=t.addClass("oo-ui-labelElement-label"),this.setLabelContent(this.label)},t.ui.mixin.LabelElement.prototype.setLabel=function(i){return i=("string"==typeof(i="function"==typeof i?t.ui.resolveMsg(i):i)||i instanceof e)&&i.length||i instanceof t.ui.HtmlSnippet&&i.toString().length?i:null,this.label!==i&&(this.$label&&this.setLabelContent(i),this.label=i,this.emit("labelChange")),this.$element.toggleClass("oo-ui-labelElement",!!this.label&&!this.invisibleLabel),this},t.ui.mixin.LabelElement.prototype.setInvisibleLabel=function(t){return t=!!t,this.invisibleLabel!==t&&(this.invisibleLabel=t,this.emit("labelChange")),this.$label.toggleClass("oo-ui-labelElement-invisible",this.invisibleLabel),this.$element.toggleClass("oo-ui-labelElement",!!this.label&&!this.invisibleLabel),this},t.ui.mixin.LabelElement.prototype.setHighlightedQuery=function(t,e,i){return this.setLabel(this.constructor.static.highlightQuery(t,e,i))},t.ui.mixin.LabelElement.prototype.getLabel=function(){return this.label},t.ui.mixin.LabelElement.prototype.setLabelContent=function(i){"string"==typeof i?i.match(/^\s*$/)?this.$label.html(" "):this.$label.text(i):i instanceof t.ui.HtmlSnippet?this.$label.html(i.toString()):i instanceof e?this.$label.empty().append(i):this.$label.empty()},t.ui.mixin.IconElement=function(t){t=t||{},this.$icon=null,this.icon=null,this.iconTitle=null,this.setIcon(t.icon||this.constructor.static.icon),this.setIconTitle(t.iconTitle||this.constructor.static.iconTitle),this.setIconElement(t.$icon||e("<span>"))},t.initClass(t.ui.mixin.IconElement),t.ui.mixin.IconElement.static.icon=null,t.ui.mixin.IconElement.static.iconTitle=null,t.ui.mixin.IconElement.prototype.setIconElement=function(t){this.$icon&&this.$icon.removeClass("oo-ui-iconElement-icon oo-ui-icon-"+this.icon).removeAttr("title"),this.$icon=t.addClass("oo-ui-iconElement-icon").toggleClass("oo-ui-iconElement-noIcon",!this.icon).toggleClass("oo-ui-icon-"+this.icon,!!this.icon),null!==this.iconTitle&&this.$icon.attr("title",this.iconTitle),this.updateThemeClasses()},t.ui.mixin.IconElement.prototype.setIcon=function(e){return e="string"==typeof(e=t.isPlainObject(e)?t.ui.getLocalValue(e,null,"default"):e)&&e.trim().length?e.trim():null,this.icon!==e&&(this.$icon&&(null!==this.icon&&this.$icon.removeClass("oo-ui-icon-"+this.icon),null!==e&&this.$icon.addClass("oo-ui-icon-"+e)),this.icon=e),this.$element.toggleClass("oo-ui-iconElement",!!this.icon),this.$icon&&this.$icon.toggleClass("oo-ui-iconElement-noIcon",!this.icon),this.updateThemeClasses(),this},t.ui.mixin.IconElement.prototype.setIconTitle=function(e){return e="function"==typeof e||"string"==typeof e&&e.length?t.ui.resolveMsg(e):null,this.iconTitle!==e&&(this.iconTitle=e,this.$icon&&(null!==this.iconTitle?this.$icon.attr("title",e):this.$icon.removeAttr("title"))),this},t.ui.mixin.IconElement.prototype.getIcon=function(){return this.icon},t.ui.mixin.IconElement.prototype.getIconTitle=function(){return this.iconTitle},t.ui.mixin.IndicatorElement=function(t){t=t||{},this.$indicator=null,this.indicator=null,this.indicatorTitle=null,this.setIndicator(t.indicator||this.constructor.static.indicator),this.setIndicatorTitle(t.indicatorTitle||this.constructor.static.indicatorTitle),this.setIndicatorElement(t.$indicator||e("<span>"))},t.initClass(t.ui.mixin.IndicatorElement),t.ui.mixin.IndicatorElement.static.indicator=null,t.ui.mixin.IndicatorElement.static.indicatorTitle=null,t.ui.mixin.IndicatorElement.prototype.setIndicatorElement=function(t){this.$indicator&&this.$indicator.removeClass("oo-ui-indicatorElement-indicator oo-ui-indicator-"+this.indicator).removeAttr("title"),this.$indicator=t.addClass("oo-ui-indicatorElement-indicator").toggleClass("oo-ui-indicatorElement-noIndicator",!this.indicator).toggleClass("oo-ui-indicator-"+this.indicator,!!this.indicator),null!==this.indicatorTitle&&this.$indicator.attr("title",this.indicatorTitle),this.updateThemeClasses()},t.ui.mixin.IndicatorElement.prototype.setIndicator=function(t){return t="string"==typeof t&&t.length?t.trim():null,this.indicator!==t&&(this.$indicator&&(null!==this.indicator&&this.$indicator.removeClass("oo-ui-indicator-"+this.indicator),null!==t&&this.$indicator.addClass("oo-ui-indicator-"+t)),this.indicator=t),this.$element.toggleClass("oo-ui-indicatorElement",!!this.indicator),this.$indicator&&this.$indicator.toggleClass("oo-ui-indicatorElement-noIndicator",!this.indicator),this.updateThemeClasses(),this},t.ui.mixin.IndicatorElement.prototype.setIndicatorTitle=function(e){return e="function"==typeof e||"string"==typeof e&&e.length?t.ui.resolveMsg(e):null,this.indicatorTitle!==e&&(this.indicatorTitle=e,this.$indicator&&(null!==this.indicatorTitle?this.$indicator.attr("title",e):this.$indicator.removeAttr("title"))),this},t.ui.mixin.IndicatorElement.prototype.getIndicator=function(){return this.indicator},t.ui.mixin.IndicatorElement.prototype.getIndicatorTitle=function(){return this.indicatorTitle},t.ui.mixin.FlaggedElement=function(t){t=t||{},this.flags={},this.$flagged=null,this.setFlags(t.flags),this.setFlaggedElement(t.$flagged||this.$element)},t.ui.mixin.FlaggedElement.prototype.setFlaggedElement=function(t){var e=Object.keys(this.flags).map(function(t){return"oo-ui-flaggedElement-"+t});this.$flagged&&this.$flagged.removeClass(e),this.$flagged=t.addClass(e)},t.ui.mixin.FlaggedElement.prototype.hasFlag=function(t){return this.flags&&t in this.flags},t.ui.mixin.FlaggedElement.prototype.getFlags=function(){return Object.keys(this.flags||{})},t.ui.mixin.FlaggedElement.prototype.clearFlags=function(){var t,e,i={},n=[];for(t in this.flags)e="oo-ui-flaggedElement-"+t,i[t]=!1,delete this.flags[t],n.push(e);return this.$flagged&&this.$flagged.removeClass(n),this.updateThemeClasses(),this.emit("flag",i),this},t.ui.mixin.FlaggedElement.prototype.setFlags=function(e){var i,n,o,s,a={},r=[],l=[];if("string"==typeof e)s="oo-ui-flaggedElement-"+e,this.flags[e]||(this.flags[e]=!0,r.push(s));else if(Array.isArray(e))for(i=0,n=e.length;i<n;i++)s="oo-ui-flaggedElement-"+(o=e[i]),this.flags[o]||(a[o]=!0,this.flags[o]=!0,r.push(s));else if(t.isPlainObject(e))for(o in e)s="oo-ui-flaggedElement-"+o,e[o]?this.flags[o]||(a[o]=!0,this.flags[o]=!0,r.push(s)):this.flags[o]&&(a[o]=!1,delete this.flags[o],l.push(s));return this.$flagged&&this.$flagged.addClass(r).removeClass(l),this.updateThemeClasses(),this.emit("flag",a),this},t.ui.mixin.TitledElement=function(t){t=t||{},this.$titled=null,this.title=null,this.setTitle(void 0!==t.title?t.title:this.constructor.static.title),this.setTitledElement(t.$titled||this.$element)},t.initClass(t.ui.mixin.TitledElement),t.ui.mixin.TitledElement.static.title=null,t.ui.mixin.TitledElement.prototype.setTitledElement=function(t){this.$titled&&this.$titled.removeAttr("title"),this.$titled=t,this.title&&this.updateTitle()},t.ui.mixin.TitledElement.prototype.setTitle=function(e){return e="string"==typeof(e="function"==typeof e?t.ui.resolveMsg(e):e)&&e.length?e:null,this.title!==e&&(this.title=e,this.updateTitle()),this},t.ui.mixin.TitledElement.prototype.updateTitle=function(){var t=this.getTitle();return this.$titled&&(null!==t?(this.formatTitleWithAccessKey&&(t=this.formatTitleWithAccessKey(t)),this.$titled.attr("title",t)):this.$titled.removeAttr("title")),this},t.ui.mixin.TitledElement.prototype.getTitle=function(){return this.title},t.ui.mixin.AccessKeyedElement=function(t){t=t||{},this.$accessKeyed=null,this.accessKey=null,this.setAccessKey(t.accessKey||null),this.setAccessKeyedElement(t.$accessKeyed||this.$element),this.updateTitle&&this.updateTitle()},t.initClass(t.ui.mixin.AccessKeyedElement),t.ui.mixin.AccessKeyedElement.static.accessKey=null,t.ui.mixin.AccessKeyedElement.prototype.setAccessKeyedElement=function(t){this.$accessKeyed&&this.$accessKeyed.removeAttr("accesskey"),this.$accessKeyed=t,this.accessKey&&this.$accessKeyed.attr("accesskey",this.accessKey)},t.ui.mixin.AccessKeyedElement.prototype.setAccessKey=function(e){return e="string"==typeof e?t.ui.resolveMsg(e):null,this.accessKey!==e&&(this.$accessKeyed&&(null!==e?this.$accessKeyed.attr("accesskey",e):this.$accessKeyed.removeAttr("accesskey")),this.accessKey=e,this.updateTitle&&this.updateTitle()),this},t.ui.mixin.AccessKeyedElement.prototype.getAccessKey=function(){return this.accessKey},t.ui.mixin.AccessKeyedElement.prototype.formatTitleWithAccessKey=function(t){var i;return this.$accessKeyed?((i=e.fn.updateTooltipAccessKeys&&e.fn.updateTooltipAccessKeys.getAccessKeyLabel?e.fn.updateTooltipAccessKeys.getAccessKeyLabel(this.$accessKeyed[0]):this.getAccessKey())&&(t+=" ["+i+"]"),t):t},t.ui.ButtonWidget=function(i){i=i||{},t.ui.ButtonWidget.parent.call(this,i),t.ui.mixin.ButtonElement.call(this,i),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.LabelElement.call(this,i),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$button})),t.ui.mixin.FlaggedElement.call(this,i),t.ui.mixin.TabIndexedElement.call(this,e.extend({},i,{$tabIndexed:this.$button})),t.ui.mixin.AccessKeyedElement.call(this,e.extend({},i,{$accessKeyed:this.$button})),this.href=null,this.target=null,this.noFollow=!1,this.connect(this,{disable:"onDisable"}),this.$button.append(this.$icon,this.$label,this.$indicator),this.$element.addClass("oo-ui-buttonWidget").append(this.$button),this.setActive(i.active),this.setHref(i.href),this.setTarget(i.target),this.setNoFollow(i.noFollow)},t.inheritClass(t.ui.ButtonWidget,t.ui.Widget),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.ButtonElement),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.TitledElement),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.FlaggedElement),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.TabIndexedElement),t.mixinClass(t.ui.ButtonWidget,t.ui.mixin.AccessKeyedElement),t.ui.ButtonWidget.static.cancelButtonMouseDownEvents=!1,t.ui.ButtonWidget.static.tagName="span",t.ui.ButtonWidget.prototype.getHref=function(){return this.href},t.ui.ButtonWidget.prototype.getTarget=function(){return this.target},t.ui.ButtonWidget.prototype.getNoFollow=function(){return this.noFollow},t.ui.ButtonWidget.prototype.setHref=function(e){return null===(e="string"==typeof e?e:null)||t.ui.isSafeUrl(e)||(e="./"+e),e!==this.href&&(this.href=e,this.updateHref()),this},t.ui.ButtonWidget.prototype.updateHref=function(){return null===this.href||this.isDisabled()?this.$button.removeAttr("href"):this.$button.attr("href",this.href),this},t.ui.ButtonWidget.prototype.onDisable=function(){this.updateHref()},t.ui.ButtonWidget.prototype.setTarget=function(t){return(t="string"==typeof t?t:null)!==this.target&&(this.target=t,null!==t?this.$button.attr("target",t):this.$button.removeAttr("target")),this},t.ui.ButtonWidget.prototype.setNoFollow=function(t){return(t="boolean"!=typeof t||t)!==this.noFollow&&(this.noFollow=t,t?this.$button.attr("rel","nofollow"):this.$button.removeAttr("rel")),this},t.ui.ButtonGroupWidget=function(i){i=i||{},t.ui.ButtonGroupWidget.parent.call(this,i),t.ui.mixin.GroupElement.call(this,e.extend({},i,{$group:this.$element})),this.$element.addClass("oo-ui-buttonGroupWidget"),Array.isArray(i.items)&&this.addItems(i.items)},t.inheritClass(t.ui.ButtonGroupWidget,t.ui.Widget),t.mixinClass(t.ui.ButtonGroupWidget,t.ui.mixin.GroupElement),t.ui.ButtonGroupWidget.static.tagName="span",t.ui.ButtonGroupWidget.prototype.focus=function(){return this.isDisabled()||this.items[0]&&this.items[0].focus(),this},t.ui.ButtonGroupWidget.prototype.simulateLabelClick=function(){this.focus()},t.ui.IconWidget=function(i){i=i||{},t.ui.IconWidget.parent.call(this,i),t.ui.mixin.IconElement.call(this,e.extend({},i,{$icon:this.$element})),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$element})),t.ui.mixin.LabelElement.call(this,e.extend({},i,{$label:this.$element,invisibleLabel:!0})),t.ui.mixin.FlaggedElement.call(this,e.extend({},i,{$flagged:this.$element})),this.$element.addClass("oo-ui-iconWidget"),this.$element.removeClass("oo-ui-labelElement-label")},t.inheritClass(t.ui.IconWidget,t.ui.Widget),t.mixinClass(t.ui.IconWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.IconWidget,t.ui.mixin.TitledElement),t.mixinClass(t.ui.IconWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.IconWidget,t.ui.mixin.FlaggedElement),t.ui.IconWidget.static.tagName="span",t.ui.IndicatorWidget=function(i){i=i||{},t.ui.IndicatorWidget.parent.call(this,i),t.ui.mixin.IndicatorElement.call(this,e.extend({},i,{$indicator:this.$element})),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$element})),t.ui.mixin.LabelElement.call(this,e.extend({},i,{$label:this.$element,invisibleLabel:!0})),this.$element.addClass("oo-ui-indicatorWidget"),this.$element.removeClass("oo-ui-labelElement-label")},t.inheritClass(t.ui.IndicatorWidget,t.ui.Widget),t.mixinClass(t.ui.IndicatorWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.IndicatorWidget,t.ui.mixin.TitledElement),t.mixinClass(t.ui.IndicatorWidget,t.ui.mixin.LabelElement),t.ui.IndicatorWidget.static.tagName="span",t.ui.LabelWidget=function(i){i=i||{},t.ui.LabelWidget.parent.call(this,i),t.ui.mixin.LabelElement.call(this,e.extend({},i,{$label:this.$element})),t.ui.mixin.TitledElement.call(this,i),this.input=i.input,this.input&&(this.input.getInputId()?this.$element.attr("for",this.input.getInputId()):this.$label.on("click",function(){this.input.simulateLabelClick()}.bind(this))),this.$element.addClass("oo-ui-labelWidget")},t.inheritClass(t.ui.LabelWidget,t.ui.Widget),t.mixinClass(t.ui.LabelWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.LabelWidget,t.ui.mixin.TitledElement),t.ui.LabelWidget.static.tagName="label",t.ui.mixin.PendingElement=function(t){t=t||{},this.pending=0,this.$pending=null,this.setPendingElement(t.$pending||this.$element)},t.initClass(t.ui.mixin.PendingElement),t.ui.mixin.PendingElement.prototype.setPendingElement=function(t){this.$pending&&this.$pending.removeClass("oo-ui-pendingElement-pending"),this.$pending=t,this.pending>0&&this.$pending.addClass("oo-ui-pendingElement-pending")},t.ui.mixin.PendingElement.prototype.isPending=function(){return!!this.pending},t.ui.mixin.PendingElement.prototype.pushPending=function(){return 0===this.pending&&(this.$pending.addClass("oo-ui-pendingElement-pending"),this.updateThemeClasses()),this.pending++,this},t.ui.mixin.PendingElement.prototype.popPending=function(){return 1===this.pending&&(this.$pending.removeClass("oo-ui-pendingElement-pending"),this.updateThemeClasses()),this.pending=Math.max(0,this.pending-1),this},t.ui.mixin.FloatableElement=function(t){t=t||{},this.$floatable=null,this.$floatableContainer=null,this.$floatableWindow=null,this.$floatableClosestScrollable=null,this.floatableOutOfView=!1,this.onFloatableScrollHandler=this.position.bind(this),this.onFloatableWindowResizeHandler=this.position.bind(this),this.setFloatableContainer(t.$floatableContainer),this.setFloatableElement(t.$floatable||this.$element),this.setVerticalPosition(t.verticalPosition||"below"),this.setHorizontalPosition(t.horizontalPosition||"start"),this.hideWhenOutOfView=void 0===t.hideWhenOutOfView||!!t.hideWhenOutOfView},t.ui.mixin.FloatableElement.prototype.setFloatableElement=function(t){this.$floatable&&(this.$floatable.removeClass("oo-ui-floatableElement-floatable"),this.$floatable.css({left:"",top:""})),this.$floatable=t.addClass("oo-ui-floatableElement-floatable"),this.position()},t.ui.mixin.FloatableElement.prototype.setFloatableContainer=function(t){this.$floatableContainer=t,this.$floatable&&this.position()},t.ui.mixin.FloatableElement.prototype.setVerticalPosition=function(t){if(-1===["below","above","top","bottom","center"].indexOf(t))throw new Error("Invalid value for vertical position: "+t);this.verticalPosition!==t&&(this.verticalPosition=t,this.$floatable&&this.position())},t.ui.mixin.FloatableElement.prototype.setHorizontalPosition=function(t){if(-1===["before","after","start","end","center"].indexOf(t))throw new Error("Invalid value for horizontal position: "+t);this.horizontalPosition!==t&&(this.horizontalPosition=t,this.$floatable&&this.position())},t.ui.mixin.FloatableElement.prototype.togglePositioning=function(i){var n;return this.$floatable&&this.$floatableContainer?(!(i=void 0===i?!this.positioning:!!i)||this.warnedUnattached||this.isElementAttached()||(t.ui.warnDeprecation("FloatableElement#togglePositioning: Before calling this method, the element must be attached to the DOM."),this.warnedUnattached=!0),this.positioning!==i&&(this.positioning=i,n=t.ui.Element.static.getClosestScrollableContainer(this.$floatableContainer[0]),e(n).is("html, body")&&(n=t.ui.Element.static.getWindow(n)),i?(this.$floatableWindow=e(this.getElementWindow()),this.$floatableWindow.on("resize",this.onFloatableWindowResizeHandler),this.$floatableClosestScrollable=e(n),this.$floatableClosestScrollable.on("scroll",this.onFloatableScrollHandler),this.position()):(this.$floatableWindow&&(this.$floatableWindow.off("resize",this.onFloatableWindowResizeHandler),this.$floatableWindow=null),this.$floatableClosestScrollable&&(this.$floatableClosestScrollable.off("scroll",this.onFloatableScrollHandler),this.$floatableClosestScrollable=null),this.$floatable.css({left:"",right:"",top:""}))),this):this},t.ui.mixin.FloatableElement.prototype.isElementInViewport=function(e,i){var n,o,s,a,r,l,u,c,h,d=e.css("direction");return n=e[0].getBoundingClientRect(),i[0]===window?(h=t.ui.getViewportSpacing(),(o={top:0,left:0,right:document.documentElement.clientWidth,bottom:document.documentElement.clientHeight}).top+=h.top,o.left+=h.left,o.right-=h.right,o.bottom-=h.bottom):o=i[0].getBoundingClientRect(),s=n.top>=o.top&&n.top<=o.bottom,a=n.bottom>=o.top&&n.bottom<=o.bottom,r=n.left>=o.left&&n.left<=o.right,l=n.right>=o.left&&n.right<=o.right,"rtl"===d?(u=l,c=r):(u=r,c=l),!("below"===this.verticalPosition&&!a)&&(!("above"===this.verticalPosition&&!s)&&(!("before"===this.horizontalPosition&&!u)&&(!("after"===this.horizontalPosition&&!c)&&(n.top<=o.bottom&&n.bottom>=o.top&&n.left<=o.right&&n.right>=o.left))))},t.ui.mixin.FloatableElement.prototype.isFloatableOutOfView=function(){return this.floatableOutOfView},t.ui.mixin.FloatableElement.prototype.position=function(){return this.positioning?!this.isElementAttached()||this.$floatableClosestScrollable[0]!==this.getElementWindow()&&!e.contains(this.getElementDocument(),this.$floatableClosestScrollable[0])?this:(this.floatableOutOfView=this.hideWhenOutOfView&&!this.isElementInViewport(this.$floatableContainer,this.$floatableClosestScrollable),this.floatableOutOfView?(this.$floatable.addClass("oo-ui-element-hidden"),this):(this.$floatable.removeClass("oo-ui-element-hidden"),this.$floatable.css(this.computePosition()),this.clip&&this.clip(),this)):this},t.ui.mixin.FloatableElement.prototype.computePosition=function(){var i,n,o,s,a,r,l,u,c={top:"",left:"",bottom:"",right:""},h=this.$floatableContainer.css("direction"),d=this.$floatable.offsetParent();return d.is("html")&&(d=e(d[0].ownerDocument.body)),i=d.is("body"),n="scroll"===d.css("overflow-x")||"auto"===d.css("overflow-x"),o="scroll"===d.css("overflow-y")||"auto"===d.css("overflow-y"),r=d.innerWidth()-d.prop("clientWidth"),a=d.innerHeight()-d.prop("clientHeight"),l=o&&!i?d.scrollTop():0,u=n&&!i?t.ui.Element.static.getScrollLeft(d[0]):0,(s=i?this.$floatableContainer.offset():t.ui.Element.static.getRelativePosition(this.$floatableContainer,d)).bottom=s.top+this.$floatableContainer.outerHeight(),s.right=s.left+this.$floatableContainer.outerWidth(),s.start="rtl"===h?s.right:s.left,s.end="rtl"===h?s.left:s.right,"below"===this.verticalPosition?c.top=s.bottom:"above"===this.verticalPosition?c.bottom=d.outerHeight()-s.top:"top"===this.verticalPosition?c.top=s.top:"bottom"===this.verticalPosition?c.bottom=d.outerHeight()-s.bottom:"center"===this.verticalPosition&&(c.top=s.top+(this.$floatableContainer.height()-this.$floatable.height())/2),"before"===this.horizontalPosition?c.end=s.start:"after"===this.horizontalPosition?c.start=s.end:"start"===this.horizontalPosition?c.start=s.start:"end"===this.horizontalPosition?c.end=s.end:"center"===this.horizontalPosition&&(c.left=s.left+(this.$floatableContainer.width()-this.$floatable.width())/2),void 0!==c.start&&("rtl"===h?c.right=(i?e(d[0].ownerDocument.documentElement):d).outerWidth()-c.start:c.left=c.start,delete c.start),void 0!==c.end&&("rtl"===h?c.left=c.end:c.right=(i?e(d[0].ownerDocument.documentElement):d).outerWidth()-c.end,delete c.end),""!==c.top&&(c.top+=l),""!==c.bottom&&(c.bottom-=l),""!==c.left&&(c.left+=u),""!==c.right&&(c.right-=u),""!==c.bottom&&(c.bottom-=a),"rtl"===h?""!==c.left&&(c.left-=r):""!==c.right&&(c.right-=r),c},t.ui.mixin.ClippableElement=function(t){t=t||{},this.$clippable=null,this.$clippableContainer=null,this.clipping=!1,this.clippedHorizontally=!1,this.clippedVertically=!1,this.$clippableScrollableContainer=null,this.$clippableScroller=null,this.$clippableWindow=null,this.idealWidth=null,this.idealHeight=null,this.onClippableScrollHandler=this.clip.bind(this),this.onClippableWindowResizeHandler=this.clip.bind(this),t.$clippableContainer&&this.setClippableContainer(t.$clippableContainer),this.setClippableElement(t.$clippable||this.$element)},t.ui.mixin.ClippableElement.prototype.setClippableElement=function(e){this.$clippable&&(this.$clippable.removeClass("oo-ui-clippableElement-clippable"),this.$clippable.css({width:"",height:"",overflowX:"",overflowY:""}),t.ui.Element.static.reconsiderScrollbars(this.$clippable[0])),this.$clippable=e.addClass("oo-ui-clippableElement-clippable"),this.clip()},t.ui.mixin.ClippableElement.prototype.setClippableContainer=function(t){this.$clippableContainer=t,this.$clippable&&this.clip()},t.ui.mixin.ClippableElement.prototype.toggleClipping=function(i){return!(i=void 0===i?!this.clipping:!!i)||this.warnedUnattached||this.isElementAttached()||(t.ui.warnDeprecation("ClippableElement#toggleClipping: Before calling this method, the element must be attached to the DOM."),this.warnedUnattached=!0),this.clipping!==i&&(this.clipping=i,i?(this.$clippableScrollableContainer=e(this.getClosestScrollableElementContainer()),this.$clippableScroller=this.$clippableScrollableContainer.is("html, body")?e(t.ui.Element.static.getWindow(this.$clippableScrollableContainer)):this.$clippableScrollableContainer,this.$clippableScroller.on("scroll",this.onClippableScrollHandler),this.$clippableWindow=e(this.getElementWindow()).on("resize",this.onClippableWindowResizeHandler),this.clip()):(this.$clippable.css({width:"",height:"",maxWidth:"",maxHeight:"",overflowX:"",overflowY:""}),t.ui.Element.static.reconsiderScrollbars(this.$clippable[0]),this.$clippableScrollableContainer=null,this.$clippableScroller.off("scroll",this.onClippableScrollHandler),this.$clippableScroller=null,this.$clippableWindow.off("resize",this.onClippableWindowResizeHandler),this.$clippableWindow=null)),this},t.ui.mixin.ClippableElement.prototype.isClipping=function(){return this.clipping},t.ui.mixin.ClippableElement.prototype.isClipped=function(){return this.clippedHorizontally||this.clippedVertically},t.ui.mixin.ClippableElement.prototype.isClippedHorizontally=function(){return this.clippedHorizontally},t.ui.mixin.ClippableElement.prototype.isClippedVertically=function(){return this.clippedVertically},t.ui.mixin.ClippableElement.prototype.setIdealSize=function(t,e){this.idealWidth=t,this.idealHeight=e,this.clipping||this.$clippable.css({width:t,height:e})},t.ui.mixin.ClippableElement.prototype.getHorizontalAnchorEdge=function(){return this.computePosition&&this.positioning&&""!==this.computePosition().right?"right":"left"},t.ui.mixin.ClippableElement.prototype.getVerticalAnchorEdge=function(){return this.computePosition&&this.positioning&&""!==this.computePosition().bottom?"bottom":"top"},t.ui.mixin.ClippableElement.prototype.clip=function(){var i,n,o,s,a,r,l,u,c,h,d,p,g,f,m,y,b,v,w,x,E;if(!this.clipping)return this;return o=t.ui.getViewportSpacing(),this.$clippableScrollableContainer.is("html, body")?(g=e(this.$clippableScrollableContainer[0].ownerDocument.body),(f={top:0,left:0,right:document.documentElement.clientWidth,bottom:document.documentElement.clientHeight}).top+=o.top,f.left+=o.left,f.right-=o.right,f.bottom-=o.bottom):(f=(g=this.$clippableScrollableContainer)[0].getBoundingClientRect(),f=e.extend({},f)),y=g.css("direction"),b=g.innerWidth()-g.prop("clientWidth"),v=g.innerHeight()-g.prop("clientHeight"),f.bottom-=v,"rtl"===y?f.left+=b:f.right-=b,f.top+=7,f.left+=7,f.right-=7,f.bottom-=7,i=(d=this.$clippableContainer||this.$clippable).outerHeight()-this.$clippable.outerHeight(),n=d.outerWidth()-this.$clippable.outerWidth(),p=d[0].getBoundingClientRect(),p=e.extend({},p),"right"===this.getHorizontalAnchorEdge()?p.left=f.left:p.right=f.right,"bottom"===this.getVerticalAnchorEdge()?p.top=f.top:p.bottom=f.bottom,w=f,x=p,(E={}).top=Math.max(w.top,x.top),E.left=Math.max(w.left,x.left),E.bottom=Math.min(w.bottom,x.bottom),E.right=Math.min(w.right,x.right),m=E,s=Math.max(0,m.right-m.left),a=Math.max(0,m.bottom-m.top),s=Math.min(s,document.documentElement.clientWidth-o.left-o.right),a=Math.min(a,document.documentElement.clientHeight-o.top-o.right),r=Math.ceil(s-n),l=Math.ceil(a-i),u=this.$clippable.prop("scrollWidth"),h=l<this.$clippable.prop("scrollHeight"),(c=r<u)?(this.$clippable.css("overflowX","scroll"),this.$clippable[0].offsetHeight,this.$clippable.css({width:Math.max(0,r),maxWidth:""})):this.$clippable.css({overflowX:"",width:this.idealWidth||"",maxWidth:Math.max(0,r)}),h?(this.$clippable.css("overflowY","scroll"),this.$clippable[0].offsetHeight,this.$clippable.css({height:Math.max(0,l),maxHeight:""})):this.$clippable.css({overflowY:"",height:this.idealHeight||"",maxHeight:Math.max(0,l)}),(this.clippedHorizontally&&!c||this.clippedVertically&&!h)&&t.ui.Element.static.reconsiderScrollbars(this.$clippable[0]),this.clippedHorizontally=c,this.clippedVertically=h,this},t.ui.PopupWidget=function(i){i=i||{},t.ui.PopupWidget.parent.call(this,i),this.$body=e("<div>"),this.$popup=e("<div>"),t.ui.mixin.LabelElement.call(this,i),t.ui.mixin.ClippableElement.call(this,e.extend({},i,{$clippable:this.$body,$clippableContainer:this.$popup})),t.ui.mixin.FloatableElement.call(this,i),this.$anchor=e("<div>"),this.$container=i.$container,this.containerPadding=void 0!==i.containerPadding?i.containerPadding:10,this.autoClose=!!i.autoClose,this.transitionTimeout=null,this.anchored=!1,this.onDocumentMouseDownHandler=this.onDocumentMouseDown.bind(this),this.onDocumentKeyDownHandler=this.onDocumentKeyDown.bind(this),this.setSize(i.width,i.height),this.toggleAnchor(void 0===i.anchor||i.anchor),this.setAlignment(i.align||"center"),this.setPosition(i.position||"below"),this.setAutoFlip(void 0===i.autoFlip||i.autoFlip),this.setAutoCloseIgnore(i.$autoCloseIgnore),this.$body.addClass("oo-ui-popupWidget-body"),this.$anchor.addClass("oo-ui-popupWidget-anchor"),this.$popup.addClass("oo-ui-popupWidget-popup").append(this.$body),this.$element.addClass("oo-ui-popupWidget").append(this.$popup,this.$anchor),i.$content instanceof e&&this.$body.append(i.$content),i.padded&&this.$body.addClass("oo-ui-popupWidget-body-padded"),i.head&&(this.closeButton=new t.ui.ButtonWidget({framed:!1,icon:"close"}),this.closeButton.connect(this,{click:"onCloseButtonClick"}),this.$head=e("<div>").addClass("oo-ui-popupWidget-head").append(this.$label,this.closeButton.$element),this.$popup.prepend(this.$head)),i.$footer&&(this.$footer=e("<div>").addClass("oo-ui-popupWidget-footer").append(i.$footer),this.$popup.append(this.$footer)),this.visible=!1,this.$element.addClass("oo-ui-element-hidden")},t.inheritClass(t.ui.PopupWidget,t.ui.Widget),t.mixinClass(t.ui.PopupWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.PopupWidget,t.ui.mixin.ClippableElement),t.mixinClass(t.ui.PopupWidget,t.ui.mixin.FloatableElement),t.ui.PopupWidget.prototype.onDocumentMouseDown=function(e){this.isVisible()&&!t.ui.contains(this.$element.add(this.$autoCloseIgnore).get(),e.target,!0)&&this.toggle(!1)},t.ui.PopupWidget.prototype.onMouseDown=function(){t.ui.warnDeprecation("onMouseDown is deprecated, use onDocumentMouseDown instead"),this.onDocumentMouseDown.apply(this,arguments)},t.ui.PopupWidget.prototype.bindDocumentMouseDownListener=function(){this.getElementDocument().addEventListener("mousedown",this.onDocumentMouseDownHandler,!0),this.getElementDocument().addEventListener("click",this.onDocumentMouseDownHandler,!0)},t.ui.PopupWidget.prototype.bindMouseDownListener=function(){t.ui.warnDeprecation("bindMouseDownListener is deprecated, use bindDocumentMouseDownListener instead"),this.bindDocumentMouseDownListener.apply(this,arguments)},t.ui.PopupWidget.prototype.onCloseButtonClick=function(){this.isVisible()&&this.toggle(!1)},t.ui.PopupWidget.prototype.unbindDocumentMouseDownListener=function(){this.getElementDocument().removeEventListener("mousedown",this.onDocumentMouseDownHandler,!0),this.getElementDocument().removeEventListener("click",this.onDocumentMouseDownHandler,!0)},t.ui.PopupWidget.prototype.unbindMouseDownListener=function(){t.ui.warnDeprecation("unbindMouseDownListener is deprecated, use unbindDocumentMouseDownListener instead"),this.unbindDocumentMouseDownListener.apply(this,arguments)},t.ui.PopupWidget.prototype.onDocumentKeyDown=function(e){e.which===t.ui.Keys.ESCAPE&&this.isVisible()&&(this.toggle(!1),e.preventDefault(),e.stopPropagation())},t.ui.PopupWidget.prototype.bindDocumentKeyDownListener=function(){this.getElementDocument().addEventListener("keydown",this.onDocumentKeyDownHandler,!0)},t.ui.PopupWidget.prototype.bindKeyDownListener=function(){t.ui.warnDeprecation("bindKeyDownListener is deprecated, use bindDocumentKeyDownListener instead"),this.bindDocumentKeyDownListener.apply(this,arguments)},t.ui.PopupWidget.prototype.unbindDocumentKeyDownListener=function(){this.getElementDocument().removeEventListener("keydown",this.onDocumentKeyDownHandler,!0)},t.ui.PopupWidget.prototype.unbindKeyDownListener=function(){t.ui.warnDeprecation("unbindKeyDownListener is deprecated, use unbindDocumentKeyDownListener instead"),this.unbindDocumentKeyDownListener.apply(this,arguments)},t.ui.PopupWidget.prototype.toggleAnchor=function(t){t=void 0===t?!this.anchored:!!t,this.anchored!==t&&(t?(this.$element.addClass("oo-ui-popupWidget-anchored"),this.$element.addClass("oo-ui-popupWidget-anchored-"+this.anchorEdge)):(this.$element.removeClass("oo-ui-popupWidget-anchored"),this.$element.removeClass("oo-ui-popupWidget-anchored-"+this.anchorEdge)),this.anchored=t)},t.ui.PopupWidget.prototype.setAnchorEdge=function(t){if(-1===["top","bottom","start","end"].indexOf(t))throw new Error("Invalid value for edge: "+t);null!==this.anchorEdge&&this.$element.removeClass("oo-ui-popupWidget-anchored-"+this.anchorEdge),this.anchorEdge=t,this.anchored&&this.$element.addClass("oo-ui-popupWidget-anchored-"+t)},t.ui.PopupWidget.prototype.hasAnchor=function(){return this.anchored},t.ui.PopupWidget.prototype.toggle=function(e){var i,n,o;return i=(e=void 0===e?!this.isVisible():!!e)!==this.isVisible(),!e||this.warnedUnattached||this.isElementAttached()||(t.ui.warnDeprecation("PopupWidget#toggle: Before calling this method, the popup must be attached to the DOM."),this.warnedUnattached=!0),e&&!this.$floatableContainer&&this.isElementAttached()&&this.setFloatableContainer(this.$element.parent()),i&&e&&this.autoFlip&&(this.isAutoFlipped=!1),t.ui.PopupWidget.parent.prototype.toggle.call(this,e),i&&(this.togglePositioning(e&&!!this.$floatableContainer),e?(this.autoClose&&(this.bindDocumentMouseDownListener(),this.bindDocumentKeyDownListener()),this.updateDimensions(),this.toggleClipping(!0),this.autoFlip&&("above"!==this.popupPosition&&"below"!==this.popupPosition||(this.isClippedVertically()||this.isFloatableOutOfView())&&(n=this.$element.height(),this.isAutoFlipped=!this.isAutoFlipped,this.position(),(this.isClippedVertically()||this.isFloatableOutOfView())&&this.$element.height()<n&&(this.isAutoFlipped=!this.isAutoFlipped,this.position())),"before"!==this.popupPosition&&"after"!==this.popupPosition||(this.isClippedHorizontally()||this.isFloatableOutOfView())&&(o=this.$element.width(),this.isAutoFlipped=!this.isAutoFlipped,this.toggleClipping(!1),this.position(),this.toggleClipping(!0),(this.isClippedHorizontally()||this.isFloatableOutOfView())&&this.$element.width()<o&&(this.isAutoFlipped=!this.isAutoFlipped,this.toggleClipping(!1),this.position(),this.toggleClipping(!0)))),this.emit("ready")):(this.toggleClipping(!1),this.autoClose&&(this.unbindDocumentMouseDownListener(),this.unbindDocumentKeyDownListener()))),this},t.ui.PopupWidget.prototype.setSize=function(t,e,i){this.width=void 0!==t?t:320,this.height=void 0!==e?e:null,this.isVisible()&&this.updateDimensions(i)},t.ui.PopupWidget.prototype.updateDimensions=function(t){var e=this;clearTimeout(this.transitionTimeout),t&&this.$element.addClass("oo-ui-popupWidget-transitioning"),this.position(),t?this.transitionTimeout=setTimeout(function(){e.$element.removeClass("oo-ui-popupWidget-transitioning")},200):this.$element.removeClass("oo-ui-popupWidget-transitioning")},t.ui.PopupWidget.prototype.computePosition=function(){var i,n,o,s,a,r,l,u,c,h,d,p,g,f,m,y,b,v,w,x,E={},W={left:"",right:"",top:"",bottom:""},C={forwards:"start",center:"center",backwards:this.anchored?"before":"end"};return this.$container||(this.$container=e(this.getClosestScrollableElementContainer())),i=this.$container.css("direction"),this.$popup.css({width:null!==this.width?this.width:"auto",height:null!==this.height?this.height:"auto"}),n={ltr:{"force-left":"backwards","force-right":"forwards"},rtl:{"force-left":"forwards","force-right":"backwards"}}[i][this.align]||this.align,w=this.popupPosition,this.isAutoFlipped&&(w={above:"below",below:"above",before:"after",after:"before"}[w]),s=(o="before"===w||"after"===w)?"top":"rtl"===i?"right":"left",a=o?"bottom":"rtl"===i?"left":"right",r=o?"top":"left",l=o?"bottom":"right",u=o?"Height":"Width",c=o?this.height||this.$popup.height():this.width||this.$popup.width(),this.setAnchorEdge({above:"bottom",below:"top",before:"end",after:"start"}[w]),this.horizontalPosition=o?w:C[n],this.verticalPosition=o?{forwards:"top",center:"center",backwards:"bottom"}[n]:w,g=t.ui.mixin.FloatableElement.prototype.computePosition.call(this),f=o?""!==g.top?"top":"bottom":""!==g.left?"left":"right",(y=this.$floatableContainer.offset())[l]=y[r]+this.$floatableContainer["outer"+u](),b=this.$element.offsetParent()[0]===document.documentElement?{top:0,left:0}:this.$element.offsetParent().offset(),f===r?(E[r]=b[r]+g[r],E[l]=E[r]+c):(E[l]=b[r]+this.$element.offsetParent()["inner"+u]()-g[l],E[r]=E[l]-c),this.anchored?(d=(s===l?-1:1)*((y[s]+y[a])/2-E[s]),h=this.$anchor[0]["scroll"+u],m=d+(p=parseFloat(this.$anchor.css("margin-"+s)))<2*h?(f===s?-1:1)*(2*h-(d+p)):d+p>c-2*h?(f===a?-1:1)*(d+p-(c-2*h)):0):m=0,(v=this.$container[0]===document.documentElement?{top:0,left:0}:this.$container.offset())[l]=v[r]+this.$container["inner"+u](),this.$container[0]===document.documentElement&&(x=t.ui.getViewportSpacing(),v[r]+=x[r],v[l]-=x[l]),E[r]+=(f===r?1:-1)*m,E[l]+=(f===r?1:-1)*m,v[r]+this.containerPadding>E[r]?m+=(f===r?1:-1)*(v[r]+this.containerPadding-E[r]):v[l]-this.containerPadding<E[l]&&(m+=(f===l?1:-1)*(E[l]-(v[l]-this.containerPadding))),this.anchored&&(d+=(f===s?-1:1)*m,W[s]=d,this.$anchor.css(W)),g[f]+=m,g},t.ui.PopupWidget.prototype.setAlignment=function(t){["force-left","force-right","backwards","forwards","center"].indexOf(t)>-1?this.align=t:this.align="center",this.position()},t.ui.PopupWidget.prototype.getAlignment=function(){return this.align},t.ui.PopupWidget.prototype.setPosition=function(t){-1===["above","below","before","after"].indexOf(t)&&(t="below"),this.popupPosition=t,this.position()},t.ui.PopupWidget.prototype.getPosition=function(){return this.popupPosition},t.ui.PopupWidget.prototype.setAutoFlip=function(t){t=!!t,this.autoFlip!==t&&(this.autoFlip=t)},t.ui.PopupWidget.prototype.setAutoCloseIgnore=function(t){this.$autoCloseIgnore=t},t.ui.PopupWidget.prototype.getBodyId=function(){var e=this.$body.attr("id");return void 0===e&&(e=t.ui.generateElementId(),this.$body.attr("id",e)),e},t.ui.mixin.PopupElement=function(i){i=i||{},this.popup=new t.ui.PopupWidget(e.extend({autoClose:!0,$floatableContainer:this.$element},i.popup,{$autoCloseIgnore:this.$element.add(i.popup&&i.popup.$autoCloseIgnore)}))},t.ui.mixin.PopupElement.prototype.getPopup=function(){return this.popup},t.ui.PopupButtonWidget=function(e){e=e||{},t.ui.PopupButtonWidget.parent.call(this,e),t.ui.mixin.PopupElement.call(this,e),this.$overlay=(!0===e.$overlay?t.ui.getDefaultOverlay():e.$overlay)||this.$element,this.connect(this,{click:"onAction"}),this.$element.addClass("oo-ui-popupButtonWidget"),this.popup.$element.addClass("oo-ui-popupButtonWidget-popup").toggleClass("oo-ui-popupButtonWidget-framed-popup",this.isFramed()).toggleClass("oo-ui-popupButtonWidget-frameless-popup",!this.isFramed()),this.$overlay.append(this.popup.$element)},t.inheritClass(t.ui.PopupButtonWidget,t.ui.ButtonWidget),t.mixinClass(t.ui.PopupButtonWidget,t.ui.mixin.PopupElement),t.ui.PopupButtonWidget.prototype.onAction=function(){this.popup.toggle()},t.ui.mixin.GroupWidget=function(e){t.ui.mixin.GroupElement.call(this,e)},t.mixinClass(t.ui.mixin.GroupWidget,t.ui.mixin.GroupElement),t.ui.mixin.GroupWidget.prototype.setDisabled=function(e){var i,n;if(t.ui.Widget.prototype.setDisabled.call(this,e),this.items)for(i=0,n=this.items.length;i<n;i++)this.items[i].updateDisabled();return this},t.ui.mixin.ItemWidget=function(){},t.ui.mixin.ItemWidget.prototype.isDisabled=function(){return this.disabled||this.elementGroup instanceof t.ui.Widget&&this.elementGroup.isDisabled()},t.ui.mixin.ItemWidget.prototype.setElementGroup=function(e){return t.ui.Element.prototype.setElementGroup.call(this,e),this.updateDisabled(),this},t.ui.OptionWidget=function(e){e=e||{},t.ui.OptionWidget.parent.call(this,e),t.ui.mixin.ItemWidget.call(this),t.ui.mixin.LabelElement.call(this,e),t.ui.mixin.FlaggedElement.call(this,e),t.ui.mixin.AccessKeyedElement.call(this,e),this.selected=!1,this.highlighted=!1,this.pressed=!1,this.$element.data("oo-ui-optionWidget",this).attr("tabindex","-1").attr("role","option").attr("aria-selected","false").addClass("oo-ui-optionWidget").append(this.$label)},t.inheritClass(t.ui.OptionWidget,t.ui.Widget),t.mixinClass(t.ui.OptionWidget,t.ui.mixin.ItemWidget),t.mixinClass(t.ui.OptionWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.OptionWidget,t.ui.mixin.FlaggedElement),t.mixinClass(t.ui.OptionWidget,t.ui.mixin.AccessKeyedElement),t.ui.OptionWidget.static.selectable=!0,t.ui.OptionWidget.static.highlightable=!0,t.ui.OptionWidget.static.pressable=!0,t.ui.OptionWidget.static.scrollIntoViewOnSelect=!1,t.ui.OptionWidget.prototype.isSelectable=function(){return this.constructor.static.selectable&&!this.disabled&&this.isVisible()},t.ui.OptionWidget.prototype.isHighlightable=function(){return this.constructor.static.highlightable&&!this.disabled&&this.isVisible()},t.ui.OptionWidget.prototype.isPressable=function(){return this.constructor.static.pressable&&!this.disabled&&this.isVisible()},t.ui.OptionWidget.prototype.isSelected=function(){return this.selected},t.ui.OptionWidget.prototype.isHighlighted=function(){return this.highlighted},t.ui.OptionWidget.prototype.isPressed=function(){return this.pressed},t.ui.OptionWidget.prototype.setSelected=function(t){return this.constructor.static.selectable&&(this.selected=!!t,this.$element.toggleClass("oo-ui-optionWidget-selected",t).attr("aria-selected",t.toString()),t&&this.constructor.static.scrollIntoViewOnSelect&&this.scrollElementIntoView(),this.updateThemeClasses()),this},t.ui.OptionWidget.prototype.setHighlighted=function(t){return this.constructor.static.highlightable&&(this.highlighted=!!t,this.$element.toggleClass("oo-ui-optionWidget-highlighted",t),this.updateThemeClasses()),this},t.ui.OptionWidget.prototype.setPressed=function(t){return this.constructor.static.pressable&&(this.pressed=!!t,this.$element.toggleClass("oo-ui-optionWidget-pressed",t),this.updateThemeClasses()),this},t.ui.OptionWidget.prototype.getMatchText=function(){var t=this.getLabel();return"string"==typeof t?t:this.$label.text()},t.ui.SelectWidget=function(i){i=i||{},t.ui.SelectWidget.parent.call(this,i),t.ui.mixin.GroupWidget.call(this,e.extend({},i,{$group:this.$element})),this.pressed=!1,this.selecting=null,this.onDocumentMouseUpHandler=this.onDocumentMouseUp.bind(this),this.onDocumentMouseMoveHandler=this.onDocumentMouseMove.bind(this),this.onDocumentKeyDownHandler=this.onDocumentKeyDown.bind(this),this.onDocumentKeyPressHandler=this.onDocumentKeyPress.bind(this),this.keyPressBuffer="",this.keyPressBufferTimer=null,this.blockMouseOverEvents=0,this.connect(this,{toggle:"onToggle"}),this.$element.on({focusin:this.onFocus.bind(this),mousedown:this.onMouseDown.bind(this),mouseover:this.onMouseOver.bind(this),mouseleave:this.onMouseLeave.bind(this)}),this.$element.addClass("oo-ui-selectWidget oo-ui-selectWidget-depressed").attr("role","listbox"),this.setFocusOwner(this.$element),Array.isArray(i.items)&&this.addItems(i.items)},t.inheritClass(t.ui.SelectWidget,t.ui.Widget),t.mixinClass(t.ui.SelectWidget,t.ui.mixin.GroupWidget),t.ui.SelectWidget.prototype.onFocus=function(t){var e;if(t.target===this.$element[0])this.findSelectedItem()||(e=this.findFirstSelectableItem());else{if(-1!==t.target.tabIndex)return;e=this.findTargetItem(t)}e&&(e.constructor.static.highlightable?this.highlightItem(e):this.selectItem(e)),t.target!==this.$element[0]&&this.$focusOwner.focus()},t.ui.SelectWidget.prototype.onMouseDown=function(e){var i;return this.isDisabled()||e.which!==t.ui.MouseButtons.LEFT||(this.togglePressed(!0),(i=this.findTargetItem(e))&&i.isSelectable()&&(this.pressItem(i),this.selecting=i,this.getElementDocument().addEventListener("mouseup",this.onDocumentMouseUpHandler,!0),this.getElementDocument().addEventListener("mousemove",this.onDocumentMouseMoveHandler,!0))),!1},t.ui.SelectWidget.prototype.onDocumentMouseUp=function(e){var i;return this.togglePressed(!1),this.selecting||(i=this.findTargetItem(e))&&i.isSelectable()&&(this.selecting=i),!this.isDisabled()&&e.which===t.ui.MouseButtons.LEFT&&this.selecting&&(this.pressItem(null),this.chooseItem(this.selecting),this.selecting=null),this.getElementDocument().removeEventListener("mouseup",this.onDocumentMouseUpHandler,!0),this.getElementDocument().removeEventListener("mousemove",this.onDocumentMouseMoveHandler,!0),!1},t.ui.SelectWidget.prototype.onMouseUp=function(){t.ui.warnDeprecation("onMouseUp is deprecated, use onDocumentMouseUp instead"),this.onDocumentMouseUp.apply(this,arguments)},t.ui.SelectWidget.prototype.onDocumentMouseMove=function(t){var e;!this.isDisabled()&&this.pressed&&(e=this.findTargetItem(t))&&e!==this.selecting&&e.isSelectable()&&(this.pressItem(e),this.selecting=e)},t.ui.SelectWidget.prototype.onMouseMove=function(){t.ui.warnDeprecation("onMouseMove is deprecated, use onDocumentMouseMove instead"),this.onDocumentMouseMove.apply(this,arguments)},t.ui.SelectWidget.prototype.onMouseOver=function(t){var e;if(!this.blockMouseOverEvents)return this.isDisabled()||(e=this.findTargetItem(t),this.highlightItem(e&&e.isHighlightable()?e:null)),!1},t.ui.SelectWidget.prototype.onMouseLeave=function(){return this.isDisabled()||this.highlightItem(null),!1},t.ui.SelectWidget.prototype.onDocumentKeyDown=function(e){var i,n=!1,o=this.findHighlightedItem()||this.findSelectedItem();if(!this.isDisabled()&&this.isVisible()){switch(e.keyCode){case t.ui.Keys.ENTER:o&&o.constructor.static.highlightable&&(this.chooseItem(o),n=!0);break;case t.ui.Keys.UP:case t.ui.Keys.LEFT:this.clearKeyPressBuffer(),i=this.findRelativeSelectableItem(o,-1),n=!0;break;case t.ui.Keys.DOWN:case t.ui.Keys.RIGHT:this.clearKeyPressBuffer(),i=this.findRelativeSelectableItem(o,1),n=!0;break;case t.ui.Keys.ESCAPE:case t.ui.Keys.TAB:o&&o.constructor.static.highlightable&&o.setHighlighted(!1),this.unbindDocumentKeyDownListener(),this.unbindDocumentKeyPressListener(),n=!1}i&&(i.constructor.static.highlightable?this.highlightItem(i):this.chooseItem(i),this.scrollItemIntoView(i)),n&&(e.preventDefault(),e.stopPropagation())}},t.ui.SelectWidget.prototype.onKeyDown=function(){t.ui.warnDeprecation("onKeyDown is deprecated, use onDocumentKeyDown instead"),this.onDocumentKeyDown.apply(this,arguments)},t.ui.SelectWidget.prototype.bindDocumentKeyDownListener=function(){this.getElementDocument().addEventListener("keydown",this.onDocumentKeyDownHandler,!0)},t.ui.SelectWidget.prototype.bindKeyDownListener=function(){t.ui.warnDeprecation("bindKeyDownListener is deprecated, use bindDocumentKeyDownListener instead"),this.bindDocumentKeyDownListener.apply(this,arguments)},t.ui.SelectWidget.prototype.unbindDocumentKeyDownListener=function(){this.getElementDocument().removeEventListener("keydown",this.onDocumentKeyDownHandler,!0)},t.ui.SelectWidget.prototype.unbindKeyDownListener=function(){t.ui.warnDeprecation("unbindKeyDownListener is deprecated, use unbindDocumentKeyDownListener instead"),this.unbindDocumentKeyDownListener.apply(this,arguments)},t.ui.SelectWidget.prototype.scrollItemIntoView=function(t){var e=this;this.blockMouseOverEvents++,t.scrollElementIntoView().done(function(){setTimeout(function(){e.blockMouseOverEvents--},200)})},t.ui.SelectWidget.prototype.clearKeyPressBuffer=function(){this.keyPressBufferTimer&&(clearTimeout(this.keyPressBufferTimer),this.keyPressBufferTimer=null),this.keyPressBuffer=""},t.ui.SelectWidget.prototype.onDocumentKeyPress=function(e){var i,n,o;if(!e.charCode)return e.keyCode===t.ui.Keys.BACKSPACE&&""!==this.keyPressBuffer?(this.keyPressBuffer=this.keyPressBuffer.substr(0,this.keyPressBuffer.length-1),!1):void 0;i=String.fromCodePoint?String.fromCodePoint(e.charCode):String.fromCharCode(e.charCode),this.keyPressBufferTimer&&clearTimeout(this.keyPressBufferTimer),this.keyPressBufferTimer=setTimeout(this.clearKeyPressBuffer.bind(this),1500),o=this.findHighlightedItem()||this.findSelectedItem(),this.keyPressBuffer===i?o&&(o=this.findRelativeSelectableItem(o,1)):this.keyPressBuffer+=i,n=this.getItemMatcher(this.keyPressBuffer,!1),o&&n(o)||(o=this.findRelativeSelectableItem(o,1,n)),o&&(this.isVisible()&&o.constructor.static.highlightable?this.highlightItem(o):this.chooseItem(o),this.scrollItemIntoView(o)),e.preventDefault(),e.stopPropagation()},t.ui.SelectWidget.prototype.onKeyPress=function(){t.ui.warnDeprecation("onKeyPress is deprecated, use onDocumentKeyPress instead"),this.onDocumentKeyPress.apply(this,arguments)},t.ui.SelectWidget.prototype.getItemMatcher=function(t,e){var i;return t.normalize&&(t=t.normalize()),t=e?t.trim():t.replace(/^\s+/,""),i="^\\s*"+t.replace(/([\\{}()|.?*+\-^$[\]])/g,"\\$1").replace(/\s+/g,"\\s+"),e&&(i+="\\s*$"),i=new RegExp(i,"i"),function(t){var e=t.getMatchText();return e.normalize&&(e=e.normalize()),i.test(e)}},t.ui.SelectWidget.prototype.bindDocumentKeyPressListener=function(){this.getElementDocument().addEventListener("keypress",this.onDocumentKeyPressHandler,!0)},t.ui.SelectWidget.prototype.bindKeyPressListener=function(){t.ui.warnDeprecation("bindKeyPressListener is deprecated, use bindDocumentKeyPressListener instead"),this.bindDocumentKeyPressListener.apply(this,arguments)},t.ui.SelectWidget.prototype.unbindDocumentKeyPressListener=function(){this.getElementDocument().removeEventListener("keypress",this.onDocumentKeyPressHandler,!0),this.clearKeyPressBuffer()},t.ui.SelectWidget.prototype.unbindKeyPressListener=function(){t.ui.warnDeprecation("unbindKeyPressListener is deprecated, use unbindDocumentKeyPressListener instead"),this.unbindDocumentKeyPressListener.apply(this,arguments)},t.ui.SelectWidget.prototype.onToggle=function(t){t||this.clearKeyPressBuffer()},t.ui.SelectWidget.prototype.findTargetItem=function(t){var i=e(t.target).closest(".oo-ui-optionWidget");return i.closest(".oo-ui-selectWidget").is(this.$element)&&i.data("oo-ui-optionWidget")||null},t.ui.SelectWidget.prototype.findSelectedItem=function(){var t,e;for(t=0,e=this.items.length;t<e;t++)if(this.items[t].isSelected())return this.items[t];return null},t.ui.SelectWidget.prototype.findHighlightedItem=function(){var t,e;for(t=0,e=this.items.length;t<e;t++)if(this.items[t].isHighlighted())return this.items[t];return null},t.ui.SelectWidget.prototype.togglePressed=function(t){void 0===t&&(t=!this.pressed),t!==this.pressed&&(this.$element.toggleClass("oo-ui-selectWidget-pressed",t).toggleClass("oo-ui-selectWidget-depressed",!t),this.pressed=t)},t.ui.SelectWidget.prototype.highlightItem=function(t){var e,i,n,o=!1;for(e=0,i=this.items.length;e<i;e++)n=this.items[e]===t,this.items[e].isHighlighted()!==n&&(this.items[e].setHighlighted(n),o=!0);return o&&(t?this.$focusOwner.attr("aria-activedescendant",t.getElementId()):this.$focusOwner.removeAttr("aria-activedescendant"),this.emit("highlight",t)),this},t.ui.SelectWidget.prototype.getItemFromLabel=function(e,i){var n,o,s,a=this.items.length,r=this.getItemMatcher(e,!0);for(n=0;n<a;n++)if((o=this.items[n])instanceof t.ui.OptionWidget&&o.isSelectable()&&r(o))return o;if(i){for(s=null,r=this.getItemMatcher(e,!1),n=0;n<a;n++)if((o=this.items[n])instanceof t.ui.OptionWidget&&o.isSelectable()&&r(o)){if(s)return null;s=o}if(s)return s}return null},t.ui.SelectWidget.prototype.selectItemByLabel=function(t,e){var i=this.getItemFromLabel(t,!!e);return void 0!==t&&i?this.selectItem(i):this.selectItem()},t.ui.SelectWidget.prototype.selectItemByData=function(t){var e=this.findItemFromData(t);return void 0!==t&&e?this.selectItem(e):this.selectItem()},t.ui.SelectWidget.prototype.selectItem=function(t){var e,i,n,o=!1;for(e=0,i=this.items.length;e<i;e++)n=this.items[e]===t,this.items[e].isSelected()!==n&&(this.items[e].setSelected(n),o=!0);return o&&(t&&!t.constructor.static.highlightable&&(t?this.$focusOwner.attr("aria-activedescendant",t.getElementId()):this.$focusOwner.removeAttr("aria-activedescendant")),this.emit("select",t)),this},t.ui.SelectWidget.prototype.pressItem=function(t){var e,i,n,o=!1;for(e=0,i=this.items.length;e<i;e++)n=this.items[e]===t,this.items[e].isPressed()!==n&&(this.items[e].setPressed(n),o=!0);return o&&this.emit("press",t),this},t.ui.SelectWidget.prototype.chooseItem=function(t){return t&&(this.selectItem(t),this.emit("choose",t)),this},t.ui.SelectWidget.prototype.findRelativeSelectableItem=function(e,i,n){var o,s,a=i>0?1:-1,r=this.items.length;for(o=e instanceof t.ui.OptionWidget?(this.items.indexOf(e)+a+r)%r:i>0?0:r-1,s=0;s<r;s++){if((e=this.items[o])instanceof t.ui.OptionWidget&&e.isSelectable()&&(!n||n(e)))return e;o=(o+a+r)%r}return null},t.ui.SelectWidget.prototype.findFirstSelectableItem=function(){return this.findRelativeSelectableItem(null,1)},t.ui.SelectWidget.prototype.addItems=function(e,i){return t.ui.mixin.GroupWidget.prototype.addItems.call(this,e,i),this.emit("add",e,void 0===i?this.items.length-e.length-1:i),this},t.ui.SelectWidget.prototype.removeItems=function(e){var i,n;for(i=0,n=e.length;i<n;i++)e[i].isSelected()&&this.selectItem(null);return t.ui.mixin.GroupWidget.prototype.removeItems.call(this,e),this.emit("remove",e),this},t.ui.SelectWidget.prototype.clearItems=function(){var e=this.items.slice();return t.ui.mixin.GroupWidget.prototype.clearItems.call(this),this.selectItem(null),this.emit("remove",e),this},t.ui.SelectWidget.prototype.setFocusOwner=function(t){this.$focusOwner=t},t.ui.DecoratedOptionWidget=function(e){t.ui.DecoratedOptionWidget.parent.call(this,e),t.ui.mixin.IconElement.call(this,e),t.ui.mixin.IndicatorElement.call(this,e),this.$element.addClass("oo-ui-decoratedOptionWidget").prepend(this.$icon).append(this.$indicator)},t.inheritClass(t.ui.DecoratedOptionWidget,t.ui.OptionWidget),t.mixinClass(t.ui.DecoratedOptionWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.DecoratedOptionWidget,t.ui.mixin.IndicatorElement),t.ui.MenuOptionWidget=function(e){t.ui.MenuOptionWidget.parent.call(this,e),this.checkIcon=new t.ui.IconWidget({icon:"check",classes:["oo-ui-menuOptionWidget-checkIcon"]}),this.$element.prepend(this.checkIcon.$element).addClass("oo-ui-menuOptionWidget")},t.inheritClass(t.ui.MenuOptionWidget,t.ui.DecoratedOptionWidget),t.ui.MenuOptionWidget.static.scrollIntoViewOnSelect=!0,t.ui.MenuSectionOptionWidget=function(e){t.ui.MenuSectionOptionWidget.parent.call(this,e),this.$element.addClass("oo-ui-menuSectionOptionWidget").removeAttr("role aria-selected")},t.inheritClass(t.ui.MenuSectionOptionWidget,t.ui.DecoratedOptionWidget),t.ui.MenuSectionOptionWidget.static.selectable=!1,t.ui.MenuSectionOptionWidget.static.highlightable=!1,t.ui.MenuSelectWidget=function(i){i=i||{},t.ui.MenuSelectWidget.parent.call(this,i),t.ui.mixin.ClippableElement.call(this,e.extend({},i,{$clippable:this.$group})),t.ui.mixin.FloatableElement.call(this,i),this.originalVerticalPosition=this.verticalPosition,this.autoHide=void 0===i.autoHide||!!i.autoHide,this.hideOnChoose=void 0===i.hideOnChoose||!!i.hideOnChoose,this.filterFromInput=!!i.filterFromInput,this.$input=i.$input?i.$input:i.input?i.input.$input:null,this.$widget=i.widget?i.widget.$element:null,this.$autoCloseIgnore=i.$autoCloseIgnore||e([]),this.onDocumentMouseDownHandler=this.onDocumentMouseDown.bind(this),this.onInputEditHandler=t.ui.debounce(this.updateItemVisibility.bind(this),100),this.highlightOnFilter=!!i.highlightOnFilter,this.width=i.width,this.$element.addClass("oo-ui-menuSelectWidget"),i.widget&&this.setFocusOwner(i.widget.$tabIndexed),this.visible=!1,this.$element.addClass("oo-ui-element-hidden")},t.inheritClass(t.ui.MenuSelectWidget,t.ui.SelectWidget),t.mixinClass(t.ui.MenuSelectWidget,t.ui.mixin.ClippableElement),t.mixinClass(t.ui.MenuSelectWidget,t.ui.mixin.FloatableElement),t.ui.MenuSelectWidget.static.flippedPositions={below:"above",above:"below",top:"bottom",bottom:"top"},t.ui.MenuSelectWidget.prototype.onDocumentMouseDown=function(e){this.isVisible()&&!t.ui.contains(this.$element.add(this.$widget).add(this.$autoCloseIgnore).get(),e.target,!0)&&this.toggle(!1)},t.ui.MenuSelectWidget.prototype.onDocumentKeyDown=function(e){var i=this.findHighlightedItem()||this.findSelectedItem();if(!this.isDisabled()&&this.isVisible())switch(e.keyCode){case t.ui.Keys.LEFT:case t.ui.Keys.RIGHT:this.$input||t.ui.MenuSelectWidget.parent.prototype.onDocumentKeyDown.call(this,e);break;case t.ui.Keys.ESCAPE:case t.ui.Keys.TAB:i&&i.setHighlighted(!1),this.toggle(!1),e.keyCode===t.ui.Keys.ESCAPE&&(e.preventDefault(),e.stopPropagation());break;default:return void t.ui.MenuSelectWidget.parent.prototype.onDocumentKeyDown.call(this,e)}},t.ui.MenuSelectWidget.prototype.updateItemVisibility=function(){var e,i,n,o,s,a,r,l,u=!1,c=this.items.length,h=!this.isVisible(),d=!1;if(this.$input&&this.filterFromInput){for(r=h?null:this.getItemMatcher(this.$input.val()),l=this.getItemMatcher(this.$input.val(),!0),e=0;e<c;e++)(i=this.items[e])instanceof t.ui.MenuSectionOptionWidget?(s&&s.toggle(h||!a),s=i,a=!0):i instanceof t.ui.OptionWidget&&(o=h||r(i),d=d||l(i),u=u||o,a=a&&!o,i.toggle(o));if(s&&s.toggle(h||!a),u&&this.items.length&&!d&&this.scrollItemIntoView(this.items[0]),u||this.highlightItem(null),this.$element.toggleClass("oo-ui-menuSelectWidget-invisible",!u),this.highlightOnFilter){for(i=null,n=this.getItems(),e=0;e<n.length;e++)if(n[e].isVisible()){i=n[e];break}this.highlightItem(i)}}this.clip()},t.ui.MenuSelectWidget.prototype.bindDocumentKeyDownListener=function(){this.$input?this.$input.on("keydown",this.onDocumentKeyDownHandler):t.ui.MenuSelectWidget.parent.prototype.bindDocumentKeyDownListener.call(this)},t.ui.MenuSelectWidget.prototype.unbindDocumentKeyDownListener=function(){this.$input?this.$input.off("keydown",this.onDocumentKeyDownHandler):t.ui.MenuSelectWidget.parent.prototype.unbindDocumentKeyDownListener.call(this)},t.ui.MenuSelectWidget.prototype.bindDocumentKeyPressListener=function(){this.$input?this.filterFromInput&&(this.$input.on("keydown mouseup cut paste change input select",this.onInputEditHandler),this.updateItemVisibility()):t.ui.MenuSelectWidget.parent.prototype.bindDocumentKeyPressListener.call(this)},t.ui.MenuSelectWidget.prototype.unbindDocumentKeyPressListener=function(){this.$input?this.filterFromInput&&(this.$input.off("keydown mouseup cut paste change input select",this.onInputEditHandler),this.updateItemVisibility()):t.ui.MenuSelectWidget.parent.prototype.unbindDocumentKeyPressListener.call(this)},t.ui.MenuSelectWidget.prototype.chooseItem=function(e){return t.ui.MenuSelectWidget.parent.prototype.chooseItem.call(this,e),this.hideOnChoose&&this.toggle(!1),this},t.ui.MenuSelectWidget.prototype.addItems=function(e,i){return t.ui.MenuSelectWidget.parent.prototype.addItems.call(this,e,i),this.updateItemVisibility(),this},t.ui.MenuSelectWidget.prototype.removeItems=function(e){return t.ui.MenuSelectWidget.parent.prototype.removeItems.call(this,e),this.updateItemVisibility(),this},t.ui.MenuSelectWidget.prototype.clearItems=function(){return t.ui.MenuSelectWidget.parent.prototype.clearItems.call(this),this.updateItemVisibility(),this},t.ui.MenuSelectWidget.prototype.toggle=function(e){var i,n;return i=(e=(void 0===e?!this.visible:!!e)&&!!this.items.length)!==this.isVisible(),!e||this.warnedUnattached||this.isElementAttached()||(t.ui.warnDeprecation("MenuSelectWidget#toggle: Before calling this method, the menu must be attached to the DOM."),this.warnedUnattached=!0),i&&e&&this.setVerticalPosition(this.originalVerticalPosition),t.ui.MenuSelectWidget.parent.prototype.toggle.call(this,e),i&&(e?(this.width?this.setIdealSize(this.width):this.$floatableContainer&&(this.$clippable.css("width","auto"),this.setIdealSize(this.$floatableContainer[0].offsetWidth>this.$clippable[0].offsetWidth?this.$floatableContainer[0].offsetWidth:"auto"),this.$clippable.css("width","")),this.togglePositioning(!!this.$floatableContainer),this.toggleClipping(!0),this.bindDocumentKeyDownListener(),this.bindDocumentKeyPressListener(),(this.isClippedVertically()||this.isFloatableOutOfView())&&"center"!==this.originalVerticalPosition&&(n=this.$element.height(),this.setVerticalPosition(this.constructor.static.flippedPositions[this.originalVerticalPosition]),(this.isClippedVertically()||this.isFloatableOutOfView())&&n>this.$element.height()&&this.setVerticalPosition(this.originalVerticalPosition)),this.$focusOwner.attr("aria-expanded","true"),this.findSelectedItem()&&(this.$focusOwner.attr("aria-activedescendant",this.findSelectedItem().getElementId()),this.findSelectedItem().scrollElementIntoView({duration:0})),this.autoHide&&this.getElementDocument().addEventListener("mousedown",this.onDocumentMouseDownHandler,!0),this.emit("ready")):(this.$focusOwner.removeAttr("aria-activedescendant"),this.unbindDocumentKeyDownListener(),this.unbindDocumentKeyPressListener(),this.$focusOwner.attr("aria-expanded","false"),this.getElementDocument().removeEventListener("mousedown",this.onDocumentMouseDownHandler,!0),this.togglePositioning(!1),this.toggleClipping(!1))),this},t.ui.DropdownWidget=function(i){i=e.extend({indicator:"down"},i),t.ui.DropdownWidget.parent.call(this,i),this.$handle=e("<button>"),this.$overlay=(!0===i.$overlay?t.ui.getDefaultOverlay():i.$overlay)||this.$element,t.ui.mixin.IconElement.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.LabelElement.call(this,i),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$label})),t.ui.mixin.TabIndexedElement.call(this,e.extend({},i,{$tabIndexed:this.$handle})),this.menu=new t.ui.MenuSelectWidget(e.extend({widget:this,$floatableContainer:this.$element},i.menu)),this.$handle.on({click:this.onClick.bind(this),keydown:this.onKeyDown.bind(this),keypress:this.menu.onDocumentKeyPressHandler,blur:this.menu.clearKeyPressBuffer.bind(this.menu)}),this.menu.connect(this,{select:"onMenuSelect",toggle:"onMenuToggle"}),this.$handle.addClass("oo-ui-dropdownWidget-handle").attr({"aria-owns":this.menu.getElementId(),"aria-haspopup":"listbox"}).append(this.$icon,this.$label,this.$indicator),this.$element.addClass("oo-ui-dropdownWidget").append(this.$handle),this.$overlay.append(this.menu.$element)},t.inheritClass(t.ui.DropdownWidget,t.ui.Widget),t.mixinClass(t.ui.DropdownWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.DropdownWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.DropdownWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.DropdownWidget,t.ui.mixin.TitledElement),t.mixinClass(t.ui.DropdownWidget,t.ui.mixin.TabIndexedElement),t.ui.DropdownWidget.prototype.getMenu=function(){return this.menu},t.ui.DropdownWidget.prototype.onMenuSelect=function(t){var i;t?((i=t.getLabel())instanceof e&&(i=i.clone()),this.setLabel(i)):this.setLabel(null)},t.ui.DropdownWidget.prototype.onMenuToggle=function(t){this.$element.toggleClass("oo-ui-dropdownWidget-open",t),this.$handle.attr("aria-expanded",this.$element.hasClass("oo-ui-dropdownWidget-open").toString())},t.ui.DropdownWidget.prototype.onClick=function(e){return this.isDisabled()||e.which!==t.ui.MouseButtons.LEFT||this.menu.toggle(),!1},t.ui.DropdownWidget.prototype.onKeyDown=function(e){if(!this.isDisabled()&&(e.which===t.ui.Keys.ENTER||e.which===t.ui.Keys.SPACE&&""===this.menu.keyPressBuffer||!this.menu.isVisible()&&(e.which===t.ui.Keys.UP||e.which===t.ui.Keys.DOWN)))return this.menu.toggle(),!1},t.ui.RadioOptionWidget=function(e){e=e||{},this.radio=new t.ui.RadioInputWidget({value:e.data,tabIndex:-1}),t.ui.RadioOptionWidget.parent.call(this,e),this.radio.$input.attr("role","presentation"),this.$element.addClass("oo-ui-radioOptionWidget").attr("role","radio").attr("aria-checked","false").removeAttr("aria-selected").prepend(this.radio.$element)},t.inheritClass(t.ui.RadioOptionWidget,t.ui.OptionWidget),t.ui.RadioOptionWidget.static.highlightable=!1,t.ui.RadioOptionWidget.static.scrollIntoViewOnSelect=!0,t.ui.RadioOptionWidget.static.pressable=!1,t.ui.RadioOptionWidget.static.tagName="label",t.ui.RadioOptionWidget.prototype.setSelected=function(e){return t.ui.RadioOptionWidget.parent.prototype.setSelected.call(this,e),this.radio.setSelected(e),this.$element.attr("aria-checked",e.toString()).removeAttr("aria-selected"),this},t.ui.RadioOptionWidget.prototype.setDisabled=function(e){return t.ui.RadioOptionWidget.parent.prototype.setDisabled.call(this,e),this.radio.setDisabled(this.isDisabled()),this},t.ui.RadioSelectWidget=function(e){t.ui.RadioSelectWidget.parent.call(this,e),t.ui.mixin.TabIndexedElement.call(this,e),this.$element.on({focus:this.bindDocumentKeyDownListener.bind(this),blur:this.unbindDocumentKeyDownListener.bind(this)}),this.$element.addClass("oo-ui-radioSelectWidget").attr("role","radiogroup")},t.inheritClass(t.ui.RadioSelectWidget,t.ui.SelectWidget),t.mixinClass(t.ui.RadioSelectWidget,t.ui.mixin.TabIndexedElement),t.ui.MultioptionWidget=function(e){e=e||{},t.ui.MultioptionWidget.parent.call(this,e),t.ui.mixin.ItemWidget.call(this),t.ui.mixin.LabelElement.call(this,e),this.selected=null,this.$element.addClass("oo-ui-multioptionWidget").append(this.$label),this.setSelected(e.selected)},t.inheritClass(t.ui.MultioptionWidget,t.ui.Widget),t.mixinClass(t.ui.MultioptionWidget,t.ui.mixin.ItemWidget),t.mixinClass(t.ui.MultioptionWidget,t.ui.mixin.LabelElement),t.ui.MultioptionWidget.prototype.isSelected=function(){return this.selected},t.ui.MultioptionWidget.prototype.setSelected=function(t){return t=!!t,this.selected!==t&&(this.selected=t,this.emit("change",t),this.$element.toggleClass("oo-ui-multioptionWidget-selected",t)),this},t.ui.MultiselectWidget=function(e){t.ui.MultiselectWidget.parent.call(this,e),e=e||{},t.ui.mixin.GroupWidget.call(this,e),this.aggregate({change:"select"}),this.connect(this,{select:["emit","change"]}),e.items&&this.addItems(e.items),this.$group.addClass("oo-ui-multiselectWidget-group"),this.$element.addClass("oo-ui-multiselectWidget").append(this.$group)},t.inheritClass(t.ui.MultiselectWidget,t.ui.Widget),t.mixinClass(t.ui.MultiselectWidget,t.ui.mixin.GroupWidget),t.ui.MultiselectWidget.prototype.findSelectedItems=function(){return this.items.filter(function(t){return t.isSelected()})},t.ui.MultiselectWidget.prototype.findSelectedItemsData=function(){return this.findSelectedItems().map(function(t){return t.data})},t.ui.MultiselectWidget.prototype.selectItems=function(t){return this.items.forEach(function(e){var i=-1!==t.indexOf(e);e.setSelected(i)}),this},t.ui.MultiselectWidget.prototype.selectItemsByData=function(t){var e,i=this;return e=t.map(function(t){return i.findItemFromData(t)}),this.selectItems(e),this},t.ui.CheckboxMultioptionWidget=function(e){e=e||{},this.checkbox=new t.ui.CheckboxInputWidget,t.ui.CheckboxMultioptionWidget.parent.call(this,e),this.checkbox.on("change",this.onCheckboxChange.bind(this)),this.$element.on("keydown",this.onKeyDown.bind(this)),this.$element.addClass("oo-ui-checkboxMultioptionWidget").prepend(this.checkbox.$element)},t.inheritClass(t.ui.CheckboxMultioptionWidget,t.ui.MultioptionWidget),t.ui.CheckboxMultioptionWidget.static.tagName="label",t.ui.CheckboxMultioptionWidget.prototype.onCheckboxChange=function(){this.setSelected(this.checkbox.isSelected())},t.ui.CheckboxMultioptionWidget.prototype.setSelected=function(e){return t.ui.CheckboxMultioptionWidget.parent.prototype.setSelected.call(this,e),this.checkbox.setSelected(e),this},t.ui.CheckboxMultioptionWidget.prototype.setDisabled=function(e){return t.ui.CheckboxMultioptionWidget.parent.prototype.setDisabled.call(this,e),this.checkbox.setDisabled(this.isDisabled()),this},t.ui.CheckboxMultioptionWidget.prototype.focus=function(){this.checkbox.focus()},t.ui.CheckboxMultioptionWidget.prototype.onKeyDown=function(e){var i,n=this.getElementGroup();e.keyCode===t.ui.Keys.LEFT||e.keyCode===t.ui.Keys.UP?i=n.getRelativeFocusableItem(this,-1):e.keyCode!==t.ui.Keys.RIGHT&&e.keyCode!==t.ui.Keys.DOWN||(i=n.getRelativeFocusableItem(this,1)),i&&(e.preventDefault(),i.focus())},t.ui.CheckboxMultiselectWidget=function(e){t.ui.CheckboxMultiselectWidget.parent.call(this,e),this.$lastClicked=null,this.$group.on("click",this.onClick.bind(this)),this.$element.addClass("oo-ui-checkboxMultiselectWidget")},t.inheritClass(t.ui.CheckboxMultiselectWidget,t.ui.MultiselectWidget),t.ui.CheckboxMultiselectWidget.prototype.getRelativeFocusableItem=function(t,e){var i,n,o=e>0?1:-1,s=this.items.length;for(i=t?(this.items.indexOf(t)+o+s)%s:e>0?0:s-1,n=0;n<s;n++){if((t=this.items[i])&&!t.isDisabled())return t;i=(i+o+s)%s}return null},t.ui.CheckboxMultiselectWidget.prototype.onClick=function(t){var i,n,o,s,a,r,l,u=this.$lastClicked,c=e(t.target).closest(".oo-ui-checkboxMultioptionWidget").not(".oo-ui-widget-disabled");if(u&&c.length&&t.shiftKey&&(n=(i=this.$group.find(".oo-ui-checkboxMultioptionWidget")).index(u),(o=i.index(c))!==n)){for(l=this.items,r=l[o].isSelected(),a=o>n?1:-1,s=n;s!==o;s+=a)l[s].isDisabled()||l[s].setSelected(!r);t.preventDefault(),setTimeout(function(){l[o].isDisabled()||l[o].setSelected(!r)})}c.length&&(this.$lastClicked=c)},t.ui.CheckboxMultiselectWidget.prototype.focus=function(){var t;return this.isDisabled()||(t=this.getRelativeFocusableItem(null,1))&&t.focus(),this},t.ui.CheckboxMultiselectWidget.prototype.simulateLabelClick=function(){this.focus()},t.ui.ProgressBarWidget=function(i){i=i||{},t.ui.ProgressBarWidget.parent.call(this,i),this.$bar=e("<div>"),this.progress=null,this.setProgress(void 0!==i.progress&&i.progress),this.$bar.addClass("oo-ui-progressBarWidget-bar"),this.$element.attr({role:"progressbar","aria-valuemin":0,"aria-valuemax":100}).addClass("oo-ui-progressBarWidget").append(this.$bar)},t.inheritClass(t.ui.ProgressBarWidget,t.ui.Widget),t.ui.ProgressBarWidget.static.tagName="div",t.ui.ProgressBarWidget.prototype.getProgress=function(){return this.progress},t.ui.ProgressBarWidget.prototype.setProgress=function(t){this.progress=t,!1!==t?(this.$bar.css("width",this.progress+"%"),this.$element.attr("aria-valuenow",this.progress)):(this.$bar.css("width",""),this.$element.removeAttr("aria-valuenow")),this.$element.toggleClass("oo-ui-progressBarWidget-indeterminate",!1===t)},t.ui.InputWidget=function(i){i=i||{},t.ui.InputWidget.parent.call(this,i),this.$input=i.$input||this.getInputElement(i),this.value="",this.inputFilter=i.inputFilter,t.ui.mixin.FlaggedElement.call(this,i),t.ui.mixin.TabIndexedElement.call(this,e.extend({},i,{$tabIndexed:this.$input})),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$input})),t.ui.mixin.AccessKeyedElement.call(this,e.extend({},i,{$accessKeyed:this.$input})),this.$input.on("keydown mouseup cut paste change input select",this.onEdit.bind(this)),this.$input.addClass("oo-ui-inputWidget-input").attr("name",i.name).prop("disabled",this.isDisabled()),this.$element.addClass("oo-ui-inputWidget").append(this.$input),this.setValue(i.value),i.dir&&this.setDir(i.dir),void 0!==i.inputId&&this.setInputId(i.inputId)},t.inheritClass(t.ui.InputWidget,t.ui.Widget),t.mixinClass(t.ui.InputWidget,t.ui.mixin.FlaggedElement),t.mixinClass(t.ui.InputWidget,t.ui.mixin.TabIndexedElement),t.mixinClass(t.ui.InputWidget,t.ui.mixin.TitledElement),t.mixinClass(t.ui.InputWidget,t.ui.mixin.AccessKeyedElement),t.ui.InputWidget.static.reusePreInfuseDOM=function(i,n){return(n=t.ui.InputWidget.parent.static.reusePreInfuseDOM(i,n)).$input=e(i).find(".oo-ui-inputWidget-input"),n},t.ui.InputWidget.static.gatherPreInfuseState=function(e,i){var n=t.ui.InputWidget.parent.static.gatherPreInfuseState(e,i);return i.$input&&i.$input.length&&(n.value=i.$input.val(),n.focus=i.$input.is(":focus")),n},t.ui.InputWidget.prototype.getInputElement=function(){return e("<input>")},t.ui.InputWidget.prototype.onEdit=function(){var t=this;this.isDisabled()||setTimeout(function(){t.setValue(t.$input.val())})},t.ui.InputWidget.prototype.getValue=function(){var t=this.$input.val();return this.value!==t&&this.setValue(t),this.value},t.ui.InputWidget.prototype.setDir=function(t){return this.$input.prop("dir",t),this},t.ui.InputWidget.prototype.setValue=function(t){return t=this.cleanUpValue(t),this.$input.val()!==t&&this.$input.val(t),this.value!==t&&(this.value=t,this.emit("change",this.value)),void 0===this.defaultValue&&(this.defaultValue=this.value,this.$input[0].defaultValue=this.defaultValue),this},t.ui.InputWidget.prototype.cleanUpValue=function(t){return null==t?"":this.inputFilter?this.inputFilter(String(t)):String(t)},t.ui.InputWidget.prototype.setDisabled=function(e){return t.ui.InputWidget.parent.prototype.setDisabled.call(this,e),this.$input&&this.$input.prop("disabled",this.isDisabled()),this},t.ui.InputWidget.prototype.setInputId=function(t){return this.$input.attr("id",t),this},t.ui.InputWidget.prototype.restorePreInfuseState=function(e){t.ui.InputWidget.parent.prototype.restorePreInfuseState.call(this,e),void 0!==e.value&&e.value!==this.getValue()&&this.setValue(e.value),e.focus&&this.focus()},t.ui.HiddenInputWidget=function(i){i=e.extend({value:"",name:""},i),t.ui.HiddenInputWidget.parent.call(this,i),this.$element.attr({type:"hidden",value:i.value,name:i.name}),this.$element.removeAttr("aria-disabled")},t.inheritClass(t.ui.HiddenInputWidget,t.ui.Widget),t.ui.HiddenInputWidget.static.tagName="input",t.ui.ButtonInputWidget=function(i){(i=e.extend({type:"button",useInputTag:!1},i)).$input&&i.$input.empty(),this.useInputTag=i.useInputTag,t.ui.ButtonInputWidget.parent.call(this,i),t.ui.mixin.ButtonElement.call(this,e.extend({},i,{$button:this.$input})),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.LabelElement.call(this,i),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$input})),i.useInputTag||this.$input.append(this.$icon,this.$label,this.$indicator),this.$element.addClass("oo-ui-buttonInputWidget")},t.inheritClass(t.ui.ButtonInputWidget,t.ui.InputWidget),t.mixinClass(t.ui.ButtonInputWidget,t.ui.mixin.ButtonElement),t.mixinClass(t.ui.ButtonInputWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.ButtonInputWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.ButtonInputWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.ButtonInputWidget,t.ui.mixin.TitledElement),t.ui.ButtonInputWidget.static.tagName="span",t.ui.ButtonInputWidget.prototype.getInputElement=function(t){var i;return i=-1!==["button","submit","reset"].indexOf(t.type)?t.type:"button",e("<"+(t.useInputTag?"input":"button")+' type="'+i+'">')},t.ui.ButtonInputWidget.prototype.setLabel=function(e){return"function"==typeof e&&(e=t.ui.resolveMsg(e)),this.useInputTag&&("string"!=typeof e&&(e=""),this.$input.val(e)),t.ui.mixin.LabelElement.prototype.setLabel.call(this,e)},t.ui.ButtonInputWidget.prototype.setValue=function(e){return this.useInputTag||t.ui.ButtonInputWidget.parent.prototype.setValue.call(this,e),this},t.ui.ButtonInputWidget.prototype.getInputId=function(){return null},t.ui.CheckboxInputWidget=function(e){e=e||{},t.ui.CheckboxInputWidget.parent.call(this,e),this.checkIcon=new t.ui.IconWidget({icon:"check",classes:["oo-ui-checkboxInputWidget-checkIcon"]}),this.$element.addClass("oo-ui-checkboxInputWidget").append(this.checkIcon.$element),this.setSelected(void 0!==e.selected&&e.selected)},t.inheritClass(t.ui.CheckboxInputWidget,t.ui.InputWidget),t.ui.CheckboxInputWidget.static.tagName="span",t.ui.CheckboxInputWidget.static.gatherPreInfuseState=function(e,i){var n=t.ui.CheckboxInputWidget.parent.static.gatherPreInfuseState(e,i);return n.checked=i.$input.prop("checked"),n},t.ui.CheckboxInputWidget.prototype.getInputElement=function(){return e("<input>").attr("type","checkbox")},t.ui.CheckboxInputWidget.prototype.onEdit=function(){var t=this;this.isDisabled()||setTimeout(function(){t.setSelected(t.$input.prop("checked"))})},t.ui.CheckboxInputWidget.prototype.setSelected=function(t){return t=!!t,this.selected!==t&&(this.selected=t,this.$input.prop("checked",this.selected),this.emit("change",this.selected)),void 0===this.defaultSelected&&(this.defaultSelected=this.selected,this.$input[0].defaultChecked=this.defaultSelected),this},t.ui.CheckboxInputWidget.prototype.isSelected=function(){var t=this.$input.prop("checked");return this.selected!==t&&this.setSelected(t),this.selected},t.ui.CheckboxInputWidget.prototype.simulateLabelClick=function(){this.isDisabled()||this.$input.click(),this.focus()},t.ui.CheckboxInputWidget.prototype.restorePreInfuseState=function(e){t.ui.CheckboxInputWidget.parent.prototype.restorePreInfuseState.call(this,e),void 0!==e.checked&&e.checked!==this.isSelected()&&this.setSelected(e.checked)},t.ui.DropdownInputWidget=function(i){i=i||{},this.dropdownWidget=new t.ui.DropdownWidget(e.extend({$overlay:i.$overlay},i.dropdown)),this.setOptionsData(i.options||[]),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.dropdownWidget.$handle})),t.ui.DropdownInputWidget.parent.call(this,i),this.dropdownWidget.getMenu().connect(this,{select:"onMenuSelect"}),this.$element.addClass("oo-ui-dropdownInputWidget").append(this.dropdownWidget.$element),this.setTabIndexedElement(this.dropdownWidget.$tabIndexed)},t.inheritClass(t.ui.DropdownInputWidget,t.ui.InputWidget),t.mixinClass(t.ui.DropdownInputWidget,t.ui.mixin.TitledElement),t.ui.DropdownInputWidget.prototype.getInputElement=function(){return e("<select>")},t.ui.DropdownInputWidget.prototype.onMenuSelect=function(t){this.setValue(t?t.getData():"")},t.ui.DropdownInputWidget.prototype.setValue=function(e){var i;return e=this.cleanUpValue(e),i=this.dropdownWidget.getMenu().findItemFromData(e)||this.dropdownWidget.getMenu().findFirstSelectableItem(),this.dropdownWidget.getMenu().selectItem(i),e=i?i.getData():"",t.ui.DropdownInputWidget.parent.prototype.setValue.call(this,e),this.optionsDirty&&this.updateOptionsInterface(),this},t.ui.DropdownInputWidget.prototype.setDisabled=function(e){return this.dropdownWidget.setDisabled(e),t.ui.DropdownInputWidget.parent.prototype.setDisabled.call(this,e),this},t.ui.DropdownInputWidget.prototype.setOptions=function(t){var e=this.getValue();return this.setOptionsData(t),this.setValue(e),this},t.ui.DropdownInputWidget.prototype.setOptionsData=function(t){var e,i=this;this.optionsDirty=!0,e=t.map(function(t){var e;return void 0!==t.optgroup?i.createMenuSectionOptionWidget(t.optgroup):(e=i.cleanUpValue(t.data),i.createMenuOptionWidget(e,void 0!==t.label?t.label:e))}),this.dropdownWidget.getMenu().clearItems().addItems(e)},t.ui.DropdownInputWidget.prototype.createMenuOptionWidget=function(e,i){return new t.ui.MenuOptionWidget({data:e,label:i})},t.ui.DropdownInputWidget.prototype.createMenuSectionOptionWidget=function(e){return new t.ui.MenuSectionOptionWidget({label:e})},t.ui.DropdownInputWidget.prototype.updateOptionsInterface=function(){var i=this.$input,n=this.defaultValue,o=this;this.$input.empty(),this.dropdownWidget.getMenu().getItems().forEach(function(s){var a;s instanceof t.ui.MenuSectionOptionWidget?(a=e("<optgroup>").attr("label",s.getLabel()),o.$input.append(a),i=a):((a=e("<option>").attr("value",s.getData()).text(s.getLabel()))[0].defaultSelected=s.getData()===n,i.append(a))}),this.optionsDirty=!1},t.ui.DropdownInputWidget.prototype.focus=function(){return this.dropdownWidget.focus(),this},t.ui.DropdownInputWidget.prototype.blur=function(){return this.dropdownWidget.blur(),this},t.ui.RadioInputWidget=function(i){i=i||{},t.ui.RadioInputWidget.parent.call(this,i),this.$element.addClass("oo-ui-radioInputWidget").append(e("<span>")),this.setSelected(void 0!==i.selected&&i.selected)},t.inheritClass(t.ui.RadioInputWidget,t.ui.InputWidget),t.ui.RadioInputWidget.static.tagName="span",t.ui.RadioInputWidget.static.gatherPreInfuseState=function(e,i){var n=t.ui.RadioInputWidget.parent.static.gatherPreInfuseState(e,i);return n.checked=i.$input.prop("checked"),n},t.ui.RadioInputWidget.prototype.getInputElement=function(){return e("<input>").attr("type","radio")},t.ui.RadioInputWidget.prototype.onEdit=function(){},t.ui.RadioInputWidget.prototype.setSelected=function(t){return this.$input.prop("checked",t),void 0===this.defaultSelected&&(this.defaultSelected=t,this.$input[0].defaultChecked=this.defaultSelected),this},t.ui.RadioInputWidget.prototype.isSelected=function(){return this.$input.prop("checked")},t.ui.RadioInputWidget.prototype.simulateLabelClick=function(){this.isDisabled()||this.$input.click(),this.focus()},t.ui.RadioInputWidget.prototype.restorePreInfuseState=function(e){t.ui.RadioInputWidget.parent.prototype.restorePreInfuseState.call(this,e),void 0!==e.checked&&e.checked!==this.isSelected()&&this.setSelected(e.checked)},t.ui.RadioSelectInputWidget=function(e){e=e||{},this.radioSelectWidget=new t.ui.RadioSelectWidget,this.setOptionsData(e.options||[]),t.ui.RadioSelectInputWidget.parent.call(this,e),this.radioSelectWidget.connect(this,{select:"onMenuSelect"}),this.$element.addClass("oo-ui-radioSelectInputWidget").append(this.radioSelectWidget.$element),this.setTabIndexedElement(this.radioSelectWidget.$tabIndexed)},t.inheritClass(t.ui.RadioSelectInputWidget,t.ui.InputWidget),t.ui.RadioSelectInputWidget.static.gatherPreInfuseState=function(i,n){var o=t.ui.RadioSelectInputWidget.parent.static.gatherPreInfuseState(i,n);return o.value=e(i).find(".oo-ui-radioInputWidget .oo-ui-inputWidget-input:checked").val(),o},t.ui.RadioSelectInputWidget.static.reusePreInfuseDOM=function(e,i){return delete(i=t.ui.RadioSelectInputWidget.parent.static.reusePreInfuseDOM(e,i)).$input,i},t.ui.RadioSelectInputWidget.prototype.getInputElement=function(){return e("<input>").addClass("oo-ui-element-hidden")},t.ui.RadioSelectInputWidget.prototype.onMenuSelect=function(t){this.setValue(t.getData())},t.ui.RadioSelectInputWidget.prototype.setValue=function(e){var i;return e=this.cleanUpValue(e),i=this.radioSelectWidget.findItemFromData(e)||this.radioSelectWidget.findFirstSelectableItem(),this.radioSelectWidget.selectItem(i),e=i?i.getData():"",t.ui.RadioSelectInputWidget.parent.prototype.setValue.call(this,e),this},t.ui.RadioSelectInputWidget.prototype.setDisabled=function(e){return this.radioSelectWidget.setDisabled(e),t.ui.RadioSelectInputWidget.parent.prototype.setDisabled.call(this,e),this},t.ui.RadioSelectInputWidget.prototype.setOptions=function(t){var e=this.getValue();return this.setOptionsData(t),this.setValue(e),this},t.ui.RadioSelectInputWidget.prototype.setOptionsData=function(e){var i=this;this.radioSelectWidget.clearItems().addItems(e.map(function(e){var n=i.cleanUpValue(e.data);return new t.ui.RadioOptionWidget({data:n,label:void 0!==e.label?e.label:n})}))},t.ui.RadioSelectInputWidget.prototype.focus=function(){return this.radioSelectWidget.focus(),this},t.ui.RadioSelectInputWidget.prototype.blur=function(){return this.radioSelectWidget.blur(),this},t.ui.CheckboxMultiselectInputWidget=function(e){e=e||{},this.checkboxMultiselectWidget=new t.ui.CheckboxMultiselectWidget,this.inputName=e.name,this.setOptionsData(e.options||[]),t.ui.CheckboxMultiselectInputWidget.parent.call(this,e),this.checkboxMultiselectWidget.connect(this,{select:"onCheckboxesSelect"}),this.$element.addClass("oo-ui-checkboxMultiselectInputWidget").append(this.checkboxMultiselectWidget.$element),this.$input.detach()},t.inheritClass(t.ui.CheckboxMultiselectInputWidget,t.ui.InputWidget),t.ui.CheckboxMultiselectInputWidget.static.gatherPreInfuseState=function(i,n){var o=t.ui.CheckboxMultiselectInputWidget.parent.static.gatherPreInfuseState(i,n);return o.value=e(i).find(".oo-ui-checkboxInputWidget .oo-ui-inputWidget-input:checked").toArray().map(function(t){return t.value}),o},t.ui.CheckboxMultiselectInputWidget.static.reusePreInfuseDOM=function(e,i){return delete(i=t.ui.CheckboxMultiselectInputWidget.parent.static.reusePreInfuseDOM(e,i)).$input,i},t.ui.CheckboxMultiselectInputWidget.prototype.getInputElement=function(){return e("<unused>")},t.ui.CheckboxMultiselectInputWidget.prototype.onCheckboxesSelect=function(){this.setValue(this.checkboxMultiselectWidget.findSelectedItemsData())},t.ui.CheckboxMultiselectInputWidget.prototype.getValue=function(){var t=this.$element.find(".oo-ui-checkboxInputWidget .oo-ui-inputWidget-input:checked").toArray().map(function(t){return t.value});return this.value!==t&&this.setValue(t),this.value},t.ui.CheckboxMultiselectInputWidget.prototype.setValue=function(e){return e=this.cleanUpValue(e),this.checkboxMultiselectWidget.selectItemsByData(e),t.ui.CheckboxMultiselectInputWidget.parent.prototype.setValue.call(this,e),this.optionsDirty&&this.updateOptionsInterface(),this},t.ui.CheckboxMultiselectInputWidget.prototype.cleanUpValue=function(e){var i,n,o=[];if(!Array.isArray(e))return o;for(i=0;i<e.length;i++)n=t.ui.CheckboxMultiselectInputWidget.parent.prototype.cleanUpValue.call(this,e[i]),this.checkboxMultiselectWidget.findItemFromData(n)&&o.push(n);return o},t.ui.CheckboxMultiselectInputWidget.prototype.setDisabled=function(e){return this.checkboxMultiselectWidget.setDisabled(e),t.ui.CheckboxMultiselectInputWidget.parent.prototype.setDisabled.call(this,e),this},t.ui.CheckboxMultiselectInputWidget.prototype.setOptions=function(t){var e=this.getValue();return this.setOptionsData(t),this.setValue(e),this},t.ui.CheckboxMultiselectInputWidget.prototype.setOptionsData=function(e){var i=this;this.optionsDirty=!0,this.checkboxMultiselectWidget.clearItems().addItems(e.map(function(e){var n,o,s;return n=t.ui.CheckboxMultiselectInputWidget.parent.prototype.cleanUpValue.call(i,e.data),s=void 0!==e.disabled&&e.disabled,(o=new t.ui.CheckboxMultioptionWidget({data:n,label:void 0!==e.label?e.label:n,disabled:s})).checkbox.$input.attr("name",i.inputName),o.checkbox.setValue(n),o}))},t.ui.CheckboxMultiselectInputWidget.prototype.updateOptionsInterface=function(){var t=this.defaultValue;this.checkboxMultiselectWidget.getItems().forEach(function(e){var i=-1!==t.indexOf(e.getData());e.checkbox.defaultSelected=i,e.checkbox.$input[0].defaultChecked=i}),this.optionsDirty=!1},t.ui.CheckboxMultiselectInputWidget.prototype.focus=function(){return this.checkboxMultiselectWidget.focus(),this},t.ui.TextInputWidget=function(i){i=e.extend({type:"text",labelPosition:"after"},i),t.ui.TextInputWidget.parent.call(this,i),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.PendingElement.call(this,e.extend({},i,{$pending:this.$input})),t.ui.mixin.LabelElement.call(this,i),this.type=this.getSaneType(i),this.readOnly=!1,this.required=!1,this.validate=null,this.styleHeight=null,this.scrollWidth=null,this.setValidation(i.validate),this.setLabelPosition(i.labelPosition),this.$input.on({keypress:this.onKeyPress.bind(this),blur:this.onBlur.bind(this),focus:this.onFocus.bind(this)}),this.$icon.on("mousedown",this.onIconMouseDown.bind(this)),this.$indicator.on("mousedown",this.onIndicatorMouseDown.bind(this)),this.on("labelChange",this.updatePosition.bind(this)),this.on("change",t.ui.debounce(this.onDebouncedChange.bind(this),250)),this.$element.addClass("oo-ui-textInputWidget oo-ui-textInputWidget-type-"+this.type).append(this.$icon,this.$indicator),this.setReadOnly(!!i.readOnly),this.setRequired(!!i.required),void 0!==i.placeholder&&this.$input.attr("placeholder",i.placeholder),void 0!==i.maxLength&&this.$input.attr("maxlength",i.maxLength),i.autofocus&&this.$input.attr("autofocus","autofocus"),!1===i.autocomplete&&(this.$input.attr("autocomplete","off"),e(window).on({beforeunload:function(){this.$input.removeAttr("autocomplete")}.bind(this),pageshow:function(){this.$input.attr("autocomplete","off")}.bind(this)})),void 0!==i.spellcheck&&this.$input.attr("spellcheck",i.spellcheck?"true":"false"),this.label&&(this.isWaitingToBeAttached=!0,this.installParentChangeDetector())},t.inheritClass(t.ui.TextInputWidget,t.ui.InputWidget),t.mixinClass(t.ui.TextInputWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.TextInputWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.TextInputWidget,t.ui.mixin.PendingElement),t.mixinClass(t.ui.TextInputWidget,t.ui.mixin.LabelElement),t.ui.TextInputWidget.static.validationPatterns={"non-empty":/.+/,integer:/^\d+$/},t.ui.TextInputWidget.prototype.onIconMouseDown=function(e){if(e.which===t.ui.MouseButtons.LEFT)return this.focus(),!1},t.ui.TextInputWidget.prototype.onIndicatorMouseDown=function(e){if(e.which===t.ui.MouseButtons.LEFT)return this.focus(),!1},t.ui.TextInputWidget.prototype.onKeyPress=function(e){e.which===t.ui.Keys.ENTER&&this.emit("enter",e)},t.ui.TextInputWidget.prototype.onBlur=function(){this.setValidityFlag()},t.ui.TextInputWidget.prototype.onFocus=function(){this.isWaitingToBeAttached&&this.onElementAttach(),this.setValidityFlag(!0)},t.ui.TextInputWidget.prototype.onElementAttach=function(){this.isWaitingToBeAttached=!1,this.valCache=null,this.positionLabel()},t.ui.TextInputWidget.prototype.onDebouncedChange=function(){this.setValidityFlag()},t.ui.TextInputWidget.prototype.isReadOnly=function(){return this.readOnly},t.ui.TextInputWidget.prototype.setReadOnly=function(t){return this.readOnly=!!t,this.$input.prop("readOnly",this.readOnly),this},t.ui.TextInputWidget.prototype.isRequired=function(){return this.required},t.ui.TextInputWidget.prototype.setRequired=function(t){return this.required=!!t,this.required?(this.$input.prop("required",!0).attr("aria-required","true"),null===this.getIndicator()&&this.setIndicator("required")):(this.$input.prop("required",!1).removeAttr("aria-required"),"required"===this.getIndicator()&&this.setIndicator(null)),this},t.ui.TextInputWidget.prototype.installParentChangeDetector=function(){var t,i,n,o,s=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver,a=this;if(s){if(this.isElementAttached())return;for(n=this.$element[0];n.parentNode;)n=n.parentNode;t=new s(function(t){var e,o,s;for(e=0;e<t.length;e++)for(s=t[e].removedNodes,o=0;o<s.length;o++)if(s[o]===n)return void setTimeout(i,0)}),i=function(){a.isElementAttached()&&a.onElementAttach(),t.disconnect(),a.installParentChangeDetector()},o=e("<div>").append(n)[0],t.observe(o,{childList:!0})}else this.$element.on("DOMNodeInsertedIntoDocument",this.onElementAttach.bind(this))},t.ui.TextInputWidget.prototype.getInputElement=function(t){return"number"===this.getSaneType(t)?e("<input>").attr("step","any").attr("type","number"):e("<input>").attr("type",this.getSaneType(t))},t.ui.TextInputWidget.prototype.getSaneType=function(t){return-1!==["text","password","email","url","number"].indexOf(t.type)?t.type:"text"},t.ui.TextInputWidget.prototype.selectRange=function(t,e){var i,n,o,s=this.$input[0];n=(i=(e=e||t)<t)?e:t,o=i?t:e,this.focus();try{s.setSelectionRange(n,o,i?"backward":"forward")}catch(t){if(this.getElementDocument().body.contains(s))throw t}return this},t.ui.TextInputWidget.prototype.getRange=function(){var t=this.$input[0],e=t.selectionStart,i=t.selectionEnd,n="backward"===t.selectionDirection;return{from:n?i:e,to:n?e:i}},t.ui.TextInputWidget.prototype.getInputLength=function(){return this.$input[0].value.length},t.ui.TextInputWidget.prototype.select=function(){return this.selectRange(0,this.getInputLength())},t.ui.TextInputWidget.prototype.moveCursorToStart=function(){return this.selectRange(0)},t.ui.TextInputWidget.prototype.moveCursorToEnd=function(){return this.selectRange(this.getInputLength())},t.ui.TextInputWidget.prototype.insertContent=function(t){var e,i,n=this.getRange(),o=this.getValue();return e=Math.min(n.from,n.to),i=Math.max(n.from,n.to),this.setValue(o.slice(0,e)+t+o.slice(i)),this.selectRange(e+t.length),this},t.ui.TextInputWidget.prototype.encapsulateContent=function(t,e){var i,n,o=this.getRange(),s=t.length;return i=Math.min(o.from,o.to),n=Math.max(o.from,o.to),this.selectRange(i).insertContent(t),this.selectRange(s+n).insertContent(e),this.selectRange(s+i,s+n),this},t.ui.TextInputWidget.prototype.setValidation=function(t){t instanceof RegExp||t instanceof Function?this.validate=t:this.validate=this.constructor.static.validationPatterns[t]||/.*/},t.ui.TextInputWidget.prototype.setValidityFlag=function(t){var e=this,i=function(t){t?e.$input.removeAttr("aria-invalid"):e.$input.attr("aria-invalid","true"),e.setFlags({invalid:!t})};void 0!==t?i(t):this.getValidity().then(function(){i(!0)},function(){i(!1)})},t.ui.TextInputWidget.prototype.getValidity=function(){var t;function i(t){return t?e.Deferred().resolve().promise():e.Deferred().reject().promise()}return void 0!==this.$input[0].checkValidity&&!1===this.$input[0].checkValidity()?i(!1):this.validate instanceof Function?(t=this.validate(this.getValue()))&&"function"==typeof t.promise?t.promise().then(function(t){return i(t)}):i(t):i(this.getValue().match(this.validate))},t.ui.TextInputWidget.prototype.setLabelPosition=function(t){return this.labelPosition=t,this.label&&this.updatePosition(),this},t.ui.TextInputWidget.prototype.updatePosition=function(){var t="after"===this.labelPosition;return this.$element.toggleClass("oo-ui-textInputWidget-labelPosition-after",!!this.label&&t).toggleClass("oo-ui-textInputWidget-labelPosition-before",!!this.label&&!t),this.valCache=null,this.scrollWidth=null,this.positionLabel(),this},t.ui.TextInputWidget.prototype.positionLabel=function(){var t,e;return this.isWaitingToBeAttached?this:(e={"padding-right":"","padding-left":""},this.label?(this.$element.append(this.$label),e[(t="after"===this.labelPosition)===("rtl"===this.$element.css("direction"))?"padding-left":"padding-right"]=this.$label.outerWidth(!0)+(t?this.scrollWidth:0),this.$input.css(e),this):(this.$label.detach(),void this.$input.css(e)))},t.ui.SearchInputWidget=function(i){i=e.extend({icon:"search"},i),t.ui.SearchInputWidget.parent.call(this,i),this.connect(this,{change:"onChange"}),this.updateSearchIndicator(),this.connect(this,{disable:"onDisable"})},t.inheritClass(t.ui.SearchInputWidget,t.ui.TextInputWidget),t.ui.SearchInputWidget.prototype.getSaneType=function(){return"search"},t.ui.SearchInputWidget.prototype.onIndicatorMouseDown=function(e){if(e.which===t.ui.MouseButtons.LEFT)return this.setValue(""),this.focus(),!1},t.ui.SearchInputWidget.prototype.updateSearchIndicator=function(){""===this.getValue()||this.isDisabled()||this.isReadOnly()?this.setIndicator(null):this.setIndicator("clear")},t.ui.SearchInputWidget.prototype.onChange=function(){this.updateSearchIndicator()},t.ui.SearchInputWidget.prototype.onDisable=function(){this.updateSearchIndicator()},t.ui.SearchInputWidget.prototype.setReadOnly=function(e){return t.ui.SearchInputWidget.parent.prototype.setReadOnly.call(this,e),this.updateSearchIndicator(),this},t.ui.MultilineTextInputWidget=function(i){i=e.extend({type:"text"},i),t.ui.MultilineTextInputWidget.parent.call(this,i),this.autosize=!!i.autosize,this.minRows=void 0!==i.rows?i.rows:"",this.maxRows=i.maxRows||Math.max(2*(this.minRows||0),10),this.autosize&&(this.$clone=this.$input.clone().removeAttr("id").removeAttr("name").insertAfter(this.$input).attr("aria-hidden","true").addClass("oo-ui-element-hidden")),this.connect(this,{change:"onChange"}),i.rows&&this.$input.attr("rows",i.rows),this.autosize&&(this.$input.addClass("oo-ui-textInputWidget-autosized"),this.isWaitingToBeAttached=!0,this.installParentChangeDetector())},t.inheritClass(t.ui.MultilineTextInputWidget,t.ui.TextInputWidget),t.ui.MultilineTextInputWidget.static.gatherPreInfuseState=function(e,i){var n=t.ui.MultilineTextInputWidget.parent.static.gatherPreInfuseState(e,i);return n.scrollTop=i.$input.scrollTop(),n},t.ui.MultilineTextInputWidget.prototype.onElementAttach=function(){t.ui.MultilineTextInputWidget.parent.prototype.onElementAttach.call(this),this.adjustSize()},t.ui.MultilineTextInputWidget.prototype.onChange=function(){this.adjustSize()},t.ui.MultilineTextInputWidget.prototype.updatePosition=function(){t.ui.MultilineTextInputWidget.parent.prototype.updatePosition.call(this),this.adjustSize()},t.ui.MultilineTextInputWidget.prototype.onKeyPress=function(e){(e.which===t.ui.Keys.ENTER&&(e.ctrlKey||e.metaKey)||10===e.which)&&this.emit("enter",e)},t.ui.MultilineTextInputWidget.prototype.adjustSize=function(){var t,e,i,n,o,s,a,r,l;return this.$input.val()!==this.valCache&&(this.autosize&&(this.$clone.val(this.$input.val()).attr("rows",this.minRows).css("height",0),this.$clone.removeClass("oo-ui-element-hidden"),this.valCache=this.$input.val(),t=this.$clone[0].scrollHeight,this.$clone.css("height",""),e=this.$clone.innerHeight(),i=this.$clone.outerHeight(),this.$clone.attr("rows",this.maxRows).css("height","auto").val(""),o=(n=this.$clone.innerHeight())-this.$clone[0].scrollHeight,s=Math.min(n,t+o),this.$clone.addClass("oo-ui-element-hidden"),(a=s>e?s+(i-e):"")!==this.styleHeight&&(this.$input.css("height",a),this.styleHeight=a,this.emit("resize"))),(r=this.$input[0].offsetWidth-this.$input[0].clientWidth)!==this.scrollWidth&&(l="rtl"===this.$element.css("direction")?"left":"right",this.$label.css({right:"",left:""}),this.$indicator.css({right:"",left:""}),r&&(this.$indicator.css(l,r),"after"===this.labelPosition&&this.$label.css(l,r)),this.scrollWidth=r,this.positionLabel())),this},t.ui.MultilineTextInputWidget.prototype.getInputElement=function(){return e("<textarea>")},t.ui.MultilineTextInputWidget.prototype.isAutosizing=function(){return!!this.autosize},t.ui.MultilineTextInputWidget.prototype.restorePreInfuseState=function(e){t.ui.MultilineTextInputWidget.parent.prototype.restorePreInfuseState.call(this,e),void 0!==e.scrollTop&&this.$input.scrollTop(e.scrollTop)},t.ui.ComboBoxInputWidget=function(i){(i=e.extend({autocomplete:!1},i)).multiline=!1,i.$input&&i.$input.removeAttr("list"),t.ui.ComboBoxInputWidget.parent.call(this,i),this.$overlay=(!0===i.$overlay?t.ui.getDefaultOverlay():i.$overlay)||this.$element,this.dropdownButton=new t.ui.ButtonWidget({classes:["oo-ui-comboBoxInputWidget-dropdownButton"],label:t.ui.msg("ooui-combobox-button-label"),indicator:"down",invisibleLabel:!0,disabled:this.disabled}),this.menu=new t.ui.MenuSelectWidget(e.extend({widget:this,input:this,$floatableContainer:this.$element,disabled:this.isDisabled()},i.menu)),this.connect(this,{change:"onInputChange",enter:"onInputEnter"}),this.dropdownButton.connect(this,{click:"onDropdownButtonClick"}),this.menu.connect(this,{choose:"onMenuChoose",add:"onMenuItemsChange",remove:"onMenuItemsChange",toggle:"onMenuToggle"}),this.$input.attr({role:"combobox","aria-expanded":"false","aria-owns":this.menu.getElementId(),"aria-autocomplete":"list"}),this.dropdownButton.$button.attr({"aria-controls":this.menu.getElementId()}),void 0!==i.options&&this.setOptions(i.options),this.$field=e("<div>").addClass("oo-ui-comboBoxInputWidget-field").append(this.$input,this.dropdownButton.$element),this.$element.addClass("oo-ui-comboBoxInputWidget").append(this.$field),this.$overlay.append(this.menu.$element),this.onMenuItemsChange()},t.inheritClass(t.ui.ComboBoxInputWidget,t.ui.TextInputWidget),t.ui.ComboBoxInputWidget.prototype.getMenu=function(){return this.menu},t.ui.ComboBoxInputWidget.prototype.getInput=function(){return this},t.ui.ComboBoxInputWidget.prototype.onInputChange=function(t){var e=this.menu.findItemFromData(t);this.menu.selectItem(e),this.menu.findHighlightedItem()&&this.menu.highlightItem(e),this.isDisabled()||this.menu.toggle(!0)},t.ui.ComboBoxInputWidget.prototype.onInputEnter=function(){this.isDisabled()||this.menu.toggle(!1)},t.ui.ComboBoxInputWidget.prototype.onDropdownButtonClick=function(){this.menu.toggle(),this.focus()},t.ui.ComboBoxInputWidget.prototype.onMenuChoose=function(t){this.setValue(t.getData())},t.ui.ComboBoxInputWidget.prototype.onMenuItemsChange=function(){var t=this.menu.findItemFromData(this.getValue());this.menu.selectItem(t),this.menu.findHighlightedItem()&&this.menu.highlightItem(t),this.$element.toggleClass("oo-ui-comboBoxInputWidget-empty",this.menu.isEmpty())},t.ui.ComboBoxInputWidget.prototype.onMenuToggle=function(t){this.$element.toggleClass("oo-ui-comboBoxInputWidget-open",t)},t.ui.ComboBoxInputWidget.prototype.setDisabled=function(e){return t.ui.ComboBoxInputWidget.parent.prototype.setDisabled.call(this,e),this.dropdownButton&&this.dropdownButton.setDisabled(this.isDisabled()),this.menu&&this.menu.setDisabled(this.isDisabled()),this},t.ui.ComboBoxInputWidget.prototype.setOptions=function(e){return this.getMenu().clearItems().addItems(e.map(function(e){return new t.ui.MenuOptionWidget({data:e.data,label:void 0!==e.label?e.label:e.data})})),this},t.ui.FieldLayout=function(i,n){if(t.isPlainObject(i)&&void 0===n&&(i=(n=i).fieldWidget),void 0===i)throw new Error("Widget not found");n=e.extend({align:"left",helpInline:!1},n),t.ui.FieldLayout.parent.call(this,n),t.ui.mixin.LabelElement.call(this,e.extend({},n,{$label:e("<label>")})),t.ui.mixin.TitledElement.call(this,e.extend({},n,{$titled:this.$label})),this.fieldWidget=i,this.errors=[],this.notices=[],this.$field=this.isFieldInline()?e("<span>"):e("<div>"),this.$messages=e("<ul>"),this.$header=e("<span>"),this.$body=e("<div>"),this.align=null,this.helpInline=n.helpInline,this.fieldWidget.connect(this,{disable:"onFieldDisable"}),this.$help=n.help?this.createHelpElement(n.help,n.$overlay):e([]),this.fieldWidget.getInputId()?(this.$label.attr("for",this.fieldWidget.getInputId()),this.helpInline&&this.$help.attr("for",this.fieldWidget.getInputId())):(this.$label.on("click",function(){this.fieldWidget.simulateLabelClick()}.bind(this)),this.helpInline&&this.$help.on("click",function(){this.fieldWidget.simulateLabelClick()}.bind(this))),this.$element.addClass("oo-ui-fieldLayout").toggleClass("oo-ui-fieldLayout-disabled",this.fieldWidget.isDisabled()).append(this.$body),this.$body.addClass("oo-ui-fieldLayout-body"),this.$header.addClass("oo-ui-fieldLayout-header"),this.$messages.addClass("oo-ui-fieldLayout-messages"),this.$field.addClass("oo-ui-fieldLayout-field").append(this.fieldWidget.$element),this.setErrors(n.errors||[]),this.setNotices(n.notices||[]),this.setAlignment(n.align),this.updateTitle()},t.inheritClass(t.ui.FieldLayout,t.ui.Layout),t.mixinClass(t.ui.FieldLayout,t.ui.mixin.LabelElement),t.mixinClass(t.ui.FieldLayout,t.ui.mixin.TitledElement),t.ui.FieldLayout.prototype.onFieldDisable=function(t){this.$element.toggleClass("oo-ui-fieldLayout-disabled",t)},t.ui.FieldLayout.prototype.getField=function(){return this.fieldWidget},t.ui.FieldLayout.prototype.isFieldInline=function(){return"span"===this.getField().$element.prop("tagName").toLowerCase()},t.ui.FieldLayout.prototype.makeMessage=function(i,n){var o,s,a;return o=e("<li>"),"error"===i?(s=new t.ui.IconWidget({icon:"alert",flags:["warning"]}).$element,o.attr("role","alert")):s="notice"===i?new t.ui.IconWidget({icon:"notice"}).$element:"",a=new t.ui.LabelWidget({label:n}),o.append(s,a.$element).addClass("oo-ui-fieldLayout-messages-"+i),o},t.ui.FieldLayout.prototype.setAlignment=function(t){return t!==this.align&&(-1===["left","right","top","inline"].indexOf(t)&&(t="left"),"inline"!==t||this.isFieldInline()||(t="top"),this.helpInline?"top"===t?(this.$header.append(this.$label),this.$body.append(this.$header,this.$field,this.$help)):"inline"===t?(this.$header.append(this.$label,this.$help),this.$body.append(this.$field,this.$header)):(this.$header.append(this.$label,this.$help),this.$body.append(this.$header,this.$field)):"top"===t?(this.$header.append(this.$help,this.$label),this.$body.append(this.$header,this.$field)):"inline"===t?(this.$header.append(this.$help,this.$label),this.$body.append(this.$field,this.$header)):(this.$header.append(this.$label),this.$body.append(this.$header,this.$help,this.$field)),this.align&&this.$element.removeClass("oo-ui-fieldLayout-align-"+this.align),this.$element.addClass("oo-ui-fieldLayout-align-"+t),this.align=t),this},t.ui.FieldLayout.prototype.setErrors=function(t){return this.errors=t.slice(),this.updateMessages(),this},t.ui.FieldLayout.prototype.setNotices=function(t){return this.notices=t.slice(),this.updateMessages(),this},t.ui.FieldLayout.prototype.updateMessages=function(){var t;if(this.$messages.empty(),this.errors.length||this.notices.length){for(this.$body.after(this.$messages),t=0;t<this.notices.length;t++)this.$messages.append(this.makeMessage("notice",this.notices[t]));for(t=0;t<this.errors.length;t++)this.$messages.append(this.makeMessage("error",this.errors[t]))}else this.$messages.remove()},t.ui.FieldLayout.prototype.formatTitleWithAccessKey=function(t){return this.fieldWidget&&this.fieldWidget.formatTitleWithAccessKey?this.fieldWidget.formatTitleWithAccessKey(t):t},t.ui.FieldLayout.prototype.createHelpElement=function(e,i){var n,o;return this.helpInline?n=(o=new t.ui.LabelWidget({label:e,classes:["oo-ui-inline-help"]})).getElementId():(o=new t.ui.PopupButtonWidget({$overlay:i,popup:{padded:!0},classes:["oo-ui-fieldLayout-help"],framed:!1,icon:"info",label:t.ui.msg("ooui-field-help"),invisibleLabel:!0}),e instanceof t.ui.HtmlSnippet?o.getPopup().$body.html(e.toString()):o.getPopup().$body.text(e),n=o.getPopup().getBodyId()),(this.fieldWidget.$input||this.fieldWidget.$button||this.fieldWidget.$element).attr("aria-describedby",n),o.$element},t.ui.ActionFieldLayout=function(i,n,o){t.isPlainObject(i)&&void 0===o&&(i=(o=i).fieldWidget,n=o.buttonWidget),t.ui.ActionFieldLayout.parent.call(this,i,o),this.buttonWidget=n,this.$button=e("<span>"),this.$input=this.isFieldInline()?e("<span>"):e("<div>"),this.$element.addClass("oo-ui-actionFieldLayout"),this.$button.addClass("oo-ui-actionFieldLayout-button").append(this.buttonWidget.$element),this.$input.addClass("oo-ui-actionFieldLayout-input").append(this.fieldWidget.$element),this.$field.append(this.$input,this.$button)},t.inheritClass(t.ui.ActionFieldLayout,t.ui.FieldLayout),t.ui.FieldsetLayout=function(i){i=i||{},t.ui.FieldsetLayout.parent.call(this,i),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.LabelElement.call(this,i),t.ui.mixin.GroupElement.call(this,i),this.$header=e("<legend>"),i.help?(this.popupButtonWidget=new t.ui.PopupButtonWidget({$overlay:i.$overlay,popup:{padded:!0},classes:["oo-ui-fieldsetLayout-help"],framed:!1,icon:"info",label:t.ui.msg("ooui-field-help"),invisibleLabel:!0}),i.help instanceof t.ui.HtmlSnippet?this.popupButtonWidget.getPopup().$body.html(i.help.toString()):this.popupButtonWidget.getPopup().$body.text(i.help),this.$help=this.popupButtonWidget.$element):this.$help=e([]),this.$header.addClass("oo-ui-fieldsetLayout-header").append(this.$icon,this.$label,this.$help),this.$group.addClass("oo-ui-fieldsetLayout-group"),this.$element.addClass("oo-ui-fieldsetLayout").prepend(this.$header,this.$group),Array.isArray(i.items)&&this.addItems(i.items)},t.inheritClass(t.ui.FieldsetLayout,t.ui.Layout),t.mixinClass(t.ui.FieldsetLayout,t.ui.mixin.IconElement),t.mixinClass(t.ui.FieldsetLayout,t.ui.mixin.LabelElement),t.mixinClass(t.ui.FieldsetLayout,t.ui.mixin.GroupElement),t.ui.FieldsetLayout.static.tagName="fieldset",t.ui.FormLayout=function(i){var n;i=i||{},t.ui.FormLayout.parent.call(this,i),t.ui.mixin.GroupElement.call(this,e.extend({},i,{$group:this.$element})),this.$element.on("submit",this.onFormSubmit.bind(this)),void 0===(n=i.action)||t.ui.isSafeUrl(n)||(n="./"+n),this.$element.addClass("oo-ui-formLayout").attr({method:i.method,action:n,enctype:i.enctype}),Array.isArray(i.items)&&this.addItems(i.items)},t.inheritClass(t.ui.FormLayout,t.ui.Layout),t.mixinClass(t.ui.FormLayout,t.ui.mixin.GroupElement),t.ui.FormLayout.static.tagName="form",t.ui.FormLayout.prototype.onFormSubmit=function(){if(this.emit("submit"))return!1},t.ui.PanelLayout=function(i){i=e.extend({scrollable:!1,padded:!1,expanded:!0,framed:!1},i),t.ui.PanelLayout.parent.call(this,i),this.$element.addClass("oo-ui-panelLayout"),i.scrollable&&this.$element.addClass("oo-ui-panelLayout-scrollable"),i.padded&&this.$element.addClass("oo-ui-panelLayout-padded"),i.expanded&&this.$element.addClass("oo-ui-panelLayout-expanded"),i.framed&&this.$element.addClass("oo-ui-panelLayout-framed")},t.inheritClass(t.ui.PanelLayout,t.ui.Layout),t.ui.PanelLayout.prototype.focus=function(){t.ui.findFocusable(this.$element).focus()},t.ui.HorizontalLayout=function(i){i=i||{},t.ui.HorizontalLayout.parent.call(this,i),t.ui.mixin.GroupElement.call(this,e.extend({},i,{$group:this.$element})),this.$element.addClass("oo-ui-horizontalLayout"),Array.isArray(i.items)&&this.addItems(i.items)},t.inheritClass(t.ui.HorizontalLayout,t.ui.Layout),t.mixinClass(t.ui.HorizontalLayout,t.ui.mixin.GroupElement),t.ui.NumberInputWidget=function(i){var n=e("<div>").addClass("oo-ui-numberInputWidget-field");i=e.extend({min:-1/0,max:1/0,showButtons:!0},i),e.extend(i,i.input),this.input=this,t.ui.NumberInputWidget.parent.call(this,e.extend(i,{type:"number"})),i.showButtons&&(this.minusButton=new t.ui.ButtonWidget(e.extend({disabled:this.isDisabled(),tabIndex:-1,classes:["oo-ui-numberInputWidget-minusButton"],icon:"subtract"},i.minusButton)),this.minusButton.$element.attr("aria-hidden","true"),this.plusButton=new t.ui.ButtonWidget(e.extend({disabled:this.isDisabled(),tabIndex:-1,classes:["oo-ui-numberInputWidget-plusButton"],icon:"add"},i.plusButton)),this.plusButton.$element.attr("aria-hidden","true")),this.$input.on({keydown:this.onKeyDown.bind(this),"wheel mousewheel DOMMouseScroll":this.onWheel.bind(this)}),i.showButtons&&(this.plusButton.connect(this,{click:["onButtonClick",1]}),this.minusButton.connect(this,{click:["onButtonClick",-1]})),n.append(this.$input),i.showButtons&&n.prepend(this.minusButton.$element).append(this.plusButton.$element),(i.allowInteger||i.isInteger)&&(i.step=1),this.setRange(i.min,i.max),this.setStep(i.buttonStep,i.pageStep,i.step),this.setValidation(this.validateNumber.bind(this)),this.$element.addClass("oo-ui-numberInputWidget").toggleClass("oo-ui-numberInputWidget-buttoned",i.showButtons).append(n)},t.inheritClass(t.ui.NumberInputWidget,t.ui.TextInputWidget),t.ui.NumberInputWidget.prototype.setAllowInteger=function(t){this.setStep(t?1:null)},t.ui.NumberInputWidget.prototype.setIsInteger=t.ui.NumberInputWidget.prototype.setAllowInteger,t.ui.NumberInputWidget.prototype.getAllowInteger=function(){return 1===this.step},t.ui.NumberInputWidget.prototype.getIsInteger=t.ui.NumberInputWidget.prototype.getAllowInteger,t.ui.NumberInputWidget.prototype.setRange=function(t,e){if(t>e)throw new Error("Minimum ("+t+") must not be greater than maximum ("+e+")");this.min=t,this.max=e,this.$input.attr("min",this.min),this.$input.attr("max",this.max),this.setValidityFlag()},t.ui.NumberInputWidget.prototype.getRange=function(){return[this.min,this.max]},t.ui.NumberInputWidget.prototype.setStep=function(t,e,i){if(void 0===t&&(t=i||1),void 0===e&&(e=10*t),null!==i&&i<=0)throw new Error("Step value, if given, must be positive");if(t<=0)throw new Error("Button step value must be positive");if(e<=0)throw new Error("Page step value must be positive");this.step=i,this.buttonStep=t,this.pageStep=e,this.$input.attr("step",this.step||"any"),this.setValidityFlag()},t.ui.NumberInputWidget.prototype.setValue=function(e){return""===e&&this.$input.val(""),t.ui.NumberInputWidget.parent.prototype.setValue.call(this,e)},t.ui.NumberInputWidget.prototype.getStep=function(){return[this.buttonStep,this.pageStep,this.step]},t.ui.NumberInputWidget.prototype.getNumericValue=function(){return+this.getValue()},t.ui.NumberInputWidget.prototype.adjustValue=function(t){var e,i=this.getNumericValue();if(t=+t,isNaN(t)||!isFinite(t))throw new Error("Delta must be a finite number");isNaN(i)?e=0:(e=i+t,e=Math.max(Math.min(e,this.max),this.min),this.step&&(e=Math.round(e/this.step)*this.step)),e!==i&&this.setValue(e)},t.ui.NumberInputWidget.prototype.validateNumber=function(t){var e=+t;return""===t?!this.isRequired():!(isNaN(e)||!isFinite(e))&&((!this.step||Math.floor(e/this.step)===e/this.step)&&!(e<this.min||e>this.max))},t.ui.NumberInputWidget.prototype.onButtonClick=function(t){this.adjustValue(t*this.buttonStep)},t.ui.NumberInputWidget.prototype.onWheel=function(t){var e=0;if(!this.isDisabled()&&this.$input.is(":focus"))return void 0!==t.originalEvent.deltaMode&&(this.sawWheelEvent=!0),t.originalEvent.deltaY?e=-t.originalEvent.deltaY:t.originalEvent.deltaX&&(e=t.originalEvent.deltaX),this.sawWheelEvent||(t.originalEvent.wheelDeltaX?e=-t.originalEvent.wheelDeltaX:t.originalEvent.wheelDeltaY?e=t.originalEvent.wheelDeltaY:t.originalEvent.wheelDelta?e=t.originalEvent.wheelDelta:t.originalEvent.detail&&(e=-t.originalEvent.detail)),e&&(e=e<0?-1:1,this.adjustValue(e*this.buttonStep)),!1},t.ui.NumberInputWidget.prototype.onKeyDown=function(e){if(!this.isDisabled())switch(e.which){case t.ui.Keys.UP:return this.adjustValue(this.buttonStep),!1;case t.ui.Keys.DOWN:return this.adjustValue(-this.buttonStep),!1;case t.ui.Keys.PAGEUP:return this.adjustValue(this.pageStep),!1;case t.ui.Keys.PAGEDOWN:return this.adjustValue(-this.pageStep),!1}},t.ui.NumberInputWidget.prototype.setDisabled=function(e){return t.ui.NumberInputWidget.parent.prototype.setDisabled.call(this,e),this.minusButton&&this.minusButton.setDisabled(this.isDisabled()),this.plusButton&&this.plusButton.setDisabled(this.isDisabled()),this}}(t),
/*!
* OOUI v0.30.0
* https://www.mediawiki.org/wiki/OOUI
*
* Copyright 2011–2018 OOUI Team and other contributors.
* Released under the MIT license
* http://oojs.mit-license.org
*
* Date: 2018-12-20T06:10:28Z
*/
function(t){"use strict";t.ui.mixin.DraggableElement=function(t){t=t||{},this.index=null,this.$handle=t.$handle||this.$element,this.wasHandleUsed=null,this.$element.addClass("oo-ui-draggableElement").on({mousedown:this.onDragMouseDown.bind(this),dragstart:this.onDragStart.bind(this),dragover:this.onDragOver.bind(this),dragend:this.onDragEnd.bind(this),drop:this.onDrop.bind(this)}),this.$handle.addClass("oo-ui-draggableElement-handle"),this.toggleDraggable(void 0===t.draggable||!!t.draggable)},t.initClass(t.ui.mixin.DraggableElement),t.ui.mixin.DraggableElement.static.cancelButtonMouseDownEvents=!1,t.ui.mixin.DraggableElement.prototype.toggleDraggable=function(t){t=void 0!==t?!!t:!this.draggable,this.draggable!==t&&(this.draggable=t,this.$handle.toggleClass("oo-ui-draggableElement-undraggable",!this.draggable),this.$element.prop("draggable",this.draggable))},t.ui.mixin.DraggableElement.prototype.isDraggable=function(){return this.draggable},t.ui.mixin.DraggableElement.prototype.onDragMouseDown=function(e){this.isDraggable()&&(this.wasHandleUsed=this.$handle[0]===this.$element[0]||t.ui.contains(this.$handle[0],e.target,!0))},t.ui.mixin.DraggableElement.prototype.onDragStart=function(t){var e=this,i=t.originalEvent.dataTransfer;if(!this.wasHandleUsed||!this.isDraggable())return!1;i.dropEffect="none",i.effectAllowed="move";try{i.setData("application-x/OOUI-draggable",this.getIndex())}catch(t){}return this.$element.addClass("oo-ui-draggableElement-clone"),setTimeout(function(){e.$element.removeClass("oo-ui-draggableElement-clone").addClass("oo-ui-draggableElement-placeholder")}),this.emit("dragstart",this),!0},t.ui.mixin.DraggableElement.prototype.onDragEnd=function(){this.$element.removeClass("oo-ui-draggableElement-placeholder"),this.emit("dragend")},t.ui.mixin.DraggableElement.prototype.onDrop=function(t){t.preventDefault(),this.emit("drop",t)},t.ui.mixin.DraggableElement.prototype.onDragOver=function(t){t.preventDefault()},t.ui.mixin.DraggableElement.prototype.setIndex=function(t){this.index!==t&&(this.index=t,this.$element.data("index",t))},t.ui.mixin.DraggableElement.prototype.getIndex=function(){return this.index},t.ui.mixin.DraggableGroupElement=function(e){e=e||{},t.ui.mixin.GroupElement.call(this,e),this.orientation=e.orientation||"vertical",this.dragItem=null,this.itemKeys={},this.dir=null,this.itemsOrder=null,this.draggable=void 0===e.draggable||!!e.draggable,this.aggregate({dragstart:"itemDragStart",dragend:"itemDragEnd",drop:"itemDrop"}),this.connect(this,{itemDragStart:"onItemDragStart",itemDrop:"onItemDropOrDragEnd",itemDragEnd:"onItemDropOrDragEnd"}),Array.isArray(e.items)&&this.addItems(e.items),this.$element.addClass("oo-ui-draggableGroupElement").toggleClass("oo-ui-draggableGroupElement-horizontal","horizontal"===this.orientation)},t.mixinClass(t.ui.mixin.DraggableGroupElement,t.ui.mixin.GroupElement),t.ui.mixin.DraggableGroupElement.prototype.toggleDraggable=function(t){t=void 0!==t?!!t:!this.draggable,this.draggable!==t&&(this.draggable=t,this.getItems().forEach(function(t){t.toggleDraggable(this.draggable)}.bind(this)),this.emit("draggable",this.draggable))},t.ui.mixin.DraggableGroupElement.prototype.isDraggable=function(){return this.draggable},t.ui.mixin.DraggableGroupElement.prototype.onItemDragStart=function(t){this.isDraggable()&&(this.itemsOrder=this.items.slice(),this.updateIndexes(),"horizontal"===this.orientation&&(this.dir=this.$element.css("direction")),this.setDragItem(t))},t.ui.mixin.DraggableGroupElement.prototype.updateIndexes=function(){var t,e;for(t=0,e=this.itemsOrder.length;t<e;t++)this.itemsOrder[t].setIndex(t)},t.ui.mixin.DraggableGroupElement.prototype.onItemDropOrDragEnd=function(){var t,e,i=this.getDragItem();return i&&(e=this.items.indexOf(i),(t=i.getIndex()+(i.getIndex()>e?1:0))!==e&&(this.reorder(this.getDragItem(),t),this.emit("reorder",this.getDragItem(),t)),this.updateIndexes()),this.unsetDragItem(),!1},t.ui.mixin.DraggableGroupElement.prototype.onDragOver=function(t){var i,n,o=this.getDragItem(),s=o.getIndex();void 0!==(i=e(t.target).closest(".oo-ui-draggableElement").data("index"))&&i!==s&&((n=i+(i>s?1:0))>0?this.$group.children().eq(n-1).after(o.$element):this.$group.prepend(o.$element),this.itemsOrder.splice(i,0,this.itemsOrder.splice(s,1)[0]),this.updateIndexes(),this.emit("drag",o,n)),t.preventDefault()},t.ui.mixin.DraggableGroupElement.prototype.reorder=function(t,e){this.addItems([t],e)},t.ui.mixin.DraggableGroupElement.prototype.setDragItem=function(t){this.dragItem!==t&&(this.dragItem=t,this.$element.on("dragover",this.onDragOver.bind(this)),this.$element.addClass("oo-ui-draggableGroupElement-dragging"))},t.ui.mixin.DraggableGroupElement.prototype.unsetDragItem=function(){this.dragItem&&(this.dragItem=null,this.$element.off("dragover"),this.$element.removeClass("oo-ui-draggableGroupElement-dragging"))},t.ui.mixin.DraggableGroupElement.prototype.getDragItem=function(){return this.dragItem},t.ui.mixin.RequestManager=function(){this.requestCache={},this.requestQuery=null,this.requestRequest=null},t.initClass(t.ui.mixin.RequestManager),t.ui.mixin.RequestManager.prototype.getRequestData=function(){var t,i=this,n=this.getRequestQuery(),o=e.Deferred();return this.abortRequest(),Object.prototype.hasOwnProperty.call(this.requestCache,n)?o.resolve(this.requestCache[n]):(this.pushPending&&this.pushPending(),this.requestQuery=n,(t=this.requestRequest=this.getRequest()).always(function(){i.popPending&&i.popPending()}).done(function(e){t===i.requestRequest&&(i.requestQuery=null,i.requestRequest=null,i.requestCache[n]=i.getRequestCacheDataFromResponse(e),o.resolve(i.requestCache[n]))}).fail(function(){t===i.requestRequest&&(i.requestQuery=null,i.requestRequest=null,o.reject())})),o.promise()},t.ui.mixin.RequestManager.prototype.abortRequest=function(){var t=this.requestRequest;t&&(this.requestRequest=null,this.requestQuery=null,t.abort())},t.ui.mixin.RequestManager.prototype.getRequestQuery=null,t.ui.mixin.RequestManager.prototype.getRequest=null,t.ui.mixin.RequestManager.prototype.getRequestCacheDataFromResponse=null,t.ui.mixin.LookupElement=function(i){i=e.extend({highlightFirst:!0},i),t.ui.mixin.RequestManager.call(this,i),this.$overlay=(!0===i.$overlay?t.ui.getDefaultOverlay():i.$overlay)||this.$element,this.lookupMenu=new t.ui.MenuSelectWidget(e.extend({widget:this,input:this,$floatableContainer:i.$container||this.$element},i.menu)),this.allowSuggestionsWhenEmpty=i.allowSuggestionsWhenEmpty||!1,this.lookupsDisabled=!1,this.lookupInputFocused=!1,this.lookupHighlightFirstItem=i.highlightFirst,this.$input.on({focus:this.onLookupInputFocus.bind(this),blur:this.onLookupInputBlur.bind(this),mousedown:this.onLookupInputMouseDown.bind(this)}),this.connect(this,{change:"onLookupInputChange"}),this.lookupMenu.connect(this,{toggle:"onLookupMenuToggle",choose:"onLookupMenuItemChoose"}),this.$input.attr({role:"combobox","aria-expanded":"false","aria-owns":this.lookupMenu.getElementId(),"aria-autocomplete":"list"}),this.$element.addClass("oo-ui-lookupElement"),this.lookupMenu.$element.addClass("oo-ui-lookupElement-menu"),this.$overlay.append(this.lookupMenu.$element)},t.mixinClass(t.ui.mixin.LookupElement,t.ui.mixin.RequestManager),t.ui.mixin.LookupElement.prototype.onLookupInputFocus=function(){this.lookupInputFocused=!0,this.populateLookupMenu()},t.ui.mixin.LookupElement.prototype.onLookupInputBlur=function(){this.closeLookupMenu(),this.lookupInputFocused=!1},t.ui.mixin.LookupElement.prototype.onLookupInputMouseDown=function(){this.lookupInputFocused&&!this.lookupMenu.isVisible()&&this.populateLookupMenu()},t.ui.mixin.LookupElement.prototype.onLookupInputChange=function(){this.lookupInputFocused&&this.populateLookupMenu()},t.ui.mixin.LookupElement.prototype.onLookupMenuToggle=function(t){t||(this.abortLookupRequest(),this.lookupMenu.clearItems())},t.ui.mixin.LookupElement.prototype.onLookupMenuItemChoose=function(t){this.setValue(t.getData())},t.ui.mixin.LookupElement.prototype.getLookupMenu=function(){return this.lookupMenu},t.ui.mixin.LookupElement.prototype.setLookupsDisabled=function(t){this.lookupsDisabled=!!t},t.ui.mixin.LookupElement.prototype.openLookupMenu=function(){return this.lookupMenu.isEmpty()||this.lookupMenu.toggle(!0),this},t.ui.mixin.LookupElement.prototype.closeLookupMenu=function(){return this.lookupMenu.toggle(!1),this.abortLookupRequest(),this.lookupMenu.clearItems(),this},t.ui.mixin.LookupElement.prototype.populateLookupMenu=function(){var t=this,e=this.getValue();if(!this.lookupsDisabled&&!this.isReadOnly())return this.allowSuggestionsWhenEmpty||""!==e?e!==this.lookupQuery&&this.getLookupMenuItems().done(function(e){t.lookupMenu.clearItems(),e.length?(t.lookupMenu.addItems(e).toggle(!0),t.initializeLookupMenuSelection()):t.lookupMenu.toggle(!1)}).fail(function(){t.lookupMenu.clearItems(),t.lookupMenu.toggle(!1)}):this.closeLookupMenu(),this},t.ui.mixin.LookupElement.prototype.initializeLookupMenuSelection=function(){this.lookupHighlightFirstItem&&!this.lookupMenu.findSelectedItem()&&this.lookupMenu.highlightItem(this.lookupMenu.findFirstSelectableItem())},t.ui.mixin.LookupElement.prototype.getLookupMenuItems=function(){return this.getRequestData().then(function(t){return this.getLookupMenuOptionsFromData(t)}.bind(this))},t.ui.mixin.LookupElement.prototype.abortLookupRequest=function(){this.abortRequest()},t.ui.mixin.LookupElement.prototype.getLookupRequest=null,t.ui.mixin.LookupElement.prototype.getLookupCacheDataFromResponse=null,t.ui.mixin.LookupElement.prototype.getLookupMenuOptionsFromData=null,t.ui.mixin.LookupElement.prototype.setReadOnly=function(e){return t.ui.TextInputWidget.prototype.setReadOnly.call(this,e),this.isReadOnly()&&this.lookupMenu&&this.closeLookupMenu(),this},t.ui.mixin.LookupElement.prototype.getRequestQuery=function(){return this.getValue()},t.ui.mixin.LookupElement.prototype.getRequest=function(){return this.getLookupRequest()},t.ui.mixin.LookupElement.prototype.getRequestCacheDataFromResponse=function(t){return this.getLookupCacheDataFromResponse(t)},t.ui.TabPanelLayout=function(i,n){t.isPlainObject(i)&&void 0===n&&(i=(n=i).name),n=e.extend({scrollable:!0},n),t.ui.TabPanelLayout.parent.call(this,n),this.name=i,this.label=n.label,this.tabItem=null,this.active=!1,this.$element.addClass("oo-ui-tabPanelLayout").attr("role","tabpanel")},t.inheritClass(t.ui.TabPanelLayout,t.ui.PanelLayout),t.ui.TabPanelLayout.prototype.getName=function(){return this.name},t.ui.TabPanelLayout.prototype.isActive=function(){return this.active},t.ui.TabPanelLayout.prototype.getTabItem=function(){return this.tabItem},t.ui.TabPanelLayout.prototype.setTabItem=function(t){return this.tabItem=t||null,t&&this.setupTabItem(),this},t.ui.TabPanelLayout.prototype.setupTabItem=function(){return this.$element.attr("aria-labelledby",this.tabItem.getElementId()),this.tabItem.$element.attr("aria-controls",this.getElementId()),this.label&&this.tabItem.setLabel(this.label),this},t.ui.TabPanelLayout.prototype.setActive=function(t){(t=!!t)!==this.active&&(this.active=t,this.$element.toggleClass("oo-ui-tabPanelLayout-active",this.active),this.emit("active",this.active))},t.ui.PageLayout=function(i,n){t.isPlainObject(i)&&void 0===n&&(i=(n=i).name),n=e.extend({scrollable:!0},n),t.ui.PageLayout.parent.call(this,n),this.name=i,this.outlineItem=null,this.active=!1,this.$element.addClass("oo-ui-pageLayout")},t.inheritClass(t.ui.PageLayout,t.ui.PanelLayout),t.ui.PageLayout.prototype.getName=function(){return this.name},t.ui.PageLayout.prototype.isActive=function(){return this.active},t.ui.PageLayout.prototype.getOutlineItem=function(){return this.outlineItem},t.ui.PageLayout.prototype.setOutlineItem=function(t){return this.outlineItem=t||null,t&&this.setupOutlineItem(),this},t.ui.PageLayout.prototype.setupOutlineItem=function(){return this},t.ui.PageLayout.prototype.setActive=function(t){(t=!!t)!==this.active&&(this.active=t,this.$element.toggleClass("oo-ui-pageLayout-active",t),this.emit("active",this.active))},t.ui.StackLayout=function(i){i=e.extend({scrollable:!(!i||!i.continuous)},i),t.ui.StackLayout.parent.call(this,i),t.ui.mixin.GroupElement.call(this,e.extend({},i,{$group:this.$element})),this.currentItem=null,this.continuous=!!i.continuous,this.$element.addClass("oo-ui-stackLayout"),this.continuous&&(this.$element.addClass("oo-ui-stackLayout-continuous"),this.$element.on("scroll",t.ui.debounce(this.onScroll.bind(this),250))),Array.isArray(i.items)&&this.addItems(i.items)},t.inheritClass(t.ui.StackLayout,t.ui.PanelLayout),t.mixinClass(t.ui.StackLayout,t.ui.mixin.GroupElement),t.ui.StackLayout.prototype.onScroll=function(){var t,e=this.items.length,i=this.items.indexOf(this.currentItem),n=i,o=this.$element[0].getBoundingClientRect();if(o&&(o.top||o.bottom)){if((t=s(this.currentItem)).bottom<o.top)for(;++n<e&&!a(this.items[n]););else if(t.top>o.bottom)for(;--n>=0&&!a(this.items[n]););n!==i&&this.emit("visibleItemChange",this.items[n])}function s(t){return t.$element[0].getBoundingClientRect()}function a(t){var e=s(t);return e.bottom>o.top&&e.top<o.bottom}},t.ui.StackLayout.prototype.getCurrentItem=function(){return this.currentItem},t.ui.StackLayout.prototype.unsetCurrentItem=function(){null!==this.currentItem&&(this.currentItem=null,this.emit("set",null))},t.ui.StackLayout.prototype.addItems=function(e,i){return this.updateHiddenState(e,this.currentItem),t.ui.mixin.GroupElement.prototype.addItems.call(this,e,i),!this.currentItem&&e.length&&this.setItem(e[0]),this},t.ui.StackLayout.prototype.removeItems=function(e){return t.ui.mixin.GroupElement.prototype.removeItems.call(this,e),-1!==e.indexOf(this.currentItem)&&(this.items.length?this.setItem(this.items[0]):this.unsetCurrentItem()),this},t.ui.StackLayout.prototype.clearItems=function(){return this.unsetCurrentItem(),t.ui.mixin.GroupElement.prototype.clearItems.call(this),this},t.ui.StackLayout.prototype.setItem=function(t){return t!==this.currentItem&&(this.updateHiddenState(this.items,t),-1!==this.items.indexOf(t)?(this.currentItem=t,this.emit("set",t)):this.unsetCurrentItem()),this},t.ui.StackLayout.prototype.resetScroll=function(){return this.continuous?t.ui.StackLayout.parent.prototype.resetScroll.call(this):(this.getItems().forEach(function(t){var e=t.$element.hasClass("oo-ui-element-hidden");t.$element.removeClass("oo-ui-element-hidden"),t.resetScroll(),e&&t.$element.addClass("oo-ui-element-hidden")}),this)},t.ui.StackLayout.prototype.updateHiddenState=function(t,e){var i,n;if(!this.continuous){for(i=0,n=t.length;i<n;i++)e&&e===t[i]||(t[i].$element.addClass("oo-ui-element-hidden"),t[i].$element.attr("aria-hidden","true"));e&&(e.$element.removeClass("oo-ui-element-hidden"),e.$element.removeAttr("aria-hidden"))}},t.ui.MenuLayout=function(i){i=e.extend({expanded:!0,showMenu:!0,menuPosition:"before"},i),t.ui.MenuLayout.parent.call(this,i),this.menuPanel=null,this.contentPanel=null,this.expanded=!!i.expanded,this.$menu=e("<div>"),this.$content=e("<div>"),this.$menu.addClass("oo-ui-menuLayout-menu"),this.$content.addClass("oo-ui-menuLayout-content"),this.$element.addClass("oo-ui-menuLayout"),i.expanded?this.$element.addClass("oo-ui-menuLayout-expanded"):this.$element.addClass("oo-ui-menuLayout-static"),i.menuPanel&&this.setMenuPanel(i.menuPanel),i.contentPanel&&this.setContentPanel(i.contentPanel),this.setMenuPosition(i.menuPosition),this.toggleMenu(i.showMenu)},t.inheritClass(t.ui.MenuLayout,t.ui.Layout),t.ui.MenuLayout.prototype.toggleMenu=function(t){return t=void 0===t?!this.showMenu:!!t,this.showMenu!==t&&(this.showMenu=t,this.$element.toggleClass("oo-ui-menuLayout-showMenu",this.showMenu).toggleClass("oo-ui-menuLayout-hideMenu",!this.showMenu),this.$menu.attr("aria-hidden",this.showMenu?"false":"true")),this},t.ui.MenuLayout.prototype.isMenuVisible=function(){return this.showMenu},t.ui.MenuLayout.prototype.setMenuPosition=function(t){return this.$element.removeClass("oo-ui-menuLayout-"+this.menuPosition),this.menuPosition=t,"top"===this.menuPosition||"before"===this.menuPosition?this.$element.append(this.$menu,this.$content):this.$element.append(this.$content,this.$menu),this.$element.addClass("oo-ui-menuLayout-"+t),this},t.ui.MenuLayout.prototype.getMenuPosition=function(){return this.menuPosition},t.ui.MenuLayout.prototype.setMenuPanel=function(t){this.menuPanel=t,this.$menu.append(this.menuPanel.$element)},t.ui.MenuLayout.prototype.setContentPanel=function(t){this.contentPanel=t,this.$content.append(this.contentPanel.$element)},t.ui.MenuLayout.prototype.clearMenuPanel=function(){this.menuPanel=null,this.$menu.empty()},t.ui.MenuLayout.prototype.clearContentPanel=function(){this.contentPanel=null,this.$content.empty()},t.ui.MenuLayout.prototype.resetScroll=function(){return this.menuPanel&&this.menuPanel.resetScroll(),this.contentPanel&&this.contentPanel.resetScroll(),this},t.ui.BookletLayout=function(e){e=e||{},t.ui.BookletLayout.parent.call(this,e),this.currentPageName=null,this.pages={},this.ignoreFocus=!1,this.stackLayout=new t.ui.StackLayout({continuous:!!e.continuous,expanded:this.expanded}),this.setContentPanel(this.stackLayout),this.autoFocus=void 0===e.autoFocus||!!e.autoFocus,this.outlineVisible=!1,this.outlined=!!e.outlined,this.outlined&&(this.editable=!!e.editable,this.outlineControlsWidget=null,this.outlineSelectWidget=new t.ui.OutlineSelectWidget,this.outlinePanel=new t.ui.PanelLayout({expanded:this.expanded,scrollable:!0}),this.setMenuPanel(this.outlinePanel),this.outlineVisible=!0,this.editable&&(this.outlineControlsWidget=new t.ui.OutlineControlsWidget(this.outlineSelectWidget))),this.toggleMenu(this.outlined),this.stackLayout.connect(this,{set:"onStackLayoutSet"}),this.outlined&&(this.outlineSelectWidget.connect(this,{select:"onOutlineSelectWidgetSelect"}),this.scrolling=!1,this.stackLayout.connect(this,{visibleItemChange:"onStackLayoutVisibleItemChange"})),this.autoFocus&&this.stackLayout.$element.on("focusin",this.onStackLayoutFocus.bind(this)),this.$element.addClass("oo-ui-bookletLayout"),this.stackLayout.$element.addClass("oo-ui-bookletLayout-stackLayout"),this.outlined&&(this.outlinePanel.$element.addClass("oo-ui-bookletLayout-outlinePanel").append(this.outlineSelectWidget.$element),this.editable&&this.outlinePanel.$element.addClass("oo-ui-bookletLayout-outlinePanel-editable").append(this.outlineControlsWidget.$element))},t.inheritClass(t.ui.BookletLayout,t.ui.MenuLayout),t.ui.BookletLayout.prototype.onStackLayoutFocus=function(t){var i,n;for(i in n=e(t.target).closest(".oo-ui-pageLayout"),this.pages)if(this.pages[i].$element[0]===n[0]&&i!==this.currentPageName){this.setPage(i);break}},t.ui.BookletLayout.prototype.onStackLayoutVisibleItemChange=function(t){this.scrolling=!0,this.outlineSelectWidget.selectItemByData(t.getName()),this.scrolling=!1},t.ui.BookletLayout.prototype.onStackLayoutSet=function(i){var n,o=this;i&&(n=this.stackLayout.continuous&&!this.scrolling?i.scrollElementIntoView():e.Deferred().resolve(),!this.autoFocus||t.ui.isMobile()||this.scrolling||n.done(function(){o.focus()}))},t.ui.BookletLayout.prototype.focus=function(e){var i,n=this.stackLayout.getItems();!(i=void 0!==e&&n[e]?n[e]:this.stackLayout.getCurrentItem())&&this.outlined&&(this.selectFirstSelectablePage(),i=this.stackLayout.getCurrentItem()),i&&(t.ui.contains(i.$element[0],this.getElementDocument().activeElement,!0)||i.focus())},t.ui.BookletLayout.prototype.focusFirstFocusable=function(){t.ui.findFocusable(this.stackLayout.$element).focus()},t.ui.BookletLayout.prototype.onOutlineSelectWidgetSelect=function(t){t&&this.setPage(t.getData())},t.ui.BookletLayout.prototype.isOutlined=function(){return this.outlined},t.ui.BookletLayout.prototype.isEditable=function(){return this.editable},t.ui.BookletLayout.prototype.isOutlineVisible=function(){return this.outlined&&this.outlineVisible},t.ui.BookletLayout.prototype.toggleOutline=function(e){var i=this;return this.outlined&&(e=void 0===e?!this.outlineVisible:!!e,this.outlineVisible=e,this.toggleMenu(e),e&&this.editable&&setTimeout(function(){t.ui.Element.static.reconsiderScrollbars(i.outlinePanel.$element[0])},t.ui.theme.getDialogTransitionDuration())),this},t.ui.BookletLayout.prototype.findClosestPage=function(t){var e,i,n,o=this.stackLayout.getItems(),s=o.indexOf(t);if(-1!==s&&(e=o[s+1],i=o[s-1],this.outlined)){if(n=this.outlineSelectWidget.findItemFromData(t.getName()).getLevel(),i&&n===this.outlineSelectWidget.findItemFromData(i.getName()).getLevel())return i;if(e&&n===this.outlineSelectWidget.findItemFromData(e.getName()).getLevel())return e}return i||e||null},t.ui.BookletLayout.prototype.getOutline=function(){return this.outlineSelectWidget},t.ui.BookletLayout.prototype.getOutlineControls=function(){return this.outlineControlsWidget},t.ui.BookletLayout.prototype.getPage=function(t){return this.pages[t]},t.ui.BookletLayout.prototype.getCurrentPage=function(){var t=this.getCurrentPageName();return t?this.getPage(t):void 0},t.ui.BookletLayout.prototype.getCurrentPageName=function(){return this.currentPageName},t.ui.BookletLayout.prototype.addPages=function(e,i){var n,o,s,a,r,l,u=this.stackLayout.getItems(),c=[],h=[];for(n=0,o=e.length;n<o;n++)s=(a=e[n]).getName(),Object.prototype.hasOwnProperty.call(this.pages,s)&&(-1!==(l=u.indexOf(this.pages[s]))&&l+1<i&&i--,c.push(this.pages[s]));for(c.length&&this.removePages(c),n=0,o=e.length;n<o;n++)s=(a=e[n]).getName(),this.pages[a.getName()]=a,this.outlined&&(r=new t.ui.OutlineOptionWidget({data:s}),a.setOutlineItem(r),h.push(r));return this.outlined&&h.length&&(this.outlineSelectWidget.addItems(h,i),this.selectFirstSelectablePage()),this.stackLayout.addItems(e,i),this.emit("add",e,i),this},t.ui.BookletLayout.prototype.removePages=function(t){var e,i,n,o,s=[];for(e=0,i=t.length;e<i;e++)n=(o=t[e]).getName(),delete this.pages[n],this.outlined&&(s.push(this.outlineSelectWidget.findItemFromData(n)),o.setOutlineItem(null));return this.outlined&&s.length&&(this.outlineSelectWidget.removeItems(s),this.selectFirstSelectablePage()),this.stackLayout.removeItems(t),this.emit("remove",t),this},t.ui.BookletLayout.prototype.clearPages=function(){var t,e,i=this.stackLayout.getItems();if(this.pages={},this.currentPageName=null,this.outlined)for(this.outlineSelectWidget.clearItems(),t=0,e=i.length;t<e;t++)i[t].setOutlineItem(null);return this.stackLayout.clearItems(),this.emit("remove",i),this},t.ui.BookletLayout.prototype.setPage=function(e){var i,n,o=this.pages[e],s=this.currentPageName&&this.pages[this.currentPageName];e!==this.currentPageName&&(this.outlined&&(i=this.outlineSelectWidget.findSelectedItem())&&i.getData()!==e&&this.outlineSelectWidget.selectItemByData(e),o&&(s&&(s.setActive(!1),this.autoFocus&&!t.ui.isMobile()&&this.stackLayout.continuous&&0!==t.ui.findFocusable(o.$element).length&&(n=s.$element.find(":focus")).length&&n[0].blur()),this.currentPageName=e,o.setActive(!0),this.stackLayout.setItem(o),!this.stackLayout.continuous&&s&&(n=s.$element.find(":focus")).length&&n[0].blur(),this.emit("set",o)))},t.ui.BookletLayout.prototype.resetScroll=function(){return t.ui.BookletLayout.parent.prototype.resetScroll.call(this),this.outlined&&this.stackLayout.continuous&&this.outlineSelectWidget.findFirstSelectableItem()&&(this.scrolling=!0,this.outlineSelectWidget.selectItem(this.outlineSelectWidget.findFirstSelectableItem()),this.scrolling=!1),this},t.ui.BookletLayout.prototype.selectFirstSelectablePage=function(){return this.outlineSelectWidget.findSelectedItem()||this.outlineSelectWidget.selectItem(this.outlineSelectWidget.findFirstSelectableItem()),this},t.ui.IndexLayout=function(i){i=e.extend({},i,{menuPosition:"top"}),t.ui.IndexLayout.parent.call(this,i),this.currentTabPanelName=null,this.tabPanels={},this.ignoreFocus=!1,this.stackLayout=new t.ui.StackLayout({continuous:!!i.continuous,expanded:this.expanded}),this.setContentPanel(this.stackLayout),this.autoFocus=void 0===i.autoFocus||!!i.autoFocus,this.tabSelectWidget=new t.ui.TabSelectWidget,this.tabPanel=new t.ui.PanelLayout({expanded:this.expanded}),this.setMenuPanel(this.tabPanel),this.toggleMenu(!0),this.stackLayout.connect(this,{set:"onStackLayoutSet"}),this.tabSelectWidget.connect(this,{select:"onTabSelectWidgetSelect"}),this.autoFocus&&this.stackLayout.$element.on("focusin",this.onStackLayoutFocus.bind(this)),this.$element.addClass("oo-ui-indexLayout"),this.stackLayout.$element.addClass("oo-ui-indexLayout-stackLayout"),this.tabPanel.$element.addClass("oo-ui-indexLayout-tabPanel").append(this.tabSelectWidget.$element)},t.inheritClass(t.ui.IndexLayout,t.ui.MenuLayout),t.ui.IndexLayout.prototype.onStackLayoutFocus=function(t){var i,n;for(i in n=e(t.target).closest(".oo-ui-tabPanelLayout"),this.tabPanels)if(this.tabPanels[i].$element[0]===n[0]&&i!==this.currentTabPanelName){this.setTabPanel(i);break}},t.ui.IndexLayout.prototype.onStackLayoutSet=function(e){e&&this.autoFocus&&!t.ui.isMobile()&&this.focus()},t.ui.IndexLayout.prototype.focus=function(e){var i,n=this.stackLayout.getItems();(i=void 0!==e&&n[e]?n[e]:this.stackLayout.getCurrentItem())||(this.selectFirstSelectableTabPanel(),i=this.stackLayout.getCurrentItem()),i&&(t.ui.contains(i.$element[0],this.getElementDocument().activeElement,!0)||i.focus())},t.ui.IndexLayout.prototype.focusFirstFocusable=function(){t.ui.findFocusable(this.stackLayout.$element).focus()},t.ui.IndexLayout.prototype.onTabSelectWidgetSelect=function(t){t&&this.setTabPanel(t.getData())},t.ui.IndexLayout.prototype.getClosestTabPanel=function(t){var e,i,n,o=this.stackLayout.getItems(),s=o.indexOf(t);if(-1!==s){if(e=o[s+1],i=o[s-1],n=this.tabSelectWidget.findItemFromData(t.getName()).getLevel(),i&&n===this.tabSelectWidget.findItemFromData(i.getName()).getLevel())return i;if(e&&n===this.tabSelectWidget.findItemFromData(e.getName()).getLevel())return e}return i||e||null},t.ui.IndexLayout.prototype.getTabs=function(){return this.tabSelectWidget},t.ui.IndexLayout.prototype.getTabPanel=function(t){return this.tabPanels[t]},t.ui.IndexLayout.prototype.getCurrentTabPanel=function(){var t=this.getCurrentTabPanelName();return t?this.getTabPanel(t):void 0},t.ui.IndexLayout.prototype.getCurrentTabPanelName=function(){return this.currentTabPanelName},t.ui.IndexLayout.prototype.addTabPanels=function(e,i){var n,o,s,a,r,l,u=this.stackLayout.getItems(),c=[],h=[];for(n=0,o=e.length;n<o;n++)s=(a=e[n]).getName(),Object.prototype.hasOwnProperty.call(this.tabPanels,s)&&(-1!==(l=u.indexOf(this.tabPanels[s]))&&l+1<i&&i--,c.push(this.tabPanels[s]));for(c.length&&this.removeTabPanels(c),n=0,o=e.length;n<o;n++)s=(a=e[n]).getName(),this.tabPanels[a.getName()]=a,r=new t.ui.TabOptionWidget({data:s}),a.setTabItem(r),h.push(r);return h.length&&(this.tabSelectWidget.addItems(h,i),this.selectFirstSelectableTabPanel()),this.stackLayout.addItems(e,i),this.emit("add",e,i),this},t.ui.IndexLayout.prototype.removeTabPanels=function(t){var e,i,n,o,s=[];for(e=0,i=t.length;e<i;e++)n=(o=t[e]).getName(),delete this.tabPanels[n],s.push(this.tabSelectWidget.findItemFromData(n)),o.setTabItem(null);return s.length&&(this.tabSelectWidget.removeItems(s),this.selectFirstSelectableTabPanel()),this.stackLayout.removeItems(t),this.emit("remove",t),this},t.ui.IndexLayout.prototype.clearTabPanels=function(){var t,e,i=this.stackLayout.getItems();for(this.tabPanels={},this.currentTabPanelName=null,this.tabSelectWidget.clearItems(),t=0,e=i.length;t<e;t++)i[t].setTabItem(null);return this.stackLayout.clearItems(),this.emit("remove",i),this},t.ui.IndexLayout.prototype.setTabPanel=function(e){var i,n,o,s=this.tabPanels[e];e!==this.currentTabPanelName&&(o=this.getCurrentTabPanel(),(i=this.tabSelectWidget.findSelectedItem())&&i.getData()!==e&&this.tabSelectWidget.selectItemByData(e),s&&(o&&(o.setActive(!1),this.autoFocus&&!t.ui.isMobile()&&this.stackLayout.continuous&&0!==t.ui.findFocusable(s.$element).length&&(n=o.$element.find(":focus")).length&&n[0].blur()),this.currentTabPanelName=e,s.setActive(!0),this.stackLayout.setItem(s),!this.stackLayout.continuous&&o&&(n=o.$element.find(":focus")).length&&n[0].blur(),this.emit("set",s)))},t.ui.IndexLayout.prototype.selectFirstSelectableTabPanel=function(){return this.tabSelectWidget.findSelectedItem()||this.tabSelectWidget.selectItem(this.tabSelectWidget.findFirstSelectableItem()),this},t.ui.ToggleWidget=function(e){e=e||{},t.ui.ToggleWidget.parent.call(this,e),this.value=null,this.$element.addClass("oo-ui-toggleWidget"),this.setValue(!!e.value)},t.inheritClass(t.ui.ToggleWidget,t.ui.Widget),t.ui.ToggleWidget.prototype.getValue=function(){return this.value},t.ui.ToggleWidget.prototype.setValue=function(t){return t=!!t,this.value!==t&&(this.value=t,this.emit("change",t),this.$element.toggleClass("oo-ui-toggleWidget-on",t),this.$element.toggleClass("oo-ui-toggleWidget-off",!t)),this},t.ui.ToggleButtonWidget=function(i){i=i||{},t.ui.ToggleButtonWidget.parent.call(this,i),t.ui.mixin.ButtonElement.call(this,e.extend({},i,{active:this.active})),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.LabelElement.call(this,i),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$button})),t.ui.mixin.FlaggedElement.call(this,i),t.ui.mixin.TabIndexedElement.call(this,e.extend({},i,{$tabIndexed:this.$button})),this.connect(this,{click:"onAction"}),this.$button.append(this.$icon,this.$label,this.$indicator),this.$element.addClass("oo-ui-toggleButtonWidget").append(this.$button)},t.inheritClass(t.ui.ToggleButtonWidget,t.ui.ToggleWidget),t.mixinClass(t.ui.ToggleButtonWidget,t.ui.mixin.ButtonElement),t.mixinClass(t.ui.ToggleButtonWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.ToggleButtonWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.ToggleButtonWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.ToggleButtonWidget,t.ui.mixin.TitledElement),t.mixinClass(t.ui.ToggleButtonWidget,t.ui.mixin.FlaggedElement),t.mixinClass(t.ui.ToggleButtonWidget,t.ui.mixin.TabIndexedElement),t.ui.ToggleButtonWidget.static.tagName="span",t.ui.ToggleButtonWidget.prototype.onAction=function(){this.setValue(!this.value)},t.ui.ToggleButtonWidget.prototype.setValue=function(e){return(e=!!e)!==this.value&&(this.$button&&this.$button.attr("aria-pressed",e.toString()),this.setActive(e)),t.ui.ToggleButtonWidget.parent.prototype.setValue.call(this,e),this},t.ui.ToggleButtonWidget.prototype.setButtonElement=function(e){this.$button&&this.$button.removeAttr("aria-pressed"),t.ui.mixin.ButtonElement.prototype.setButtonElement.call(this,e),this.$button.attr("aria-pressed",this.value.toString())},t.ui.ToggleSwitchWidget=function(i){t.ui.ToggleSwitchWidget.parent.call(this,i),t.ui.mixin.TabIndexedElement.call(this,i),this.dragging=!1,this.dragStart=null,this.sliding=!1,this.$glow=e("<span>"),this.$grip=e("<span>"),this.$element.on({click:this.onClick.bind(this),keypress:this.onKeyPress.bind(this)}),this.$glow.addClass("oo-ui-toggleSwitchWidget-glow"),this.$grip.addClass("oo-ui-toggleSwitchWidget-grip"),this.$element.addClass("oo-ui-toggleSwitchWidget").attr("role","checkbox").append(this.$glow,this.$grip)},t.inheritClass(t.ui.ToggleSwitchWidget,t.ui.ToggleWidget),t.mixinClass(t.ui.ToggleSwitchWidget,t.ui.mixin.TabIndexedElement),t.ui.ToggleSwitchWidget.prototype.onClick=function(e){return this.isDisabled()||e.which!==t.ui.MouseButtons.LEFT||this.setValue(!this.value),!1},t.ui.ToggleSwitchWidget.prototype.onKeyPress=function(e){if(!this.isDisabled()&&(e.which===t.ui.Keys.SPACE||e.which===t.ui.Keys.ENTER))return this.setValue(!this.value),!1},t.ui.ToggleSwitchWidget.prototype.setValue=function(e){return t.ui.ToggleSwitchWidget.parent.prototype.setValue.call(this,e),this.$element.attr("aria-checked",this.value.toString()),this},t.ui.ToggleSwitchWidget.prototype.simulateLabelClick=function(){this.isDisabled()||this.setValue(!this.value),this.focus()},t.ui.OutlineControlsWidget=function(i,n){t.isPlainObject(i)&&void 0===n&&(i=(n=i).outline),n=n||{},t.ui.OutlineControlsWidget.parent.call(this,n),t.ui.mixin.GroupElement.call(this,n),this.outline=i,this.$movers=e("<div>"),this.upButton=new t.ui.ButtonWidget({framed:!1,icon:"collapse",title:t.ui.msg("ooui-outline-control-move-up")}),this.downButton=new t.ui.ButtonWidget({framed:!1,icon:"expand",title:t.ui.msg("ooui-outline-control-move-down")}),this.removeButton=new t.ui.ButtonWidget({framed:!1,icon:"trash",title:t.ui.msg("ooui-outline-control-remove")}),this.abilities={move:!0,remove:!0},i.connect(this,{select:"onOutlineChange",add:"onOutlineChange",remove:"onOutlineChange"}),this.upButton.connect(this,{click:["emit","move",-1]}),this.downButton.connect(this,{click:["emit","move",1]}),this.removeButton.connect(this,{click:["emit","remove"]}),this.$element.addClass("oo-ui-outlineControlsWidget"),this.$group.addClass("oo-ui-outlineControlsWidget-items"),this.$movers.addClass("oo-ui-outlineControlsWidget-movers").append(this.removeButton.$element,this.upButton.$element,this.downButton.$element),this.$element.append(this.$icon,this.$group,this.$movers),this.setAbilities(n.abilities||{})},t.inheritClass(t.ui.OutlineControlsWidget,t.ui.Widget),t.mixinClass(t.ui.OutlineControlsWidget,t.ui.mixin.GroupElement),t.ui.OutlineControlsWidget.prototype.setAbilities=function(t){var e;for(e in this.abilities)void 0!==t[e]&&(this.abilities[e]=!!t[e]);this.onOutlineChange()},t.ui.OutlineControlsWidget.prototype.onOutlineChange=function(){var t,e,i,n,o=this.outline.getItems(),s=this.outline.findSelectedItem(),a=this.abilities.move&&s&&s.isMovable(),r=this.abilities.remove&&s&&s.isRemovable();if(a){for(t=-1,e=o.length;++t<e;)if(o[t].isMovable()){i=o[t];break}for(t=e;t--;)if(o[t].isMovable()){n=o[t];break}}this.upButton.setDisabled(!a||s===i),this.downButton.setDisabled(!a||s===n),this.removeButton.setDisabled(!r)},t.ui.OutlineOptionWidget=function(e){e=e||{},t.ui.OutlineOptionWidget.parent.call(this,e),this.level=0,this.movable=!!e.movable,this.removable=!!e.removable,this.$element.addClass("oo-ui-outlineOptionWidget"),this.setLevel(e.level)},t.inheritClass(t.ui.OutlineOptionWidget,t.ui.DecoratedOptionWidget),t.ui.OutlineOptionWidget.static.highlightable=!0,t.ui.OutlineOptionWidget.static.scrollIntoViewOnSelect=!0,t.ui.OutlineOptionWidget.static.levelClass="oo-ui-outlineOptionWidget-level-",t.ui.OutlineOptionWidget.static.levels=3,t.ui.OutlineOptionWidget.prototype.isMovable=function(){return this.movable},t.ui.OutlineOptionWidget.prototype.isRemovable=function(){return this.removable},t.ui.OutlineOptionWidget.prototype.getLevel=function(){return this.level},t.ui.OutlineOptionWidget.prototype.setPressed=function(e){return t.ui.OutlineOptionWidget.parent.prototype.setPressed.call(this,e),this},t.ui.OutlineOptionWidget.prototype.setMovable=function(t){return this.movable=!!t,this.updateThemeClasses(),this},t.ui.OutlineOptionWidget.prototype.setRemovable=function(t){return this.removable=!!t,this.updateThemeClasses(),this},t.ui.OutlineOptionWidget.prototype.setSelected=function(e){return t.ui.OutlineOptionWidget.parent.prototype.setSelected.call(this,e),this},t.ui.OutlineOptionWidget.prototype.setLevel=function(t){var e=this.constructor.static.levels,i=this.constructor.static.levelClass,n=e;for(this.level=t?Math.max(0,Math.min(e-1,t)):0;n--;)this.level===n?this.$element.addClass(i+n):this.$element.removeClass(i+n);return this.updateThemeClasses(),this},t.ui.OutlineSelectWidget=function(e){t.ui.OutlineSelectWidget.parent.call(this,e),t.ui.mixin.TabIndexedElement.call(this,e),this.$element.on({focus:this.bindDocumentKeyDownListener.bind(this),blur:this.unbindDocumentKeyDownListener.bind(this)}),this.$element.addClass("oo-ui-outlineSelectWidget")},t.inheritClass(t.ui.OutlineSelectWidget,t.ui.SelectWidget),t.mixinClass(t.ui.OutlineSelectWidget,t.ui.mixin.TabIndexedElement),t.ui.ButtonOptionWidget=function(i){i=i||{},t.ui.ButtonOptionWidget.parent.call(this,i),t.ui.mixin.ButtonElement.call(this,i),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.TitledElement.call(this,e.extend({},i,{$titled:this.$button})),this.$element.addClass("oo-ui-buttonOptionWidget"),this.$button.append(this.$icon,this.$label,this.$indicator),this.$element.append(this.$button)},t.inheritClass(t.ui.ButtonOptionWidget,t.ui.OptionWidget),t.mixinClass(t.ui.ButtonOptionWidget,t.ui.mixin.ButtonElement),t.mixinClass(t.ui.ButtonOptionWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.ButtonOptionWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.ButtonOptionWidget,t.ui.mixin.TitledElement),t.ui.ButtonOptionWidget.static.cancelButtonMouseDownEvents=!1,t.ui.ButtonOptionWidget.static.highlightable=!1,t.ui.ButtonOptionWidget.prototype.setSelected=function(e){return t.ui.ButtonOptionWidget.parent.prototype.setSelected.call(this,e),this.constructor.static.selectable&&this.setActive(e),this},t.ui.ButtonSelectWidget=function(e){t.ui.ButtonSelectWidget.parent.call(this,e),t.ui.mixin.TabIndexedElement.call(this,e),this.$element.on({focus:this.bindDocumentKeyDownListener.bind(this),blur:this.unbindDocumentKeyDownListener.bind(this)}),this.$element.addClass("oo-ui-buttonSelectWidget")},t.inheritClass(t.ui.ButtonSelectWidget,t.ui.SelectWidget),t.mixinClass(t.ui.ButtonSelectWidget,t.ui.mixin.TabIndexedElement),t.ui.TabOptionWidget=function(e){e=e||{},t.ui.TabOptionWidget.parent.call(this,e),this.$element.addClass("oo-ui-tabOptionWidget").attr("role","tab")},t.inheritClass(t.ui.TabOptionWidget,t.ui.OptionWidget),t.ui.TabOptionWidget.static.highlightable=!1,t.ui.TabSelectWidget=function(e){t.ui.TabSelectWidget.parent.call(this,e),t.ui.mixin.TabIndexedElement.call(this,e),this.$element.on({focus:this.bindDocumentKeyDownListener.bind(this),blur:this.unbindDocumentKeyDownListener.bind(this)}),this.$element.addClass("oo-ui-tabSelectWidget").attr("role","tablist")},t.inheritClass(t.ui.TabSelectWidget,t.ui.SelectWidget),t.mixinClass(t.ui.TabSelectWidget,t.ui.mixin.TabIndexedElement),t.ui.TagItemWidget=function(e){e=e||{},t.ui.TagItemWidget.parent.call(this,e),t.ui.mixin.ItemWidget.call(this),t.ui.mixin.LabelElement.call(this,e),t.ui.mixin.FlaggedElement.call(this,e),t.ui.mixin.TabIndexedElement.call(this,e),t.ui.mixin.DraggableElement.call(this,e),this.valid=void 0===e.valid||!!e.valid,this.fixed=!!e.fixed,this.closeButton=new t.ui.ButtonWidget({framed:!1,icon:"close",tabIndex:-1,title:t.ui.msg("ooui-item-remove")}),this.closeButton.setDisabled(this.isDisabled()),this.closeButton.connect(this,{click:"remove"}),this.$element.on("click",this.select.bind(this)).on("keydown",this.onKeyDown.bind(this)).on("mousedown",function(t){t.stopPropagation()}),this.$element.addClass("oo-ui-tagItemWidget").append(this.$label,this.closeButton.$element)},t.inheritClass(t.ui.TagItemWidget,t.ui.Widget),t.mixinClass(t.ui.TagItemWidget,t.ui.mixin.ItemWidget),t.mixinClass(t.ui.TagItemWidget,t.ui.mixin.LabelElement),t.mixinClass(t.ui.TagItemWidget,t.ui.mixin.FlaggedElement),t.mixinClass(t.ui.TagItemWidget,t.ui.mixin.TabIndexedElement),t.mixinClass(t.ui.TagItemWidget,t.ui.mixin.DraggableElement),t.ui.TagItemWidget.prototype.setFixed=function(t){return t=void 0===t?!this.fixed:!!t,this.fixed!==t&&(this.fixed=t,this.closeButton&&this.closeButton.toggle(!this.fixed),this.fixed||!this.elementGroup||this.elementGroup.isDraggable()||this.toggleDraggable(!this.fixed),this.$element.toggleClass("oo-ui-tagItemWidget-fixed",this.fixed),this.emit("fixed",this.isFixed())),this},t.ui.TagItemWidget.prototype.isFixed=function(){return this.fixed},t.ui.TagItemWidget.prototype.setDisabled=function(e){return e&&this.elementGroup&&!this.elementGroup.isDisabled()&&t.ui.warnDeprecation("TagItemWidget#setDisabled: Disabling individual items is deprecated and will result in inconsistent behavior. Use #setFixed instead. See T193571."),t.ui.TagItemWidget.parent.prototype.setDisabled.call(this,e),e||!this.toggleDraggable||!this.elementGroup||this.isFixed()||this.elementGroup.isDraggable()||this.toggleDraggable(!e),this.closeButton&&this.closeButton.setDisabled(e),this},t.ui.TagItemWidget.prototype.remove=function(){this.isDisabled()||this.isFixed()||this.emit("remove")},t.ui.TagItemWidget.prototype.onKeyDown=function(e){var i;return this.isDisabled()||this.isFixed()||e.keyCode!==t.ui.Keys.BACKSPACE&&e.keyCode!==t.ui.Keys.DELETE?e.keyCode===t.ui.Keys.ENTER?(this.select(),!1):e.keyCode===t.ui.Keys.LEFT||e.keyCode===t.ui.Keys.RIGHT?(i="rtl"===t.ui.Element.static.getDir(this.$element)?{left:"forwards",right:"backwards"}:{left:"backwards",right:"forwards"},this.emit("navigate",e.keyCode===t.ui.Keys.LEFT?i.left:i.right),!1):void 0:(this.remove(),!1)},t.ui.TagItemWidget.prototype.select=function(){this.isDisabled()||this.emit("select")},t.ui.TagItemWidget.prototype.toggleValid=function(t){t=void 0===t?!this.valid:!!t,this.valid!==t&&(this.valid=t,this.setFlags({invalid:!this.valid}),this.emit("valid",this.valid))},t.ui.TagItemWidget.prototype.isValid=function(){return this.valid},t.ui.TagMultiselectWidget=function(i){var n,o=window.requestAnimationFrame||setTimeout,s=this,a=e("<span>").addClass("oo-ui-tagMultiselectWidget-focusTrap");i=i||{},t.ui.TagMultiselectWidget.parent.call(this,i),t.ui.mixin.GroupWidget.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.TabIndexedElement.call(this,i),t.ui.mixin.FlaggedElement.call(this,i),t.ui.mixin.DraggableGroupElement.call(this,i),this.toggleDraggable(void 0===i.allowReordering||!!i.allowReordering),this.inputPosition=this.constructor.static.allowedInputPositions.indexOf(i.inputPosition)>-1?i.inputPosition:"inline",this.allowEditTags=void 0===i.allowEditTags||!!i.allowEditTags,this.allowArbitrary=!!i.allowArbitrary,this.allowDuplicates=!!i.allowDuplicates,this.allowedValues=i.allowedValues||[],this.allowDisplayInvalidTags=i.allowDisplayInvalidTags,this.hasInput="none"!==this.inputPosition,this.tagLimit=i.tagLimit,this.height=null,this.valid=!0,this.$content=e("<div>").addClass("oo-ui-tagMultiselectWidget-content"),this.$handle=e("<div>").addClass("oo-ui-tagMultiselectWidget-handle").append(this.$indicator,this.$icon,this.$content.append(this.$group.addClass("oo-ui-tagMultiselectWidget-group"))),this.aggregate({remove:"itemRemove",navigate:"itemNavigate",select:"itemSelect",fixed:"itemFixed"}),this.connect(this,{itemRemove:"onTagRemove",itemSelect:"onTagSelect",itemFixed:"onTagFixed",itemNavigate:"onTagNavigate",change:"onChangeTags"}),this.$handle.on({mousedown:this.onMouseDown.bind(this)}),this.$element.addClass("oo-ui-tagMultiselectWidget").append(this.$handle),this.hasInput?(i.inputWidget?this.input=i.inputWidget:this.input=new t.ui.TextInputWidget(e.extend({placeholder:i.placeholder,classes:["oo-ui-tagMultiselectWidget-input"]},i.input)),this.input.setDisabled(this.isDisabled()),n={focus:this.onInputFocus.bind(this),blur:this.onInputBlur.bind(this),"propertychange change click mouseup keydown keyup input cut paste select focus":t.ui.debounce(this.updateInputSize.bind(this)),keydown:this.onInputKeyDown.bind(this),keypress:this.onInputKeyPress.bind(this)},this.input.$input.on(n),this.inputPlaceholder=this.input.$input.attr("placeholder"),"outline"===this.inputPosition?(this.input.$element.css("max-width","inherit"),this.$element.addClass("oo-ui-tagMultiselectWidget-outlined").append(this.input.$element)):(this.$element.addClass("oo-ui-tagMultiselectWidget-inlined"),this.$content.append(this.input.$input))):this.$content.append(a),this.setTabIndexedElement(this.hasInput?this.input.$input:a),i.selected&&this.setValue(i.selected),o(function(){s.hasInput&&s.updateInputSize()})},t.inheritClass(t.ui.TagMultiselectWidget,t.ui.Widget),t.mixinClass(t.ui.TagMultiselectWidget,t.ui.mixin.GroupWidget),t.mixinClass(t.ui.TagMultiselectWidget,t.ui.mixin.DraggableGroupElement),t.mixinClass(t.ui.TagMultiselectWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.TagMultiselectWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.TagMultiselectWidget,t.ui.mixin.TabIndexedElement),t.mixinClass(t.ui.TagMultiselectWidget,t.ui.mixin.FlaggedElement),t.ui.TagMultiselectWidget.static.allowedInputPositions=["inline","outline","none"],t.ui.TagMultiselectWidget.prototype.onMouseDown=function(e){if(!(this.isDisabled()||this.hasInput&&e.target===this.input.$input[0]||e.which!==t.ui.MouseButtons.LEFT))return this.focus(),!1},t.ui.TagMultiselectWidget.prototype.onInputKeyPress=function(e){var i,n=e.metaKey||e.ctrlKey;if(!this.isDisabled())return e.which===t.ui.Keys.ENTER&&(i=this.doInputEnter(e,n)),setTimeout(this.updateInputSize.bind(this),0),i},t.ui.TagMultiselectWidget.prototype.onInputKeyDown=function(e){var i,n,o=this,s=e.metaKey||e.ctrlKey;if(!this.isDisabled()){if(e.keyCode===t.ui.Keys.BACKSPACE)return this.doInputBackspace(e,s);if(e.keyCode===t.ui.Keys.ESCAPE)return this.doInputEscape(e);if(!(e.keyCode!==t.ui.Keys.LEFT&&e.keyCode!==t.ui.Keys.RIGHT||(i="rtl"===t.ui.Element.static.getDir(this.$element)?{left:"forwards",right:"backwards"}:{left:"backwards",right:"forwards"},n=e.keyCode===t.ui.Keys.LEFT?i.left:i.right,this.hasInput&&function(t){var e=o.input.getRange(),i=o.hasInput&&o.input.getValue();return!("forwards"===t&&e.to>i.length-1||"backwards"===t&&e.from<=0)}(n))))return this.doInputArrow(e,n,s)}},t.ui.TagMultiselectWidget.prototype.onInputFocus=function(){this.$element.addClass("oo-ui-tagMultiselectWidget-focus"),this.toggleValid(!0)},t.ui.TagMultiselectWidget.prototype.onInputBlur=function(){this.$element.removeClass("oo-ui-tagMultiselectWidget-focus"),this.addTagFromInput(),this.toggleValid(this.checkValidity()&&(!this.hasInput||!this.input.getValue()))},t.ui.TagMultiselectWidget.prototype.doInputEnter=function(){return this.addTagFromInput(),!1},t.ui.TagMultiselectWidget.prototype.doInputBackspace=function(t,e){var i,n;if("inline"===this.inputPosition&&""===this.input.getValue()&&!this.isEmpty())return(n=(i=this.getItems())[i.length-1]).isDisabled()||n.isFixed()||(this.removeItems([n]),e||this.input.setValue(n.getData())),!1},t.ui.TagMultiselectWidget.prototype.doInputEscape=function(){this.clearInput()},t.ui.TagMultiselectWidget.prototype.doInputArrow=function(t,e){"inline"!==this.inputPosition||this.isEmpty()||"backwards"!==e||this.getPreviousItem().focus()},t.ui.TagMultiselectWidget.prototype.onTagSelect=function(t){this.hasInput&&this.allowEditTags&&!t.isFixed()&&(this.input.getValue()&&this.addTagFromInput(),this.input.setValue(t.getData()),this.removeItems([t]),this.focus())},t.ui.TagMultiselectWidget.prototype.onTagFixed=function(t){var e,i=this.getItems();for(e=0;e<i.length&&(i[e]===t||i[e].isFixed());e++);this.addItems(t,e)},t.ui.TagMultiselectWidget.prototype.onChangeTags=function(){var t=this.isUnderLimit();this.toggleValid(this.checkValidity()&&!(this.hasInput&&this.input.getValue())),this.hasInput&&(this.updateInputSize(),t||this.input.setValue(""),"outline"===this.inputPosition?(this.input.$input.attr("placeholder",t?this.inputPlaceholder:""),this.input.setDisabled(!t)):this.input.$input.toggleClass("oo-ui-element-hidden",!t)),this.updateIfHeightChanged()},t.ui.TagMultiselectWidget.prototype.setDisabled=function(e){t.ui.TagMultiselectWidget.parent.prototype.setDisabled.call(this,e),this.hasInput&&this.input&&(e||this.updateInputSize(),this.input.setDisabled(!!e&&!this.isUnderLimit())),this.items&&this.getItems().forEach(function(t){t.setDisabled(!!e)})},t.ui.TagMultiselectWidget.prototype.onTagRemove=function(t){this.removeTagByData(t.getData())},t.ui.TagMultiselectWidget.prototype.onTagNavigate=function(t,e){var i=this.getItems()[0];"forwards"===e?this.getNextItem(t).focus():"inline"!==!this.inputPosition&&t===i||this.getPreviousItem(t).focus()},t.ui.TagMultiselectWidget.prototype.addTagFromInput=function(){var t=this.input.getValue(),e=this.isAllowedData(t);t&&(e||this.allowDisplayInvalidTags)&&(this.clearInput(),this.addTag(t))},t.ui.TagMultiselectWidget.prototype.clearInput=function(){this.input.setValue("")},t.ui.TagMultiselectWidget.prototype.isDuplicateData=function(t){return!!this.findItemFromData(t)},t.ui.TagMultiselectWidget.prototype.isAllowedData=function(t){return!(!this.allowDuplicates&&this.isDuplicateData(t))&&(!!this.allowArbitrary||!!this.getAllowedValues().some(function(e){return t===e}))},t.ui.TagMultiselectWidget.prototype.getAllowedValues=function(){return this.allowedValues},t.ui.TagMultiselectWidget.prototype.addAllowedValue=function(t){-1===this.allowedValues.indexOf(t)&&this.allowedValues.push(t)},t.ui.TagMultiselectWidget.prototype.getValue=function(){return this.getItems().filter(function(t){return t.isValid()}).map(function(t){return t.getData()})},t.ui.TagMultiselectWidget.prototype.setValue=function(t){t=Array.isArray(t)?t:[t],this.clearItems(),t.forEach(function(t){"string"==typeof t?this.addTag(t):this.addTag(t.data,t.label)}.bind(this))},t.ui.TagMultiselectWidget.prototype.addTag=function(t,e){var i,n=this.isAllowedData(t);return!(!this.isUnderLimit()||!n&&!this.allowDisplayInvalidTags)&&((i=this.createTagItemWidget(t,e)).toggleValid(n),this.addItems([i]),!0)},t.ui.TagMultiselectWidget.prototype.isUnderLimit=function(){return!this.tagLimit||this.getItemCount()<this.tagLimit},t.ui.TagMultiselectWidget.prototype.removeTagByData=function(t){var e=this.findItemFromData(t);this.removeItems([e])},t.ui.TagMultiselectWidget.prototype.createTagItemWidget=function(e,i){return i=i||e,new t.ui.TagItemWidget({data:e,label:i})},t.ui.TagMultiselectWidget.prototype.getNextItem=function(t){var e=this.items.indexOf(t);return void 0===t||-1===e?this.items[0]:e===this.items.length-1?this.hasInput?this.input:this.items[0]:this.items[e+1]},t.ui.TagMultiselectWidget.prototype.getPreviousItem=function(t){var e=this.items.indexOf(t);return void 0===t||-1===e?this.items[this.items.length-1]:0===e?this.hasInput?this.input:this.items[this.items.length-1]:this.items[e-1]},t.ui.TagMultiselectWidget.prototype.updateInputSize=function(){var e,i,n,o;if("inline"!==this.inputPosition||this.isDisabled())this.updateIfHeightChanged();else{if(0===this.input.$input[0].scrollWidth)return;if(this.input.$input.css("width","1em"),e=this.$group.children().last(),i=t.ui.Element.static.getDir(this.$handle),void 0===this.contentWidthWithPlaceholder&&""===this.input.getValue()&&void 0!==this.input.$input.attr("placeholder")&&(this.input.setValue(this.input.$input.attr("placeholder")),this.contentWidthWithPlaceholder=this.input.$input[0].scrollWidth,this.input.setValue("")),(n=Math.max(this.input.$input[0].scrollWidth,void 0===this.contentWidthWithPlaceholder?0:this.contentWidthWithPlaceholder))<this.input.$input.width())return void this.updateIfHeightChanged();o=0===e.length?this.$content.innerWidth():"ltr"===i?this.$content.innerWidth()-e.position().left-e.outerWidth():e.position().left,n>(o-=13)&&(o=this.$content.innerWidth()-13),this.input.$input.width(Math.floor(o)),this.updateIfHeightChanged()}},t.ui.TagMultiselectWidget.prototype.updateIfHeightChanged=function(){var t=this.$element.height();t!==this.height&&(this.height=t,this.emit("resize"))},t.ui.TagMultiselectWidget.prototype.checkValidity=function(){return this.getItems().every(function(t){return t.isValid()})},t.ui.TagMultiselectWidget.prototype.toggleValid=function(t){t=void 0===t?!this.valid:!!t,this.valid!==t&&(this.valid=t,this.setFlags({invalid:!this.valid}),this.emit("valid",this.valid))},t.ui.TagMultiselectWidget.prototype.isValid=function(){return this.valid},t.ui.PopupTagMultiselectWidget=function(i){var n,o={popup:{}};i=i||{},t.ui.PopupTagMultiselectWidget.parent.call(this,e.extend({inputPosition:"none"},i)),this.$overlay=(!0===i.$overlay?t.ui.getDefaultOverlay():i.$overlay)||this.$element,i.popup||(n=new t.ui.TextInputWidget,o.popupInput=n,o.popup.$content=n.$element,o.popup.padded=!0,this.$element.addClass("oo-ui-popupTagMultiselectWidget-defaultPopup")),o.popup.$overlay=this.$overlay,o.popup.$autoCloseIgnore=this.hasInput?this.input.$element.add(this.$overlay):this.$overlay,i=e.extend(o,i),t.ui.mixin.PopupElement.call(this,i),this.hasInput&&this.input.$input.on("focus",this.popup.toggle.bind(this.popup,!0)),this.popupInput=i.popupInput,this.popupInput&&this.popupInput.connect(this,{enter:"onPopupInputEnter"}),this.on("resize",this.popup.updateDimensions.bind(this.popup)),this.popup.connect(this,{toggle:"onPopupToggle"}),this.$tabIndexed.on("focus",this.onFocus.bind(this)),this.$element.append(this.popup.$element).addClass("oo-ui-popupTagMultiselectWidget"),t.ui.warnDeprecation("PopupTagMultiselectWidget: Deprecated widget. Use MenuTagMultiselectWidget instead. See T208821.")},t.inheritClass(t.ui.PopupTagMultiselectWidget,t.ui.TagMultiselectWidget),t.mixinClass(t.ui.PopupTagMultiselectWidget,t.ui.mixin.PopupElement),t.ui.PopupTagMultiselectWidget.prototype.onFocus=function(){this.popup.toggle(!0)},t.ui.PopupTagMultiselectWidget.prototype.onPopupToggle=function(t){t&&this.popupInput&&this.popupInput.focus()},t.ui.PopupTagMultiselectWidget.prototype.onPopupInputEnter=function(){this.popupInput&&(this.addTagByPopupValue(this.popupInput.getValue()),this.popupInput.setValue(""))},t.ui.PopupTagMultiselectWidget.prototype.onTagSelect=function(e){this.popupInput&&this.allowEditTags?(this.popupInput.setValue(e.getData()),this.removeItems([e]),this.popup.toggle(!0),this.popupInput.focus()):t.ui.PopupTagMultiselectWidget.parent.prototype.onTagSelect.call(this,e)},t.ui.PopupTagMultiselectWidget.prototype.addTagByPopupValue=function(t,e){this.addTag(t,e)},t.ui.MenuTagMultiselectWidget=function(i){i=i||{},t.ui.MenuTagMultiselectWidget.parent.call(this,i),this.$overlay=(!0===i.$overlay?t.ui.getDefaultOverlay():i.$overlay)||this.$element,this.clearInputOnChoose=void 0===i.clearInputOnChoose||!!i.clearInputOnChoose,this.menu=this.createMenuWidget(e.extend({widget:this,input:this.hasInput?this.input:null,$input:this.hasInput?this.input.$input:null,filterFromInput:!!this.hasInput,$autoCloseIgnore:this.hasInput?this.input.$element:e([]),$floatableContainer:this.hasInput&&"outline"===this.inputPosition?this.input.$element:this.$element,$overlay:this.$overlay,disabled:this.isDisabled()},i.menu)),this.addOptions(i.options||[]),this.menu.connect(this,{choose:"onMenuChoose",toggle:"onMenuToggle"}),this.hasInput&&this.input.connect(this,{change:"onInputChange"}),this.connect(this,{resize:"onResize"}),this.$overlay.append(this.menu.$element),this.$element.addClass("oo-ui-menuTagMultiselectWidget"),i.selected&&this.setValue(i.selected)},t.inheritClass(t.ui.MenuTagMultiselectWidget,t.ui.TagMultiselectWidget),t.ui.MenuTagMultiselectWidget.prototype.onResize=function(){this.menu.position()},t.ui.MenuTagMultiselectWidget.prototype.onInputFocus=function(){t.ui.MenuTagMultiselectWidget.parent.prototype.onInputFocus.call(this),this.menu.toggle(!0)},t.ui.MenuTagMultiselectWidget.prototype.onInputBlur=function(){t.ui.MenuTagMultiselectWidget.parent.prototype.onInputBlur.call(this),this.menu.toggle(!1)},t.ui.MenuTagMultiselectWidget.prototype.onInputChange=function(){this.menu.toggle(!0),this.initializeMenuSelection()},t.ui.MenuTagMultiselectWidget.prototype.onMenuChoose=function(t){this.hasInput&&this.clearInputOnChoose&&this.input.setValue(""),this.addTag(t.getData(),t.getLabel())},t.ui.MenuTagMultiselectWidget.prototype.onMenuToggle=function(t){t?this.initializeMenuSelection():(this.menu.selectItem(null),this.menu.highlightItem(null))},t.ui.MenuTagMultiselectWidget.prototype.onTagSelect=function(e){var i=this.menu.findItemFromData(e.getData());this.allowArbitrary?t.ui.MenuTagMultiselectWidget.parent.prototype.onTagSelect.call(this,e):(this.hasInput&&this.menu.filterFromInput&&this.input.setValue(""),this.menu.selectItem(i),this.focus())},t.ui.MenuTagMultiselectWidget.prototype.setDisabled=function(e){t.ui.MenuTagMultiselectWidget.parent.prototype.setDisabled.call(this,e),this.menu&&this.menu.setDisabled(e)},t.ui.MenuTagMultiselectWidget.prototype.initializeMenuSelection=function(){this.menu.findSelectedItem()||this.menu.highlightItem(this.allowArbitrary?null:this.menu.findFirstSelectableItem())},t.ui.MenuTagMultiselectWidget.prototype.addTagFromInput=function(){var t=this.input.getValue(),e=this.menu.findHighlightedItem()||this.menu.findItemFromData(t),i=e?e.getData():t,n=this.isAllowedData(i);t&&(n||this.allowDisplayInvalidTags)&&(this.clearInput(),e?this.addTag(i,e.getLabel()):this.addTag(t))},t.ui.MenuTagMultiselectWidget.prototype.getMenuVisibleItems=function(){return this.menu.getItems().filter(function(t){return t.isVisible()})},t.ui.MenuTagMultiselectWidget.prototype.createMenuWidget=function(e){return new t.ui.MenuSelectWidget(e)},t.ui.MenuTagMultiselectWidget.prototype.addOptions=function(t){var e=this,i=t.map(function(t){return e.createMenuOptionWidget(t.data,t.label,t.icon)});this.menu.addItems(i)},t.ui.MenuTagMultiselectWidget.prototype.createMenuOptionWidget=function(e,i,n){return new t.ui.MenuOptionWidget({data:e,label:i||e,icon:n})},t.ui.MenuTagMultiselectWidget.prototype.getMenu=function(){return this.menu},t.ui.MenuTagMultiselectWidget.prototype.getAllowedValues=function(){var t=[];return this.menu&&(t=this.menu.getItems().map(function(t){return t.getData()})),this.allowedValues.concat(t)},t.ui.SelectFileWidget=function(i){var n;i=e.extend({accept:null,placeholder:t.ui.msg("ooui-selectfile-placeholder"),notsupported:t.ui.msg("ooui-selectfile-not-supported"),droppable:!0,showDropTarget:!1,thumbnailSizeLimit:20},i),t.ui.SelectFileWidget.parent.call(this,i),t.ui.mixin.IconElement.call(this,i),t.ui.mixin.IndicatorElement.call(this,i),t.ui.mixin.PendingElement.call(this,e.extend({},i,{$pending:this.$info})),t.ui.mixin.LabelElement.call(this,i),this.$info=e("<span>"),this.showDropTarget=i.showDropTarget,this.thumbnailSizeLimit=i.thumbnailSizeLimit,this.isSupported=this.constructor.static.isSupported(),this.currentFile=null,Array.isArray(i.accept)?this.accept=i.accept:this.accept=null,this.placeholder=i.placeholder,this.notsupported=i.notsupported,this.onFileSelectedHandler=this.onFileSelected.bind(this),this.selectButton=new t.ui.ButtonWidget({$element:e("<label>"),classes:["oo-ui-selectFileWidget-selectButton"],label:t.ui.msg("ooui-selectfile-button-select"),disabled:this.disabled||!this.isSupported}),this.clearButton=new t.ui.ButtonWidget({classes:["oo-ui-selectFileWidget-clearButton"],framed:!1,icon:"close",disabled:this.disabled}),this.selectButton.$button.on({keypress:this.onKeyPress.bind(this)}),this.clearButton.connect(this,{click:"onClearClick"}),i.droppable&&(n=this.onDragEnterOrOver.bind(this),this.$element.on({dragenter:n,dragover:n,dragleave:this.onDragLeave.bind(this),drop:this.onDrop.bind(this)})),this.addInput(),this.$label.addClass("oo-ui-selectFileWidget-label"),this.$info.addClass("oo-ui-selectFileWidget-info").append(this.$icon,this.$label,this.clearButton.$element,this.$indicator),i.droppable&&i.showDropTarget?(this.selectButton.setIcon("upload"),this.$thumbnail=e("<div>").addClass("oo-ui-selectFileWidget-thumbnail"),this.setPendingElement(this.$thumbnail),this.$element.addClass("oo-ui-selectFileWidget-dropTarget oo-ui-selectFileWidget").on({click:this.onDropTargetClick.bind(this)}).append(this.$thumbnail,this.$info,this.selectButton.$element,e("<span>").addClass("oo-ui-selectFileWidget-dropLabel").text(t.ui.msg("ooui-selectfile-dragdrop-placeholder")))):this.$element.addClass("oo-ui-selectFileWidget").append(this.$info,this.selectButton.$element),this.updateUI()},t.inheritClass(t.ui.SelectFileWidget,t.ui.Widget),t.mixinClass(t.ui.SelectFileWidget,t.ui.mixin.IconElement),t.mixinClass(t.ui.SelectFileWidget,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.SelectFileWidget,t.ui.mixin.PendingElement),t.mixinClass(t.ui.SelectFileWidget,t.ui.mixin.LabelElement),t.ui.SelectFileWidget.static.isSupported=function(){var i;return null===t.ui.SelectFileWidget.static.isSupportedCache&&(i=e("<input>").attr("type","file"),t.ui.SelectFileWidget.static.isSupportedCache=void 0!==i[0].files),t.ui.SelectFileWidget.static.isSupportedCache},t.ui.SelectFileWidget.static.isSupportedCache=null,t.ui.SelectFileWidget.prototype.getValue=function(){return this.currentFile},t.ui.SelectFileWidget.prototype.setValue=function(t){this.currentFile!==t&&(this.currentFile=t,this.updateUI(),this.emit("change",this.currentFile))},t.ui.SelectFileWidget.prototype.focus=function(){return this.selectButton.focus(),this},t.ui.SelectFileWidget.prototype.blur=function(){return this.selectButton.blur(),this},t.ui.SelectFileWidget.prototype.simulateLabelClick=function(){this.focus()},t.ui.SelectFileWidget.prototype.updateUI=function(){var i;this.isSupported?(this.$element.addClass("oo-ui-selectFileWidget-supported"),this.currentFile?(this.$element.removeClass("oo-ui-selectFileWidget-empty"),i=(i=e([])).add(e("<span>").addClass("oo-ui-selectFileWidget-fileName").text(this.currentFile.name)),this.setLabel(i),this.showDropTarget&&(this.pushPending(),this.loadAndGetImageUrl().done(function(t){this.$thumbnail.css("background-image","url( "+t+" )")}.bind(this)).fail(function(){this.$thumbnail.append(new t.ui.IconWidget({icon:"attachment",classes:["oo-ui-selectFileWidget-noThumbnail-icon"]}).$element)}.bind(this)).always(function(){this.popPending()}.bind(this)),this.$element.off("click"))):(this.showDropTarget&&(this.$element.off("click"),this.$element.on({click:this.onDropTargetClick.bind(this)}),this.$thumbnail.empty().css("background-image","")),this.$element.addClass("oo-ui-selectFileWidget-empty"),this.setLabel(this.placeholder))):(this.$element.addClass("oo-ui-selectFileWidget-notsupported"),this.$element.removeClass("oo-ui-selectFileWidget-empty"),this.setLabel(this.notsupported))},t.ui.SelectFileWidget.prototype.loadAndGetImageUrl=function(){var i=e.Deferred(),n=this.currentFile,o=new FileReader;return n&&0===(t.getProp(n,"type")||"").indexOf("image/")&&n.size<1024*this.thumbnailSizeLimit*1024?(o.onload=function(t){var e=document.createElement("img");e.addEventListener("load",function(){0===e.naturalWidth||0===e.naturalHeight||!1===e.complete?i.reject():i.resolve(t.target.result)}),e.src=t.target.result},o.readAsDataURL(n)):i.reject(),i.promise()},t.ui.SelectFileWidget.prototype.addInput=function(){this.$input&&this.$input.remove(),this.isSupported?(this.$input=e("<input>").attr("type","file"),this.$input.on("change",this.onFileSelectedHandler),this.$input.on("click",function(t){t.stopPropagation()}),this.$input.attr({tabindex:-1}),this.accept&&this.$input.attr("accept",this.accept.join(", ")),this.selectButton.$button.append(this.$input)):this.$input=null},t.ui.SelectFileWidget.prototype.isAllowedType=function(t){var e,i;if(!this.accept||!t)return!0;for(e=0;e<this.accept.length;e++){if((i=this.accept[e])===t)return!0;if("/*"===i.substr(-2)&&(i=i.substr(0,i.length-1),t.substr(0,i.length)===i))return!0}return!1},t.ui.SelectFileWidget.prototype.onFileSelected=function(e){var i=t.getProp(e.target,"files",0)||null;i&&!this.isAllowedType(i.type)&&(i=null),this.setValue(i),this.addInput()},t.ui.SelectFileWidget.prototype.onClearClick=function(){return this.setValue(null),!1},t.ui.SelectFileWidget.prototype.onKeyPress=function(e){if(this.isSupported&&!this.isDisabled()&&this.$input&&(e.which===t.ui.Keys.SPACE||e.which===t.ui.Keys.ENTER))return this.$input.click(),!1},t.ui.SelectFileWidget.prototype.onDropTargetClick=function(){if(this.isSupported&&!this.isDisabled()&&this.$input)return this.$input.click(),!1},t.ui.SelectFileWidget.prototype.onDragEnterOrOver=function(e){var i,n=!1,o=e.originalEvent.dataTransfer;return e.preventDefault(),e.stopPropagation(),this.isDisabled()||!this.isSupported?(this.$element.removeClass("oo-ui-selectFileWidget-canDrop"),o.dropEffect="none",!1):((i=t.getProp(o,"items",0)||t.getProp(o,"files",0))?this.isAllowedType(i.type)&&(n=!0):-1!==Array.prototype.indexOf.call(t.getProp(o,"types")||[],"Files")&&(n=!0),this.$element.toggleClass("oo-ui-selectFileWidget-canDrop",n),n||(o.dropEffect="none"),!1)},t.ui.SelectFileWidget.prototype.onDragLeave=function(){this.$element.removeClass("oo-ui-selectFileWidget-canDrop")},t.ui.SelectFileWidget.prototype.onDrop=function(e){var i=null,n=e.originalEvent.dataTransfer;return e.preventDefault(),e.stopPropagation(),this.$element.removeClass("oo-ui-selectFileWidget-canDrop"),!(this.isDisabled()||!this.isSupported)&&((i=t.getProp(n,"files",0))&&!this.isAllowedType(i.type)&&(i=null),i&&this.setValue(i),!1)},t.ui.SelectFileWidget.prototype.setDisabled=function(e){return t.ui.SelectFileWidget.parent.prototype.setDisabled.call(this,e),this.selectButton&&this.selectButton.setDisabled(e),this.clearButton&&this.clearButton.setDisabled(e),this},t.ui.SearchWidget=function(i){i=i||{},t.ui.SearchWidget.parent.call(this,i),this.query=new t.ui.TextInputWidget({icon:"search",placeholder:i.placeholder,value:i.value}),this.results=new t.ui.SelectWidget,this.$query=e("<div>"),this.$results=e("<div>"),this.query.connect(this,{change:"onQueryChange",enter:"onQueryEnter"}),this.query.$input.on("keydown",this.onQueryKeydown.bind(this)),this.$query.addClass("oo-ui-searchWidget-query").append(this.query.$element),this.$results.addClass("oo-ui-searchWidget-results").append(this.results.$element),this.$element.addClass("oo-ui-searchWidget").append(this.$results,this.$query)},t.inheritClass(t.ui.SearchWidget,t.ui.Widget),t.ui.SearchWidget.prototype.onQueryKeydown=function(e){var i,n,o=e.which===t.ui.Keys.DOWN?1:e.which===t.ui.Keys.UP?-1:0;o&&((i=this.results.findHighlightedItem())||(i=this.results.findSelectedItem()),n=this.results.findRelativeSelectableItem(i,o),this.results.highlightItem(n),n.scrollElementIntoView())},t.ui.SearchWidget.prototype.onQueryChange=function(){this.results.clearItems()},t.ui.SearchWidget.prototype.onQueryEnter=function(){var t=this.results.findHighlightedItem();t&&this.results.chooseItem(t)},t.ui.SearchWidget.prototype.getQuery=function(){return this.query},t.ui.SearchWidget.prototype.getResults=function(){return this.results}}(t),
/*!
* OOUI v0.30.0
* https://www.mediawiki.org/wiki/OOUI
*
* Copyright 2011–2018 OOUI Team and other contributors.
* Released under the MIT license
* http://oojs.mit-license.org
*
* Date: 2018-12-20T06:10:28Z
*/
function(t){"use strict";t.ui.Toolbar=function(i,n,o){t.isPlainObject(i)&&void 0===o&&(i=(o=i).toolFactory,n=o.toolGroupFactory),o=o||{},t.ui.Toolbar.parent.call(this,o),t.EventEmitter.call(this),t.ui.mixin.GroupElement.call(this,o),this.toolFactory=i,this.toolGroupFactory=n,this.groupsByName={},this.activeToolGroups=0,this.tools={},this.position=o.position||"top",this.$bar=e("<div>"),this.$actions=e("<div>"),this.$popups=e("<div>"),this.initialized=!1,this.narrowThreshold=null,this.onWindowResizeHandler=this.onWindowResize.bind(this),this.$overlay=(!0===o.$overlay?t.ui.getDefaultOverlay():o.$overlay)||this.$element,this.$element.add(this.$bar).add(this.$group).add(this.$actions).on("mousedown keydown",this.onPointerDown.bind(this)),this.$group.addClass("oo-ui-toolbar-tools"),o.actions&&this.$bar.append(this.$actions.addClass("oo-ui-toolbar-actions")),this.$popups.addClass("oo-ui-toolbar-popups"),this.$bar.addClass("oo-ui-toolbar-bar").append(this.$group,'<div style="clear:both"></div>'),this.$element.addClass("oo-ui-toolbar oo-ui-toolbar-position-"+this.position).append(this.$bar),this.$overlay.append(this.$popups)},t.inheritClass(t.ui.Toolbar,t.ui.Element),t.mixinClass(t.ui.Toolbar,t.EventEmitter),t.mixinClass(t.ui.Toolbar,t.ui.mixin.GroupElement),t.ui.Toolbar.prototype.getToolFactory=function(){return this.toolFactory},t.ui.Toolbar.prototype.getToolGroupFactory=function(){return this.toolGroupFactory},t.ui.Toolbar.prototype.onPointerDown=function(t){var i=e(t.target).closest(".oo-ui-widget"),n=this.$element.closest(".oo-ui-widget");if(!i.length||i[0]===n[0])return!1},t.ui.Toolbar.prototype.onWindowResize=function(){this.$element.add(this.$popups).toggleClass("oo-ui-toolbar-narrow",this.$bar[0].clientWidth<=this.getNarrowThreshold())},t.ui.Toolbar.prototype.getNarrowThreshold=function(){return null===this.narrowThreshold&&(this.narrowThreshold=this.$group[0].offsetWidth+this.$actions[0].offsetWidth),this.narrowThreshold},t.ui.Toolbar.prototype.initialize=function(){this.initialized||(this.initialized=!0,e(this.getElementWindow()).on("resize",this.onWindowResizeHandler),this.onWindowResize())},t.ui.Toolbar.prototype.setup=function(e){var i,n,o,s,a,r=[];for(this.reset(),i=0,n=e.length;i<n;i++)"*"===(a=e[i]).include&&(void 0===a.type&&(a.type="list"),void 0===a.label&&(a.label=t.ui.msg("ooui-toolbar-more"))),o=this.getToolGroupFactory().lookup(a.type)?a.type:"bar",s=this.getToolGroupFactory().create(o,this,a),r.push(s),a.name?this.groupsByName[a.name]=s:t.ui.warnDeprecation("Toolgroups must have a 'name' property"),s.connect(this,{active:"onToolGroupActive"});this.addItems(r)},t.ui.Toolbar.prototype.onToolGroupActive=function(t){t?(this.activeToolGroups++,1===this.activeToolGroups&&this.emit("active",!0)):(this.activeToolGroups--,0===this.activeToolGroups&&this.emit("active",!1))},t.ui.Toolbar.prototype.getToolGroupByName=function(t){return this.groupsByName[t]||null},t.ui.Toolbar.prototype.reset=function(){var t,e;for(this.groupsByName={},this.tools={},t=0,e=this.items.length;t<e;t++)this.items[t].destroy();this.clearItems()},t.ui.Toolbar.prototype.destroy=function(){e(this.getElementWindow()).off("resize",this.onWindowResizeHandler),this.reset(),this.$element.remove()},t.ui.Toolbar.prototype.isToolAvailable=function(t){return!this.tools[t]},t.ui.Toolbar.prototype.reserveTool=function(t){this.tools[t.getName()]=t},t.ui.Toolbar.prototype.releaseTool=function(t){delete this.tools[t.getName()]},t.ui.Toolbar.prototype.getToolAccelerator=function(){},t.ui.Tool=function(i,n){t.isPlainObject(i)&&void 0===n&&(i=(n=i).toolGroup),n=n||{},t.ui.Tool.parent.call(this,n),this.toolGroup=i,this.toolbar=this.toolGroup.getToolbar(),this.active=!1,this.$title=e("<span>"),this.$accel=e("<span>"),this.$link=e("<a>"),this.title=null,this.checkIcon=new t.ui.IconWidget({icon:"check",classes:["oo-ui-tool-checkIcon"]}),t.ui.mixin.IconElement.call(this,n),t.ui.mixin.FlaggedElement.call(this,n),t.ui.mixin.TabIndexedElement.call(this,e.extend({},n,{$tabIndexed:this.$link})),this.toolbar.connect(this,{updateState:"onUpdateState"}),this.$title.addClass("oo-ui-tool-title"),this.$accel.addClass("oo-ui-tool-accel").prop({dir:"ltr",lang:"en"}),this.$link.addClass("oo-ui-tool-link").append(this.checkIcon.$element,this.$icon,this.$title,this.$accel).attr("role","button"),this.$element.data("oo-ui-tool",this).addClass("oo-ui-tool").addClass("oo-ui-tool-name-"+this.constructor.static.name.replace(/^([^\/]+)\/([^\/]+).*$/,"$1-$2")).toggleClass("oo-ui-tool-with-label",this.constructor.static.displayBothIconAndLabel).append(this.$link),this.setTitle(n.title||this.constructor.static.title)},t.inheritClass(t.ui.Tool,t.ui.Widget),t.mixinClass(t.ui.Tool,t.ui.mixin.IconElement),t.mixinClass(t.ui.Tool,t.ui.mixin.FlaggedElement),t.mixinClass(t.ui.Tool,t.ui.mixin.TabIndexedElement),t.ui.Tool.static.tagName="span",t.ui.Tool.static.name="",t.ui.Tool.static.group="",t.ui.Tool.static.title="",t.ui.Tool.static.displayBothIconAndLabel=!1,t.ui.Tool.static.autoAddToCatchall=!0,t.ui.Tool.static.autoAddToGroup=!0,t.ui.Tool.static.isCompatibleWith=function(){return!1},t.ui.Tool.prototype.onUpdateState=null,t.ui.Tool.prototype.onSelect=null,t.ui.Tool.prototype.isActive=function(){return this.active},t.ui.Tool.prototype.setActive=function(t){this.active=!!t,this.$element.toggleClass("oo-ui-tool-active",this.active),this.updateThemeClasses()},t.ui.Tool.prototype.setTitle=function(e){return this.title=t.ui.resolveMsg(e),this.updateTitle(),this},t.ui.Tool.prototype.getTitle=function(){return this.title},t.ui.Tool.prototype.getName=function(){return this.constructor.static.name},t.ui.Tool.prototype.updateTitle=function(){var t=this.toolGroup.constructor.static.titleTooltips,e=this.toolGroup.constructor.static.accelTooltips,i=this.toolbar.getToolAccelerator(this.constructor.static.name),n=[];this.$title.text(this.title),this.$accel.text(i),t&&"string"==typeof this.title&&this.title.length&&n.push(this.title),e&&"string"==typeof i&&i.length&&n.push(i),n.length?this.$link.attr("title",n.join(" ")):this.$link.removeAttr("title")},t.ui.Tool.prototype.destroy=function(){this.toolbar.disconnect(this),this.$element.remove()},t.ui.ToolGroup=function(e,i){t.isPlainObject(e)&&void 0===i&&(e=(i=e).toolbar),i=i||{},t.ui.ToolGroup.parent.call(this,i),t.ui.mixin.GroupElement.call(this,i),this.toolbar=e,this.tools={},this.pressed=null,this.autoDisabled=!1,this.include=i.include||[],this.exclude=i.exclude||[],this.promote=i.promote||[],this.demote=i.demote||[],this.onDocumentMouseKeyUpHandler=this.onDocumentMouseKeyUp.bind(this),this.$group.on({mousedown:this.onMouseKeyDown.bind(this),mouseup:this.onMouseKeyUp.bind(this),keydown:this.onMouseKeyDown.bind(this),keyup:this.onMouseKeyUp.bind(this),focus:this.onMouseOverFocus.bind(this),blur:this.onMouseOutBlur.bind(this),mouseover:this.onMouseOverFocus.bind(this),mouseout:this.onMouseOutBlur.bind(this)}),this.toolbar.getToolFactory().connect(this,{register:"onToolFactoryRegister"}),this.aggregate({disable:"itemDisable"}),this.connect(this,{itemDisable:"updateDisabled",disable:"onDisable"}),this.$group.addClass("oo-ui-toolGroup-tools"),this.$element.addClass("oo-ui-toolGroup").append(this.$group),this.onDisable(this.isDisabled()),this.populate()},t.inheritClass(t.ui.ToolGroup,t.ui.Widget),t.mixinClass(t.ui.ToolGroup,t.ui.mixin.GroupElement),t.ui.ToolGroup.static.titleTooltips=!1,t.ui.ToolGroup.static.accelTooltips=!1,t.ui.ToolGroup.static.autoDisable=!0,t.ui.ToolGroup.static.name=null,t.ui.ToolGroup.prototype.isDisabled=function(){return this.autoDisabled||t.ui.ToolGroup.parent.prototype.isDisabled.apply(this,arguments)},t.ui.ToolGroup.prototype.updateDisabled=function(){var e,i=!0;if(this.constructor.static.autoDisable){for(e=this.items.length-1;e>=0;e--)if(!this.items[e].isDisabled()){i=!1;break}this.autoDisabled=i}t.ui.ToolGroup.parent.prototype.updateDisabled.apply(this,arguments)},t.ui.ToolGroup.prototype.onDisable=function(t){this.$group.toggleClass("oo-ui-toolGroup-disabled-tools",t),this.$group.toggleClass("oo-ui-toolGroup-enabled-tools",!t)},t.ui.ToolGroup.prototype.onMouseKeyDown=function(e){if(!this.isDisabled()&&(e.which===t.ui.MouseButtons.LEFT||e.which===t.ui.Keys.SPACE||e.which===t.ui.Keys.ENTER)&&(this.pressed=this.findTargetTool(e),this.pressed))return this.pressed.setActive(!0),this.getElementDocument().addEventListener("mouseup",this.onDocumentMouseKeyUpHandler,!0),this.getElementDocument().addEventListener("keyup",this.onDocumentMouseKeyUpHandler,!0),!1},t.ui.ToolGroup.prototype.onDocumentMouseKeyUp=function(t){this.getElementDocument().removeEventListener("mouseup",this.onDocumentMouseKeyUpHandler,!0),this.getElementDocument().removeEventListener("keyup",this.onDocumentMouseKeyUpHandler,!0),this.onMouseKeyUp(t)},t.ui.ToolGroup.prototype.onCapturedMouseKeyUp=function(){t.ui.warnDeprecation("onCapturedMouseKeyUp is deprecated, use onDocumentMouseKeyUp instead"),this.onDocumentMouseKeyUp.apply(this,arguments)},t.ui.ToolGroup.prototype.onMouseKeyUp=function(e){var i=this.findTargetTool(e);this.isDisabled()||!this.pressed||this.pressed!==i||e.which!==t.ui.MouseButtons.LEFT&&e.which!==t.ui.Keys.SPACE&&e.which!==t.ui.Keys.ENTER||(this.pressed.onSelect(),this.pressed=null,e.preventDefault(),e.stopPropagation()),this.pressed=null},t.ui.ToolGroup.prototype.onMouseOverFocus=function(t){var e=this.findTargetTool(t);this.pressed&&this.pressed===e&&this.pressed.setActive(!0)},t.ui.ToolGroup.prototype.onMouseOutBlur=function(t){var e=this.findTargetTool(t);this.pressed&&this.pressed===e&&this.pressed.setActive(!1)},t.ui.ToolGroup.prototype.findTargetTool=function(t){var i,n=e(t.target).closest(".oo-ui-tool-link");return n.length&&(i=n.parent().data("oo-ui-tool")),i&&!i.isDisabled()?i:null},t.ui.ToolGroup.prototype.onToolFactoryRegister=function(){this.populate()},t.ui.ToolGroup.prototype.getToolbar=function(){return this.toolbar},t.ui.ToolGroup.prototype.populate=function(){var t,e,i,n,o=this.toolbar.getToolFactory(),s={},a=[],r=[],l=this.toolbar.getToolFactory().getTools(this.include,this.exclude,this.promote,this.demote);for(t=0,e=l.length;t<e;t++)i=l[t],o.lookup(i)&&(this.toolbar.isToolAvailable(i)||this.tools[i])&&(this.toolbar.tools[i]=!0,(n=this.tools[i])||(this.tools[i]=n=o.create(i,this),n.updateTitle()),this.toolbar.reserveTool(n),a.push(n),s[i]=!0);for(i in this.tools)s[i]||(this.tools[i].destroy(),this.toolbar.releaseTool(this.tools[i]),r.push(this.tools[i]),delete this.tools[i]);r.length&&this.removeItems(r),a.length?this.$element.removeClass("oo-ui-toolGroup-empty"):this.$element.addClass("oo-ui-toolGroup-empty"),this.addItems(a),this.updateDisabled()},t.ui.ToolGroup.prototype.destroy=function(){var t;for(t in this.clearItems(),this.toolbar.getToolFactory().disconnect(this),this.tools)this.toolbar.releaseTool(this.tools[t]),this.tools[t].disconnect(this).destroy(),delete this.tools[t];this.$element.remove()},t.ui.ToolFactory=function(){t.ui.ToolFactory.parent.call(this)},t.inheritClass(t.ui.ToolFactory,t.Factory),t.ui.ToolFactory.prototype.getTools=function(e,i,n,o){var s,a,r,l,u,c=[],h={};for(r=t.simpleArrayDifference(this.extract(e),this.extract(i)),l=this.extract(n,h),u=this.extract(o,h),s=0,a=r.length;s<a;s++)h[r[s]]||c.push(r[s]);return l.concat(c).concat(u)},t.ui.ToolFactory.prototype.extract=function(e,i){var n,o,s,a,r,l=[];for(n=0,o=(e=Array.isArray(e)?e:[e]).length;n<o;n++)if("*"===(s=e[n]))for(a in this.registry)!(r=this.registry[a]).static.autoAddToCatchall||i&&i[a]||(l.push(a),i&&(i[a]=!0));else if("string"==typeof s&&(s={name:s}),t.isPlainObject(s))if(s.group)for(a in this.registry)(r=this.registry[a]).static.group!==s.group||!r.static.autoAddToGroup||i&&i[a]||(l.push(a),i&&(i[a]=!0));else!s.name||i&&i[s.name]||(l.push(s.name),i&&(i[s.name]=!0));return l},t.ui.ToolGroupFactory=function(){var e,i,n;for(t.Factory.call(this),e=0,i=(n=this.constructor.static.getDefaultClasses()).length;e<i;e++)this.register(n[e])},t.inheritClass(t.ui.ToolGroupFactory,t.Factory),t.ui.ToolGroupFactory.static.getDefaultClasses=function(){return[t.ui.BarToolGroup,t.ui.ListToolGroup,t.ui.MenuToolGroup]},t.ui.PopupTool=function(e,i){t.isPlainObject(e)&&void 0===i&&(e=(i=e).toolGroup),t.ui.PopupTool.parent.call(this,e,i),t.ui.mixin.PopupElement.call(this,i),this.popup.connect(this,{toggle:"onPopupToggle"}),this.popup.setAutoFlip(!1),this.popup.setPosition("bottom"===e.getToolbar().position?"above":"below"),this.$element.addClass("oo-ui-popupTool"),this.popup.$element.addClass("oo-ui-popupTool-popup"),this.toolbar.$popups.append(this.popup.$element)},t.inheritClass(t.ui.PopupTool,t.ui.Tool),t.mixinClass(t.ui.PopupTool,t.ui.mixin.PopupElement),t.ui.PopupTool.prototype.onSelect=function(){return this.isDisabled()||this.popup.toggle(),!1},t.ui.PopupTool.prototype.onUpdateState=function(){},t.ui.PopupTool.prototype.onPopupToggle=function(t){this.setActive(t),this.toolGroup.emit("active",t)},t.ui.ToolGroupTool=function(e,i){t.isPlainObject(e)&&void 0===i&&(e=(i=e).toolGroup),t.ui.ToolGroupTool.parent.call(this,e,i),this.innerToolGroup=this.createGroup(this.constructor.static.groupConfig),this.innerToolGroup.connect(this,{disable:"onToolGroupDisable",active:this.toolGroup.emit.bind(this.toolGroup,"active")}),this.$link.remove(),this.$element.addClass("oo-ui-toolGroupTool").append(this.innerToolGroup.$element)},t.inheritClass(t.ui.ToolGroupTool,t.ui.Tool),t.ui.ToolGroupTool.static.groupConfig={},t.ui.ToolGroupTool.prototype.onSelect=function(){return this.innerToolGroup.setActive(!this.innerToolGroup.active),!1},t.ui.ToolGroupTool.prototype.onToolGroupDisable=function(t){this.setDisabled(t)},t.ui.ToolGroupTool.prototype.onUpdateState=function(){this.setActive(!1)},t.ui.ToolGroupTool.prototype.createGroup=function(e){return"*"===e.include&&void 0===e.label&&(e.label=t.ui.msg("ooui-toolbar-more")),this.toolbar.getToolGroupFactory().create("list",this.toolbar,e)},t.ui.BarToolGroup=function(e,i){t.isPlainObject(e)&&void 0===i&&(e=(i=e).toolbar),t.ui.BarToolGroup.parent.call(this,e,i),this.$element.addClass("oo-ui-barToolGroup"),this.$group.addClass("oo-ui-barToolGroup-tools")},t.inheritClass(t.ui.BarToolGroup,t.ui.ToolGroup),t.ui.BarToolGroup.static.titleTooltips=!0,t.ui.BarToolGroup.static.accelTooltips=!0,t.ui.BarToolGroup.static.name="bar",t.ui.PopupToolGroup=function(i,n){t.isPlainObject(i)&&void 0===n&&(i=(n=i).toolbar),n=e.extend({indicator:void 0===n.indicator?"bottom"===i.position?"up":"down":n.indicator},n),t.ui.PopupToolGroup.parent.call(this,i,n),this.active=!1,this.dragging=!1,this.onPopupDocumentMouseKeyUpHandler=this.onPopupDocumentMouseKeyUp.bind(this),this.$handle=e("<span>"),t.ui.mixin.IconElement.call(this,n),t.ui.mixin.IndicatorElement.call(this,n),t.ui.mixin.LabelElement.call(this,n),t.ui.mixin.TitledElement.call(this,n),t.ui.mixin.FlaggedElement.call(this,n),t.ui.mixin.ClippableElement.call(this,e.extend({},n,{$clippable:this.$group})),t.ui.mixin.FloatableElement.call(this,e.extend({},n,{$floatable:this.$group,$floatableContainer:this.$handle,hideWhenOutOfView:!1,verticalPosition:"bottom"===this.toolbar.position?"above":"below"})),t.ui.mixin.TabIndexedElement.call(this,e.extend({},n,{$tabIndexed:this.$handle})),this.$handle.on({keydown:this.onHandleMouseKeyDown.bind(this),keyup:this.onHandleMouseKeyUp.bind(this),mousedown:this.onHandleMouseKeyDown.bind(this),mouseup:this.onHandleMouseKeyUp.bind(this)}),this.$handle.addClass("oo-ui-popupToolGroup-handle").attr("role","button").append(this.$icon,this.$label,this.$indicator),void 0!==n.header&&this.$group.prepend(e("<span>").addClass("oo-ui-popupToolGroup-header").text(n.header)),this.$element.addClass("oo-ui-popupToolGroup").prepend(this.$handle),this.$group.addClass("oo-ui-popupToolGroup-tools"),this.toolbar.$popups.append(this.$group)},t.inheritClass(t.ui.PopupToolGroup,t.ui.ToolGroup),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.IconElement),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.IndicatorElement),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.LabelElement),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.TitledElement),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.FlaggedElement),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.ClippableElement),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.FloatableElement),t.mixinClass(t.ui.PopupToolGroup,t.ui.mixin.TabIndexedElement),t.ui.PopupToolGroup.prototype.setDisabled=function(){t.ui.PopupToolGroup.parent.prototype.setDisabled.apply(this,arguments),this.isDisabled()&&this.isElementAttached()&&this.setActive(!1)},t.ui.PopupToolGroup.prototype.onPopupDocumentMouseKeyUp=function(t){var i=e(t.target);i.closest(".oo-ui-popupToolGroup")[0]!==this.$element[0]&&i.closest(".oo-ui-popupToolGroup-tools")[0]!==this.$group[0]&&this.setActive(!1)},t.ui.PopupToolGroup.prototype.onBlur=function(){t.ui.warnDeprecation("onBlur is deprecated, use onPopupDocumentMouseKeyUp instead"),this.onPopupDocumentMouseKeyUp.apply(this,arguments)},t.ui.PopupToolGroup.prototype.onMouseKeyUp=function(e){return this.isDisabled()||!this.pressed||this.pressed!==this.findTargetTool(e)||e.which!==t.ui.MouseButtons.LEFT&&e.which!==t.ui.Keys.SPACE&&e.which!==t.ui.Keys.ENTER||this.setActive(!1),t.ui.PopupToolGroup.parent.prototype.onMouseKeyUp.call(this,e)},t.ui.PopupToolGroup.prototype.onMouseKeyDown=function(i){var n,o,s;if(!this.isDisabled()&&i.which===t.ui.Keys.TAB){if(n=e(document.activeElement),o=t.ui.findFocusable(this.$group),n[0]===o[0]&&i.shiftKey)return this.$handle.focus(),!1;s=t.ui.findFocusable(this.$group,!0),n[0]!==s[0]||i.shiftKey||(this.$handle.focus(),this.setActive(!1))}return t.ui.PopupToolGroup.parent.prototype.onMouseKeyDown.call(this,i)},t.ui.PopupToolGroup.prototype.onHandleMouseKeyUp=function(e){if(!this.isDisabled()&&(e.which===t.ui.MouseButtons.LEFT||e.which===t.ui.Keys.SPACE||e.which===t.ui.Keys.ENTER))return!1},t.ui.PopupToolGroup.prototype.onHandleMouseKeyDown=function(e){var i;if(!this.isDisabled()){if(e.which===t.ui.Keys.TAB&&!e.shiftKey&&(i=t.ui.findFocusable(this.$group)).length)return i.focus(),!1;if(e.which===t.ui.MouseButtons.LEFT||e.which===t.ui.Keys.SPACE||e.which===t.ui.Keys.ENTER)return this.setActive(!this.active),!1}},t.ui.PopupToolGroup.prototype.isActive=function(){return this.active},t.ui.PopupToolGroup.prototype.setActive=function(t){var e,i;t=!!t,this.active!==t&&(this.active=t,t?(this.getElementDocument().addEventListener("mouseup",this.onPopupDocumentMouseKeyUpHandler,!0),this.getElementDocument().addEventListener("keyup",this.onPopupDocumentMouseKeyUpHandler,!0),this.$clippable.css("left",""),this.$element.addClass("oo-ui-popupToolGroup-active"),this.$group.addClass("oo-ui-popupToolGroup-active-tools"),this.togglePositioning(!0),this.toggleClipping(!0),this.setHorizontalPosition("start"),(this.isClippedHorizontally()||this.isFloatableOutOfView())&&this.setHorizontalPosition("end"),(this.isClippedHorizontally()||this.isFloatableOutOfView())&&(e=this.$clippableScrollableContainer.width(),i=this.$clippableScrollableContainer[0]===document.documentElement?0:this.$clippableScrollableContainer.offset().left,this.toggleClipping(!1),this.setHorizontalPosition("start"),this.$clippable.css({"margin-left":-(this.$element.offset().left-i),width:e}))):(this.getElementDocument().removeEventListener("mouseup",this.onPopupDocumentMouseKeyUpHandler,!0),this.getElementDocument().removeEventListener("keyup",this.onPopupDocumentMouseKeyUpHandler,!0),this.$element.removeClass("oo-ui-popupToolGroup-active"),this.$group.removeClass("oo-ui-popupToolGroup-active-tools"),this.togglePositioning(!1),this.toggleClipping(!1)),this.emit("active",this.active),this.updateThemeClasses())},t.ui.ListToolGroup=function(e,i){t.isPlainObject(e)&&void 0===i&&(e=(i=e).toolbar),i=i||{},this.allowCollapse=i.allowCollapse,this.forceExpand=i.forceExpand,this.expanded=void 0!==i.expanded&&i.expanded,this.collapsibleTools=[],t.ui.ListToolGroup.parent.call(this,e,i),this.$element.addClass("oo-ui-listToolGroup"),this.$group.addClass("oo-ui-listToolGroup-tools")},t.inheritClass(t.ui.ListToolGroup,t.ui.PopupToolGroup),t.ui.ListToolGroup.static.name="list",t.ui.ListToolGroup.prototype.populate=function(){var e,i,n=[];for(t.ui.ListToolGroup.parent.prototype.populate.call(this),void 0!==this.allowCollapse?n=this.allowCollapse:void 0!==this.forceExpand&&(n=t.simpleArrayDifference(Object.keys(this.tools),this.forceExpand)),this.collapsibleTools=[],e=0,i=n.length;e<i;e++)void 0!==this.tools[n[e]]&&this.collapsibleTools.push(this.tools[n[e]]);this.$group.append(this.getExpandCollapseTool().$element),this.getExpandCollapseTool().toggle(0!==this.collapsibleTools.length),this.updateCollapsibleState()},t.ui.ListToolGroup.prototype.getExpandCollapseTool=function(){var e;return void 0===this.expandCollapseTool&&(e=function(){e.parent.apply(this,arguments)},t.inheritClass(e,t.ui.Tool),e.prototype.onSelect=function(){this.toolGroup.expanded=!this.toolGroup.expanded,this.toolGroup.updateCollapsibleState(),this.setActive(!1)},e.prototype.onUpdateState=function(){},e.static.name="more-fewer",this.expandCollapseTool=new e(this)),this.expandCollapseTool},t.ui.ListToolGroup.prototype.onMouseKeyUp=function(i){return!e(i.target).closest(".oo-ui-tool-name-more-fewer").length||i.which!==t.ui.MouseButtons.LEFT&&i.which!==t.ui.Keys.SPACE&&i.which!==t.ui.Keys.ENTER?t.ui.ListToolGroup.parent.prototype.onMouseKeyUp.call(this,i):t.ui.ListToolGroup.parent.parent.prototype.onMouseKeyUp.call(this,i)},t.ui.ListToolGroup.prototype.updateCollapsibleState=function(){var e,i,n;for(i="bottom"!==this.toolbar.position?this.expanded?"collapse":"expand":this.expanded?"expand":"collapse",this.getExpandCollapseTool().setIcon(i).setTitle(t.ui.msg(this.expanded?"ooui-toolgroup-collapse":"ooui-toolgroup-expand")),e=0,n=this.collapsibleTools.length;e<n;e++)this.collapsibleTools[e].toggle(this.expanded);this.clip()},t.ui.MenuToolGroup=function(e,i){t.isPlainObject(e)&&void 0===i&&(e=(i=e).toolbar),i=i||{},t.ui.MenuToolGroup.parent.call(this,e,i),this.toolbar.connect(this,{updateState:"onUpdateState"}),this.$element.addClass("oo-ui-menuToolGroup"),this.$group.addClass("oo-ui-menuToolGroup-tools")},t.inheritClass(t.ui.MenuToolGroup,t.ui.PopupToolGroup),t.ui.MenuToolGroup.static.name="menu",t.ui.MenuToolGroup.prototype.onUpdateState=function(){var t,e=[];for(t in this.tools)this.tools[t].isActive()&&e.push(this.tools[t].getTitle());this.setLabel(e.join(", ")||" ")}}(t),
/*!
* OOUI v0.30.0
* https://www.mediawiki.org/wiki/OOUI
*
* Copyright 2011–2018 OOUI Team and other contributors.
* Released under the MIT license
* http://oojs.mit-license.org
*
* Date: 2018-12-20T06:10:28Z
*/
function(t){"use strict";t.ui.ActionWidget=function(i){i=e.extend({framed:!1},i),t.ui.ActionWidget.parent.call(this,i),t.ui.mixin.PendingElement.call(this,i),this.action=i.action||"",this.modes=i.modes||[],this.width=0,this.height=0,this.$element.addClass("oo-ui-actionWidget")},t.inheritClass(t.ui.ActionWidget,t.ui.ButtonWidget),t.mixinClass(t.ui.ActionWidget,t.ui.mixin.PendingElement),t.ui.ActionWidget.prototype.hasMode=function(t){return-1!==this.modes.indexOf(t)},t.ui.ActionWidget.prototype.getAction=function(){return this.action},t.ui.ActionWidget.prototype.getModes=function(){return this.modes.slice()},t.ui.ActionSet=function(e){e=e||{},t.EventEmitter.call(this),this.list=[],this.categories={actions:"getAction",flags:"getFlags",modes:"getModes"},this.categorized={},this.special={},this.others=[],this.organized=!1,this.changing=!1,this.changed=!1},t.mixinClass(t.ui.ActionSet,t.EventEmitter),t.ui.ActionSet.static.specialFlags=["safe","primary"],t.ui.ActionSet.prototype.onActionChange=function(){this.organized=!1,this.changing?this.changed=!0:this.emit("change")},t.ui.ActionSet.prototype.isSpecial=function(t){var e;for(e in this.special)if(t===this.special[e])return!0;return!1},t.ui.ActionSet.prototype.get=function(t){var e,i,n,o,s,a,r,l;if(t){for(o in this.organize(),l=[],this.categorized)if(n=t[o])for(Array.isArray(n)||(n=[n]),e=0,i=n.length;e<i;e++)s=this.categorized[o][n[e]],Array.isArray(s)&&l.push.apply(l,s);for(e=0,i=l.length;e<i;e++)r=l[e],(void 0!==t.visible&&r.isVisible()!==t.visible||void 0!==t.disabled&&r.isDisabled()!==t.disabled)&&(l.splice(e,1),i--,e--);for(e=0,i=l.length;e<i;e++)for(r=l[e],a=l.lastIndexOf(r);a!==e;)l.splice(a,1),i--,a=l.lastIndexOf(r);return l}return this.list.slice()},t.ui.ActionSet.prototype.getSpecial=function(){return this.organize(),e.extend({},this.special)},t.ui.ActionSet.prototype.getOthers=function(){return this.organize(),this.others.slice()},t.ui.ActionSet.prototype.setMode=function(t){var e,i,n;for(this.changing=!0,e=0,i=this.list.length;e<i;e++)(n=this.list[e]).toggle(n.hasMode(t));return this.organized=!1,this.changing=!1,this.emit("change"),this},t.ui.ActionSet.prototype.setAbilities=function(t){var e,i,n,o;for(e=0,i=this.list.length;e<i;e++)void 0!==t[n=(o=this.list[e]).getAction()]&&o.setDisabled(!t[n]);return this},t.ui.ActionSet.prototype.forEach=function(t,e){return this.changed=!1,this.changing=!0,this.get(t).forEach(e),this.changing=!1,this.changed&&this.emit("change"),this},t.ui.ActionSet.prototype.add=function(t){var e,i,n;for(this.changing=!0,e=0,i=t.length;e<i;e++)(n=t[e]).connect(this,{click:["emit","click",n],toggle:["onActionChange"]}),this.list.push(n);return this.organized=!1,this.emit("add",t),this.changing=!1,this.emit("change"),this},t.ui.ActionSet.prototype.remove=function(t){var e,i,n,o;for(this.changing=!0,e=0,i=t.length;e<i;e++)o=t[e],-1!==(n=this.list.indexOf(o))&&(o.disconnect(this),this.list.splice(n,1));return this.organized=!1,this.emit("remove",t),this.changing=!1,this.emit("change"),this},t.ui.ActionSet.prototype.clear=function(){var t,e,i=this.list.slice();for(this.changing=!0,t=0,e=this.list.length;t<e;t++)this.list[t].disconnect(this);return this.list=[],this.organized=!1,this.emit("remove",i),this.changing=!1,this.emit("change"),this},t.ui.ActionSet.prototype.organize=function(){var t,e,i,n,o,s,a,r,l,u,c=this.constructor.static.specialFlags;if(!this.organized){for(this.categorized={},this.special={},this.others=[],t=0,e=this.list.length;t<e;t++)if((s=this.list[t]).isVisible()){for(a in this.categories)for(this.categorized[a]||(this.categorized[a]={}),r=s[this.categories[a]](),Array.isArray(r)||(r=[r]),i=0,n=r.length;i<n;i++)l=r[i],this.categorized[a][l]||(this.categorized[a][l]=[]),this.categorized[a][l].push(s);for(u=!1,i=0,n=c.length;i<n;i++)if(o=c[i],!this.special[o]&&s.hasFlag(o)){this.special[o]=s,u=!0;break}u||this.others.push(s)}this.organized=!0}return this},t.ui.Error=function(i,n){t.isPlainObject(i)&&void 0===n&&(i=(n=i).message),n=n||{},this.message=i instanceof e?i:String(i),this.recoverable=void 0===n.recoverable||!!n.recoverable,this.warning=!!n.warning},t.initClass(t.ui.Error),t.ui.Error.prototype.isRecoverable=function(){return this.recoverable},t.ui.Error.prototype.isWarning=function(){return this.warning},t.ui.Error.prototype.getMessage=function(){return this.message instanceof e?this.message.clone():e("<div>").text(this.message).contents()},t.ui.Error.prototype.getMessageText=function(){return this.message instanceof e?this.message.text():this.message},t.ui.Process=function(t,e){this.steps=[],void 0!==t&&this.next(t,e)},t.initClass(t.ui.Process),t.ui.Process.prototype.execute=function(){var i,n,o;function s(i){return function(){var n,o=i.callback.call(i.context);if(!1===o)return e.Deferred().reject([]).promise();if("number"==typeof o){if(o<0)throw new Error("Cannot go back in time: flux capacitor is out of service");return n=e.Deferred(),setTimeout(n.resolve,o),n.promise()}return o instanceof t.ui.Error?e.Deferred().reject([o]).promise():Array.isArray(o)&&o.length&&o[0]instanceof t.ui.Error?e.Deferred().reject(o).promise():o&&"function"==typeof o.promise?o.promise():e.Deferred().resolve().promise()}}if(this.steps.length)for(o=s(this.steps[0])(),i=1,n=this.steps.length;i<n;i++)o=o.then(s(this.steps[i]));else o=e.Deferred().resolve().promise();return o},t.ui.Process.prototype.createStep=function(t,e){if("number"==typeof t||"function"==typeof t.promise)return{callback:function(){return t},context:null};if("function"==typeof t)return{callback:t,context:e};throw new Error("Cannot create process step: number, promise or function expected")},t.ui.Process.prototype.first=function(t,e){return this.steps.unshift(this.createStep(t,e)),this},t.ui.Process.prototype.next=function(t,e){return this.steps.push(this.createStep(t,e)),this},t.ui.WindowInstance=function(){var t={opening:e.Deferred(),opened:e.Deferred(),closing:e.Deferred(),closed:e.Deferred()};this.deferreds=t,this.opening=t.opening.promise(),this.opened=this.opening.then(function(){return t.opened}),this.closing=this.opened.then(function(){return t.closing}),this.closed=this.closing.then(function(){return t.closed})},t.initClass(t.ui.WindowInstance),t.ui.WindowInstance.prototype.isOpening=function(){return"pending"===this.deferreds.opened.state()},t.ui.WindowInstance.prototype.isOpened=function(){return"resolved"===this.deferreds.opened.state()&&"pending"===this.deferreds.closing.state()},t.ui.WindowInstance.prototype.isClosing=function(){return"resolved"===this.deferreds.closing.state()&&"pending"===this.deferreds.closed.state()},t.ui.WindowInstance.prototype.isClosed=function(){return"resolved"===this.deferreds.closed.state()},t.ui.WindowManager=function(e){e=e||{},t.ui.WindowManager.parent.call(this,e),t.EventEmitter.call(this),this.factory=e.factory,this.modal=void 0===e.modal||!!e.modal,this.windows={},this.compatOpened=null,this.preparingToOpen=null,this.preparingToClose=null,this.currentWindow=null,this.globalEvents=!1,this.$returnFocusTo=null,this.$ariaHidden=null,this.onWindowResizeTimeout=null,this.onWindowResizeHandler=this.onWindowResize.bind(this),this.afterWindowResizeHandler=this.afterWindowResize.bind(this),this.$element.addClass("oo-ui-windowManager").toggleClass("oo-ui-windowManager-modal",this.modal),this.modal&&this.$element.attr("aria-hidden",!0)},t.inheritClass(t.ui.WindowManager,t.ui.Element),t.mixinClass(t.ui.WindowManager,t.EventEmitter),t.ui.WindowManager.static.sizes={small:{width:300},medium:{width:500},large:{width:700},larger:{width:900},full:{width:"100%",height:"100%"}},t.ui.WindowManager.static.defaultSize="medium",t.ui.WindowManager.prototype.onWindowResize=function(){clearTimeout(this.onWindowResizeTimeout),this.onWindowResizeTimeout=setTimeout(this.afterWindowResizeHandler,200)},t.ui.WindowManager.prototype.afterWindowResize=function(){var t=document.activeElement;this.currentWindow&&(this.updateWindowSize(this.currentWindow),t!==document.activeElement&&t.focus())},t.ui.WindowManager.prototype.isOpening=function(t){return t===this.currentWindow&&!!this.lifecycle&&this.lifecycle.isOpening()},t.ui.WindowManager.prototype.isClosing=function(t){return t===this.currentWindow&&!!this.lifecycle&&this.lifecycle.isClosing()},t.ui.WindowManager.prototype.isOpened=function(t){return t===this.currentWindow&&!!this.lifecycle&&this.lifecycle.isOpened()},t.ui.WindowManager.prototype.hasWindow=function(t){var e;for(e in this.windows)if(this.windows[e]===t)return!0;return!1},t.ui.WindowManager.prototype.getSetupDelay=function(){return 0},t.ui.WindowManager.prototype.getReadyDelay=function(){return this.modal?t.ui.theme.getDialogTransitionDuration():0},t.ui.WindowManager.prototype.getHoldDelay=function(){return 0},t.ui.WindowManager.prototype.getTeardownDelay=function(){return this.modal?t.ui.theme.getDialogTransitionDuration():0},t.ui.WindowManager.prototype.getWindow=function(i){var n=e.Deferred(),o=this.windows[i];return o instanceof t.ui.Window?n.resolve(o):this.factory?this.factory.lookup(i)?(o=this.factory.create(i),this.addWindows([o]),n.resolve(o)):n.reject(new t.ui.Error("Cannot auto-instantiate window: symbolic name is unrecognized by the factory")):n.reject(new t.ui.Error("Cannot get unmanaged window: symbolic name unrecognized as a managed window")),n.promise()},t.ui.WindowManager.prototype.getCurrentWindow=function(){return this.currentWindow},t.ui.WindowManager.prototype.openWindow=function(i,n,o,s){var a,r=this;return n=n||{},o=o||new t.ui.WindowInstance,s=s||e.Deferred(),["state","always","catch","pipe","then","promise","progress","done","fail"].forEach(function(e){o[e]=function(){return t.ui.warnDeprecation("Using the return value of openWindow as a promise is deprecated. Use .openWindow( ... ).opening."+e+"( ... ) instead."),s[e].apply(this,arguments)}}),"string"==typeof i?(this.getWindow(i).then(function(t){r.openWindow(t,n,o,s)},function(t){o.deferreds.opening.reject(t)}),o):(this.hasWindow(i)?this.lifecycle&&this.lifecycle.isOpened()?a="Cannot open window: another window is open":(this.preparingToOpen||this.lifecycle&&this.lifecycle.isOpening())&&(a="Cannot open window: another window is opening"):a="Cannot open window: window is not attached to manager",a?(s.reject(new t.ui.Error(a)),o.deferreds.opening.reject(new t.ui.Error(a)),o):(this.preparingToOpen=e.when(this.lifecycle&&this.lifecycle.closed),this.preparingToOpen.done(function(){r.modal&&(r.toggleGlobalEvents(!0),r.toggleAriaIsolation(!0)),r.$returnFocusTo=void 0!==n.$returnFocusTo?n.$returnFocusTo:e(document.activeElement),r.currentWindow=i,r.lifecycle=o,r.preparingToOpen=null,r.emit("opening",i,s,n),o.deferreds.opening.resolve(n),setTimeout(function(){r.compatOpened=e.Deferred(),i.setup(n).then(function(){s.notify({state:"setup"}),setTimeout(function(){i.ready(n).then(function(){s.notify({state:"ready"}),o.deferreds.opened.resolve(n),s.resolve(r.compatOpened.promise(),n)},function(){o.deferreds.opened.reject(),s.reject(),r.closeWindow(i)})},r.getReadyDelay())},function(){o.deferreds.opened.reject(),s.reject(),r.closeWindow(i)})},r.getSetupDelay())}),o))},t.ui.WindowManager.prototype.closeWindow=function(i,n){var o,s,a=this,r=e.Deferred(),l=this.lifecycle;return"string"==typeof i?i=this.windows[i]:this.hasWindow(i)||(i=null),l?i?i!==this.currentWindow||this.lifecycle.isClosed()?o="Cannot close window: window already closed with different data":(this.preparingToClose||this.lifecycle.isClosing())&&(o="Cannot close window: window already closing with different data"):o="Cannot close window: window is not attached to manager":o="Cannot close window: no window is currently open",o&&((l=new t.ui.WindowInstance).deferreds.opening.resolve({}),l.deferreds.opened.resolve({})),["state","always","catch","pipe","then","promise","progress","done","fail"].forEach(function(e){l[e]=function(){return t.ui.warnDeprecation("Using the return value of closeWindow as a promise is deprecated. Use .closeWindow( ... ).closed."+e+"( ... ) instead."),r[e].apply(this,arguments)}}),o?(r.reject(new t.ui.Error(o)),l.deferreds.closing.reject(new t.ui.Error(o)),l):(this.preparingToClose=e.when(this.lifecycle.opened),this.preparingToClose.always(function(){a.preparingToClose=null,a.emit("closing",i,r,n),l.deferreds.closing.resolve(n),s=a.compatOpened,a.compatOpened=null,s.resolve(r.promise(),n),setTimeout(function(){i.hold(n).then(function(){r.notify({state:"hold"}),setTimeout(function(){i.teardown(n).then(function(){r.notify({state:"teardown"}),a.modal&&(a.toggleGlobalEvents(!1),a.toggleAriaIsolation(!1)),a.$returnFocusTo&&a.$returnFocusTo.length&&a.$returnFocusTo[0].focus(),a.currentWindow=null,a.lifecycle=null,l.deferreds.closed.resolve(n),r.resolve(n)})},a.getTeardownDelay())})},a.getHoldDelay())}),l)},t.ui.WindowManager.prototype.addWindows=function(e){var i,n,o,s,a;if(Array.isArray(e))for(a={},i=0,n=e.length;i<n;i++){if(!(s=e[i].constructor.static.name))throw new Error("Windows must have a `name` static property defined.");a[s]=e[i]}else t.isPlainObject(e)&&(a=e);for(s in a)o=a[s],this.windows[s]=o.toggle(!1),this.$element.append(o.$element),o.setManager(this)},t.ui.WindowManager.prototype.removeWindows=function(t){var i,n,o,s,a,r=this,l=[],u=function(t,e){delete r.windows[t],e.$element.detach()};for(i=0,n=t.length;i<n;i++){if(s=t[i],!(o=this.windows[s]))throw new Error("Cannot remove window");a=u.bind(null,s,o),l.push(this.closeWindow(s).closed.then(a,a))}return e.when.apply(e,l)},t.ui.WindowManager.prototype.clearWindows=function(){return this.removeWindows(Object.keys(this.windows))},t.ui.WindowManager.prototype.updateWindowSize=function(t){var e;if(t===this.currentWindow)return e="full"===t.getSize(),this.$element.toggleClass("oo-ui-windowManager-fullscreen",e),this.$element.toggleClass("oo-ui-windowManager-floating",!e),t.setDimensions(t.getSizeProperties()),this.emit("resize",t),this},t.ui.WindowManager.prototype.toggleGlobalEvents=function(t){var i,n,o=e(this.getElementDocument().body),s=o.data("windowManagerGlobalEvents")||0;return(t=void 0===t?!!this.globalEvents:!!t)?this.globalEvents||(e(this.getElementWindow()).on({"orientationchange resize":this.onWindowResizeHandler}),0===s&&(i=window.innerWidth-document.documentElement.clientWidth,n=parseFloat(o.css("margin-right"))||0,o.addClass("oo-ui-windowManager-modal-active"),o.css("margin-right",n+i)),s++,this.globalEvents=!0):this.globalEvents&&(e(this.getElementWindow()).off({"orientationchange resize":this.onWindowResizeHandler}),0===--s&&(o.removeClass("oo-ui-windowManager-modal-active"),o.css("margin-right","")),this.globalEvents=!1),o.data("windowManagerGlobalEvents",s),this},t.ui.WindowManager.prototype.toggleAriaIsolation=function(t){var i;return(t=void 0===t?!this.$ariaHidden:!!t)?this.$ariaHidden||(i=0===(i=this.$element.parentsUntil("body").last()).length?this.$element:i,this.$element.removeAttr("aria-hidden"),this.$ariaHidden=e("body").children().not("script").not(i).attr("aria-hidden",!0)):this.$ariaHidden&&(this.$ariaHidden.removeAttr("aria-hidden"),this.$ariaHidden=null,this.$element.attr("aria-hidden",!0)),this},t.ui.WindowManager.prototype.destroy=function(){this.toggleGlobalEvents(!1),this.toggleAriaIsolation(!1),this.clearWindows(),this.$element.remove()},t.ui.Window=function(i){i=i||{},t.ui.Window.parent.call(this,i),t.EventEmitter.call(this),this.manager=null,this.size=i.size||this.constructor.static.size,this.$frame=e("<div>"),this.$overlay=e("<div>"),this.$content=e("<div>"),this.$focusTrapBefore=e("<div>").prop("tabIndex",0),this.$focusTrapAfter=e("<div>").prop("tabIndex",0),this.$focusTraps=this.$focusTrapBefore.add(this.$focusTrapAfter),this.$overlay.addClass("oo-ui-window-overlay"),this.$content.addClass("oo-ui-window-content").attr("tabindex",0),this.$frame.addClass("oo-ui-window-frame").append(this.$focusTrapBefore,this.$content,this.$focusTrapAfter),this.$element.addClass("oo-ui-window").append(this.$frame,this.$overlay),this.visible=!1,this.$element.addClass("oo-ui-element-hidden")},t.inheritClass(t.ui.Window,t.ui.Element),t.mixinClass(t.ui.Window,t.EventEmitter),t.ui.Window.static.size="medium",t.ui.Window.prototype.onMouseDown=function(t){if(t.target===this.$element[0])return!1},t.ui.Window.prototype.isInitialized=function(){return!!this.manager},t.ui.Window.prototype.isVisible=function(){return this.visible},t.ui.Window.prototype.isOpening=function(){return this.manager.isOpening(this)},t.ui.Window.prototype.isClosing=function(){return this.manager.isClosing(this)},t.ui.Window.prototype.isOpened=function(){return this.manager.isOpened(this)},t.ui.Window.prototype.getManager=function(){return this.manager},t.ui.Window.prototype.getSize=function(){var e=t.ui.Element.static.getDimensions(this.getElementWindow()),i=this.manager.constructor.static.sizes,n=this.size;return i[n]||(n=this.manager.constructor.static.defaultSize),"full"!==n&&e.rect.right-e.rect.left<i[n].width&&(n="full"),n},t.ui.Window.prototype.getSizeProperties=function(){return this.manager.constructor.static.sizes[this.getSize()]},t.ui.Window.prototype.withoutSizeTransitions=function(t){var e=this.$frame.css("transition-property")+" "+this.$frame.css("transition-duration")+" "+this.$frame.css("transition-timing-function")+" "+this.$frame.css("transition-delay");this.$frame.css("transition","none"),t(),this.$frame.height(),this.$frame.css("transition",e)},t.ui.Window.prototype.getContentHeight=function(){var t,e=this,i=this.$body[0].style,n=this.$frame[0].style;return this.withoutSizeTransitions(function(){var o=n.height,s=i.position;n.height="1px",i.position="relative",t=e.getBodyHeight(),n.height=o,i.position=s}),this.$frame.outerHeight()-this.$frame.innerHeight()+(this.$head.outerHeight(!0)+t+this.$foot.outerHeight(!0))},t.ui.Window.prototype.getBodyHeight=function(){return this.$body[0].scrollHeight},t.ui.Window.prototype.getDir=function(){return t.ui.Element.static.getDir(this.$content)||"ltr"},t.ui.Window.prototype.getSetupProcess=function(){return new t.ui.Process},t.ui.Window.prototype.getReadyProcess=function(){return new t.ui.Process},t.ui.Window.prototype.getHoldProcess=function(){return new t.ui.Process},t.ui.Window.prototype.getTeardownProcess=function(){return new t.ui.Process},t.ui.Window.prototype.setManager=function(t){if(this.manager)throw new Error("Cannot set window manager, window already has a manager");return this.manager=t,this.initialize(),this},t.ui.Window.prototype.setSize=function(t){return this.size=t,this.updateSize(),this},t.ui.Window.prototype.updateSize=function(){if(!this.manager)throw new Error("Cannot update window size, must be attached to a manager");return this.manager.updateWindowSize(this),this},t.ui.Window.prototype.setDimensions=function(t){var e,i=this,n=this.$frame[0].style;return void 0===t.height?this.withoutSizeTransitions(function(){var o=n.width;i.$frame.css("width",t.width||""),e=i.getContentHeight(),n.width=o}):e=t.height,this.$frame.css({width:t.width||"",minWidth:t.minWidth||"",maxWidth:t.maxWidth||"",height:e||"",minHeight:t.minHeight||"",maxHeight:t.maxHeight||""}),this},t.ui.Window.prototype.initialize=function(){if(!this.manager)throw new Error("Cannot initialize window, must be attached to a manager");return this.$head=e("<div>"),this.$body=e("<div>"),this.$foot=e("<div>"),this.$document=e(this.getElementDocument()),this.$element.on("mousedown",this.onMouseDown.bind(this)),this.$head.addClass("oo-ui-window-head"),this.$body.addClass("oo-ui-window-body"),this.$foot.addClass("oo-ui-window-foot"),this.$content.append(this.$head,this.$body,this.$foot),this},t.ui.Window.prototype.onFocusTrapFocused=function(e){var i=this.$focusTrapBefore.is(e.target),n=t.ui.findFocusable(this.$content,i);n?n.focus():this.$content.focus()},t.ui.Window.prototype.open=function(t){if(!this.manager)throw new Error("Cannot open window, must be attached to a manager");return this.manager.openWindow(this,t)},t.ui.Window.prototype.close=function(t){if(!this.manager)throw new Error("Cannot close window, must be attached to a manager");return this.manager.closeWindow(this,t)},t.ui.Window.prototype.setup=function(e){var i=this;return this.toggle(!0),this.focusTrapHandler=t.ui.bind(this.onFocusTrapFocused,this),this.$focusTraps.on("focus",this.focusTrapHandler),this.getSetupProcess(e).execute().then(function(){i.updateSize(),i.$element.addClass("oo-ui-window-active oo-ui-window-setup").width(),i.$content.addClass("oo-ui-window-content-setup").width()})},t.ui.Window.prototype.ready=function(t){var e=this;return this.$content.focus(),this.getReadyProcess(t).execute().then(function(){e.$element.addClass("oo-ui-window-ready").width(),e.$content.addClass("oo-ui-window-content-ready").width()})},t.ui.Window.prototype.hold=function(e){var i=this;return this.getHoldProcess(e).execute().then(function(){var e=i.$content.find(t.ui.Element.static.getDocument(i.$content).activeElement);e.length&&e[0].blur(),i.$element.removeClass("oo-ui-window-ready oo-ui-window-setup").width(),i.$content.removeClass("oo-ui-window-content-ready oo-ui-window-content-setup").width()})},t.ui.Window.prototype.teardown=function(t){var e=this;return this.getTeardownProcess(t).execute().then(function(){e.$element.removeClass("oo-ui-window-active").width(),e.$focusTraps.off("focus",e.focusTrapHandler),e.toggle(!1)})},t.ui.Dialog=function(e){t.ui.Dialog.parent.call(this,e),t.ui.mixin.PendingElement.call(this),this.actions=new t.ui.ActionSet,this.attachedActions=[],this.currentAction=null,this.onDialogKeyDownHandler=this.onDialogKeyDown.bind(this),this.actions.connect(this,{click:"onActionClick",change:"onActionsChange"}),this.$element.addClass("oo-ui-dialog").attr("role","dialog")},t.inheritClass(t.ui.Dialog,t.ui.Window),t.mixinClass(t.ui.Dialog,t.ui.mixin.PendingElement),t.ui.Dialog.static.name="",t.ui.Dialog.static.title="",t.ui.Dialog.static.actions=[],t.ui.Dialog.static.escapable=!0,t.ui.Dialog.prototype.onDialogKeyDown=function(e){var i;e.which===t.ui.Keys.ESCAPE&&this.constructor.static.escapable?(this.executeAction(""),e.preventDefault(),e.stopPropagation()):e.which===t.ui.Keys.ENTER&&(e.ctrlKey||e.metaKey)&&(i=this.actions.get({flags:"primary",visible:!0,disabled:!1})).length>0&&(this.executeAction(i[0].getAction()),e.preventDefault(),e.stopPropagation())},t.ui.Dialog.prototype.onActionClick=function(t){this.isPending()||this.executeAction(t.getAction())},t.ui.Dialog.prototype.onActionsChange=function(){this.detachActions(),this.isClosing()||(this.attachActions(),this.isOpening()||this.updateSize())},t.ui.Dialog.prototype.getActions=function(){return this.actions},t.ui.Dialog.prototype.getActionProcess=function(e){return(new t.ui.Process).next(function(){e||this.close()},this)},t.ui.Dialog.prototype.getSetupProcess=function(e){return e=e||{},t.ui.Dialog.parent.prototype.getSetupProcess.call(this,e).next(function(){var t=this.constructor.static,i=void 0!==e.actions?e.actions:t.actions,n=void 0!==e.title?e.title:t.title;this.title.setLabel(n).setTitle(n),this.actions.add(this.getActionWidgets(i)),this.$element.on("keydown",this.onDialogKeyDownHandler)},this)},t.ui.Dialog.prototype.getTeardownProcess=function(e){return t.ui.Dialog.parent.prototype.getTeardownProcess.call(this,e).first(function(){this.$element.off("keydown",this.onDialogKeyDownHandler),this.actions.clear(),this.currentAction=null},this)},t.ui.Dialog.prototype.initialize=function(){t.ui.Dialog.parent.prototype.initialize.call(this),this.title=new t.ui.LabelWidget,this.$content.addClass("oo-ui-dialog-content"),this.$element.attr("aria-labelledby",this.title.getElementId()),this.setPendingElement(this.$head)},t.ui.Dialog.prototype.getActionWidgets=function(t){var e,i,n=[];for(e=0,i=t.length;e<i;e++)n.push(this.getActionWidget(t[e]));return n},t.ui.Dialog.prototype.getActionWidget=function(e){return new t.ui.ActionWidget(this.getActionWidgetConfig(e))},t.ui.Dialog.prototype.getActionWidgetConfig=function(t){return t},t.ui.Dialog.prototype.attachActions=function(){this.attachedActions=this.actions.get()},t.ui.Dialog.prototype.detachActions=function(){var t,e;for(t=0,e=this.attachedActions.length;t<e;t++)this.attachedActions[t].$element.detach();return this.attachedActions=[],this},t.ui.Dialog.prototype.executeAction=function(t){return this.pushPending(),this.currentAction=t,this.getActionProcess(t).execute().always(this.popPending.bind(this))},t.ui.MessageDialog=function(e){t.ui.MessageDialog.parent.call(this,e),this.verticalActionLayout=null,this.$element.addClass("oo-ui-messageDialog")},t.inheritClass(t.ui.MessageDialog,t.ui.Dialog),t.ui.MessageDialog.static.name="message",t.ui.MessageDialog.static.size="small",t.ui.MessageDialog.static.title=null,t.ui.MessageDialog.static.message=null,t.ui.MessageDialog.static.actions=[{action:"accept",label:t.ui.deferMsg("ooui-dialog-message-accept"),flags:"primary"},{action:"reject",label:t.ui.deferMsg("ooui-dialog-message-reject"),flags:"safe"}],t.ui.MessageDialog.prototype.toggleVerticalActionLayout=function(t){return(t=void 0===t?!this.verticalActionLayout:!!t)!==this.verticalActionLayout&&(this.verticalActionLayout=t,this.$actions.toggleClass("oo-ui-messageDialog-actions-vertical",t).toggleClass("oo-ui-messageDialog-actions-horizontal",!t)),this},t.ui.MessageDialog.prototype.getActionProcess=function(e){return e?new t.ui.Process(function(){this.close({action:e})},this):t.ui.MessageDialog.parent.prototype.getActionProcess.call(this,e)},t.ui.MessageDialog.prototype.getSetupProcess=function(e){return e=e||{},t.ui.MessageDialog.parent.prototype.getSetupProcess.call(this,e).next(function(){this.title.setLabel(void 0!==e.title?e.title:this.constructor.static.title),this.message.setLabel(void 0!==e.message?e.message:this.constructor.static.message),this.size=void 0!==e.size?e.size:this.constructor.static.size},this)},t.ui.MessageDialog.prototype.getReadyProcess=function(e){return e=e||{},t.ui.MessageDialog.parent.prototype.getReadyProcess.call(this,e).next(function(){var t=this.actions.get();(t=t.filter(function(t){return t.getFlags().indexOf("primary")>-1})).length>0&&t[0].focus()},this)},t.ui.MessageDialog.prototype.getBodyHeight=function(){var e,i,n=this.container.$element;return i=n[0].style.overflow,n[0].style.overflow="hidden",t.ui.Element.static.reconsiderScrollbars(n[0]),e=this.text.$element.outerHeight(!0),n[0].style.overflow=i,e},t.ui.MessageDialog.prototype.setDimensions=function(e){var i=this,n=this.container.$element;return t.ui.MessageDialog.parent.prototype.setDimensions.call(this,e),setTimeout(function(){var e=n[0].style.overflow,i=document.activeElement;n[0].style.overflow="hidden",t.ui.Element.static.reconsiderScrollbars(n[0]),i&&i!==document.activeElement&&i.focus&&i.focus(),n[0].style.overflow=e},300),i.fitActions(),setTimeout(function(){i.fitActions()},300),this},t.ui.MessageDialog.prototype.initialize=function(){t.ui.MessageDialog.parent.prototype.initialize.call(this),this.$actions=e("<div>"),this.container=new t.ui.PanelLayout({scrollable:!0,classes:["oo-ui-messageDialog-container"]}),this.text=new t.ui.PanelLayout({padded:!0,expanded:!1,classes:["oo-ui-messageDialog-text"]}),this.message=new t.ui.LabelWidget({classes:["oo-ui-messageDialog-message"]}),this.title.$element.addClass("oo-ui-messageDialog-title"),this.$content.addClass("oo-ui-messageDialog-content"),this.container.$element.append(this.text.$element),this.text.$element.append(this.title.$element,this.message.$element),this.$body.append(this.container.$element),this.$actions.addClass("oo-ui-messageDialog-actions"),this.$foot.append(this.$actions)},t.ui.MessageDialog.prototype.getActionWidgetConfig=function(t){return e.extend({},t,{framed:!1})},t.ui.MessageDialog.prototype.attachActions=function(){var e,i,n,o;for(t.ui.MessageDialog.parent.prototype.attachActions.call(this),n=this.actions.getSpecial(),o=this.actions.getOthers(),n.safe&&(this.$actions.append(n.safe.$element),n.safe.toggleFramed(!0)),e=0,i=o.length;e<i;e++)this.$actions.append(o[e].$element),o[e].toggleFramed(!0);n.primary&&(this.$actions.append(n.primary.$element),n.primary.toggleFramed(!0))},t.ui.MessageDialog.prototype.fitActions=function(){var t,e,i,n=this.verticalActionLayout,o=this.actions.get();for(this.toggleVerticalActionLayout(!1),t=0,e=o.length;t<e;t++)if((i=o[t]).$element[0].scrollWidth>i.$element[0].clientWidth){this.toggleVerticalActionLayout(!0);break}this.$body.css("bottom",this.$foot.outerHeight(!0)),this.verticalActionLayout!==n&&this.updateSize()},t.ui.ProcessDialog=function(e){t.ui.ProcessDialog.parent.call(this,e),this.fitOnOpen=!1,this.$element.addClass("oo-ui-processDialog")},t.inheritClass(t.ui.ProcessDialog,t.ui.Dialog),t.ui.ProcessDialog.prototype.onDismissErrorButtonClick=function(){this.hideErrors()},t.ui.ProcessDialog.prototype.onRetryButtonClick=function(){this.hideErrors(),this.executeAction(this.currentAction)},t.ui.ProcessDialog.prototype.initialize=function(){t.ui.ProcessDialog.parent.prototype.initialize.call(this),this.$navigation=e("<div>"),this.$location=e("<div>"),this.$safeActions=e("<div>"),this.$primaryActions=e("<div>"),this.$otherActions=e("<div>"),this.dismissButton=new t.ui.ButtonWidget({label:t.ui.msg("ooui-dialog-process-dismiss")}),this.retryButton=new t.ui.ButtonWidget,this.$errors=e("<div>"),this.$errorsTitle=e("<div>"),this.dismissButton.connect(this,{click:"onDismissErrorButtonClick"}),this.retryButton.connect(this,{click:"onRetryButtonClick"}),this.title.connect(this,{labelChange:"fitLabel"}),this.title.$element.addClass("oo-ui-processDialog-title"),this.$location.append(this.title.$element).addClass("oo-ui-processDialog-location"),this.$safeActions.addClass("oo-ui-processDialog-actions-safe"),this.$primaryActions.addClass("oo-ui-processDialog-actions-primary"),this.$otherActions.addClass("oo-ui-processDialog-actions-other"),this.$errorsTitle.addClass("oo-ui-processDialog-errors-title").text(t.ui.msg("ooui-dialog-process-error")),this.$errors.addClass("oo-ui-processDialog-errors oo-ui-element-hidden").append(this.$errorsTitle,this.dismissButton.$element,this.retryButton.$element),this.$content.addClass("oo-ui-processDialog-content").append(this.$errors),this.$navigation.addClass("oo-ui-processDialog-navigation").append(this.$primaryActions,this.$location,this.$safeActions),this.$head.append(this.$navigation),this.$foot.append(this.$otherActions)},t.ui.ProcessDialog.prototype.getActionWidgetConfig=function(i){var n=t.ui.isMobile();return i=e.extend({framed:!n},i),n&&("back"===i.flags||Array.isArray(i.flags)&&-1!==i.flags.indexOf("back"))&&e.extend(i,{icon:"previous",label:""}),i},t.ui.ProcessDialog.prototype.attachActions=function(){var e,i,n,o,s;for(t.ui.ProcessDialog.parent.prototype.attachActions.call(this),o=this.actions.getSpecial(),s=this.actions.getOthers(),o.primary&&this.$primaryActions.append(o.primary.$element),e=0,i=s.length;e<i;e++)n=s[e],this.$otherActions.append(n.$element);o.safe&&this.$safeActions.append(o.safe.$element)},t.ui.ProcessDialog.prototype.executeAction=function(e){var i=this;return t.ui.ProcessDialog.parent.prototype.executeAction.call(this,e).fail(function(t){i.showErrors(t||[])})},t.ui.ProcessDialog.prototype.setDimensions=function(){var e=this;t.ui.ProcessDialog.parent.prototype.setDimensions.apply(this,arguments),this.fitLabel(),e.$body.css("bottom",e.$foot.outerHeight(!0)),setTimeout(function(){e.$body.css("bottom",e.$foot.outerHeight(!0))},300)},t.ui.ProcessDialog.prototype.fitLabel=function(){var t,e,i,n,o,s,a=this.getSizeProperties();if("number"!=typeof a.width){if(!this.isOpened())return this.isOpening()?void(this.fitOnOpen||(this.manager.lifecycle.opened.done(this.fitLabel.bind(this)),this.fitOnOpen=!0)):void 0;n=this.$head.width()-20}else n=a.width-20;return t=this.$safeActions.is(":visible")?this.$safeActions.width():0,e=this.$primaryActions.is(":visible")?this.$primaryActions.width():0,2*(i=Math.max(t,e))+this.title.$element.width()<n?o=s=i:"ltr"===this.getDir()?(o=t,s=e):(o=e,s=t),this.$location.css({paddingLeft:o,paddingRight:s}),this},t.ui.ProcessDialog.prototype.showErrors=function(i){var n,o,s,a,r=[],l={},u=!0,c=!1;for(i instanceof t.ui.Error&&(i=[i]),n=0,o=i.length;n<o;n++)i[n].isRecoverable()||(u=!1),i[n].isWarning()&&(c=!0),s=e("<div>").addClass("oo-ui-processDialog-error").append(i[n].getMessage()),r.push(s[0]);this.$errorItems=e(r),u?(l[this.currentAction]=!0,(a=this.actions.get({actions:this.currentAction})).length&&this.retryButton.clearFlags().setFlags(a[0].getFlags())):(l[this.currentAction]=!1,this.actions.setAbilities(l)),c?this.retryButton.setLabel(t.ui.msg("ooui-dialog-process-continue")):this.retryButton.setLabel(t.ui.msg("ooui-dialog-process-retry")),this.retryButton.toggle(u),this.$errorsTitle.after(this.$errorItems),this.$errors.removeClass("oo-ui-element-hidden").scrollTop(0)},t.ui.ProcessDialog.prototype.hideErrors=function(){this.$errors.addClass("oo-ui-element-hidden"),this.$errorItems&&(this.$errorItems.remove(),this.$errorItems=null)},t.ui.ProcessDialog.prototype.getTeardownProcess=function(e){return t.ui.ProcessDialog.parent.prototype.getTeardownProcess.call(this,e).first(function(){this.hideErrors(),this.fitOnOpen=!1},this)},t.ui.getWindowManager=function(){return t.ui.windowManager||(t.ui.windowManager=new t.ui.WindowManager,e("body").append(t.ui.windowManager.$element),t.ui.windowManager.addWindows([new t.ui.MessageDialog])),t.ui.windowManager},t.ui.alert=function(i,n){return t.ui.getWindowManager().openWindow("message",e.extend({message:i,actions:[t.ui.MessageDialog.static.actions[0]]},n)).closed.then(function(){})},t.ui.confirm=function(i,n){return t.ui.getWindowManager().openWindow("message",e.extend({message:i},n)).closed.then(function(t){return!(!t||"accept"!==t.action)})},t.ui.prompt=function(i,n){var o,s=t.ui.getWindowManager(),a=new t.ui.TextInputWidget(n&&n.textInput||{}),r=new t.ui.FieldLayout(a,{align:"top",label:i});return(o=s.openWindow("message",e.extend({message:r.$element},n))).opened.then(function(){a.on("enter",function(){s.getCurrentWindow().close({action:"accept"})}),a.focus()}),o.closed.then(function(t){return t&&"accept"===t.action?a.getValue():null})}}(t)}).call(this,i("ovuR"),i("EVdn"))},mJPs:function(t,e,i){(function(t){
/*!
* jQuery Internationalization library
*
* Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar
*
* jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
* anything special to choose one license or the other and you don't have to
* notify anyone which license you are using. You are free to use
* UniversalLanguageSelector in commercial projects as long as the copyright
* header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
*
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
!function(t){"use strict";var e=function(){this.language=t.i18n.languages[String.locale]||t.i18n.languages.default};e.prototype={constructor:e,emit:function(e,i){var n,o,s,a=this;switch(typeof e){case"string":case"number":n=e;break;case"object":if(o=t.map(e.slice(1),function(t){return a.emit(t,i)}),s=e[0].toLowerCase(),"function"!=typeof a[s])throw new Error('unknown operation "'+s+'"');n=a[s](o,i);break;case"undefined":n="";break;default:throw new Error("unexpected type in AST: "+typeof e)}return n},concat:function(e){var i="";return t.each(e,function(t,e){i+=e}),i},replace:function(t,e){var i=parseInt(t[0],10);return i<e.length?e[i]:"$"+(i+1)},plural:function(t){var e=parseFloat(this.language.convertNumber(t[0],10)),i=t.slice(1);return i.length?this.language.convertPlural(e,i):""},gender:function(t){var e=t[0],i=t.slice(1);return this.language.gender(e,i)},grammar:function(t){var e=t[0],i=t[1];return i&&e&&this.language.convertGrammar(i,e)}},t.extend(t.i18n.parser.emitter,new e)}(t)}).call(this,i("EVdn"))},mwPO:function(t,e){t.exports="../assets/images/language.3c39d721.svg"},nmF7:function(t,e,i){(function(t){
/*!
* jQuery Internationalization library - Message Store
*
* Copyright (C) 2012 Santhosh Thottingal
*
* jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to
* choose one license or the other and you don't have to notify anyone which license you are using.
* You are free to use UniversalLanguageSelector in commercial projects as long as the copyright
* header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
*
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
!function(t){"use strict";var e=function(){this.messages={},this.sources={}};e.prototype={load:function(e,i){var n=null,o=[],s=this;if("string"==typeof e)return t.i18n.log("Loading messages from: "+e),function(e){var i=t.Deferred();return t.getJSON(e).done(i.resolve).fail(function(n,o,s){t.i18n.log("Error in loading messages from "+e+" Exception: "+s),i.resolve()}),i.promise()}(e).done(function(t){s.set(i,t)}).promise();if(i)return s.set(i,e),t.Deferred().resolve();for(n in e)Object.prototype.hasOwnProperty.call(e,n)&&(i=n,o.push(s.load(e[n],i)));return t.when.apply(t,o)},set:function(e,i){this.messages[e]?this.messages[e]=t.extend(this.messages[e],i):this.messages[e]=i},get:function(t,e){return this.messages[t]&&this.messages[t][e]}},t.extend(t.i18n.messageStore,new e)}(t)}).call(this,i("EVdn"))},ovuR:function(t,e,i){
/*!
* OOjs v2.2.2
* https://www.mediawiki.org/wiki/OOjs
*
* Copyright 2011-2018 OOjs Team and other contributors.
* Released under the MIT license
* https://oojs.mit-license.org
*
* Date: 2018-06-14T20:13:14Z
*/
!function(e){"use strict";var i={},n=i.hasOwnProperty,o=i.toString;function s(t,e,i){var n,o,s={},a=[];for(n=0,o=e.length;n<o;n++)s[e[n]]=!0;for(n=0,o=t.length;n<o;n++)!!s[t[n]]===i&&a.push(t[n]);return a}i.initClass=function(t){t.static=t.static||{}},i.inheritClass=function(t,e){var n;if(!e)throw new Error("inheritClass: Origin is not a function (actually "+e+")");if(t.prototype instanceof e)throw new Error("inheritClass: Target already inherits from origin");n=t.prototype.constructor,t.super=t.parent=e,t.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),i.initClass(e),t.static=Object.create(e.static)},i.mixinClass=function(t,e){var o;if(!e)throw new Error("mixinClass: Origin is not a function (actually "+e+")");for(o in e.prototype)"constructor"!==o&&n.call(e.prototype,o)&&(t.prototype[o]=e.prototype[o]);if(i.initClass(t),e.static)for(o in e.static)n.call(e.static,o)&&(t.static[o]=e.static[o]);else i.initClass(e)},i.isSubclass=function(t,e){return t===e||t.prototype instanceof e},i.getProp=function(t){var e,i=t;for(e=1;e<arguments.length;e++){if(null==i)return;i=i[arguments[e]]}return i},i.setProp=function(t){var e,i=t;if(!(Object(t)!==t||arguments.length<2)){for(e=1;e<arguments.length-2;e++){if(void 0===i[arguments[e]]&&(i[arguments[e]]={}),Object(i[arguments[e]])!==i[arguments[e]])return;i=i[arguments[e]]}i[arguments[arguments.length-2]]=arguments[arguments.length-1]}},i.deleteProp=function(t){var e,n=t,o=[n];if(!(Object(t)!==t||arguments.length<2)){for(e=1;e<arguments.length-1;e++){if(void 0===n[arguments[e]]||Object(n[arguments[e]])!==n[arguments[e]])return;n=n[arguments[e]],o.push(n)}for(delete n[arguments[e]];o.length>1&&(n=o.pop())&&i.isPlainObject(n)&&!Object.keys(n).length;)delete o[o.length-1][arguments[o.length]]}},i.cloneObject=function(t){var e,i;for(e in i=Object.create(t.constructor.prototype),t)n.call(t,e)&&(i[e]=t[e]);return i},i.getObjectValues=function(t){var e,i;if(t!==Object(t))throw new TypeError("Called on non-object");for(e in i=[],t)n.call(t,e)&&(i[i.length]=t[e]);return i},i.binarySearch=function(t,e,i){for(var n,o,s=0,a=t.length;s<a;)if((o=e(t[n=s+a>>1]))<0)a=n;else{if(!(o>0))return n;s=n+1}return i?a:null},i.compare=function(t,e,o){var s,a,r,l;if(t===e)return!0;if(e=e||{},"number"==typeof(t=t||{}).nodeType&&"function"==typeof t.isEqualNode)return t.isEqualNode(e);for(l in t)if(n.call(t,l)&&void 0!==t[l]&&t[l]!==e[l]&&((r=typeof(s=t[l]))!==typeof(a=e[l])||("string"===r||"number"===r||"boolean"===r)&&s!==a||s===Object(s)&&!i.compare(s,a,!0)))return!1;return!!o||i.compare(e,t,!0)},i.copy=function(t,e,n){var o,s;if(n&&void 0!==(s=n(t)))return s;if(Array.isArray(t))s=new Array(t.length);else{if(t&&"function"==typeof t.clone)return e?e(t.clone()):t.clone();if(t&&"function"==typeof t.cloneNode)return e?e(t.cloneNode(!0)):t.cloneNode(!0);if(!i.isPlainObject(t))return e?e(t):t;s={}}for(o in t)s[o]=i.copy(t[o],e,n);return s},i.getHash=function(t){return JSON.stringify(t,i.getHash.keySortReplacer)},i.getHash.keySortReplacer=function(t,e){var i,n,o,s;if(e&&"function"==typeof e.getHashObject&&(e=e.getHashObject()),Array.isArray(e)||Object(e)!==e)return e;for(i={},o=0,s=(n=Object.keys(e).sort()).length;o<s;o+=1)i[n[o]]=e[n[o]];return i},i.unique=function(t){return t.reduce(function(t,e){return-1===t.indexOf(e)&&t.push(e),t},[])},i.simpleArrayUnion=function(){var t,e,i,n,o,s={},a=[];for(t=0,e=arguments.length;t<e;t++)for(n=0,o=(i=arguments[t]).length;n<o;n++)s[i[n]]||(s[i[n]]=!0,a.push(i[n]));return a},i.simpleArrayIntersection=function(t,e){return s(t,e,!0)},i.simpleArrayDifference=function(t,e){return s(t,e,!1)},i.isPlainObject=function(t){var e;return!(!t||"[object Object]"!==o.call(t))&&(!(e=Object.getPrototypeOf(t))||n.call(e,"isPrototypeOf"))},function(){function t(t,e){if("string"==typeof t){if(null==e)throw new Error('Method name "'+t+'" has no context.');if("function"!=typeof e[t])throw new Error('Property "'+t+'" is not a function')}else if("function"!=typeof t)throw new Error("Invalid callback. Function or method name expected.")}function e(t,e,i){(n.call(t.bindings,e)?t.bindings[e]:t.bindings[e]=[]).push(i)}i.EventEmitter=function(){this.bindings={}},i.initClass(i.EventEmitter),i.EventEmitter.prototype.on=function(i,n,o,s){return t(n,s),e(this,i,{method:n,args:o,context:arguments.length<4?null:s,once:!1}),this},i.EventEmitter.prototype.once=function(i,n){return t(n),e(this,i,{method:n,args:void 0,context:null,once:!0}),this},i.EventEmitter.prototype.off=function(e,i,o){var s,a;if(1===arguments.length)return delete this.bindings[e],this;if(t(i,o),!n.call(this.bindings,e)||!this.bindings[e].length)return this;for(arguments.length<3&&(o=null),s=(a=this.bindings[e]).length;s--;)a[s].method===i&&a[s].context===o&&a.splice(s,1);return 0===a.length&&delete this.bindings[e],this},i.EventEmitter.prototype.emit=function(t){var e,i,o,s,a,r=[];if(n.call(this.bindings,t)){for(s=this.bindings[t].slice(),e=1,i=arguments.length;e<i;e++)r.push(arguments[e]);for(e=0,i=s.length;e<i;e++)a="string"==typeof(o=s[e]).method?o.context[o.method]:o.method,o.once&&this.off(t,a),a.apply(o.context,o.args?o.args.concat(r):r);return!0}return!1},i.EventEmitter.prototype.connect=function(t,e){var i,n,o;for(o in e)i=e[o],Array.isArray(i)?(n=i.slice(1),i=i[0]):n=[],this.on(o,i,n,t);return this},i.EventEmitter.prototype.disconnect=function(t,e){var i,n,o,s;if(e)for(n in e)o=e[n],Array.isArray(o)&&(o=o[0]),this.off(n,o,t);else for(n in this.bindings)for(i=(s=this.bindings[n]).length;i--;)s[i]&&s[i].context===t&&this.off(n,s[i].method,t);return this}}(),function(){function t(t,e){return void 0===e||e<0||e>=t.length?t.length:e}i.EmitterList=function(){this.items=[],this.aggregateItemEvents={}},i.EmitterList.prototype.getItems=function(){return this.items.slice(0)},i.EmitterList.prototype.getItemIndex=function(t){return this.items.indexOf(t)},i.EmitterList.prototype.getItemCount=function(){return this.items.length},i.EmitterList.prototype.isEmpty=function(){return!this.items.length},i.EmitterList.prototype.aggregate=function(t){var e,i,n,o,s,a;for(s in t){if(a=t[s],Object.prototype.hasOwnProperty.call(this.aggregateItemEvents,s)){if(a)throw new Error("Duplicate item event aggregation for "+s);for(e=0;e<this.items.length;e++)(i=this.items[e]).connect&&i.disconnect&&((o={})[s]=["emit",this.aggregateItemEvents[s],i],i.disconnect(this,o));delete this.aggregateItemEvents[s]}if(a)for(this.aggregateItemEvents[s]=a,e=0;e<this.items.length;e++)(i=this.items[e]).connect&&i.disconnect&&((n={})[s]=["emit",a,i],i.connect(this,n))}},i.EmitterList.prototype.addItems=function(e,i){var n,o;if(Array.isArray(e)||(e=[e]),0===e.length)return this;for(i=t(this.items,i),n=0;n<e.length;n++)-1!==(o=this.items.indexOf(e[n]))?(i=this.moveItem(e[n],i),this.emit("move",e[n],i,o)):(i=this.insertItem(e[n],i),this.emit("add",e[n],i)),i++;return this},i.EmitterList.prototype.moveItem=function(e,i){var n=this.items.indexOf(e);if(-1===n)throw new Error("Item cannot be moved, because it is not in the list.");return i=t(this.items,i),this.items.splice(n,1),n<i&&i--,this.items.splice(i,0,e),i},i.EmitterList.prototype.insertItem=function(e,i){var n,o;if(e.connect&&e.disconnect){for(o in n={},this.aggregateItemEvents)n[o]=["emit",this.aggregateItemEvents[o],e];e.connect(this,n)}return i=t(this.items,i),this.items.splice(i,0,e),i},i.EmitterList.prototype.removeItems=function(t){var e,i,n;if(Array.isArray(t)||(t=[t]),0===t.length)return this;for(e=0;e<t.length;e++)i=t[e],-1!==(n=this.items.indexOf(i))&&(i.connect&&i.disconnect&&i.disconnect(this),this.items.splice(n,1),this.emit("remove",i,n));return this},i.EmitterList.prototype.clearItems=function(){var t,e,i=this.items.splice(0,this.items.length);for(t=0;t<i.length;t++)(e=i[t]).connect&&e.disconnect&&e.disconnect(this);return this.emit("clear"),this}}(),i.SortedEmitterList=function(t){i.EmitterList.call(this),this.sortingCallback=t,this.aggregate({sortChange:"itemSortChange"}),this.connect(this,{itemSortChange:"onItemSortChange"})},i.mixinClass(i.SortedEmitterList,i.EmitterList),i.SortedEmitterList.prototype.onItemSortChange=function(t){this.removeItems(t),this.addItems(t)},i.SortedEmitterList.prototype.setSortingCallback=function(t){var e=this.getItems();this.sortingCallback=t,this.clearItems(),this.addItems(e)},i.SortedEmitterList.prototype.addItems=function(t){var e,i,n;if(Array.isArray(t)||(t=[t]),0===t.length)return this;for(i=0;i<t.length;i++)(n=this.findInsertionIndex(t[i]))<=this.items.length&&this.items[n]&&0===this.sortingCallback(this.items[n],t[i])&&this.removeItems(this.items[n]),e=this.insertItem(t[i],n),this.emit("add",t[i],e);return this},i.SortedEmitterList.prototype.findInsertionIndex=function(t){var e=this;return i.binarySearch(this.items,function(i){return e.sortingCallback(t,i)},!0)},i.Registry=function(){i.EventEmitter.call(this),this.registry={}},i.mixinClass(i.Registry,i.EventEmitter),i.Registry.prototype.register=function(t,e){var i,n;if("string"==typeof t)this.registry[t]=e,this.emit("register",t,e);else{if(!Array.isArray(t))throw new Error("Name must be a string or array, cannot be a "+typeof t);for(i=0,n=t.length;i<n;i++)this.register(t[i],e)}},i.Registry.prototype.unregister=function(t){var e,i,n;if("string"==typeof t)void 0!==(n=this.lookup(t))&&(delete this.registry[t],this.emit("unregister",t,n));else{if(!Array.isArray(t))throw new Error("Name must be a string or array, cannot be a "+typeof t);for(e=0,i=t.length;e<i;e++)this.unregister(t[e])}},i.Registry.prototype.lookup=function(t){if(n.call(this.registry,t))return this.registry[t]},i.Factory=function(){i.Factory.super.call(this)},i.inheritClass(i.Factory,i.Registry),i.Factory.prototype.register=function(t){var e;if("function"!=typeof t)throw new Error("constructor must be a function, cannot be a "+typeof t);if("string"!=typeof(e=t.static&&t.static.name)||""===e)throw new Error("Name must be a string and must not be empty");i.Factory.super.prototype.register.call(this,e,t)},i.Factory.prototype.unregister=function(t){var e;if("function"!=typeof t)throw new Error("constructor must be a function, cannot be a "+typeof t);if("string"!=typeof(e=t.static&&t.static.name)||""===e)throw new Error("Name must be a string and must not be empty");i.Factory.super.prototype.unregister.call(this,e)},i.Factory.prototype.create=function(t){var e,i,n=[],o=this.lookup(t);if(!o)throw new Error("No class registered by that name: "+t);for(i=1;i<arguments.length;i++)n.push(arguments[i]);return e=Object.create(o.prototype),o.apply(e,n),e},t.exports?t.exports=i:e.OO=i}(this)},p46w:function(t,e,i){var n,o;
/*!
* JavaScript Cookie v2.2.0
* https://github.com/js-cookie/js-cookie
*
* Copyright 2006, 2015 Klaus Hartl & Fagner Brack
* Released under the MIT license
*/!function(s){if(void 0===(o="function"==typeof(n=s)?n.call(e,i,e,t):n)||(t.exports=o),!0,t.exports=s(),!!0){var a=window.Cookies,r=window.Cookies=s();r.noConflict=function(){return window.Cookies=a,r}}}(function(){function t(){for(var t=0,e={};t<arguments.length;t++){var i=arguments[t];for(var n in i)e[n]=i[n]}return e}return function e(i){function n(e,o,s){var a;if("undefined"!=typeof document){if(arguments.length>1){if("number"==typeof(s=t({path:"/"},n.defaults,s)).expires){var r=new Date;r.setMilliseconds(r.getMilliseconds()+864e5*s.expires),s.expires=r}s.expires=s.expires?s.expires.toUTCString():"";try{a=JSON.stringify(o),/^[\{\[]/.test(a)&&(o=a)}catch(t){}o=i.write?i.write(o,e):encodeURIComponent(String(o)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),e=(e=(e=encodeURIComponent(String(e))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var l="";for(var u in s)s[u]&&(l+="; "+u,!0!==s[u]&&(l+="="+s[u]));return document.cookie=e+"="+o+l}e||(a={});for(var c=document.cookie?document.cookie.split("; "):[],h=/(%[0-9A-Z]{2})+/g,d=0;d<c.length;d++){var p=c[d].split("="),g=p.slice(1).join("=");this.json||'"'!==g.charAt(0)||(g=g.slice(1,-1));try{var f=p[0].replace(h,decodeURIComponent);if(g=i.read?i.read(g,f):i(g,f)||g.replace(h,decodeURIComponent),this.json)try{g=JSON.parse(g)}catch(t){}if(e===f){a=g;break}e||(a[f]=g)}catch(t){}}return a}}return n.set=n,n.get=function(t){return n.call(n,t)},n.getJSON=function(){return n.apply({json:!0},[].slice.call(arguments))},n.defaults={},n.remove=function(e,i){n(e,"",t(i,{expires:-1}))},n.withConverter=e,n}(function(){})})},qXYj:function(t,e,i){},tPeR:function(t,e,i){(function(t){
/*!
* jQuery Internationalization library
*
* Copyright (C) 2012 Santhosh Thottingal
*
* jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to
* choose one license or the other and you don't have to notify anyone which license you are using.
* You are free to use UniversalLanguageSelector in commercial projects as long as the copyright
* header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
*
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
!function(t){"use strict";t.i18n=t.i18n||{},t.extend(t.i18n.fallbacks,{ab:["ru"],ace:["id"],aln:["sq"],als:["gsw","de"],an:["es"],anp:["hi"],arn:["es"],arz:["ar"],av:["ru"],ay:["es"],ba:["ru"],bar:["de"],"bat-smg":["sgs","lt"],bcc:["fa"],"be-x-old":["be-tarask"],bh:["bho"],bjn:["id"],bm:["fr"],bpy:["bn"],bqi:["fa"],bug:["id"],"cbk-zam":["es"],ce:["ru"],crh:["crh-latn"],"crh-cyrl":["ru"],csb:["pl"],cv:["ru"],"de-at":["de"],"de-ch":["de"],"de-formal":["de"],dsb:["de"],dtp:["ms"],egl:["it"],eml:["it"],ff:["fr"],fit:["fi"],"fiu-vro":["vro","et"],frc:["fr"],frp:["fr"],frr:["de"],fur:["it"],gag:["tr"],gan:["gan-hant","zh-hant","zh-hans"],"gan-hans":["zh-hans"],"gan-hant":["zh-hant","zh-hans"],gl:["pt"],glk:["fa"],gn:["es"],gsw:["de"],hif:["hif-latn"],hsb:["de"],ht:["fr"],ii:["zh-cn","zh-hans"],inh:["ru"],iu:["ike-cans"],jut:["da"],jv:["id"],kaa:["kk-latn","kk-cyrl"],kbd:["kbd-cyrl"],khw:["ur"],kiu:["tr"],kk:["kk-cyrl"],"kk-arab":["kk-cyrl"],"kk-latn":["kk-cyrl"],"kk-cn":["kk-arab","kk-cyrl"],"kk-kz":["kk-cyrl"],"kk-tr":["kk-latn","kk-cyrl"],kl:["da"],"ko-kp":["ko"],koi:["ru"],krc:["ru"],ks:["ks-arab"],ksh:["de"],ku:["ku-latn"],"ku-arab":["ckb"],kv:["ru"],lad:["es"],lb:["de"],lbe:["ru"],lez:["ru"],li:["nl"],lij:["it"],liv:["et"],lmo:["it"],ln:["fr"],ltg:["lv"],lzz:["tr"],mai:["hi"],"map-bms":["jv","id"],mg:["fr"],mhr:["ru"],min:["id"],mo:["ro"],mrj:["ru"],mwl:["pt"],myv:["ru"],mzn:["fa"],nah:["es"],nap:["it"],nds:["de"],"nds-nl":["nl"],"nl-informal":["nl"],no:["nb"],os:["ru"],pcd:["fr"],pdc:["de"],pdt:["de"],pfl:["de"],pms:["it"],pt:["pt-br"],"pt-br":["pt"],qu:["es"],qug:["qu","es"],rgn:["it"],rmy:["ro"],"roa-rup":["rup"],rue:["uk","ru"],ruq:["ruq-latn","ro"],"ruq-cyrl":["mk"],"ruq-latn":["ro"],sa:["hi"],sah:["ru"],scn:["it"],sg:["fr"],sgs:["lt"],sli:["de"],sr:["sr-ec"],srn:["nl"],stq:["de"],su:["id"],szl:["pl"],tcy:["kn"],tg:["tg-cyrl"],tt:["tt-cyrl","ru"],"tt-cyrl":["ru"],ty:["fr"],udm:["ru"],ug:["ug-arab"],uk:["ru"],vec:["it"],vep:["et"],vls:["nl"],vmf:["de"],vot:["fi"],vro:["et"],wa:["fr"],wo:["fr"],wuu:["zh-hans"],xal:["ru"],xmf:["ka"],yi:["he"],za:["zh-hans"],zea:["nl"],zh:["zh-hans"],"zh-classical":["lzh"],"zh-cn":["zh-hans"],"zh-hant":["zh-hans"],"zh-hk":["zh-hant","zh-hans"],"zh-min-nan":["nan"],"zh-mo":["zh-hk","zh-hant","zh-hans"],"zh-my":["zh-sg","zh-hans"],"zh-sg":["zh-hans"],"zh-tw":["zh-hant","zh-hans"],"zh-yue":["yue"]})}(t)}).call(this,i("EVdn"))},uzZt:function(t,e,i){(function(t){
/*!
* jQuery Internationalization library
*
* Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar
*
* jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
* anything special to choose one license or the other and you don't have to
* notify anyone which license you are using. You are free to use
* UniversalLanguageSelector in commercial projects as long as the copyright
* header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
*
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
!function(t){"use strict";var e=function(e){this.options=t.extend({},t.i18n.parser.defaults,e),this.language=t.i18n.languages[String.locale]||t.i18n.languages.default,this.emitter=t.i18n.parser.emitter};e.prototype={constructor:e,simpleParse:function(t,e){return t.replace(/\$(\d+)/g,function(t,i){var n=parseInt(i,10)-1;return void 0!==e[n]?e[n]:"$"+i})},parse:function(e,i){return e.indexOf("{{")<0?this.simpleParse(e,i):(this.emitter.language=t.i18n.languages[t.i18n().locale]||t.i18n.languages.default,this.emitter.emit(this.ast(e),i))},ast:function(t){var e,i,n,o,s,a,r,l,u,c,h,d,p,g,f,m,y,b,v,w=0;function x(t){return function(){var e,i;for(e=0;e<t.length;e++)if(null!==(i=t[e]()))return i;return null}}function E(t){var e,i,n=w,o=[];for(e=0;e<t.length;e++){if(null===(i=t[e]()))return w=n,null;o.push(i)}return o}function W(t,e){return function(){for(var i=w,n=[],o=e();null!==o;)n.push(o),o=e();return n.length<t?(w=i,null):n}}function C(e){var i=e.length;return function(){var n=null;return t.slice(w,w+i)===e&&(n=e,w+=i),n}}function $(e){return function(){var i=t.slice(w).match(e);return null===i?null:(w+=i[0].length,i[0])}}function I(){var t=E([n,o]);return null===t?null:t[1]}function T(){var t=E([s,a]);return null===t?null:["REPLACE",parseInt(t[1],10)-1]}function L(){var t,i=E([e,W(0,m)]);return null===i?null:(t=i[1]).length>1?["CONCAT"].concat(t):t[0]}function D(){var t=E([d,i,T]);return null===t?null:[t[0],t[2]]}function S(){var t=E([d,i,m]);return null===t?null:[t[0],t[2]]}function k(){var t=E([p,h,g]);return null===t?null:t[1]}if(e=C("|"),i=C(":"),n=C("\\"),o=$(/^./),s=C("$"),a=$(/^\d+/),r=$(/^[^{}[\]$\\]/),l=$(/^[^{}[\]$\\|]/),x([I,$(/^[^{}[\]$\s]/)]),u=x([I,l]),c=x([I,r]),b=$(/^[ !"$&'()*,.\/0-9;=?@A-Z^_`a-z~\x80-\xFF+-]+/),v=function(t){return t.toString()},d=function(){var t=b();return null===t?null:v(t)},h=x([function(){var t=E([x([D,S]),W(0,L)]);return null===t?null:t[0].concat(t[1])},function(){var t=E([d,W(0,L)]);return null===t?null:[t[0]].concat(t[1])}]),p=C("{{"),g=C("}}"),f=x([k,T,function(){var t=W(1,c)();return null===t?null:t.join("")}]),m=x([k,T,function(){var t=W(1,u)();return null===t?null:t.join("")}]),null===(y=function(){var t=W(0,f)();return null===t?null:["CONCAT"].concat(t)}())||w!==t.length)throw new Error("Parse error at position "+w.toString()+" in input: "+t);return y}},t.extend(t.i18n.parser,new e)}(t)}).call(this,i("EVdn"))},viYT:function(t,e,i){(function(t){!function(t){"use strict";t.i18n.languages.he=t.extend({},t.i18n.languages.default,{convertGrammar:function(t,e){switch(e){case"prefixed":case"תחילית":"ו"===t.slice(0,1)&&"וו"!==t.slice(0,2)&&(t="ו"+t),"ה"===t.slice(0,1)&&(t=t.slice(1)),(t.slice(0,1)<"א"||t.slice(0,1)>"ת")&&(t="־"+t)}return t}})}(t)}).call(this,i("EVdn"))},"vuU+":function(t,e,i){},yLpj:function(t,e){var i;i=function(){return this}();try{i=i||new Function("return this")()}catch(t){"object"==typeof window&&(i=window)}t.exports=i},zXW2:function(t,e,i){(function(t,e){App.SearchWidget=function(e){t.ui.SearchInputWidget.parent.call(this,e),t.ui.mixin.LookupElement.call(this)},t.inheritClass(App.SearchWidget,t.ui.SearchInputWidget),t.mixinClass(App.SearchWidget,t.ui.mixin.LookupElement),App.SearchWidget.prototype.getLookupRequest=function(){var t=this.getValue();return-1!==t.indexOf("File:")&&(t=t.substring(t.indexOf("File:")+"File:".length)),e.ajax({url:"https://commons.wikimedia.org/w/api.php",dataType:"jsonp",data:{format:"json",action:"query",list:"search",srnamespace:6,srsearch:t+" filetype:drawing"}})},App.SearchWidget.prototype.getLookupCacheDataFromResponse=function(t){return void 0===t.query||void 0===t.query.search?[]:t.query.search},App.SearchWidget.prototype.getLookupMenuOptionsFromData=function(e){var i,n,o=[];for(i=0;i<e.length;i++)n=String(e[i].title).substring("File:".length),o.push(new t.ui.MenuOptionWidget({data:n,label:n}));return o}}).call(this,i("ovuR"),i("EVdn"))},zoyU:function(t,e,i){}});