1if (typeof hyperix == "object") { 2 hyperix.extension("loadIndicator", { 3 elementId: "page-load-indicator", 4 update: function(requestState) { 5 if (requestState.background) { 6 // Skip background indicator update in background event // 7 return; 8 } 9 10 var element = document.getElementById(this.elementId); 11 element.classList.remove("initialization"); 12 13 var progress = (requestState.uploadProgress + requestState.downloadProgress) / 2; 14 15 element.style.width = (progress * 100) + "%"; 16 17 if (progress >= 1) { 18 setTimeout(this.reset.bind(this), 10); 19 } 20 }, 21 reset: function() { 22// hyperix.log("Reseting indicator"); 23 var element = document.getElementById(this.elementId); 24 25 element.classList.add("initialization"); 26 element.style.width = "0%"; 27 } 28 }); 29} 30 31 32!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a():"function"==typeof define&&define.amd?define(a):e.moment=a()}(this,function(){"use strict";var e,n;function l(){return e.apply(null,arguments)}function _(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function i(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function o(e){return void 0===e}function m(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function u(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function M(e,a){var t,s=[];for(t=0;t<e.length;++t)s.push(a(e[t],t));return s}function h(e,a){return Object.prototype.hasOwnProperty.call(e,a)}function L(e,a){for(var t in a)h(a,t)&&(e[t]=a[t]);return h(a,"toString")&&(e.toString=a.toString),h(a,"valueOf")&&(e.valueOf=a.valueOf),e}function c(e,a,t,s){return Sa(e,a,t,s,!0).utc()}function Y(e){return null==e._pf&&(e._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),e._pf}function y(e){if(null==e._isValid){var a=Y(e),t=n.call(a.parsedDateParts,function(e){return null!=e}),s=!isNaN(e._d.getTime())&&a.overflow<0&&!a.empty&&!a.invalidMonth&&!a.invalidWeekday&&!a.weekdayMismatch&&!a.nullInput&&!a.invalidFormat&&!a.userInvalidated&&(!a.meridiem||a.meridiem&&t);if(e._strict&&(s=s&&0===a.charsLeftOver&&0===a.unusedTokens.length&&void 0===a.bigHour),null!=Object.isFrozen&&Object.isFrozen(e))return s;e._isValid=s}return e._isValid}function f(e){var a=c(NaN);return null!=e?L(Y(a),e):Y(a).userInvalidated=!0,a}n=Array.prototype.some?Array.prototype.some:function(e){for(var a=Object(this),t=a.length>>>0,s=0;s<t;s++)if(s in a&&e.call(this,a[s],s,a))return!0;return!1};var d=l.momentProperties=[];function k(e,a){var t,s,n;if(o(a._isAMomentObject)||(e._isAMomentObject=a._isAMomentObject),o(a._i)||(e._i=a._i),o(a._f)||(e._f=a._f),o(a._l)||(e._l=a._l),o(a._strict)||(e._strict=a._strict),o(a._tzm)||(e._tzm=a._tzm),o(a._isUTC)||(e._isUTC=a._isUTC),o(a._offset)||(e._offset=a._offset),o(a._pf)||(e._pf=Y(a)),o(a._locale)||(e._locale=a._locale),0<d.length)for(t=0;t<d.length;t++)o(n=a[s=d[t]])||(e[s]=n);return e}var a=!1;function p(e){k(this,e),this._d=new Date(null!=e._d?e._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===a&&(a=!0,l.updateOffset(this),a=!1)}function D(e){return e instanceof p||null!=e&&null!=e._isAMomentObject}function T(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function g(e){var a=+e,t=0;return 0!==a&&isFinite(a)&&(t=T(a)),t}function r(e,a,t){var s,n=Math.min(e.length,a.length),d=Math.abs(e.length-a.length),r=0;for(s=0;s<n;s++)(t&&e[s]!==a[s]||!t&&g(e[s])!==g(a[s]))&&r++;return r+d}function w(e){!1===l.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+e)}function t(n,d){var r=!0;return L(function(){if(null!=l.deprecationHandler&&l.deprecationHandler(null,n),r){for(var e,a=[],t=0;t<arguments.length;t++){if(e="","object"==typeof arguments[t]){for(var s in e+="\n["+t+"] ",arguments[0])e+=s+": "+arguments[0][s]+", ";e=e.slice(0,-2)}else e=arguments[t];a.push(e)}w(n+"\nArguments: "+Array.prototype.slice.call(a).join("")+"\n"+(new Error).stack),r=!1}return d.apply(this,arguments)},d)}var s,v={};function S(e,a){null!=l.deprecationHandler&&l.deprecationHandler(e,a),v[e]||(w(a),v[e]=!0)}function H(e){return e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}function b(e,a){var t,s=L({},e);for(t in a)h(a,t)&&(i(e[t])&&i(a[t])?(s[t]={},L(s[t],e[t]),L(s[t],a[t])):null!=a[t]?s[t]=a[t]:delete s[t]);for(t in e)h(e,t)&&!h(a,t)&&i(e[t])&&(s[t]=L({},s[t]));return s}function j(e){null!=e&&this.set(e)}l.suppressDeprecationWarnings=!1,l.deprecationHandler=null,s=Object.keys?Object.keys:function(e){var a,t=[];for(a in e)h(e,a)&&t.push(a);return t};var x={};function O(e,a){var t=e.toLowerCase();x[t]=x[t+"s"]=x[a]=e}function P(e){return"string"==typeof e?x[e]||x[e.toLowerCase()]:void 0}function W(e){var a,t,s={};for(t in e)h(e,t)&&(a=P(t))&&(s[a]=e[t]);return s}var A={};function E(e,a){A[e]=a}function F(e,a,t){var s=""+Math.abs(e),n=a-s.length;return(0<=e?t?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+s}var z=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}
vendor: 47,396 bytes, line 32
32|x|X|zz?|ZZ?|.)/g,J=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,N={},R={};function C(e,a,t,s){var n=s;"string"==typeof s&&(n=function(){return this[s]()}),e&&(R[e]=n),a&&(R[a[0]]=function(){return F(n.apply(this,arguments),a[1],a[2])}),t&&(R[t]=function(){return this.localeData().ordinal(n.apply(this,arguments),e)})}function I(e,a){return e.isValid()?(a=U(a,e.localeData()),N[a]=N[a]||function(s){var e,n,a,d=s.match(z);for(e=0,n=d.length;e<n;e++)R[d[e]]?d[e]=R[d[e]]:d[e]=(a=d[e]).match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"");return function(e){var a,t="";for(a=0;a<n;a++)t+=H(d[a])?d[a].call(e,s):d[a];return t}}(a),N[a](e)):e.localeData().invalidDate()}function U(e,a){var t=5;function s(e){return a.longDateFormat(e)||e}for(J.lastIndex=0;0<=t&&J.test(e);)e=e.replace(J,s),J.lastIndex=0,t-=1;return e}var G=/\d/,V=/\d\d/,K=/\d{3}/,Z=/\d{4}/,$=/[+-]?\d{6}/,B=/\d\d?/,q=/\d\d\d\d?/,Q=/\d\d\d\d\d\d?/,X=/\d{1,3}/,ee=/\d{1,4}/,ae=/[+-]?\d{1,6}/,te=/\d+/,se=/[+-]?\d+/,ne=/Z|[+-]\d\d:?\d\d/gi,de=/Z|[+-]\d\d(?::?\d\d)?/gi,re=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,_e={};function ie(e,t,s){_e[e]=H(t)?t:function(e,a){return e&&s?s:t}}function oe(e,a){return h(_e,e)?_e[e](a._strict,a._locale):new RegExp(me(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,a,t,s,n){return a||t||s||n})))}function me(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var ue={};function le(e,t){var a,s=t;for("string"==typeof e&&(e=[e]),m(t)&&(s=function(e,a){a[t]=g(e)}),a=0;a<e.length;a++)ue[e[a]]=s}function Me(e,n){le(e,function(e,a,t,s){t._w=t._w||{},n(e,t._w,t,s)})}var he=0,Le=1,ce=2,Ye=3,ye=4,fe=5,ke=6,pe=7,De=8;function Te(e){return ge(e)?366:365}function ge(e){return e%4==0&&e%100!=0||e%400==0}C("Y",0,0,function(){var e=this.year();return e<=9999?""+e:"+"+e}),C(0,["YY",2],0,function(){return this.year()%100}),C(0,["YYYY",4],0,"year"),C(0,["YYYYY",5],0,"year"),C(0,["YYYYYY",6,!0],0,"year"),O("year","y"),E("year",1),ie("Y",se),ie("YY",B,V),ie("YYYY",ee,Z),ie("YYYYY",ae,$),ie("YYYYYY",ae,$),le(["YYYYY","YYYYYY"],he),le("YYYY",function(e,a){a[he]=2===e.length?l.parseTwoDigitYear(e):g(e)}),le("YY",function(e,a){a[he]=l.parseTwoDigitYear(e)}),le("Y",function(e,a){a[he]=parseInt(e,10)}),l.parseTwoDigitYear=function(e){return g(e)+(68<g(e)?1900:2e3)};var we,ve=Se("FullYear",!0);function Se(a,t){return function(e){return null!=e?(be(this,a,e),l.updateOffset(this,t),this):He(this,a)}}function He(e,a){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+a]():NaN}function be(e,a,t){e.isValid()&&!isNaN(t)&&("FullYear"===a&&ge(e.year())&&1===e.month()&&29===e.date()?e._d["set"+(e._isUTC?"UTC":"")+a](t,e.month(),je(t,e.month())):e._d["set"+(e._isUTC?"UTC":"")+a](t))}function je(e,a){if(isNaN(e)||isNaN(a))return NaN;var t,s=(a%(t=12)+t)%t;return e+=(a-s)/12,1===s?ge(e)?29:28:31-s%7%2}we=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var a;for(a=0;a<this.length;++a)if(this[a]===e)return a;return-1},C("M",["MM",2],"Mo",function(){return this.month()+1}),C("MMM",0,0,function(e){return this.localeData().monthsShort(this,e)}),C("MMMM",0,0,function(e){return this.localeData().months(this,e)}),O("month","M"),E("month",8),ie("M",B),ie("MM",B,V),ie("MMM",function(e,a){return a.monthsShortRegex(e)}),ie("MMMM",function(e,a){return a.monthsRegex(e)}),le(["M","MM"],function(e,a){a[Le]=g(e)-1}),le(["MMM","MMMM"],function(e,a,t,s){var n=t._locale.monthsParse(e,s,t._strict);null!=n?a[Le]=n:Y(t).invalidMonth=e});var xe=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,Oe="January_February_March_April_May_June_July_August_September_October_November_December".split("_");var Pe="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");function We(e,a){var t;if(!e.isValid())return e;if("string"==typeof a)if(/^\d+$/.test(a))a=g(a);else if(!m(a=e.localeData().monthsParse(a)))return e;return t=Math.min(e.date(),je(e.year(),a)),e._d["set"+(e._isUTC?"UTC":"")+"Month"](a,t),e}function Ae(e){return null!=e?(We(this,e),l.updateOffset(this,!0),this):He(this,"Month")}var Ee=re;var Fe=re;function ze(){function e(e,a){return a.length-e.length}var a,t,s=[],n=[],d=[];for(a=0;a<12;a++)t=c([2e3,a]),s.push(this.monthsShort(t,"")),n.push(this.months(t,"")),d.push(this.months(t,"")),d.push(this.monthsShort(t,""));for(s.sort(e),n.sort(e),d.sort(e),a=0;a<12;a++)s[a]=me(s[a]),n[a]=me(n[a]);for(a=0;a<24;a++)d[a]=me(d[a]);this._monthsRegex=new RegExp("^("+d.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+s.join("|")+")","i")}function Je(e){var a;if(e<100&&0<=e){var t=Array.prototype.slice.call(arguments);t[0]=e+400,a=new Date(Date.UTC.apply(null,t)),isFinite(a.getUTCFullYear())&&a.setUTCFullYear(e)}else a=new Date(Date.UTC.apply(null,arguments));return a}function Ne(e,a,t){var s=7+a-t;return-((7+Je(e,0,s).getUTCDay()-a)%7)+s-1}function Re(e,a,t,s,n){var d,r,_=1+7*(a-1)+(7+t-s)%7+Ne(e,s,n);return r=_<=0?Te(d=e-1)+_:_>Te(e)?(d=e+1,_-Te(e)):(d=e,_),{year:d,dayOfYear:r}}function Ce(e,a,t){var s,n,d=Ne(e.year(),a,t),r=Math.floor((e.dayOfYear()-d-1)/7)+1;return r<1?s=r+Ie(n=e.year()-1,a,t):r>Ie(e.year(),a,t)?(s=r-Ie(e.year(),a,t),n=e.year()+1):(n=e.year(),s=r),{week:s,year:n}}function Ie(e,a,t){var s=Ne(e,a,t),n=Ne(e+1,a,t);return(Te(e)-s+n)/7}C("w",["ww",2],"wo","week"),C("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),E("week",5),E("isoWeek",5),ie("w",B),ie("ww",B,V),ie("W",B),ie("WW",B,V),Me(["w","ww","W","WW"],function(e,a,t,s){a[s.substr(0,1)]=g(e)});function Ue(e,a){return e.slice(a,7).concat(e.slice(0,a))}C("d",0,"do","day"),C("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),C("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),C("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),C("e",0,0,"weekday"),C("E",0,0,"isoWeekday"),O("day","d"),O("weekday","e"),O("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),ie("d",B),ie("e",B),ie("E",B),ie("dd",function(e,a){return a.weekdaysMinRegex(e)}),ie("ddd",function(e,a){return a.weekdaysShortRegex(e)}),ie("dddd",function(e,a){return a.weekdaysRegex(e)}),Me(["dd","ddd","dddd"],function(e,a,t,s){var n=t._locale.weekdaysParse(e,s,t._strict);null!=n?a.d=n:Y(t).invalidWeekday=e}),Me(["d","e","E"],function(e,a,t,s){a[s]=g(e)});var Ge="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var Ve="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var Ke="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var Ze=re;var $e=re;var Be=re;function qe(){function e(e,a){return a.length-e.length}var a,t,s,n,d,r=[],_=[],i=[],o=[];for(a=0;a<7;a++)t=c([2e3,1]).day(a),s=this.weekdaysMin(t,""),n=this.weekdaysShort(t,""),d=this.weekdays(t,""),r.push(s),_.push(n),i.push(d),o.push(s),o.push(n),o.push(d);for(r.sort(e),_.sort(e),i.sort(e),o.sort(e),a=0;a<7;a++)_[a]=me(_[a]),i[a]=me(i[a]),o[a]=me(o[a]);this._weekdaysRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+i.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+_.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+r.join("|")+")","i")}function Qe(){return this.hours()%12||12}function Xe(e,a){C(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),a)})}function ea(e,a){return a._meridiemParse}C("H",["HH",2],0,"hour"),C("h",["hh",2],0,Qe),C("k",["kk",2],0,function(){return this.hours()||24}),C("hmm",0,0,function(){return""+Qe.apply(this)+F(this.minutes(),2)}),C("hmmss",0,0,function(){return""+Qe.apply(this)+F(this.minutes(),2)+F(this.seconds(),2)}),C("Hmm",0,0,function(){return""+this.hours()+F(this.minutes(),2)}),C("Hmmss",0,0,function(){return""+this.hours()+F(this.minutes(),2)+F(this.seconds(),2)}),Xe("a",!0),Xe("A",!1),O("hour","h"),E("hour",13),ie("a",ea),ie("A",ea),ie("H",B),ie("h",B),ie("k",B),ie("HH",B,V),ie("hh",B,V),ie("kk",B,V),ie("hmm",q),ie("hmmss",Q),ie("Hmm",q),ie("Hmmss",Q),le(["H","HH"],Ye),le(["k","kk"],function(e,a,t){var s=g(e);a[Ye]=24===s?0:s}),le(["a","A"],function(e,a,t){t._isPm=t._locale.isPM(e),t._meridiem=e}),le(["h","hh"],function(e,a,t){a[Ye]=g(e),Y(t).bigHour=!0}),le("hmm",function(e,a,t){var s=e.length-2;a[Ye]=g(e.substr(0,s)),a[ye]=g(e.substr(s)),Y(t).bigHour=!0}),le("hmmss",function(e,a,t){var s=e.length-4,n=e.length-2;a[Ye]=g(e.substr(0,s)),a[ye]=g(e.substr(s,2)),a[fe]=g(e.substr(n)),Y(t).bigHour=!0}),le("Hmm",function(e,a,t){var s=e.length-2;a[Ye]=g(e.substr(0,s)),a[ye]=g(e.substr(s))}),le("Hmmss",function(e,a,t){var s=e.length-4,n=e.length-2;a[Ye]=g(e.substr(0,s)),a[ye]=g(e.substr(s,2)),a[fe]=g(e.substr(n))});var aa,ta=Se("Hours",!0),sa={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Oe,monthsShort:Pe,week:{dow:0,doy:6},weekdays:Ge,weekdaysMin:Ke,weekdaysShort:Ve,meridiemParse:/[ap]\.?m?\.?/i},na={},da={};function ra(e){return e?e.toLowerCase().replace("_","-"):e}function _a(e){var a=null;if(!na[e]&&"undefined"!=typeof module&&module&&module.exports)try{a=aa._abbr,require("./locale/"+e),ia(a)}catch(e){}return na[e]}function ia(e,a){var t;return e&&((t=o(a)?ma(e):oa(e,a))?aa=t:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),aa._abbr}function oa(e,a){if(null===a)return delete na[e],null;var t,s=sa;if(a.abbr=e,null!=na[e])S("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=na[e]._config;else if(null!=a.parentLocale)if(null!=na[a.parentLocale])s=na[a.parentLocale]._config;else{if(null==(t=_a(a.parentLocale)))return da[a.parentLocale]||(da[a.parentLocale]=[]),da[a.parentLocale].push({name:e,config:a}),null;s=t._config}return na[e]=new j(b(s,a)),da[e]&&da[e].forEach(function(e){oa(e.name,e.config)}),ia(e),na[e]}function ma(e){var a;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return aa;if(!_(e)){if(a=_a(e))return a;e=[e]}return function(e){for(var a,t,s,n,d=0;d<e.length;){for(a=(n=ra(e[d]).split("-")).length,t=(t=ra(e[d+1]))?t.split("-"):null;0<a;){if(s=_a(n.slice(0,a).join("-")))return s;if(t&&t.length>=a&&r(n,t,!0)>=a-1)break;a--}d++}return aa}(e)}function ua(e){var a,t=e._a;return t&&-2===Y(e).overflow&&(a=t[Le]<0||11<t[Le]?Le:t[ce]<1||t[ce]>je(t[he],t[Le])?ce:t[Ye]<0||24<t[Ye]||24===t[Ye]&&(0!==t[ye]||0!==t[fe]||0!==t[ke])?Ye:t[ye]<0||59<t[ye]?ye:t[fe]<0||59<t[fe]?fe:t[ke]<0||999<t[ke]?ke:-1,Y(e)._overflowDayOfYear&&(a<he||ce<a)&&(a=ce),Y(e)._overflowWeeks&&-1===a&&(a=pe),Y(e)._overflowWeekday&&-1===a&&(a=De),Y(e).overflow=a),e}function la(e,a,t){return null!=e?e:null!=a?a:t}function Ma(e){var a,t,s,n,d,r=[];if(!e._d){var _,i;for(_=e,i=new Date(l.now()),s=_._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()],e._w&&null==e._a[ce]&&null==e._a[Le]&&function(e){var a,t,s,n,d,r,_,i;if(null!=(a=e._w).GG||null!=a.W||null!=a.E)d=1,r=4,t=la(a.GG,e._a[he],Ce(Ha(),1,4).year),s=la(a.W,1),((n=la(a.E,1))<1||7<n)&&(i=!0);else{d=e._locale._week.dow,r=e._locale._week.doy;var o=Ce(Ha(),d,r);t=la(a.gg,e._a[he],o.year),s=la(a.w,o.week),null!=a.d?((n=a.d)<0||6<n)&&(i=!0):null!=a.e?(n=a.e+d,(a.e<0||6<a.e)&&(i=!0)):n=d}s<1||s>Ie(t,d,r)?Y(e)._overflowWeeks=!0:null!=i?Y(e)._overflowWeekday=!0:(_=Re(t,s,n,d,r),e._a[he]=_.year,e._dayOfYear=_.dayOfYear)}(e),null!=e._dayOfYear&&(d=la(e._a[he],s[he]),(e._dayOfYear>Te(d)||0===e._dayOfYear)&&(Y(e)._overflowDayOfYear=!0),t=Je(d,0,e._dayOfYear),e._a[Le]=t.getUTCMonth(),e._a[ce]=t.getUTCDate()),a=0;a<3&&null==e._a[a];++a)e._a[a]=r[a]=s[a];for(;a<7;a++)e._a[a]=r[a]=null==e._a[a]?2===a?1:0:e._a[a];24===e._a[Ye]&&0===e._a[ye]&&0===e._a[fe]&&0===e._a[ke]&&(e._nextDay=!0,e._a[Ye]=0),e._d=(e._useUTC?Je:function(e,a,t,s,n,d,r){var _;return e<100&&0<=e?(_=new Date(e+400,a,t,s,n,d,r),isFinite(_.getFullYear())&&_.setFullYear(e)):_=new Date(e,a,t,s,n,d,r),_}).apply(null,r),n=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Ye]=24),e._w&&void 0!==e._w.d&&e._w.d!==n&&(Y(e).weekdayMismatch=!0)}}var ha=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,La=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ca=/Z|[+-]\d\d(?::?\d\d)?/,Ya=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],ya=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],fa=/^\/?Date\((\-?\d+)/i;function ka(e){var a,t,s,n,d,r,_=e._i,i=ha.exec(_)||La.exec(_);if(i){for(Y(e).iso=!0,a=0,t=Ya.length;a<t;a++)if(Ya[a][1].exec(i[1])){n=Ya[a][0],s=!1!==Ya[a][2];break}if(null==n)return void(e._isValid=!1);if(i[3]){for(a=0,t=ya.length;a<t;a++)if(ya[a][1].exec(i[3])){d=(i[2]||" ")+ya[a][0];break}if(null==d)return void(e._isValid=!1)}if(!s&&null!=d)return void(e._isValid=!1);if(i[4]){if(!ca.exec(i[4]))return void(e._isValid=!1);r="Z"}e._f=n+(d||"")+(r||""),wa(e)}else e._isValid=!1}var pa=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;function Da(e,a,t,s,n,d){var r=[function(e){var a=parseInt(e,10);{if(a<=49)return 2e3+a;if(a<=999)return 1900+a}return a}(e),Pe.indexOf(a),parseInt(t,10),parseInt(s,10),parseInt(n,10)];return d&&r.push(parseInt(d,10)),r}var Ta={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function ga(e){var a,t,s,n=pa.exec(e._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,""));if(n){var d=Da(n[4],n[3],n[2],n[5],n[6],n[7]);if(a=n[1],t=d,s=e,a&&Ve.indexOf(a)!==new Date(t[0],t[1],t[2]).getDay()&&(Y(s).weekdayMismatch=!0,!(s._isValid=!1)))return;e._a=d,e._tzm=function(e,a,t){if(e)return Ta[e];if(a)return 0;var s=parseInt(t,10),n=s%100;return(s-n)/100*60+n}(n[8],n[9],n[10]),e._d=Je.apply(null,e._a),e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),Y(e).rfc2822=!0}else e._isValid=!1}function wa(e){if(e._f!==l.ISO_8601)if(e._f!==l.RFC_2822){e._a=[],Y(e).empty=!0;var a,t,s,n,d,r,_,i,o=""+e._i,m=o.length,u=0;for(s=U(e._f,e._locale).match(z)||[],a=0;a<s.length;a++)n=s[a],(t=(o.match(oe(n,e))||[])[0])&&(0<(d=o.substr(0,o.indexOf(t))).length&&Y(e).unusedInput.push(d),o=o.slice(o.indexOf(t)+t.length),u+=t.length),R[n]?(t?Y(e).empty=!1:Y(e).unusedTokens.push(n),r=n,i=e,null!=(_=t)&&h(ue,r)&&ue[r](_,i._a,i,r)):e._strict&&!t&&Y(e).unusedTokens.push(n);Y(e).charsLeftOver=m-u,0<o.length&&Y(e).unusedInput.push(o),e._a[Ye]<=12&&!0===Y(e).bigHour&&0<e._a[Ye]&&(Y(e).bigHour=void 0),Y(e).parsedDateParts=e._a.slice(0),Y(e).meridiem=e._meridiem,e._a[Ye]=function(e,a,t){var s;if(null==t)return a;return null!=e.meridiemHour?e.meridiemHour(a,t):(null!=e.isPM&&((s=e.isPM(t))&&a<12&&(a+=12),s||12!==a||(a=0)),a)}(e._locale,e._a[Ye],e._meridiem),Ma(e),ua(e)}else ga(e);else ka(e)}function va(e){var a,t,s,n,d=e._i,r=e._f;return e._locale=e._locale||ma(e._l),null===d||void 0===r&&""===d?f({nullInput:!0}):("string"==typeof d&&(e._i=d=e._locale.preparse(d)),D(d)?new p(ua(d)):(u(d)?e._d=d:_(r)?function(e){var a,t,s,n,d;if(0===e._f.length)return Y(e).invalidFormat=!0,e._d=new Date(NaN);for(n=0;n<e._f.length;n++)d=0,a=k({},e),null!=e._useUTC&&(a._useUTC=e._useUTC),a._f=e._f[n],wa(a),y(a)&&(d+=Y(a).charsLeftOver,d+=10*Y(a).unusedTokens.length,Y(a).score=d,(null==s||d<s)&&(s=d,t=a));L(e,t||a)}(e):r?wa(e):o(t=(a=e)._i)?a._d=new Date(l.now()):u(t)?a._d=new Date(t.valueOf()):"string"==typeof t?(s=a,null===(n=fa.exec(s._i))?(ka(s),!1===s._isValid&&(delete s._isValid,ga(s),!1===s._isValid&&(delete s._isValid,l.createFromInputFallback(s)))):s._d=new Date(+n[1])):_(t)?(a._a=M(t.slice(0),function(e){return parseInt(e,10)}),Ma(a)):i(t)?function(e){if(!e._d){var a=W(e._i);e._a=M([a.year,a.month,a.day||a.date,a.hour,a.minute,a.second,a.millisecond],function(e){return e&&parseInt(e,10)}),Ma(e)}}(a):m(t)?a._d=new Date(t):l.createFromInputFallback(a),y(e)||(e._d=null),e))}function Sa(e,a,t,s,n){var d,r={};return!0!==t&&!1!==t||(s=t,t=void 0),(i(e)&&function(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var a;for(a in e)if(e.hasOwnProperty(a))return!1;return!0}(e)||_(e)&&0===e.length)&&(e=void 0),r._isAMomentObject=!0,r._useUTC=r._isUTC=n,r._l=t,r._i=e,r._f=a,r._strict=s,(d=new p(ua(va(r))))._nextDay&&(d.add(1,"d"),d._nextDay=void 0),d}function Ha(e,a,t,s){return Sa(e,a,t,s,!1)}l.createFromInputFallback=t("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),l.ISO_8601=function(){},l.RFC_2822=function(){};var ba=t("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=Ha.apply(null,arguments);return this.isValid()&&e.isValid()?e<this?this:e:f()}),ja=t("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=Ha.apply(null,arguments);return this.isValid()&&e.isValid()?this<e?this:e:f()});function xa(e,a){var t,s;if(1===a.length&&_(a[0])&&(a=a[0]),!a.length)return Ha();for(t=a[0],s=1;s<a.length;++s)a[s].isValid()&&!a[s][e](t)||(t=a[s]);return t}var Oa=["year","quarter","month","week","day","hour","minute","second","millisecond"];function Pa(e){var a=W(e),t=a.year||0,s=a.quarter||0,n=a.month||0,d=a.week||a.isoWeek||0,r=a.day||0,_=a.hour||0,i=a.minute||0,o=a.second||0,m=a.millisecond||0;this._isValid=function(e){for(var a in e)if(-1===we.call(Oa,a)||null!=e[a]&&isNaN(e[a]))return!1;for(var t=!1,s=0;s<Oa.length;++s)if(e[Oa[s]]){if(t)return!1;parseFloat(e[Oa[s]])!==g(e[Oa[s]])&&(t=!0)}return!0}(a),this._milliseconds=+m+1e3*o+6e4*i+1e3*_*60*60,this._days=+r+7*d,this._months=+n+3*s+12*t,this._data={},this._locale=ma(),this._bubble()}function Wa(e){return e instanceof Pa}function Aa(e){return e<0?-1*Math.round(-1*e):Math.round(e)}function Ea(e,t){C(e,0,0,function(){var e=this.utcOffset(),a="+";return e<0&&(e=-e,a="-"),a+F(~~(e/60),2)+t+F(~~e%60,2)})}Ea("Z",":"),Ea("ZZ",""),ie("Z",de),ie("ZZ",de),le(["Z","ZZ"],function(e,a,t){t._useUTC=!0,t._tzm=za(de,e)});var Fa=/([\+\-]|\d\d)/gi;function za(e,a){var t=(a||"").match(e);if(null===t)return null;var s=((t[t.length-1]||[])+"").match(Fa)||["-",0,0],n=60*s[1]+g(s[2]);return 0===n?0:"+"===s[0]?n:-n}function Ja(e,a){var t,s;return a._isUTC?(t=a.clone(),s=(D(e)||u(e)?e.valueOf():Ha(e).valueOf())-t.valueOf(),t._d.setTime(t._d.valueOf()+s),l.updateOffset(t,!1),t):Ha(e).local()}function Na(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function Ra(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}l.updateOffset=function(){};var Ca=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Ia=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Ua(e,a){var t,s,n,d=e,r=null;return Wa(e)?d={ms:e._milliseconds,d:e._days,M:e._months}:m(e)?(d={},a?d[a]=e:d.milliseconds=e):(r=Ca.exec(e))?(t="-"===r[1]?-1:1,d={y:0,d:g(r[ce])*t,h:g(r[Ye])*t,m:g(r[ye])*t,s:g(r[fe])*t,ms:g(Aa(1e3*r[ke]))*t}):(r=Ia.exec(e))?(t="-"===r[1]?-1:1,d={y:Ga(r[2],t),M:Ga(r[3],t),w:Ga(r[4],t),d:Ga(r[5],t),h:Ga(r[6],t),m:Ga(r[7],t),s:Ga(r[8],t)}):null==d?d={}:"object"==typeof d&&("from"in d||"to"in d)&&(n=function(e,a){var t;if(!e.isValid()||!a.isValid())return{milliseconds:0,months:0};a=Ja(a,e),e.isBefore(a)?t=Va(e,a):((t=Va(a,e)).milliseconds=-t.milliseconds,t.months=-t.months);return t}(Ha(d.from),Ha(d.to)),(d={}).ms=n.milliseconds,d.M=n.months),s=new Pa(d),Wa(e)&&h(e,"_locale")&&(s._locale=e._locale),s}function Ga(e,a){var t=e&&parseFloat(e.replace(",","."));return(isNaN(t)?0:t)*a}function Va(e,a){var t={};return t.months=a.month()-e.month()+12*(a.year()-e.year()),e.clone().add(t.months,"M").isAfter(a)&&--t.months,t.milliseconds=+a-+e.clone().add(t.months,"M"),t}function Ka(s,n){return function(e,a){var t;return null===a||isNaN(+a)||(S(n,"moment()."+n+"(period, number) is deprecated. Please use moment()."+n+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),t=e,e=a,a=t),Za(this,Ua(e="string"==typeof e?+e:e,a),s),this}}function Za(e,a,t,s){var n=a._milliseconds,d=Aa(a._days),r=Aa(a._months);e.isValid()&&(s=null==s||s,r&&We(e,He(e,"Month")+r*t),d&&be(e,"Date",He(e,"Date")+d*t),n&&e._d.setTime(e._d.valueOf()+n*t),s&&l.updateOffset(e,d||r))}Ua.fn=Pa.prototype,Ua.invalid=function(){return Ua(NaN)};var $a=Ka(1,"add"),Ba=Ka(-1,"subtract");function qa(e,a){var t=12*(a.year()-e.year())+(a.month()-e.month()),s=e.clone().add(t,"months");return-(t+(a-s<0?(a-s)/(s-e.clone().add(t-1,"months")):(a-s)/(e.clone().add(t+1,"months")-s)))||0}function Qa(e){var a;return void 0===e?this._locale._abbr:(null!=(a=ma(e))&&(this._locale=a),this)}l.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",l.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var Xa=t("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});function et(){return this._locale}var at=126227808e5;function tt(e,a){return(e%a+a)%a}function st(e,a,t){return e<100&&0<=e?new Date(e+400,a,t)-at:new Date(e,a,t).valueOf()}function nt(e,a,t){return e<100&&0<=e?Date.UTC(e+400,a,t)-at:Date.UTC(e,a,t)}function dt(e,a){C(0,[e,e.length],0,a)}function rt(e,a,t,s,n){var d;return null==e?Ce(this,s,n).year:((d=Ie(e,s,n))<a&&(a=d),function(e,a,t,s,n){var d=Re(e,a,t,s,n),r=Je(d.year,0,d.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}.call(this,e,a,t,s,n))}C(0,["gg",2],0,function(){return this.weekYear()%100}),C(0,["GG",2],0,function(){return this.isoWeekYear()%100}),dt("gggg","weekYear"),dt("ggggg","weekYear"),dt("GGGG","isoWeekYear"),dt("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),E("weekYear",1),E("isoWeekYear",1),ie("G",se),ie("g",se),ie("GG",B,V),ie("gg",B,V),ie("GGGG",ee,Z),ie("gggg",ee,Z),ie("GGGGG",ae,$),ie("ggggg",ae,$),Me(["gggg","ggggg","GGGG","GGGGG"],function(e,a,t,s){a[s.substr(0,2)]=g(e)}),Me(["gg","GG"],function(e,a,t,s){a[s]=l.parseTwoDigitYear(e)}),C("Q",0,"Qo","quarter"),O("quarter","Q"),E("quarter",7),ie("Q",G),le("Q",function(e,a){a[Le]=3*(g(e)-1)}),C("D",["DD",2],"Do","date"),O("date","D"),E("date",9),ie("D",B),ie("DD",B,V),ie("Do",function(e,a){return e?a._dayOfMonthOrdinalParse||a._ordinalParse:a._dayOfMonthOrdinalParseLenient}),le(["D","DD"],ce),le("Do",function(e,a){a[ce]=g(e.match(B)[0])});var _t=Se("Date",!0);C("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),E("dayOfYear",4),ie("DDD",X),ie("DDDD",K),le(["DDD","DDDD"],function(e,a,t){t._dayOfYear=g(e)}),C("m",["mm",2],0,"minute"),O("minute","m"),E("minute",14),ie("m",B),ie("mm",B,V),le(["m","mm"],ye);var it=Se("Minutes",!1);C("s",["ss",2],0,"second"),O("second","s"),E("second",15),ie("s",B),ie("ss",B,V),le(["s","ss"],fe);var ot,mt=Se("Seconds",!1);for(C("S",0,0,function(){return~~(this.millisecond()/100)}),C(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),C(0,["SSS",3],0,"millisecond"),C(0,["SSSS",4],0,function(){return 10*this.millisecond()}),C(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),C(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),C(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),C(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),C(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),O("millisecond","ms"),E("millisecond",16),ie("S",X,G),ie("SS",X,V),ie("SSS",X,K),ot="SSSS";ot.length<=9;ot+="S")ie(ot,te);function ut(e,a){a[ke]=g(1e3*("0."+e))}for(ot="S";ot.length<=9;ot+="S")le(ot,ut);var lt=Se("Milliseconds",!1);C("z",0,0,"zoneAbbr"),C("zz",0,0,"zoneName");var Mt=p.prototype;function ht(e){return e}Mt.add=$a,Mt.calendar=function(e,a){var t=e||Ha(),s=Ja(t,this).startOf("day"),n=l.calendarFormat(this,s)||"sameElse",d=a&&(H(a[n])?a[n].call(this,t):a[n]);return this.format(d||this.localeData().calendar(n,this,Ha(t)))},Mt.clone=function(){return new p(this)},Mt.diff=function(e,a,t){var s,n,d;if(!this.isValid())return NaN;if(!(s=Ja(e,this)).isValid())return NaN;switch(n=6e4*(s.utcOffset()-this.utcOffset()),a=P(a)){case"year":d=qa(this,s)/12;break;case"month":d=qa(this,s);break;case"quarter":d=qa(this,s)/3;break;case"second":d=(this-s)/1e3;break;case"minute":d=(this-s)/6e4;break;case"hour":d=(this-s)/36e5;break;case"day":d=(this-s-n)/864e5;break;case"week":d=(this-s-n)/6048e5;break;default:d=this-s}return t?d:T(d)},Mt.endOf=function(e){var a;if(void 0===(e=P(e))||"millisecond"===e||!this.isValid())return this;var t=this._isUTC?nt:st;switch(e){case"year":a=t(this.year()+1,0,1)-1;break;case"quarter":a=t(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":a=t(this.year(),this.month()+1,1)-1;break;case"week":a=t(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":a=t(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":a=t(this.year(),this.month(),this.date()+1)-1;break;case"hour":a=this._d.valueOf(),a+=36e5-tt(a+(this._isUTC?0:6e4*this.utcOffset()),36e5)-1;break;case"minute":a=this._d.valueOf(),a+=6e4-tt(a,6e4)-1;break;case"second":a=this._d.valueOf(),a+=1e3-tt(a,1e3)-1;break}return this._d.setTime(a),l.updateOffset(this,!0),this},Mt.format=function(e){e||(e=this.isUtc()?l.defaultFormatUtc:l.defaultFormat);var a=I(this,e);return this.localeData().postformat(a)},Mt.from=function(e,a){return this.isValid()&&(D(e)&&e.isValid()||Ha(e).isValid())?Ua({to:this,from:e}).locale(this.locale()).humanize(!a):this.localeData().invalidDate()},Mt.fromNow=function(e){return this.from(Ha(),e)},Mt.to=function(e,a){return this.isValid()&&(D(e)&&e.isValid()||Ha(e).isValid())?Ua({from:this,to:e}).locale(this.locale()).humanize(!a):this.localeData().invalidDate()},Mt.toNow=function(e){return this.to(Ha(),e)},Mt.get=function(e){return H(this[e=P(e)])?this[e]():this},Mt.invalidAt=function(){return Y(this).overflow},Mt.isAfter=function(e,a){var t=D(e)?e:Ha(e);return!(!this.isValid()||!t.isValid())&&("millisecond"===(a=P(a)||"millisecond")?this.valueOf()>t.valueOf():t.valueOf()<this.clone().startOf(a).valueOf())},Mt.isBefore=function(e,a){var t=D(e)?e:Ha(e);return!(!this.isValid()||!t.isValid())&&("millisecond"===(a=P(a)||"millisecond")?this.valueOf()<t.valueOf():this.clone().endOf(a).valueOf()<t.valueOf())},Mt.isBetween=function(e,a,t,s){var n=D(e)?e:Ha(e),d=D(a)?a:Ha(a);return!!(this.isValid()&&n.isValid()&&d.isValid())&&("("===(s=s||"()")[0]?this.isAfter(n,t):!this.isBefore(n,t))&&(")"===s[1]?this.isBefore(d,t):!this.isAfter(d,t))},Mt.isSame=function(e,a){var t,s=D(e)?e:Ha(e);return!(!this.isValid()||!s.isValid())&&("millisecond"===(a=P(a)||"millisecond")?this.valueOf()===s.valueOf():(t=s.valueOf(),this.clone().startOf(a).valueOf()<=t&&t<=this.clone().endOf(a).valueOf()))},Mt.isSameOrAfter=function(e,a){return this.isSame(e,a)||this.isAfter(e,a)},Mt.isSameOrBefore=function(e,a){return this.isSame(e,a)||this.isBefore(e,a)},Mt.isValid=function(){return y(this)},Mt.lang=Xa,Mt.locale=Qa,Mt.localeData=et,Mt.max=ja,Mt.min=ba,Mt.parsingFlags=function(){return L({},Y(this))},Mt.set=function(e,a){if("object"==typeof e)for(var t=function(e){var a=[];for(var t in e)a.push({unit:t,priority:A[t]});return a.sort(function(e,a){return e.priority-a.priority}),a}(e=W(e)),s=0;s<t.length;s++)this[t[s].unit](e[t[s].unit]);else if(H(this[e=P(e)]))return this[e](a);return this},Mt.startOf=function(e){var a;if(void 0===(e=P(e))||"millisecond"===e||!this.isValid())return this;var t=this._isUTC?nt:st;switch(e){case"year":a=t(this.year(),0,1);break;case"quarter":a=t(this.year(),this.month()-this.month()%3,1);break;case"month":a=t(this.year(),this.month(),1);break;case"week":a=t(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":a=t(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":a=t(this.year(),this.month(),this.date());break;case"hour":a=this._d.valueOf(),a-=tt(a+(this._isUTC?0:6e4*this.utcOffset()),36e5);break;case"minute":a=this._d.valueOf(),a-=tt(a,6e4);break;case"second":a=this._d.valueOf(),a-=tt(a,1e3);break}return this._d.setTime(a),l.updateOffset(this,!0),this},Mt.subtract=Ba,Mt.toArray=function(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]},Mt.toObject=function(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}},Mt.toDate=function(){return new Date(this.valueOf())},Mt.toISOString=function(e){if(!this.isValid())return null;var a=!0!==e,t=a?this.clone().utc():this;return t.year()<0||9999<t.year()?I(t,a?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):H(Date.prototype.toISOString)?a?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",I(t,"Z")):I(t,a?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},Mt.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",a="";this.isLocal()||(e=0===this.utcOffset()?"moment.utc":"moment.parseZone",a="Z");var t="["+e+'("]',s=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",n=a+'[")]';return this.format(t+s+"-MM-DD[T]HH:mm:ss.SSS"+n)},Mt.toJSON=function(){return this.isValid()?this.toISOString():null},Mt.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},Mt.unix=function(){return Math.floor(this.valueOf()/1e3)},Mt.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},Mt.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},Mt.year=ve,Mt.isLeapYear=function(){return ge(this.year())},Mt.weekYear=function(e){return rt.call(this,e,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},Mt.isoWeekYear=function(e){return rt.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)},Mt.quarter=Mt.quarters=function(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)},Mt.month=Ae,Mt.daysInMonth=function(){return je(this.year(),this.month())},Mt.week=Mt.weeks=function(e){var a=this.localeData().week(this);return null==e?a:this.add(7*(e-a),"d")},Mt.isoWeek=Mt.isoWeeks=function(e){var a=Ce(this,1,4).week;return null==e?a:this.add(7*(e-a),"d")},Mt.weeksInYear=function(){var e=this.localeData()._week;return Ie(this.year(),e.dow,e.doy)},Mt.isoWeeksInYear=function(){return Ie(this.year(),1,4)},Mt.date=_t,Mt.day=Mt.days=function(e){if(!this.isValid())return null!=e?this:NaN;var a,t,s=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(a=e,t=this.localeData(),e="string"!=typeof a?a:isNaN(a)?"number"==typeof(a=t.weekdaysParse(a))?a:null:parseInt(a,10),this.add(e-s,"d")):s},Mt.weekday=function(e){if(!this.isValid())return null!=e?this:NaN;var a=(this.day()+7-this.localeData()._week.dow)%7;return null==e?a:this.add(e-a,"d")},Mt.isoWeekday=function(e){if(!this.isValid())return null!=e?this:NaN;if(null==e)return this.day()||7;var a,t,s=(a=e,t=this.localeData(),"string"==typeof a?t.weekdaysParse(a)%7||7:isNaN(a)?null:a);return this.day(this.day()%7?s:s-7)},Mt.dayOfYear=function(e){var a=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?a:this.add(e-a,"d")},Mt.hour=Mt.hours=ta,Mt.minute=Mt.minutes=it,Mt.second=Mt.seconds=mt,Mt.millisecond=Mt.milliseconds=lt,Mt.utcOffset=function(e,a,t){var s,n=this._offset||0;if(!this.isValid())return null!=e?this:NaN;if(null==e)return this._isUTC?n:Na(this);if("string"==typeof e){if(null===(e=za(de,e)))return this}else Math.abs(e)<16&&!t&&(e*=60);return!this._isUTC&&a&&(s=Na(this)),this._offset=e,this._isUTC=!0,null!=s&&this.add(s,"m"),n!==e&&(!a||this._changeInProgress?Za(this,Ua(e-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,l.updateOffset(this,!0),this._changeInProgress=null)),this},Mt.utc=function(e){return this.utcOffset(0,e)},Mt.local=function(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Na(this),"m")),this},Mt.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var e=za(ne,this._i);null!=e?this.utcOffset(e):this.utcOffset(0,!0)}return this},Mt.hasAlignedHourOffset=function(e){return!!this.isValid()&&(e=e?Ha(e).utcOffset():0,(this.utcOffset()-e)%60==0)},Mt.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},Mt.isLocal=function(){return!!this.isValid()&&!this._isUTC},Mt.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},Mt.isUtc=Ra,Mt.isUTC=Ra,Mt.zoneAbbr=function(){return this._isUTC?"UTC":""},Mt.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},Mt.dates=t("dates accessor is deprecated. Use date instead.",_t),Mt.months=t("months accessor is deprecated. Use month instead",Ae),Mt.years=t("years accessor is deprecated. Use year instead",ve),Mt.zone=t("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,a){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,a),this):-this.utcOffset()}),Mt.isDSTShifted=t("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!o(this._isDSTShifted))return this._isDSTShifted;var e={};if(k(e,this),(e=va(e))._a){var a=e._isUTC?c(e._a):Ha(e._a);this._isDSTShifted=this.isValid()&&0<r(e._a,a.toArray())}else this._isDSTShifted=!1;return this._isDSTShifted});var Lt=j.prototype;function ct(e,a,t,s){var n=ma(),d=c().set(s,a);return n[t](d,e)}function Yt(e,a,t){if(m(e)&&(a=e,e=void 0),e=e||"",null!=a)return ct(e,a,t,"month");var s,n=[];for(s=0;s<12;s++)n[s]=ct(e,s,t,"month");return n}function yt(e,a,t,s){a=("boolean"==typeof e?m(a)&&(t=a,a=void 0):(a=e,e=!1,m(t=a)&&(t=a,a=void 0)),a||"");var n,d=ma(),r=e?d._week.dow:0;if(null!=t)return ct(a,(t+r)%7,s,"day");var _=[];for(n=0;n<7;n++)_[n]=ct(a,(n+r)%7,s,"day");return _}Lt.calendar=function(e,a,t){var s=this._calendar[e]||this._calendar.sameElse;return H(s)?s.call(a,t):s},Lt.longDateFormat=function(e){var a=this._longDateFormat[e],t=this._longDateFormat[e.toUpperCase()];return a||!t?a:(this._longDateFormat[e]=t.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])},Lt.invalidDate=function(){return this._invalidDate},Lt.ordinal=function(e){return this._ordinal.replace("%d",e)},Lt.preparse=ht,Lt.postformat=ht,Lt.relativeTime=function(e,a,t,s){var n=this._relativeTime[t];return H(n)?n(e,a,t,s):n.replace(/%d/i,e)},Lt.pastFuture=function(e,a){var t=this._relativeTime[0<e?"future":"past"];return H(t)?t(a):t.replace(/%s/i,a)},Lt.set=function(e){var a,t;for(t in e)H(a=e[t])?this[t]=a:this["_"+t]=a;this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},Lt.months=function(e,a){return e?_(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||xe).test(a)?"format":"standalone"][e.month()]:_(this._months)?this._months:this._months.standalone},Lt.monthsShort=function(e,a){return e?_(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[xe.test(a)?"format":"standalone"][e.month()]:_(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},Lt.monthsParse=function(e,a,t){var s,n,d;if(this._monthsParseExact)return function(e,a,t){var s,n,d,r=e.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],s=0;s<12;++s)d=c([2e3,s]),this._shortMonthsParse[s]=this.monthsShort(d,"").toLocaleLowerCase(),this._longMonthsParse[s]=this.months(d,"").toLocaleLowerCase();return t?"MMM"===a?-1!==(n=we.call(this._shortMonthsParse,r))?n:null:-1!==(n=we.call(this._longMonthsParse,r))?n:null:"MMM"===a?-1!==(n=we.call(this._shortMonthsParse,r))?n:-1!==(n=we.call(this._longMonthsParse,r))?n:null:-1!==(n=we.call(this._longMonthsParse,r))?n:-1!==(n=we.call(this._shortMonthsParse,r))?n:null}.call(this,e,a,t);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),s=0;s<12;s++){if(n=c([2e3,s]),t&&!this._longMonthsParse[s]&&(this._longMonthsParse[s]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[s]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),t||this._monthsParse[s]||(d="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[s]=new RegExp(d.replace(".",""),"i")),t&&"MMMM"===a&&this._longMonthsParse[s].test(e))return s;if(t&&"MMM"===a&&this._shortMonthsParse[s].test(e))return s;if(!t&&this._monthsParse[s].test(e))return s}},Lt.monthsRegex=function(e){return this._monthsParseExact?(h(this,"_monthsRegex")||ze.call(this),e?this._monthsStrictRegex:this._monthsRegex):(h(this,"_monthsRegex")||(this._monthsRegex=Fe),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)},Lt.monthsShortRegex=function(e){return this._monthsParseExact?(h(this,"_monthsRegex")||ze.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(h(this,"_monthsShortRegex")||(this._monthsShortRegex=Ee),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)},Lt.week=function(e){return Ce(e,this._week.dow,this._week.doy).week},Lt.firstDayOfYear=function(){return this._week.doy},Lt.firstDayOfWeek=function(){return this._week.dow},Lt.weekdays=function(e,a){var t=_(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(a)?"format":"standalone"];return!0===e?Ue(t,this._week.dow):e?t[e.day()]:t},Lt.weekdaysMin=function(e){return!0===e?Ue(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin},Lt.weekdaysShort=function(e){return!0===e?Ue(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort},Lt.weekdaysParse=function(e,a,t){var s,n,d;if(this._weekdaysParseExact)return function(e,a,t){var s,n,d,r=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],s=0;s<7;++s)d=c([2e3,1]).day(s),this._minWeekdaysParse[s]=this.weekdaysMin(d,"").toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(d,"").toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(d,"").toLocaleLowerCase();return t?"dddd"===a?-1!==(n=we.call(this._weekdaysParse,r))?n:null:"ddd"===a?-1!==(n=we.call(this._shortWeekdaysParse,r))?n:null:-1!==(n=we.call(this._minWeekdaysParse,r))?n:null:"dddd"===a?-1!==(n=we.call(this._weekdaysParse,r))?n:-1!==(n=we.call(this._shortWeekdaysParse,r))?n:-1!==(n=we.call(this._minWeekdaysParse,r))?n:null:"ddd"===a?-1!==(n=we.call(this._shortWeekdaysParse,r))?n:-1!==(n=we.call(this._weekdaysParse,r))?n:-1!==(n=we.call(this._minWeekdaysParse,r))?n:null:-1!==(n=we.call(this._minWeekdaysParse,r))?n:-1!==(n=we.call(this._weekdaysParse,r))?n:-1!==(n=we.call(this._shortWeekdaysParse,r))?n:null}.call(this,e,a,t);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),s=0;s<7;s++){if(n=c([2e3,1]).day(s),t&&!this._fullWeekdaysParse[s]&&(this._fullWeekdaysParse[s]=new RegExp("^"+this.weekdays(n,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[s]=new RegExp("^"+this.weekdaysShort(n,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[s]=new RegExp("^"+this.weekdaysMin(n,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[s]||(d="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[s]=new RegExp(d.replace(".",""),"i")),t&&"dddd"===a&&this._fullWeekdaysParse[s].test(e))return s;if(t&&"ddd"===a&&this._shortWeekdaysParse[s].test(e))return s;if(t&&"dd"===a&&this._minWeekdaysParse[s].test(e))return s;if(!t&&this._weekdaysParse[s].test(e))return s}},Lt.weekdaysRegex=function(e){return this._weekdaysParseExact?(h(this,"_weekdaysRegex")||qe.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(h(this,"_weekdaysRegex")||(this._weekdaysRegex=Ze),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)},Lt.weekdaysShortRegex=function(e){return this._weekdaysParseExact?(h(this,"_weekdaysRegex")||qe.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(h(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=$e),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},Lt.weekdaysMinRegex=function(e){return this._weekdaysParseExact?(h(this,"_weekdaysRegex")||qe.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(h(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Be),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},Lt.isPM=function(e){return"p"===(e+"").toLowerCase().charAt(0)},Lt.meridiem=function(e,a,t){return 11<e?t?"pm":"PM":t?"am":"AM"},ia("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var a=e%10;return e+(1===g(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")}}),l.lang=t("moment.lang is deprecated. Use moment.locale instead.",ia),l.langData=t("moment.langData is deprecated. Use moment.localeData instead.",ma);var ft=Math.abs;function kt(e,a,t,s){var n=Ua(a,t);return e._milliseconds+=s*n._milliseconds,e._days+=s*n._days,e._months+=s*n._months,e._bubble()}function pt(e){return e<0?Math.floor(e):Math.ceil(e)}function Dt(e){return 4800*e/146097}function Tt(e){return 146097*e/4800}function gt(e){return function(){return this.as(e)}}var wt=gt("ms"),vt=gt("s"),St=gt("m"),Ht=gt("h"),bt=gt("d"),jt=gt("w"),xt=gt("M"),Ot=gt("Q"),Pt=gt("y");function Wt(e){return function(){return this.isValid()?this._data[e]:NaN}}var At=Wt("milliseconds"),Et=Wt("seconds"),Ft=Wt("minutes"),zt=Wt("hours"),Jt=Wt("days"),Nt=Wt("months"),Rt=Wt("years");var Ct=Math.round,It={ss:44,s:45,m:45,h:22,d:26,M:11};var Ut=Math.abs;function Gt(e){return(0<e)-(e<0)||+e}function Vt(){if(!this.isValid())return this.localeData().invalidDate();var e,a,t=Ut(this._milliseconds)/1e3,s=Ut(this._days),n=Ut(this._months);a=T((e=T(t/60))/60),t%=60,e%=60;var d=T(n/12),r=n%=12,_=s,i=a,o=e,m=t?t.toFixed(3).replace(/\.?0+$/,""):"",u=this.asSeconds();if(!u)return"P0D";var l=u<0?"-":"",M=Gt(this._months)!==Gt(u)?"-":"",h=Gt(this._days)!==Gt(u)?"-":"",L=Gt(this._milliseconds)!==Gt(u)?"-":"";return l+"P"+(d?M+d+"Y":"")+(r?M+r+"M":"")+(_?h+_+"D":"")+(i||o||m?"T":"")+(i?L+i+"H":"")+(o?L+o+"M":"")+(m?L+m+"S":"")}var Kt=Pa.prototype;Kt.isValid=function(){return this._isValid},Kt.abs=function(){var e=this._data;return this._milliseconds=ft(this._milliseconds),this._days=ft(this._days),this._months=ft(this._months),e.milliseconds=ft(e.milliseconds),e.seconds=ft(e.seconds),e.minutes=ft(e.minutes),e.hours=ft(e.hours),e.months=ft(e.months),e.years=ft(e.years),this},Kt.add=function(e,a){return kt(this,e,a,1)},Kt.subtract=function(e,a){return kt(this,e,a,-1)},Kt.as=function(e){if(!this.isValid())return NaN;var a,t,s=this._milliseconds;if("month"===(e=P(e))||"quarter"===e||"year"===e)switch(a=this._days+s/864e5,t=this._months+Dt(a),e){case"month":return t;case"quarter":return t/3;case"year":return t/12}else switch(a=this._days+Math.round(Tt(this._months)),e){case"week":return a/7+s/6048e5;case"day":return a+s/864e5;case"hour":return 24*a+s/36e5;case"minute":return 1440*a+s/6e4;case"second":return 86400*a+s/1e3;case"millisecond":return Math.floor(864e5*a)+s;default:throw new Error("Unknown unit "+e)}},Kt.asMilliseconds=wt,Kt.asSeconds=vt,Kt.asMinutes=St,Kt.asHours=Ht,Kt.asDays=bt,Kt.asWeeks=jt,Kt.asMonths=xt,Kt.asQuarters=Ot,Kt.asYears=Pt,Kt.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*g(this._months/12):NaN},Kt._bubble=function(){var e,a,t,s,n,d=this._milliseconds,r=this._days,_=this._months,i=this._data;return 0<=d&&0<=r&&0<=_||d<=0&&r<=0&&_<=0||(d+=864e5*pt(Tt(_)+r),_=r=0),i.milliseconds=d%1e3,e=T(d/1e3),i.seconds=e%60,a=T(e/60),i.minutes=a%60,t=T(a/60),i.hours=t%24,_+=n=T(Dt(r+=T(t/24))),r-=pt(Tt(n)),s=T(_/12),_%=12,i.days=r,i.months=_,i.years=s,this},Kt.clone=function(){return Ua(this)},Kt.get=function(e){return e=P(e),this.isValid()?this[e+"s"]():NaN},Kt.milliseconds=At,Kt.seconds=Et,Kt.minutes=Ft,Kt.hours=zt,Kt.days=Jt,Kt.weeks=function(){return T(this.days()/7)},Kt.months=Nt,Kt.years=Rt,Kt.humanize=function(e){if(!this.isValid())return this.localeData().invalidDate();var a,t,s,n,d,r,_,i,o,m,u,l=this.localeData(),M=(t=!e,s=l,n=Ua(a=this).abs(),d=Ct(n.as("s")),r=Ct(n.as("m")),_=Ct(n.as("h")),i=Ct(n.as("d")),o=Ct(n.as("M")),m=Ct(n.as("y")),(u=d<=It.ss&&["s",d]||d<It.s&&["ss",d]||r<=1&&["m"]||r<It.m&&["mm",r]||_<=1&&["h"]||_<It.h&&["hh",_]||i<=1&&["d"]||i<It.d&&["dd",i]||o<=1&&["M"]||o<It.M&&["MM",o]||m<=1&&["y"]||["yy",m])[2]=t,u[3]=0<+a,u[4]=s,function(e,a,t,s,n){return n.relativeTime(a||1,!!t,e,s)}.apply(null,u));return e&&(M=l.pastFuture(+this,M)),l.postformat(M)},Kt.toISOString=Vt,Kt.toString=Vt,Kt.toJSON=Vt,Kt.locale=Qa,Kt.localeData=et,Kt.toIsoString=t("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Vt),Kt.lang=Xa,C("X",0,0,"unix"),C("x",0,0,"valueOf"),ie("x",se),ie("X",/[+-]?\d+(\.\d{1,3})?/),le("X",function(e,a,t){t._d=new Date(1e3*parseFloat(e,10))}),le("x",function(e,a,t){t._d=new Date(g(e))}),l.version="2.24.0",e=Ha,l.fn=Mt,l.min=function(){return xa("isBefore",[].slice.call(arguments,0))},l.max=function(){return xa("isAfter",[].slice.call(arguments,0))},l.now=function(){return Date.now?Date.now():+new Date},l.utc=c,l.unix=function(e){return Ha(1e3*e)},l.months=function(e,a){return Yt(e,a,"months")}
vendor: 16,384 bytes, line 32
32,l.isDate=u,l.locale=ia,l.invalid=f,l.duration=Ua,l.isMoment=D,l.weekdays=function(e,a,t){return yt(e,a,t,"weekdays")},l.parseZone=function(){return Ha.apply(null,arguments).parseZone()},l.localeData=ma,l.isDuration=Wa,l.monthsShort=function(e,a){return Yt(e,a,"monthsShort")},l.weekdaysMin=function(e,a,t){return yt(e,a,t,"weekdaysMin")},l.defineLocale=oa,l.updateLocale=function(e,a){if(null!=a){var t,s,n=sa;null!=(s=_a(e))&&(n=s._config),(t=new j(a=b(n,a))).parentLocale=na[e],na[e]=t,ia(e)}else null!=na[e]&&(null!=na[e].parentLocale?na[e]=na[e].parentLocale:null!=na[e]&&delete na[e]);return na[e]},l.locales=function(){return s(na)},l.weekdaysShort=function(e,a,t){return yt(e,a,t,"weekdaysShort")},l.normalizeUnits=P,l.relativeTimeRounding=function(e){return void 0===e?Ct:"function"==typeof e&&(Ct=e,!0)},l.relativeTimeThreshold=function(e,a){return void 0!==It[e]&&(void 0===a?It[e]:(It[e]=a,"s"===e&&(It.ss=a-1),!0))},l.calendarFormat=function(e,a){var t=e.diff(a,"days",!0);return t<-6?"sameElse":t<-1?"lastWeek":t<0?"lastDay":t<1?"sameDay":t<2?"nextDay":t<7?"nextWeek":"sameElse"},l.prototype=Mt,l.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},l.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(e){return/^nm$/i.test(e)},meridiem:function(e,a,t){return e<12?t?"vm":"VM":t?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[M\xf4re om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||20<=e?"ste":"de")},week:{dow:1,doy:4}}),l.defineLocale("ar-dz",{months:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u0623\u062d_\u0625\u062b_\u062b\u0644\u0627_\u0623\u0631_\u062e\u0645_\u062c\u0645_\u0633\u0628".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:0,doy:4}}),l.defineLocale("ar-kw",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062a\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062a\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:0,doy:12}});var Zt={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},$t=function(e){return 0===e?0:1===e?1:2===e?2:3<=e%100&&e%100<=10?3:11<=e%100?4:5},Bt={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},qt=function(r){return function(e,a,t,s){var n=$t(e),d=Bt[r][$t(e)];return 2===n&&(d=d[a?0:1]),d.replace(/%d/i,e)}},Qt=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];l.defineLocale("ar-ly",{months:Qt,monthsShort:Qt,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(e){return"\u0645"===e},meridiem:function(e,a,t){return e<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:qt("s"),ss:qt("s"),m:qt("m"),mm:qt("m"),h:qt("h"),hh:qt("h"),d:qt("d"),dd:qt("d"),M:qt("M"),MM:qt("M"),y:qt("y"),yy:qt("y")},preparse:function(e){return e.replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return Zt[e]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}}),l.defineLocale("ar-ma",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062a\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062a\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:6,doy:12}});var Xt={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},es={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"};l.defineLocale("ar-sa",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(e){return"\u0645"===e},meridiem:function(e,a,t){return e<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u062
327\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},preparse:function(e){return e.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(e){return es[e]}).replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return Xt[e]}).replace(/,/g,"\u060c")},week:{dow:0,doy:6}}),l.defineLocale("ar-tn",{months:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:1,doy:4}});var as={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},ts={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},ss=function(e){return 0===e?0:1===e?1:2===e?2:3<=e%100&&e%100<=10?3:11<=e%100?4:5},ns={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},ds=function(r){return function(e,a,t,s){var n=ss(e),d=ns[r][ss(e)];return 2===n&&(d=d[a?0:1]),d.replace(/%d/i,e)}},rs=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];l.defineLocale("ar",{months:rs,monthsShort:rs,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(e){return"\u0645"===e},meridiem:function(e,a,t){return e<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:ds("s"),ss:ds("s"),m:ds("m"),mm:ds("m"),h:ds("h"),hh:ds("h"),d:ds("d"),dd:ds("d"),M:ds("M"),MM:ds("M"),y:ds("y"),yy:ds("y")},preparse:function(e){return e.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(e){return ts[e]}).replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return as[e]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}});var _s={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-\xfcnc\xfc",4:"-\xfcnc\xfc",100:"-\xfcnc\xfc",6:"-nc\u0131",9:"-uncu",10:"-uncu",30:"-uncu",60:"-\u0131nc\u0131",90:"-\u0131nc\u0131"};function is(e,a,t){var s,n;return"m"===t?a?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443":"h"===t?a?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443":e+" "+(s=+e,n={ss:a?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434",mm:a?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d",hh:a?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d",dd:"\u0434\u0437\u0435\u043d\u044c_\u0434\u043d\u0456_\u0434\u0437\u0451\u043d",MM:"\u043c\u0435\u0441\u044f\u0446_\u043c\u0435\u0441\u044f\u0446\u044b_\u043c\u0435\u0441\u044f\u0446\u0430\u045e",yy:"\u0433\u043e\u0434_\u0433\u0430\u0434\u044b_\u0433\u0430\u0434\u043e\u045e"}[t].split("_"),s%10==1&&s%100!=11?n[0]:2<=s%10&&s%10<=4&&(s%100<10||20<=s%100)?n[1]:n[2])}l.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ert\u0259si_\xc7\u0259r\u015f\u
320259nb\u0259 ax\u015fam\u0131_\xc7\u0259r\u015f\u0259nb\u0259_C\xfcm\u0259 ax\u015fam\u0131_C\xfcm\u0259_\u015e\u0259nb\u0259".split("_"),weekdaysShort:"Baz_BzE_\xc7Ax_\xc7\u0259r_CAx_C\xfcm_\u015e\u0259n".split("_"),weekdaysMin:"Bz_BE_\xc7A_\xc7\u0259_CA_C\xfc_\u015e\u0259".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[g\u0259l\u0259n h\u0259ft\u0259] dddd [saat] LT",lastDay:"[d\xfcn\u0259n] LT",lastWeek:"[ke\xe7\u0259n h\u0259ft\u0259] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \u0259vv\u0259l",s:"birne\xe7\u0259 saniy\u0259",ss:"%d saniy\u0259",m:"bir d\u0259qiq\u0259",mm:"%d d\u0259qiq\u0259",h:"bir saat",hh:"%d saat",d:"bir g\xfcn",dd:"%d g\xfcn",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gec\u0259|s\u0259h\u0259r|g\xfcnd\xfcz|ax\u015fam/,isPM:function(e){return/^(g\xfcnd\xfcz|ax\u015fam)$/.test(e)},meridiem:function(e,a,t){return e<4?"gec\u0259":e<12?"s\u0259h\u0259r":e<17?"g\xfcnd\xfcz":"ax\u015fam"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0131nc\u0131|inci|nci|\xfcnc\xfc|nc\u0131|uncu)/,ordinal:function(e){if(0===e)return e+"-\u0131nc\u0131";var a=e%10;return e+(_s[a]||_s[e%100-a]||_s[100<=e?100:null])},week:{dow:1,doy:7}}),l.defineLocale("be",{months:{format:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044f_\u043b\u044e\u0442\u0430\u0433\u0430_\u0441\u0430\u043a\u0430\u0432\u0456\u043a\u0430_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a\u0430_\u0442\u0440\u0430\u045e\u043d\u044f_\u0447\u044d\u0440\u0432\u0435\u043d\u044f_\u043b\u0456\u043f\u0435\u043d\u044f_\u0436\u043d\u0456\u045e\u043d\u044f_\u0432\u0435\u0440\u0430\u0441\u043d\u044f_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a\u0430_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434\u0430_\u0441\u043d\u0435\u0436\u043d\u044f".split("_"),standalone:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c_\u043b\u044e\u0442\u044b_\u0441\u0430\u043a\u0430\u0432\u0456\u043a_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a_\u0442\u0440\u0430\u0432\u0435\u043d\u044c_\u0447\u044d\u0440\u0432\u0435\u043d\u044c_\u043b\u0456\u043f\u0435\u043d\u044c_\u0436\u043d\u0456\u0432\u0435\u043d\u044c_\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434_\u0441\u043d\u0435\u0436\u0430\u043d\u044c".split("_")},monthsShort:"\u0441\u0442\u0443\u0434_\u043b\u044e\u0442_\u0441\u0430\u043a_\u043a\u0440\u0430\u0441_\u0442\u0440\u0430\u0432_\u0447\u044d\u0440\u0432_\u043b\u0456\u043f_\u0436\u043d\u0456\u0432_\u0432\u0435\u0440_\u043a\u0430\u0441\u0442_\u043b\u0456\u0441\u0442_\u0441\u043d\u0435\u0436".
vendor: 7,195 bytes, line 32
32split("_"),weekdays:{format:"\u043d\u044f\u0434\u0437\u0435\u043b\u044e_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0443_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0443_\u0441\u0443\u0431\u043e\u0442\u0443".split("_"),standalone:"\u043d\u044f\u0434\u0437\u0435\u043b\u044f_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0430_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0430_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),isFormat:/\[ ?[\u0423\u0443\u045e] ?(?:\u043c\u0456\u043d\u0443\u043b\u0443\u044e|\u043d\u0430\u0441\u0442\u0443\u043f\u043d\u0443\u044e)? ?\] ?dddd/},weekdaysShort:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., HH:mm",LLLL:"dddd, D MMMM YYYY \u0433., HH:mm"},calendar:{sameDay:"[\u0421\u0451\u043d\u043d\u044f \u045e] LT",nextDay:"[\u0417\u0430\u045e\u0442\u0440\u0430 \u045e] LT",lastDay:"[\u0423\u0447\u043e\u0440\u0430 \u045e] LT",nextWeek:function(){return"[\u0423] dddd [\u045e] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u0443\u044e] dddd [\u045e] LT";case 1:case 2:case 4:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u044b] dddd [\u045e] LT"}},sameElse:"L"},relativeTime:{future:"\u043f\u0440\u0430\u0437 %s",past:"%s \u0442\u0430\u043c\u0443",s:"\u043d\u0435\u043a\u0430\u043b\u044c\u043a\u0456 \u0441\u0435\u043a\u0443\u043d\u0434",m:is,mm:is,h:is,hh:is,d:"\u0434\u0437\u0435\u043d\u044c",dd:is,M:"\u043c\u0435\u0441\u044f\u0446",MM:is,y:"\u0433\u043e\u0434",yy:is},meridiemParse:/\u043d\u043e\u0447\u044b|\u0440\u0430\u043d\u0456\u0446\u044b|\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430/,isPM:function(e){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430)$/.test(e)},meridiem:function(e,a,t){return e<4?"\u043d\u043e\u0447\u044b":e<12?"\u0440\u0430\u043d\u0456\u0446\u044b":e<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u0430\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0456|\u044b|\u0433\u0430)/,ordinal:function(e,a){switch(a){case"M":case"d":case"DDD":case"w":case"W":return e%10!=2&&e%10!=3||e%100==12||e%100==13?e+"-\u044b":e+"-\u0456";case"D":return e+"-\u0433\u0430";default:return e}},week:{dow:1,doy:7}}),l.defineLocale("bg",{months:"\u044f\u043d\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438_\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438_\u043d\u043e\u0435\u043c\u0432\u0440\u0438_\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438".split("_"),monthsShort:"\u044f\u043d\u0440_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433_\u0441\u0435\u043f_\u043e\u043a\u0442_\u043d\u043e\u0435_\u0434\u0435\u043a".split("_"),weekdays:"\u043d\u0435\u0434\u0435\u043b\u044f_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u044f\u0434\u0430_\u0447\u0435\u0442\u0432\u044a\u0440\u0442\u044a\u043a_\u043f\u0435\u0442\u044a\u043a_\u0441\u044a\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434_\u043f\u043e\u043d_\u0432\u0442\u043e_\u0441\u0440\u044f_\u0447\u0435\u0442_\u043f\u0435\u0442_\u0441\u044a\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u043d\u0435\u0441 \u0432] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432] LT",nextWeek:"dddd [\u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[\u0412 \u0438\u0437\u043c\u0438\u043d\u0430\u043b\u0430\u0442\u0430] dddd [\u0432] LT";case 1:case 2:case 4:case 5:return"[\u0412 \u0438\u0437\u043c\u0438\u043d\u0430\u043b\u0438\u044f] dddd [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0441\u043b\u0435\u0434 %s",past:"\u043f\u0440\u0435\u0434\u0438 %s",s:"\u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434\u0438",m:"\u043c\u0438\u043d\u0443\u0442\u0430",mm:"%d \u043c\u0438\u043d\u0443\u0442\u0438",h:"\u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0434\u0435\u043d",dd:"%d \u0434\u043d\u0438",M:"\u043c\u0435\u0441\u0435\u0446",MM:"%d \u043c\u0435\u0441\u0435\u0446\u0430",y:"\u0433\u043e\u0434\u0438\u043d\u0430",yy:"%d \u0433\u043e\u0434\u0438\u043d\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0435\u0432|\u0435\u043d|\u0442\u0438|\u0432\u0438|\u0440\u0438|\u043c\u0438)/,ordinal:function(e){var a=e%10,t=e%100;return 0===e?e+"-\u0435\u0432":0===t?e+"-\u0435\u043d":10<t&&t<20?e+"-\u0442\u0438":1===a?e+"-\u0432\u0438":2===a?e+"-\u0440\u0438":7===a||8===a?e+"-\u043c\u0438":e+"-\u0442\u0438"},week:{dow:1,doy:7}}),l.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_M\u025bkalo_Zuw\u025bnkalo_Zuluyekalo_Utikalo_S\u025btanburukalo_\u0254kut\u0254burukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_M\u025b_Zuw_Zul_Uti_S\u025bt_\u0254ku_Now_Des".split("_"),weekdays:"Kari_Nt\u025bn\u025bn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Nt\u025b_Tar_Ara_Ala_Jum_Sib".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm"},calendar:{sameDay:"[Bi l\u025br\u025b] LT",nextDay:"[Sini l\u025br\u025b] LT",nextWeek:"dddd [don l\u025br\u025b] LT",lastDay:"[Kunu l\u025br\u025b] LT",lastWeek:"dddd [t\u025bm\u025bnen l\u025br\u025b] LT",sameElse:"L"},relativeTime:{future:"%s k\u0254n\u0254",past:"a b\u025b %s b\u0254",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"l\u025br\u025b kelen",hh:"l\u025br\u025b %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}});var os={1:"\u09e7",2:"\u09e8",3:"\u09e9",4:"\u09ea",5:"\u09eb",6:"\u09ec",7:"\u09ed",8:"\u09ee",9:"\u09ef",0:"\u09e6"},ms={"\u09e7":"1","\u09e8":"2","\u09e9":"3","\u09ea":"4","\u09eb":"5","\u09ec":"6","\u09ed":"7","\u09ee":"8","\u09ef":"9","\u09e6":"0"};l.defineLocale("bn",{months:"\u099c\u09be\u09a8\u09c1\u09df\u09be\u09b0\u09c0_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09df\u09be\u09b0\u09bf_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u
3209ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0_\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0_\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0_\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0".split("_"),monthsShort:"\u099c\u09be\u09a8\u09c1_\u09ab\u09c7\u09ac_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2_\u0986\u0997_\u09b8\u09c7\u09aa\u09cd\u099f_\u0985\u0995\u09cd\u099f\u09cb_\u09a8\u09ad\u09c7_\u09a1\u09bf\u09b8\u09c7".split("_"),weekdays:"\u09b0\u09ac\u09bf\u09ac\u09be\u09b0_\u09b8\u09cb\u09ae\u09ac\u09be\u09b0_\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0_\u09ac\u09c1\u09a7\u09ac\u09be\u09b0_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0_\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0_\u09b6\u09a8\u09bf\u09ac\u09be\u09b0".split("_"),weekdaysShort:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),weekdaysMin:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9\u0983_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),longDateFormat:{LT:"A h:mm \u09b8\u09ae\u09df",LTS:"A h:mm:ss \u09b8\u09ae\u09df",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u09b8\u09ae\u09df",LLLL:"dddd, D MMMM YYYY, A h:mm \u09b8\u09ae\u09df"},calendar:{sameDay:"[\u0986\u099c] LT",nextDay:"[\u0986\u0997\u09be\u09ae\u09c0\u0995\u09be\u09b2] LT",nextWeek:"dddd, LT",lastDay:"[\u0997\u09a4\u0995\u09be\u09b2] LT",lastWeek:"[\u0997\u09a4] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u09aa\u09b0\u09c7",past:"%s \u0986\u0997\u09c7",s:"\u0995\u09df\u09c7\u0995 \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",ss:"%d \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",m:"\u098f\u0995 \u09ae\u09bf\u09a8\u09bf\u099f",mm:"%d \u09ae\u09bf\u09a8\u09bf\u099f",h:"\u098f\u0995 \u0998\u09a8\u09cd\u099f\u09be",hh:"%d \u0998\u09a8\u09cd\u099f\u09be",d:"\u098f\u0995 \u09a6\u09bf\u09a8",dd:"%d \u09a6\u09bf\u09a8",M:"\u098f\u0995 \u09ae\u09be\u09b8",MM:"%d \u09ae\u09be\u09b8",y:"\u098f\u0995 \u09ac\u099b\u09b0",yy:"%d \u09ac\u099b\u09b0"},preparse:function(e){return e.replace(/[\u09e7\u09e8\u09e9\u09ea\u09eb\u09ec\u09ed\u09ee\u09ef\u09e6]/g,function(e){return ms[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return os[e]})},meridiemParse:/\u09b0\u09be\u09a4|\u09b8\u0995\u09be\u09b2|\u09a6\u09c1\u09aa\u09c1\u09b0|\u09ac\u09bf\u0995\u09be\u09b2|\u09b0\u09be\u09a4/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u09b0\u09be\u09a4"===a&&4<=e||"\u09a6\u09c1\u09aa\u09c1\u09b0"===a&&e<5||"\u09ac\u09bf\u0995\u09be\u09b2"===a?e+12:e},meridiem:function(e,a,t){return e<4?"\u09b0\u09be\u09a4":e<10?"\u09b8\u0995\u09be\u09b2":e<17?"\u09a6\u09c1\u09aa\u09c1\u09b0":e<20?"\u09ac\u09bf\u0995\u09be\u09b2":"\u09b0\u09be\u09a4"},week:{dow:0,doy:6}});var us={1:"\u0f21",2:"\u0f22",3:"\u0f23",4:"\u0f24",5:"\u0f25",6:"\u0f26",7:"\u0f27",8:"\u0f28",9:"\u0f29",0:"\u0f20"},ls={"\u0f21":"1","\u0f22":"2","\u0f23":"3","\u0f24":"4","\u0f25":"5","\u0f26":"6","\u0f27":"7","\u0f28":"8","\u0f29":"9","\u0f20":"0"};function Ms(e,a,t){var s,n,d;return e+" "+(s={mm:"munutenn",MM:"miz",dd:"devezh"}[t],2!==e?s:void 0!==(d={m:"v",b:"v",d:"z"})[(n=s).charAt(0)]?d[n.charAt(0)]+n.substring(1):n)}function hs(e,a,t){var s=e+" ";switch(t){case"ss":return s+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return a?"jedna minuta":"jedne minute";case"mm":return s+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return a?"jedan sat":"jednog sata";case"hh":return s+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return s+=1===e?"dan":"dana";case"MM":return s+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return s+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}l.defineLocale("bo",{months:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f66\u0f74\u0f58\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54".split("_"),monthsShort:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f66\u0f74\u0f58\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54".split("_"),weekdays:"\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysShort:"\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysMin:"\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0f51\u0f72\u0f0b\u0f62\u0f72\u0f44] LT",nextDay:"[\u0f66\u0f44\u0f0b\u0f49\u0f72\u0f53] LT",nextWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f62\u0f97\u0f7a\u0f66\u0f0b\u0f58], LT",lastDay:"[\u0f41\u0f0b\u0f66\u0f44] LT",lastWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f58\u0f50\u0f60\u0f0b\u0f58] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0f63\u0f0b",past:"%s \u0f66\u0f94\u0f53\u0f0b\u0f63",s:"\u0f63\u0f58\u0f0b\u0f66\u0f44",ss:"%d \u0f66\u0f90\u0f
3262\u0f0b\u0f46\u0f0d",m:"\u0f66\u0f90\u0f62\u0f0b\u0f58\u0f0b\u0f42\u0f45\u0f72\u0f42",mm:"%d \u0f66\u0f90\u0f62\u0f0b\u0f58",h:"\u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51\u0f0b\u0f42\u0f45\u0f72\u0f42",hh:"%d \u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51",d:"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f45\u0f72\u0f42",dd:"%d \u0f49\u0f72\u0f53\u0f0b",M:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f45\u0f72\u0f42",MM:"%d \u0f5f\u0fb3\u0f0b\u0f56",y:"\u0f63\u0f7c\u0f0b\u0f42\u0f45\u0f72\u0f42",yy:"%d \u0f63\u0f7c"},preparse:function(e){return e.replace(/[\u0f21\u0f22\u0f23\u0f24\u0f25\u0f26\u0f27\u0f28\u0f29\u0f20]/g,function(e){return ls[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return us[e]})},meridiemParse:/\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c|\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66|\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44|\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42|\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"===a&&4<=e||"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44"===a&&e<5||"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42"===a?e+12:e},meridiem:function(e,a,t){return e<4?"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c":e<10?"\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66":e<17?"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44":e<20?"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42":"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"},week:{dow:0,doy:6}}),l.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY h[e]mm A",LLLL:"dddd, D [a viz] MMMM YYYY h[e]mm A"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondenno\xf9",ss:"%d eilenn",m:"ur vunutenn",mm:Ms,h:"un eur",hh:"%d eur",d:"un devezh",dd:Ms,M:"ur miz",MM:Ms,y:"ur bloaz",yy:function(e){switch(function e(a){return 9<a?e(a%10):a}(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}},dayOfMonthOrdinalParse:/\d{1,2}(a\xf1|vet)/,ordinal:function(e){return e+(1===e?"a\xf1":"vet")},week:{dow:1,doy:4}}),l.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010der u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[pro\u0161lu] dddd [u] LT";case 6:return"[pro\u0161le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[pro\u0161li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:hs,m:hs,mm:hs,h:hs,hh:hs,d:"dan",dd:hs,M:"mjesec",MM:hs,y:"godinu",yy:hs},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}}),l.defineLocale("ca",{months:{standalone:"gener_febrer_mar\xe7_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de mar\xe7_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._mar\xe7_abr._maig_juny_jul._ag._set._oct._nov._des.".split("_"),monthsParseExact:!0,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[dem\xe0 a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"d'aqu\xed %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%
32d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|\xe8|a)/,ordinal:function(e,a){var t=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"\xe8";return"w"!==a&&"W"!==a||(t="a"),e+t},week:{dow:1,doy:4}});var Ls="leden_\xfanor_b\u0159ezen_duben_kv\u011bten_\u010derven_\u010dervenec_srpen_z\xe1\u0159\xed_\u0159\xedjen_listopad_prosinec".split("_"),cs="led_\xfano_b\u0159e_dub_kv\u011b_\u010dvn_\u010dvc_srp_z\xe1\u0159_\u0159\xedj_lis_pro".split("_"),Ys=[/^led/i,/^\xfano/i,/^b\u0159e/i,/^dub/i,/^kv\u011b/i,/^(\u010dvn|\u010derven$|\u010dervna)/i,/^(\u010dvc|\u010dervenec|\u010dervence)/i,/^srp/i,/^z\xe1\u0159/i,/^\u0159\xedj/i,/^lis/i,/^pro/i],ys=/^(leden|\xfanor|b\u0159ezen|duben|kv\u011bten|\u010dervenec|\u010dervence|\u010derven|\u010dervna|srpen|z\xe1\u0159\xed|\u0159\xedjen|listopad|prosinec|led|\xfano|b\u0159e|dub|kv\u011b|\u010dvn|\u010dvc|srp|z\xe1\u0159|\u0159\xedj|lis|pro)/i;function fs(e){return 1<e&&e<5&&1!=~~(e/10)}function ks(e,a,t,s){var n=e+" ";switch(t){case"s":return a||s?"p\xe1r sekund":"p\xe1r sekundami";case"ss":return a||s?n+(fs(e)?"sekundy":"sekund"):n+"sekundami";break;case"m":return a?"minuta":s?"minutu":"minutou";case"mm":return a||s?n+(fs(e)?"minuty":"minut"):n+"minutami";break;case"h":return a?"hodina":s?"hodinu":"hodinou";case"hh":return a||s?n+(fs(e)?"hodiny":"hodin"):n+"hodinami";break;case"d":return a||s?"den":"dnem";case"dd":return a||s?n+(fs(e)?"dny":"dn\xed"):n+"dny";break;case"M":return a||s?"m\u011bs\xedc":"m\u011bs\xedcem";case"MM":return a||s?n+(fs(e)?"m\u011bs\xedce":"m\u011bs\xedc\u016f"):n+"m\u011bs\xedci";break;case"y":return a||s?"rok":"rokem";case"yy":return a||s?n+(fs(e)?"roky":"let"):n+"lety";break}}function ps(e,a,t,s){var n={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return a?n[t][0]:n[t][1]}function Ds(e,a,t,s){var n={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return a?n[t][0]:n[t][1]}function Ts(e,a,t,s){var n={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return a?n[t][0]:n[t][1]}l.defineLocale("cs",{months:Ls,monthsShort:cs,monthsRegex:ys,monthsShortRegex:ys,monthsStrictRegex:/^(leden|ledna|\xfanora|\xfanor|b\u0159ezen|b\u0159ezna|duben|dubna|kv\u011bten|kv\u011btna|\u010dervenec|\u010dervence|\u010derven|\u010dervna|srpen|srpna|z\xe1\u0159\xed|\u0159\xedjen|\u0159\xedjna|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|\xfano|b\u0159e|dub|kv\u011b|\u010dvn|\u010dvc|srp|z\xe1\u0159|\u0159\xedj|lis|pro)/i,monthsParse:Ys,longMonthsParse:Ys,shortMonthsParse:Ys,weekdays:"ned\u011ble_pond\u011bl\xed_\xfater\xfd_st\u0159eda_\u010dtvrtek_p\xe1tek_sobota".split("_"),weekdaysShort:"ne_po_\xfat_st_\u010dt_p\xe1_so".split("_"),weekdaysMin:"ne_po_\xfat_st_\u010dt_p\xe1_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[z\xedtra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v ned\u011bli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve st\u0159edu v] LT";case 4:return"[ve \u010dtvrtek v] LT";case 5:return"[v p\xe1tek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[v\u010dera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou ned\u011bli v] LT";case 1:case 2:return"[minul\xe9] dddd [v] LT";case 3:return"[minulou st\u0159edu v] LT";case 4:case 5:return"[minul\xfd] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"p\u0159ed %s",s:ks,ss:ks,m:ks,mm:ks,h:ks,hh:ks,d:ks,dd:ks,M:ks,MM:ks,y:ks,yy:ks},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("cv",{months:"\u043a\u04d1\u0440\u043b\u0430\u0447_\u043d\u0430\u0440\u04d1\u0441_\u043f\u0443\u0448_\u0430\u043a\u0430_\u043c\u0430\u0439_\u04ab\u04d7\u0440\u0442\u043c\u0435_\u0443\u0442\u04d1_\u04ab\u0443\u0440\u043b\u0430_\u0430\u0432\u04d1\u043d_\u044e\u043f\u0430_\u0447\u04f3\u043a_\u0440\u0430\u0448\u0442\u0430\u0432".split("_"),monthsShort:"\u043a\u04d1\u0440_\u043d\u0430\u0440_\u043f\u0443\u0448_\u0430\u043a\u0430_\u043c\u0430\u0439_\u04ab\u04d7\u0440_\u0443\u0442\u04d1_\u04ab\u0443\u0440_\u0430\u0432\u043d_\u044e\u043f\u0430_\u0447\u04f3\u043a_\u0440\u0430\u0448".split("_"),weekdays:"\u0432\u044b\u0440\u0441\u0430\u0440\u043d\u0438\u043a\u0443\u043d_\u0442\u0443\u043d\u0442\u0438\u043a\u0443\u043d_\u044b\u0442\u043b\u0430\u0440\u0438\u043a\u0443\u043d_\u044e\u043d\u043a\u0443\u043d_\u043a\u04d7\u04ab\u043d\u0435\u0440\u043d\u0438\u043a\u0443\u043d_\u044d\u0440\u043d\u0435\u043a\u0443\u043d_\u0448\u04d1\u043c\u0430\u0442\u043a\u0443\u043d".split("_"),weekdaysShort:"\u0432\u044b\u0440_\u0442\u0443\u043d_\u044b\u0442\u043b_\u044e\u043d_\u043a\u04d7\u04ab_\u044d\u0440\u043d_\u0448\u04d1\u043c".split("_"),weekdaysMin:"\u0432\u0440_\u0442\u043d_\u044b\u0442_\u044e\u043d_\u043a\u04ab_\u044d\u0440_\u0448\u043c".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7]",LLL:"YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7], HH:mm",LLLL:"dddd, YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7], HH:mm"},calendar:{sameDay:"[\u041f\u0430\u044f\u043d] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",nextDay:"[\u042b\u0440\u0430\u043d] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",lastDay:"[\u04d6\u043d\u0435\u0440] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",nextWeek:"[\u04aa\u0438\u0442\u0435\u0441] dddd LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",lastWeek:"[\u0418\u0440\u0442\u043d\u04d7] dddd LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",sameElse:"L"},relativeTime:{future:function(e){return e+(/\u0441\u0435\u0445\u0435\u0442$/i.exec(e)?"\u0440\u0435\u043d":/\u04ab\u0443\u043b$/i.exec(e)?"\u0442\u0430\u043d":"\u0440\u0430\u043d")},past:"%s \u043a\u0430\u044f\u043b\u043b\u0430",s:"\u043f\u04d7\u0440-\u0438\u043a \u04ab\u0435\u043a\u043a\u0443\u043d\u0442",ss:"%d \u04ab\u0435\u043a\u043a\u0443\u043d\u0442",m:"\u043f\u04d7\u0440 \u043c\u0438\u043d\u0443\u0442",mm:"%d \u043c\u0438\u043d\u0443\u0442",h:"\u043f\u04d7\u0440 \u0441\u0435\u0445\u0435\u0442",hh:"%d \u0441\u0435\u0445\u0435\u0442",d:"\u043f\u04d7\u0440 \u043a\u0443\u043d",dd:"%d \u043a\u0443\u043d",M:"\u043f\u04d7\u0440 \u0443\u0439\u04d1\u0445",MM:"%d \u0443\u0439\u04d1\u0445",y:"\u043f\u04d7\u0440 \u04ab\u0443\u043b",yy:"%d \u04ab\u0443\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-\u043c\u04d7\u0448/,ordinal:"%d-\u043c\u04d7\u0448",week:{dow:1,doy:7}}
vendor: 7,820 bytes, line 32
32),l.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn \xf4l",s:"ychydig eiliadau",ss:"%d eiliad",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},dayOfMonthOrdinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(e){var a="";return 20<e?a=40===e||50===e||60===e||80===e||100===e?"fed":"ain":0<e&&(a=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][e]),e+a},week:{dow:1,doy:4}}),l.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xf8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xf8rdag".split("_"),weekdaysShort:"s\xf8n_man_tir_ons_tor_fre_l\xf8r".split("_"),weekdaysMin:"s\xf8_ma_ti_on_to_fr_l\xf8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"p\xe5 dddd [kl.] LT",lastDay:"[i g\xe5r kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"f\xe5 sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en m\xe5ned",MM:"%d m\xe5neder",y:"et \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("de-at",{months:"J\xe4nner_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"J\xe4n._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:ps,mm:"%d Minuten",h:ps,hh:"%d Stunden",d:ps,dd:ps,M:ps,MM:ps,y:ps,yy:ps},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("de-ch",{months:"Januar_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:Ds,mm:"%d Minuten",h:Ds,hh:"%d Stunden",d:Ds,dd:Ds,M:Ds,MM:Ds,y:Ds,yy:Ds},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("de",{months:"Januar_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:Ts,mm:"%d Minuten",h:Ts,hh:"%d Stunden",d:Ts,dd:Ts,M:Ts,MM:Ts,y:Ts,yy:Ts},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});var gs=["\u0796\u07ac\u0782\u07aa\u0787\u07a6\u0783\u07a9","\u078a\u07ac\u0784\u07b0\u0783\u07aa\u0787\u07a6\u0783\u07a9","\u0789\u07a7\u0783\u07a8\u0797\u07aa","\u0787\u07ad\u0795\u07b0\u0783\u07a9\u078d\u07aa","\u0789\u07ad","\u0796\u07ab\u0782\u07b0","\u0796\u07aa\u078d\u07a6\u0787\u07a8","\u0787\u07af\u078e\u07a6\u0790\u07b0\u0793\u07aa","\u0790\u07ac\u0795\u07b0\u0793\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa","\u0787\u07ae\u0786\u07b0\u0793\u07af\u0784\u07a6\u0783\u07aa","\u0782\u07ae\u0788\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa","\u0791\u07a8\u0790\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa"],ws=["\u0787\u07a7\u078b\u07a8\u0787\u07b0\u078c\u07a6","\u0780\u07af\u0789\u07a6","\u0787\u07a6\u0782\u07b0\u078e\u07a7\u0783\u07a6","\u0784\u07aa\u078b\u07a6","\u0784\u07aa\u0783\u07a7\u0790\u07b0\u078a\u07a6\u078c\u07a8","\u0780\u07aa\u0786\u07aa\u0783\u07aa","\u0780\u07ae\u0782\u07a8\u0780\u07a8\u0783\u07aa"];l.defineLocale("dv",{months:gs,monthsShort:gs,weekdays:ws,weekdaysShort:ws,weekdaysMin:"\u0787\u07a7\u078b\u07a8_\u0780\u07af\u0789\u07a6_\u0787\u07a6\u0782\u07b0_\u0784\u07aa\u078b\u07a6_\u0784\u07aa\u0783\u07a7_\u0780\u07aa\u0786\u07aa_\u0780\u07ae\u0782\u07a8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0789\u0786|\u0789\u078a/,isPM:function(e){return"\u0789\u078a"===e},meridiem:function(e,a,t){return e<12?"\u0789\u0786":"\u0789\u078a"},calendar:{sameDay:"[\u0789\u07a8\u0787\u07a6\u078b\u07aa] LT",nextDay:"[\u0789\u07a7\u078b\u07a6\u0789\u07a7] LT",nextWeek:"dddd LT",lastDay:"[\u0787\u07a8\u0787\u07b0\u0794\u07ac] LT",lastWeek:"[\u078a\u07a7\u0787\u07a8\u078c\u07aa\u0788\u07a8] dddd LT",sameElse:"L"},relativeTime:{future:"\u078c\u07ac\u0783\u07ad\u078e\u07a6\u0787\u07a8 %s",past:"\u0786\u07aa\u0783\u07a8\u0782\u07b0 %s",s:"\u0790\u07a8\u0786\u07aa\u0782\u07b0\u078c\u07aa\u0786\u07ae\u0785\u07ac\u0787\u07b0",ss:"d% \u0790\u07a8\u0786\u07aa\u0782\u07b0\u078c\u07aa",m:"\u0789\u07a8\u0782\u07a8\u0793\u07ac\u0787\u07b0",mm:"\u0789\u07a8\u0782\u07a8\u0793\u07aa %d",h:"\u078e\u07a6\u0791\u07a8\u0787\u07a8\u0783\u07ac\u0787\u07b0",hh:"\u078e\u07a6\u0791\u07a8\u0787\u07a8\u0783\u07aa %d",d:"\u078b\u07aa\u0788\u07a6\u0780\u07ac\u0787\u07b0",dd:"\u078b\u07aa\u0788\u07a6\u0790\u07b0 %d",M:"\u0789\u07a6\u0780\u07ac\u0787\u07b0",MM:"\u0789\u07a6\u0790\u07b0 %d",y:"\u0787\u07a6\u0780\u07a6\u0783\u07ac\u0787\u07b0",yy:"\u0787\u07a6\u0780\u07a6\u0783\u07aa %d"},preparse:function(e){return e.replace(/\u060c/g,",")},postformat:function(e){return e.replace(/,/g,"\u060c")},week:{dow:7,doy:12}}
vendor: 5,625 bytes, line 32
32),l.defineLocale("el",{monthsNominativeEl:"\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2_\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2_\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2_\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2_\u039c\u03ac\u03b9\u03bf\u03c2_\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2_\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2_\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2_\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2_\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2_\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2_\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2".split("_"),monthsGenitiveEl:"\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5_\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5_\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5_\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5_\u039c\u03b1\u0390\u03bf\u03c5_\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5_\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5_\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5_\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5_\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5_\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5_\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5".split("_"),months:function(e,a){return e?"string"==typeof a&&/D/.test(a.substring(0,a.indexOf("MMMM")))?this._monthsGenitiveEl[e.month()]:this._monthsNominativeEl[e.month()]:this._monthsNominativeEl},monthsShort:"\u0399\u03b1\u03bd_\u03a6\u03b5\u03b2_\u039c\u03b1\u03c1_\u0391\u03c0\u03c1_\u039c\u03b1\u03ca_\u0399\u03bf\u03c5\u03bd_\u0399\u03bf\u03c5\u03bb_\u0391\u03c5\u03b3_\u03a3\u03b5\u03c0_\u039f\u03ba\u03c4_\u039d\u03bf\u03b5_\u0394\u03b5\u03ba".split("_"),weekdays:"\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae_\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1_\u03a4\u03c1\u03af\u03c4\u03b7_\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7_\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7_\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae_\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf".split("_"),weekdaysShort:"\u039a\u03c5\u03c1_\u0394\u03b5\u03c5_\u03a4\u03c1\u03b9_\u03a4\u03b5\u03c4_\u03a0\u03b5\u03bc_\u03a0\u03b1\u03c1_\u03a3\u03b1\u03b2".split("_"),weekdaysMin:"\u039a\u03c5_\u0394\u03b5_\u03a4\u03c1_\u03a4\u03b5_\u03a0\u03b5_\u03a0\u03b1_\u03a3\u03b1".split("_"),meridiem:function(e,a,t){return 11<e?t?"\u03bc\u03bc":"\u039c\u039c":t?"\u03c0\u03bc":"\u03a0\u039c"},isPM:function(e){return"\u03bc"===(e+"").toLowerCase()[0]},meridiemParse:/[\u03a0\u039c]\.?\u039c?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[\u03a3\u03ae\u03bc\u03b5\u03c1\u03b1 {}] LT",nextDay:"[\u0391\u03cd\u03c1\u03b9\u03bf {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[\u03a7\u03b8\u03b5\u03c2 {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[\u03c4\u03bf \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf] dddd [{}] LT";default:return"[\u03c4\u03b7\u03bd \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03b7] dddd [{}] LT"}},sameElse:"L"},calendar:function(e,a){var t=this._calendarEl[e],s=a&&a.hours();return H(t)&&(t=t.apply(a)),t.replace("{}",s%12==1?"\u03c3\u03c4\u03b7":"\u03c3\u03c4\u03b9\u03c2")},relativeTime:{future:"\u03c3\u03b5 %s",past:"%s \u03c0\u03c1\u03b9\u03bd",s:"\u03bb\u03af\u03b3\u03b1 \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03cc\u03bb\u03b5\u03c0\u03c4\u03b1",ss:"%d \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03cc\u03bb\u03b5\u03c0\u03c4\u03b1",m:"\u03ad\u03bd\u03b1 \u03bb\u03b5\u03c0\u03c4\u03cc",mm:"%d \u03bb\u03b5\u03c0\u03c4\u03ac",h:"\u03bc\u03af\u03b1 \u03ce\u03c1\u03b1",hh:"%d \u03ce\u03c1\u03b5\u03c2",d:"\u03bc\u03af\u03b1 \u03bc\u03ad\u03c1\u03b1",dd:"%d \u03bc\u03ad\u03c1\u03b5\u03c2",M:"\u03ad\u03bd\u03b1\u03c2 \u03bc\u03ae\u03bd\u03b1\u03c2",MM:"%d \u03bc\u03ae\u03bd\u03b5\u03c2",y:"\u03ad\u03bd\u03b1\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2",yy:"%d \u03c7\u03c1\u03cc\u03bd\u03b9\u03b1"},dayOfMonthOrdinalParse:/\d{1,2}\u03b7/,ordinal:"%d\u03b7",week:{dow:1,doy:4}}),l.defineLocale("en-SG",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")},week:{dow:1,doy:4}}),l.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LT
32S:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")},week:{dow:1,doy:4}}),l.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")}}),l.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")},week:{dow:1,doy:4}}),l.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")},week:{dow:1,doy:4}}),l.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")}}),l.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LT
32S:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")},week:{dow:1,doy:4}}),l.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_a\u016dgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_a\u016dg_sep_okt_nov_dec".split("_"),weekdays:"diman\u0109o_lundo_mardo_merkredo_\u0135a\u016ddo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_\u0135a\u016d_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_\u0135a_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D[-a de] MMMM, YYYY",LLL:"D[-a de] MMMM, YYYY HH:mm",LLLL:"dddd, [la] D[-a de] MMMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(e){return"p"===e.charAt(0).toLowerCase()},meridiem:function(e,a,t){return 11<e?t?"p.t.m.":"P.T.M.":t?"a.t.m."
vendor: 4,370 bytes, line 32
32:"A.T.M."},calendar:{sameDay:"[Hodia\u016d je] LT",nextDay:"[Morga\u016d je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hiera\u016d je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"anta\u016d %s",s:"sekundoj",ss:"%d sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}});var vs="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),Ss="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),Hs=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],bs=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;l.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,a){return e?/-MMM-/.test(a)?Ss[e.month()]:vs[e.month()]:vs},monthsRegex:bs,monthsShortRegex:bs,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:Hs,longMonthsParse:Hs,shortMonthsParse:Hs,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}});var js="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),xs="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),Os=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],Ps=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;l.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,a){return e?/-MMM-/.test(a)?xs[e.month()]:js[e.month()]:js},monthsRegex:Ps,monthsShortRegex:Ps,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:Os,longMonthsParse:Os,shortMonthsParse:Os,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%
32d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:0,doy:6}});var Ws="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),As="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),Es=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],Fs=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;function zs(e,a,t,s){var n={s:["m\xf5ne sekundi","m\xf5ni sekund","paar sekundit"],ss:[e+"sekundi",e+"sekundit"],m:["\xfche minuti","\xfcks minut"],mm:[e+" minuti",e+" minutit"],h:["\xfche tunni","tund aega","\xfcks tund"],hh:[e+" tunni",e+" tundi"],d:["\xfche p\xe4eva","\xfcks p\xe4ev"],M:["kuu aja","kuu aega","\xfcks kuu"],MM:[e+" kuu",e+" kuud"],y:["\xfche aasta","aasta","\xfcks aasta"],yy:[e+" aasta",e+" aastat"]};return a?n[t][2]?n[t][2]:n[t][1]:s?n[t][0]:n[t][1]}l.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,a){return e?/-MMM-/.test(a)?As[e.month()]:Ws[e.month()]:Ws},monthsRegex:Fs,monthsShortRegex:Fs,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:Es,longMonthsParse:Es,shortMonthsParse:Es,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}}),l.defineLocale("et",{months:"jaanuar_veebruar_m\xe4rts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_m\xe4rts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"p\xfchap\xe4ev_esmasp\xe4ev_teisip\xe4ev_kolmap\xe4ev_neljap\xe4ev_reede_laup\xe4ev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[T\xe4na,] LT",nextDay:"[Homme,] LT",nextWeek:"[J\xe4rgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s p\xe4rast",past:"%s tagasi",s:zs,ss:zs,m:zs,mm:zs,h:zs,hh:zs,d:zs,dd:"%d p\xe4eva",M:zs,MM:zs,y:zs,yy:zs},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});var Js={1:"\u06f1",2:"\u06f2",3:"\u06f3",4:"\u06f4",5:"\u06f5",6:"\u06f6",7:"\u06f7",8:"\u06f8",9:"\u06f9",0:"\u06f0"},Ns={"\u06f1":"1","\u06f2":"2","\u06f3":"3","\u06f4":"4","\u06f5":"5","\u06f6":"6","\u06f7":"7","\u06f8":"8","\u06f9":"9","\u06f0":"0"};l.defineLocale("fa",{months:"\u0698\u0627\u0646\u0648\u06cc\u0647_\u0641\u0648\u0631\u06cc\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06cc\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06cc\u0647_\u0627\u0648\u062a_\u0633\u067e\u062a\u0627\u0645\u0628\u0631_\u0627\u06a9\u062a\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062f\u0633\u0627\u0645\u0628\u0631".split("_"),monthsShort:"\u0698\u0627\u0646\u0648\u06cc\u0647_\u0641\u0648\u0631\u06cc\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06cc\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06cc\u0647_\u0627\u0648\u062a_\u0633\u067e\u062a\u0627\u0645\u0628\u0631_\u0627\u06a9\u062a\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062f\u0633\u0627\u0645\u0628\u0631".split("_"),weekdays:"\u06cc\u06a9\u200c\u0634\u0646\u0628\u0647_\u062f\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200c\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067e\u0646\u062c\u200c\u0634\u0646\u0628\u0647_\u062c\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysShort:"\u06cc\u06a9\u200c\u0634\u0646\u0628\u0647_\u062f\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200c\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067e\u0646\u062c\u200c\u0634\u0646\u0628\u0647_\u062c\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysMin:"\u06cc_\u062f_\u0633_\u0686_\u067e_\u062c_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u0642\u0628\u0644 \u0627\u0632 \u0638\u0647\u0631|\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631/,isPM:function(e){return/\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631/.test(e)},meridiem:function(e,a,t){return e<12?"\u0642\u0628\u0644 \u0627\u0632 \u0638\u0647\u0631":"\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631"},calendar:{sameDay:"[\u0627\u0645\u0631\u0648\u0632 \u0633\u0627\u0639\u062a] LT",nextDay:"[\u0641\u0631\u062f\u0627 \u0633\u0627\u0639\u062a] LT",nextWeek:"dddd [\u0633\u0627\u0639\u062a] LT",lastDay:"[\u062f\u06cc\u0631\u0648\u0632 \u0633\u0627\u0639\u062a] LT",lastWeek:"dddd [\u067e\u06cc\u0634] [\u0633\u0627\u0639\u062a] LT",sameElse:"L"}
vendor: 11,687 bytes, line 32
32,relativeTime:{future:"\u062f\u0631 %s",past:"%s \u067e\u06cc\u0634",s:"\u0686\u0646\u062f \u062b\u0627\u0646\u06cc\u0647",ss:"\u062b\u0627\u0646\u06cc\u0647 d%",m:"\u06cc\u06a9 \u062f\u0642\u06cc\u0642\u0647",mm:"%d \u062f\u0642\u06cc\u0642\u0647",h:"\u06cc\u06a9 \u0633\u0627\u0639\u062a",hh:"%d \u0633\u0627\u0639\u062a",d:"\u06cc\u06a9 \u0631\u0648\u0632",dd:"%d \u0631\u0648\u0632",M:"\u06cc\u06a9 \u0645\u0627\u0647",MM:"%d \u0645\u0627\u0647",y:"\u06cc\u06a9 \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(e){return e.replace(/[\u06f0-\u06f9]/g,function(e){return Ns[e]}).replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return Js[e]}).replace(/,/g,"\u060c")},dayOfMonthOrdinalParse:/\d{1,2}\u0645/,ordinal:"%d\u0645",week:{dow:6,doy:12}});var Rs="nolla yksi kaksi kolme nelj\xe4 viisi kuusi seitsem\xe4n kahdeksan yhdeks\xe4n".split(" "),Cs=["nolla","yhden","kahden","kolmen","nelj\xe4n","viiden","kuuden",Rs[7],Rs[8],Rs[9]];function Is(e,a,t,s){var n,d,r="";switch(t){case"s":return s?"muutaman sekunnin":"muutama sekunti";case"ss":return s?"sekunnin":"sekuntia";case"m":return s?"minuutin":"minuutti";case"mm":r=s?"minuutin":"minuuttia";break;case"h":return s?"tunnin":"tunti";case"hh":r=s?"tunnin":"tuntia";break;case"d":return s?"p\xe4iv\xe4n":"p\xe4iv\xe4";case"dd":r=s?"p\xe4iv\xe4n":"p\xe4iv\xe4\xe4";break;case"M":return s?"kuukauden":"kuukausi";case"MM":r=s?"kuukauden":"kuukautta";break;case"y":return s?"vuoden":"vuosi";case"yy":r=s?"vuoden":"vuotta";break}return d=s,r=((n=e)<10?d?Cs[n]:Rs[n]:n)+" "+r}l.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kes\xe4kuu_hein\xe4kuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kes\xe4_hein\xe4_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[t\xe4n\xe4\xe4n] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s p\xe4\xe4st\xe4",past:"%s sitten",s:Is,ss:Is,m:Is,mm:Is,h:Is,hh:Is,d:Is,dd:Is,M:Is,MM:Is,y:Is,yy:Is},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("fo",{months:"januar_februar_mars_apr\xedl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_m\xe1nadagur_t\xfdsdagur_mikudagur_h\xf3sdagur_fr\xedggjadagur_leygardagur".split("_"),weekdaysShort:"sun_m\xe1n_t\xfds_mik_h\xf3s_fr\xed_ley".split("_"),weekdaysMin:"su_m\xe1_t\xfd_mi_h\xf3_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[\xcd dag kl.] LT",nextDay:"[\xcd morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[\xcd gj\xe1r kl.] LT",lastWeek:"[s\xed\xf0stu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s s\xed\xf0ani",s:"f\xe1 sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein t\xedmi",hh:"%d t\xedmar",d:"ein dagur",dd:"%d dagar",M:"ein m\xe1na\xf0ur",MM:"%d m\xe1na\xf0ir",y:"eitt \xe1r",yy:"%d \xe1r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("fr-ca",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(e,a){switch(a){default:case"M":case"Q":case"D":case"DDD":case"d":return e+(1===e?"er":"e");case"w":case"W":return e+(1===e?"re":"e")}}}),l.defineLocale("fr-ch",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(e,a){switch(a){default:case"M":case"Q":case"D":case"DDD":case"d":return e+(1===e?"er":"e");case"w":case"W":return e+(1===e?"re":"e")}},week:{dow:1,doy:4}}),l.defineLocale("fr",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal:function(e,a){switch(a){case"D":return e+(1===e?"er":"");default:case"M":case"Q":case"DDD":case"d":return e+(1===e?"er":"e");case"w":case"W":return e+(1===e?"re":"e")}},week:{dow:1,doy:4}});var Us="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),Gs="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");l.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(e,a){return e?/-MMM-/.test(a)?Gs[e.month()]:Us[e.month()]:Us},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[\xf4fr\xfbne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien min\xfat",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||20<=e?"ste":"de")},week:{dow:1,doy:4}});l.defineLocale("ga",{months:["Ean\xe1ir","Feabhra","M\xe1rta","Aibre\xe1n","Bealtaine","M\xe9itheamh","I\xfail","L\xfanasa","Me\xe1n F\xf3mhair","Deaireadh F\xf3mhair","Samhain","Nollaig"],monthsShort:["Ean\xe1","Feab","M\xe1rt","Aibr","Beal","M\xe9it","I\xfail","L\xfana","Me\xe1n","Deai","Samh","Noll"],monthsParseExact:!0,weekdays:["D\xe9 Domhnaigh","D\xe9 Luain","D\xe9 M\xe1irt","D\xe9 C\xe9adaoin","D\xe9ardaoin","D\xe9 hAoine","D\xe9 Satharn"],weekdaysShort:["Dom","Lua","M\xe1i","C\xe9a","D\xe9a","hAo","Sat"],weekdaysMin:["Do","Lu","M\xe1","Ce","D\xe9","hA","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Am\xe1rach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inn\xe9 aig] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s \xf3 shin",s:"c\xfapla soicind",ss:"%d soicind",m:"n\xf3im\xe9ad",mm:"%d n\xf3im\xe9ad",h:"uair an chloig",hh:"%d uair an chloig",d:"l\xe1",dd:"%d l\xe1",M:"m\xed",MM:"%d m\xed",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(e){return e+(1===e?"d":e%10==2?"na":"mh")},week:{dow:1,doy:4}});function Vs(e,a,t,s){var n={s:["thodde secondanim","thodde second"],ss:[e+" secondanim",e+" second"],m:["eka mintan","ek minute"],mm:[e+" mintanim",e+" mintam"],h:["eka voran","ek vor"],hh:[e+" voranim",e+" voram"],d:["eka disan","ek dis"],dd:[e+" disanim",e+" dis"],M:["eka mhoinean","ek mhoino"],MM:[e+" mhoineanim",e+" mhoine"],y:["eka vorsan","ek voros"],yy:[e+" vorsanim",e+" vorsam"]};return a?n[t][0]:n[t][1]}l.defineLocale("gd",{months:["Am Faoilleach","An Gearran","Am M\xe0rt","An Giblean","An C\xe8itean","An t-\xd2gmhios","An t-Iuchar","An L\xf9nastal","An t-Sultain","An D\xe0mhair","An t-Samhain","An D\xf9bhlachd"],monthsShort:["Faoi","Gear","M\xe0rt","Gibl","C\xe8it","\xd2gmh","Iuch","L\xf9n","Sult","D\xe0mh","Samh","D\xf9bh"],monthsParseExact:!0,weekdays:["Did\xf2mhnaich","Diluain","Dim\xe0irt","Diciadain","Diardaoin","Dihaoine","Disathairne"],weekdaysShort:["Did","Dil","Dim","Dic","Dia","Dih","Dis"],weekdaysMin:["D\xf2","Lu","M\xe0","Ci","Ar","Ha","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-m\xe0ireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-d\xe8 aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",ss:"%d diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"m\xecos",MM:"%d m\xecosan",y:"bliadhna",yy:"%d bliadhna"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(e){return e+(1===e?"d":e%10==2?"na":"mh")},week:{dow:1,doy:4}}),l.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xu\xf1o_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xu\xf1._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_m\xe9rcores_xoves_venres_s\xe1bado".
vendor: 4,942 bytes, line 32
32split("_"),weekdaysShort:"dom._lun._mar._m\xe9r._xov._ven._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_m\xe9_xo_ve_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"\xe1s":"\xe1")+"] LT"},nextDay:function(){return"[ma\xf1\xe1 "+(1!==this.hours()?"\xe1s":"\xe1")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"\xe1s":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"\xe1":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"\xe1s":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(e){return 0===e.indexOf("un")?"n"+e:"en "+e},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}}),l.defineLocale("gom-latn",{months:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budvar_Brestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM[achea] Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Ieta to] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fatlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:Vs,ss:Vs,m:Vs,mm:Vs,h:Vs,hh:Vs,d:Vs,dd:Vs,M:Vs,MM:Vs,y:Vs,yy:Vs},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(e,a){switch(a){case"D":return e+"er";default:case"M":case"Q":case"DDD":case"d":case"w":case"W":return e}},week:{dow:1,doy:4},meridiemParse:/rati|sokalli|donparam|sanje/,meridiemHour:function(e,a){return 12===e&&(e=0),"rati"===a?e<4?e:e+12:"sokalli"===a?e:"donparam"===a?12<e?e:e+12:"sanje"===a?e+12:void 0},meridiem:function(e,a,t){return e<4?"rati":e<12?"sokalli":e<16?"donparam":e<20?"sanje":"rati"}});var Ks={1:"\u0ae7",2:"\u0ae8",3:"\u0ae9",4:"\u0aea",5:"\u0aeb",6:"\u0aec",7:"\u0aed",8:"\u0aee",9:"\u0aef",0:"\u0ae6"},Zs={"\u0ae7":"1","\u0ae8":"2","\u0ae9":"3","\u0aea":"4","\u0aeb":"5","\u0aec":"6","\u0aed":"7","\u0aee":"8","\u0aef":"9","\u0ae6":"0"};l.defineLocale("gu",{months:"\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1\u0a86\u0ab0\u0ac0_\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1\u0a86\u0ab0\u0ac0_\u0aae\u0abe\u0ab0\u0acd\u0a9a_\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2_\u0aae\u0ac7_\u0a9c\u0ac2\u0aa8_\u0a9c\u0ac1\u0ab2\u0abe\u0a88_\u0a91\u0a97\u0ab8\u0acd\u0a9f_\u0ab8\u0aaa\u0acd\u0a9f\u0ac7\u0aae\u0acd\u0aac\u0ab0_\u0a91\u0a95\u0acd\u0a9f\u0acd\u0aac\u0ab0_\u0aa8\u0ab5\u0ac7\u0aae\u0acd\u0aac\u0ab0_\u0aa1\u0abf\u0ab8\u0ac7\u0aae\u0acd\u0aac\u0ab0".split("_"),monthsShort:"\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1._\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1._\u0aae\u0abe\u0ab0\u0acd\u0a9a_\u0a8f\u0aaa\u0acd\u0ab0\u0abf._\u0aae\u0ac7_\u0a9c\u0ac2\u0aa8_\u0a9c\u0ac1\u0ab2\u0abe._\u0a91\u0a97._\u0ab8\u0aaa\u0acd\u0a9f\u0ac7._\u0a91\u0a95\u0acd\u0a9f\u0acd._\u0aa8\u0ab5\u0ac7._\u0aa1\u0abf\u0ab8\u0ac7.".split("_"),monthsParseExact:!0,weekdays:"\u0ab0\u0ab5\u0abf\u0ab5\u0abe\u0ab0_\u0ab8\u0acb\u0aae\u0ab5\u0abe\u0ab0_\u0aae\u0a82\u0a97\u0ab3\u0ab5\u0abe\u0ab0_\u0aac\u0ac1\u0aa7\u0acd\u0ab5\u0abe\u0ab0_\u0a97\u0ac1\u0ab0\u0ac1\u0ab5\u0abe\u0ab0_\u0ab6\u0ac1\u0a95\u0acd\u0ab0\u0ab5\u0abe\u0ab0_\u0ab6\u0aa8\u0abf\u0ab5\u0abe\u0ab0".split("_"),weekdaysShort:"\u0ab0\u0ab5\u0abf_\u0ab8\u0acb\u0aae_\u0aae\u0a82\u0a97\u0ab3_\u0aac\u0ac1\u0aa7\u0acd_\u0a97\u0ac1\u0ab0\u0ac1_\u0ab6\u0ac1\u0a95\u0acd\u0ab0_\u0ab6\u0aa8\u0abf".split("_"),weekdaysMin:"\u0ab0_\u0ab8\u0acb_\u0aae\u0a82_\u0aac\u0ac1_\u0a97\u0ac1_\u0ab6\u0ac1_\u0ab6".split("_"),longDateFormat:{LT:"A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",LTS:"A h:mm:ss \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",LLLL:"dddd, D MMMM YYYY, A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7"},calendar:{sameDay:"[\u0a86\u0a9c] LT",nextDay:"[\u0a95\u0abe\u0ab2\u0ac7] LT",nextWeek:"dddd, LT",lastDay:"[\u0a97\u0a87\u0a95\u0abe\u0ab2\u0ac7] LT",lastWeek:"[\u0aaa\u0abe\u0a9b\u0ab2\u0abe] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0aae\u0abe",past:"%s \u0aaa\u0ac7\u0ab9\u0ab2\u0abe",s:"\u0a85\u0aae\u0ac1\u0a95 \u0aaa\u0ab3\u0acb",ss:"%d \u0ab8\u0ac7\u0a95\u0a82\u0aa1",m:"\u0a8f\u0a95 \u0aae\u0abf\u0aa8\u0abf\u0a9f",mm:"%d \u0aae\u0abf\u0aa8\u0abf\u0a9f",h:"\u0a8f\u0a95 \u0a95\u0ab2\u0abe\u0a95",hh:"%
32d \u0a95\u0ab2\u0abe\u0a95",d:"\u0a8f\u0a95 \u0aa6\u0abf\u0ab5\u0ab8",dd:"%d \u0aa6\u0abf\u0ab5\u0ab8",M:"\u0a8f\u0a95 \u0aae\u0ab9\u0abf\u0aa8\u0acb",MM:"%d \u0aae\u0ab9\u0abf\u0aa8\u0acb",y:"\u0a8f\u0a95 \u0ab5\u0ab0\u0acd\u0ab7",yy:"%d \u0ab5\u0ab0\u0acd\u0ab7"},preparse:function(e){return e.replace(/[\u0ae7\u0ae8\u0ae9\u0aea\u0aeb\u0aec\u0aed\u0aee\u0aef\u0ae6]/g,function(e){return Zs[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return Ks[e]})},meridiemParse:/\u0ab0\u0abe\u0aa4|\u0aac\u0aaa\u0acb\u0ab0|\u0ab8\u0ab5\u0abe\u0ab0|\u0ab8\u0abe\u0a82\u0a9c/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0ab0\u0abe\u0aa4"===a?e<4?e:e+12:"\u0ab8\u0ab5\u0abe\u0ab0"===a?e:"\u0aac\u0aaa\u0acb\u0ab0"===a?10<=e?e:e+12:"\u0ab8\u0abe\u0a82\u0a9c"===a?e+12:void 0},meridiem:function(e,a,t){return e<4?"\u0ab0\u0abe\u0aa4":e<10?"\u0ab8\u0ab5\u0abe\u0ab0":e<17?"\u0aac\u0aaa\u0acb\u0ab0":e<20?"\u0ab8\u0abe\u0a82\u0a9c":"\u0ab0\u0abe\u0aa4"},week:{dow:0,doy:6}}),l.defineLocale("he",{months:"\u05d9\u05e0\u05d5\u05d0\u05e8_\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8_\u05de\u05e8\u05e5_\u05d0\u05e4\u05e8\u
3205d9\u05dc_\u05de\u05d0\u05d9_\u05d9\u05d5\u05e0\u05d9_\u05d9\u05d5\u05dc\u05d9_\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8_\u05e1\u05e4\u05d8\u05de\u05d1\u05e8_\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8_\u05e0\u05d5\u05d1\u05de\u05d1\u05e8_\u05d3\u05e6\u05de\u05d1\u05e8".split("_"),monthsShort:"\u05d9\u05e0\u05d5\u05f3_\u05e4\u05d1\u05e8\u05f3_\u05de\u05e8\u05e5_\u05d0\u05e4\u05e8\u05f3_\u05de\u05d0\u05d9_\u05d9\u05d5\u05e0\u05d9_\u05d9\u05d5\u05dc\u05d9_\u05d0\u05d5\u05d2\u05f3_\u05e1\u05e4\u05d8\u05f3_\u05d0\u05d5\u05e7\u05f3_\u05e0\u05d5\u05d1\u05f3_\u05d3\u05e6\u05de\u05f3".split("_"),weekdays:"\u05e8\u05d0\u05e9\u05d5\u05df_\u05e9\u05e0\u05d9_\u05e9\u05dc\u05d9\u05e9\u05d9_\u05e8\u05d1\u05d9\u05e2\u05d9_\u05d7\u05de\u05d9\u05e9\u05d9_\u05e9\u05d9\u05e9\u05d9_\u05e9\u05d1\u05ea".split("_"),weekdaysShort:"\u05d0\u05f3_\u05d1\u05f3_\u05d2\u05f3_\u05d3\u05f3_\u05d4\u05f3_\u05d5\u05f3_\u05e9\u05f3".split("_"),weekdaysMin:"\u05d0_\u05d1_\u05d2_\u05d3_\u05d4_\u05d5_\u05e9".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [\u05d1]MMMM YYYY",LLL:"D [\u05d1]MMMM YYYY HH:mm",LLLL:"dddd, D [\u05d1]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[\u05d4\u05d9\u05d5\u05dd \u05d1\u05be]LT",nextDay:"[\u05de\u05d7\u05e8 \u05d1\u05be]LT",nextWeek:"dddd [\u05d1\u05e9\u05e2\u05d4] LT",lastDay:"[\u05d0\u05ea\u05de\u05d5\u05dc \u05d1\u05be]LT",lastWeek:"[\u05d1\u05d9\u05d5\u05dd] dddd [\u05d4\u05d0\u05d7\u05e8\u05d5\u05df \u05d1\u05e9\u05e2\u05d4] LT",sameElse:"L"},relativeTime:{future:"\u05d1\u05e2\u05d5\u05d3 %s",past:"\u05dc\u05e4\u05e0\u05d9 %s",s:"\u05de\u05e1\u05e4\u05e8 \u05e9\u05e0\u05d9\u05d5\u05ea",ss:"%d \u05e9\u05e0\u05d9\u05d5\u05ea",m:"\u05d3\u05e7\u05d4",mm:"%d \u05d3\u05e7\u05d5\u05ea",h:"\u05e9\u05e2\u05d4",hh:function(e){return 2===e?"\u05e9\u05e2\u05ea\u05d9\u05d9\u05dd":e+" \u05e9\u05e2\u05d5\u05ea"},d:"\u05d9\u05d5\u05dd",dd:function(e){return 2===e?"\u05d9\u05d5\u05de\u05d9\u05d9\u05dd":e+" \u05d9\u05de\u05d9\u05dd"},M:"\u05d7\u05d5\u05d3\u05e9",MM:function(e){return 2===e?"\u05d7\u05d5\u05d3\u05e9\u05d9\u05d9\u05dd":e+" \u05d7\u05d5\u05d3\u05e9\u05d9\u05dd"},y:"\u05e9\u05e0\u05d4",yy:function(e){return 2===e?"\u05e9\u05e0\u05ea\u05d9\u05d9\u05dd":e%10==0&&10!==e?e+" \u05e9\u05e0\u05d4":e+" \u05e9\u05e0\u05d9\u05dd"}},meridiemParse:/\u05d0\u05d7\u05d4"\u05e6|\u05dc\u05e4\u05e0\u05d4"\u05e6|\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05dc\u05e4\u05e0\u05d5\u05ea \u05d1\u05d5\u05e7\u05e8|\u05d1\u05d1\u05d5\u05e7\u05e8|\u05d1\u05e2\u05e8\u05d1/i,isPM:function(e){return/^(\u05d0\u05d7\u05d4"\u05e6|\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05d1\u05e2\u05e8\u05d1)$/.test(e)},meridiem:function(e,a,t){return e<5?"\u05dc\u05e4\u05e0\u05d5\u05ea \u05d1\u05d5\u05e7\u05e8":e<10?"\u05d1\u05d1\u05d5\u05e7\u05e8":e<12?t?'\u05dc\u05e4\u05e0\u05d4"\u05e6':"\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd":e<18?t?'\u05d0\u05d7\u05d4"\u05e6':"\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd":"\u05d1\u05e2\u05e8\u05d1"}});var $s={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},Bs={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};function qs(e,a,t){var s=e+" ";switch(t){case"ss":return s+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return a?"jedna minuta":"jedne minute";case"mm":return s+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return a?"jedan sat":"jednog sata";case"hh":return s+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return s+=1===e?"dan":"dana";case"MM":return s+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return s+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}l.defineLocale("hi",{months:"\u091c\u0928\u0935\u0930\u0940_\u092b\u093c\u0930\u0935\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u0948\u
320932_\u092e\u0908_\u091c\u0942\u0928_\u091c\u0941\u0932\u093e\u0908_\u0905\u0917\u0938\u094d\u0924_\u0938\u093f\u0924\u092e\u094d\u092c\u0930_\u0905\u0915\u094d\u091f\u0942\u092c\u0930_\u0928\u0935\u092e\u094d\u092c\u0930_\u0926\u093f\u0938\u092e\u094d\u092c\u0930".split("_"),monthsShort:"\u091c\u0928._\u092b\u093c\u0930._\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u0948._\u092e\u0908_\u091c\u0942\u0928_\u091c\u0941\u0932._\u0905\u0917._\u0938\u093f\u0924._\u0905\u0915\u094d\u091f\u0942._\u0928\u0935._\u0926\u093f\u0938.".split("_"),monthsParseExact:!0,weekdays:"\u0930\u0935\u093f\u0935\u093e\u0930_\u0938\u094b\u092e\u0935\u093e\u0930_\u092e\u0902\u0917\u0932\u0935\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u0917\u0941\u0930\u0942\u0935\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930_\u0936\u0928\u093f\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093f_\u0938\u094b\u092e_\u092e\u0902\u0917\u0932_\u092c\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094d\u0930_\u0936\u0928\u093f".split("_"),weekdaysMin:"\u0930_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u092c\u091c\u0947",LTS:"A h:mm:ss \u092c\u091c\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u092c\u091c\u0947",LLLL:"dddd, D MMMM YYYY, A h:mm \u092c\u091c\u0947"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u0915\u0932] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u0932] LT",lastWeek:"[\u092a\u093f\u091b\u0932\u0947] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u092e\u0947\u0902",past:"%s \u092a\u0939\u0932\u0947",s:"\u0915\u0941\u091b \u0939\u0940 \u0915\u094d\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0902\u0921",m:"\u090f\u0915 \u092e\u093f\u0928\u091f",mm:"%d \u092e\u093f\u0928\u091f",h:"\u090f\u0915 \u0918\u0902\u091f\u093e",hh:"%d \u0918\u0902\u091f\u0947",d:"\u090f\u0915 \u0926\u093f\u0928",dd:"%d \u0926\u093f\u0928",M:"\u090f\u0915 \u092e\u0939\u0940\u0928\u0947",MM:"%d \u092e\u0939\u0940\u0928\u0947",y:"\u090f\u0915 \u0935\u0930\u094d\u0937",yy:"%d \u0935\u0930\u094d\u0937"},preparse:function(e){return e.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(e){return Bs[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return $s[e]})},meridiemParse:/\u0930\u093e\u0924|\u0938\u0941\u092c\u0939|\u0926\u094b\u092a\u0939\u0930|\u0936\u093e\u092e/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0930\u093e\u0924"===a?e<4?e:e+12:"\u0938\u0941\u092c\u0939"===a?e:"\u0926\u094b\u092a\u0939\u0930"===a?10<=e?e:e+12:"\u0936\u093e\u092e"===a?e+12:void 0},meridiem:function(e,a,t){return e<4?"\u0930\u093e\u0924":e<10?"\u0938\u0941\u092c\u0939":e<17?"\u0926\u094b\u092a\u0939\u0930":e<20?"\u0936\u093e\u092e":"\u0930\u093e\u0924"},week:{dow:0,doy:6}}),l.defineLocale("hr",{months:{format:"sije\u010dnja_velja\u010de_o\u017eujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"sije\u010danj_velja\u010da_o\u017eujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._o\u017eu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010der u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[pro\u0161lu] dddd [u] LT";case 6:return"[pro\u0161le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[pro\u0161li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:qs,m:qs,mm:qs,h:qs,hh:qs,d:"dan",dd:qs,M:"mjesec",MM:qs,y:"godinu",yy:qs},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});var Qs="vas\xe1rnap h\xe9tf\u0151n kedden szerd\xe1n cs\xfct\xf6rt\xf6k\xf6n p\xe9nteken szombaton".split(" ");function Xs(e,a,t,s){var n=e;switch(t){case"s":return s||a?"n\xe9h\xe1ny m\xe1sodperc":"n\xe9h\xe1ny m\xe1sodperce";case"ss":return n+(s||a)?" m\xe1sodperc":" m\xe1sodperce";case"m":return"egy"+(s||a?" perc":" perce");case"mm":return n+(s||a?" perc":" perce");case"h":return"egy"+(s||a?" \xf3ra":" \xf3r\xe1ja");case"hh":return n+(s||a?" \xf3ra":" \xf3r\xe1ja");case"d":return"egy"+(s||a?" nap":" napja");case"dd":return n+(s||a?" nap":" napja");case"M":return"egy"+(s||a?" h\xf3nap":" h\xf3napja");case"MM":return n+(s||a?" h\xf3nap":" h\xf3napja");case"y":return"egy"+(s||a?" \xe9v":" \xe9ve");case"yy":return n+(s||a?" \xe9v":" \xe9ve")}return""}function en(e){return(e?"":"[m\xfalt] ")+"["+Qs[this.day()]+"] LT[-kor]"}function an(e){return e%100==11||e%10!=1}function tn(e,a,t,s){var n=e+" ";switch(t){case"s":return a||s?"nokkrar sek\xfandur":"nokkrum sek\xfandum";
vendor: 8,896 bytes, line 32
32case"ss":return an(e)?n+(a||s?"sek\xfandur":"sek\xfandum"):n+"sek\xfanda";case"m":return a?"m\xedn\xfata":"m\xedn\xfatu";case"mm":return an(e)?n+(a||s?"m\xedn\xfatur":"m\xedn\xfatum"):a?n+"m\xedn\xfata":n+"m\xedn\xfatu";case"hh":return an(e)?n+(a||s?"klukkustundir":"klukkustundum"):n+"klukkustund";case"d":return a?"dagur":s?"dag":"degi";case"dd":return an(e)?a?n+"dagar":n+(s?"daga":"d\xf6gum"):a?n+"dagur":n+(s?"dag":"degi");case"M":return a?"m\xe1nu\xf0ur":s?"m\xe1nu\xf0":"m\xe1nu\xf0i";case"MM":return an(e)?a?n+"m\xe1nu\xf0ir":n+(s?"m\xe1nu\xf0i":"m\xe1nu\xf0um"):a?n+"m\xe1nu\xf0ur":n+(s?"m\xe1nu\xf0":"m\xe1nu\xf0i");case"y":return a||s?"\xe1r":"\xe1ri";case"yy":return an(e)?n+(a||s?"\xe1r":"\xe1rum"):n+(a||s?"\xe1r":"\xe1ri")}}l.defineLocale("hu",{months:"janu\xe1r_febru\xe1r_m\xe1rcius_\xe1prilis_m\xe1jus_j\xfanius_j\xfalius_augusztus_szeptember_okt\xf3ber_november_december".split("_"),monthsShort:"jan_feb_m\xe1rc_\xe1pr_m\xe1j_j\xfan_j\xfal_aug_szept_okt_nov_dec".split("_"),weekdays:"vas\xe1rnap_h\xe9tf\u0151_kedd_szerda_cs\xfct\xf6rt\xf6k_p\xe9ntek_szombat".split("_"),weekdaysShort:"vas_h\xe9t_kedd_sze_cs\xfct_p\xe9n_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(e){return"u"===e.charAt(1).toLowerCase()},meridiem:function(e,a,t){return e<12?!0===t?"de":"DE":!0===t?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return en.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return en.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s m\xfalva",past:"%s",s:Xs,ss:Xs,m:Xs,mm:Xs,h:Xs,hh:Xs,d:Xs,dd:Xs,M:Xs,MM:Xs,y:Xs,yy:Xs},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("hy-am",{months:{format:"\u0570\u0578\u0582\u0576\u057e\u0561\u0580\u056b_\u0583\u0565\u057f\u0580\u057e\u0561\u0580\u056b_\u0574\u0561\u0580\u057f\u056b_\u0561\u057a\u0580\u056b\u056c\u056b_\u0574\u0561\u0575\u056b\u057d\u056b_\u0570\u0578\u0582\u0576\u056b\u057d\u056b_\u0570\u0578\u0582\u056c\u056b\u057d\u056b_\u0585\u0563\u0578\u057d\u057f\u0578\u057d\u056b_\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580\u056b_\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b_\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580\u056b_\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b".split("_"),standalone:"\u0570\u0578\u0582\u0576\u057e\u0561\u0580_\u0583\u0565\u057f\u0580\u057e\u0561\u0580_\u0574\u0561\u0580\u057f_\u0561\u057a\u0580\u056b\u056c_\u0574\u0561\u0575\u056b\u057d_\u0570\u0578\u0582\u0576\u056b\u057d_\u0570\u0578\u0582\u056c\u056b\u057d_\u0585\u0563\u0578\u057d\u057f\u0578\u057d_\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580_\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580_\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580_\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580".split("_")},monthsShort:"\u0570\u0576\u057e_\u0583\u057f\u0580_\u0574\u0580\u057f_\u0561\u057a\u0580_\u0574\u0575\u057d_\u0570\u0576\u057d_\u0570\u056c\u057d_\u0585\u0563\u057d_\u057d\u057a\u057f_\u0570\u056f\u057f_\u0576\u0574\u0562_\u0564\u056f\u057f".split("_"),weekdays:"\u056f\u056b\u0580\u0561\u056f\u056b_\u0565\u0580\u056f\u0578\u0582\u0577\u0561\u0562\u0569\u056b_\u0565\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b_\u0579\u0578\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b_\u0570\u056b\u0576\u0563\u0577\u0561\u0562\u0569\u056b_\u0578\u0582\u0580\u0562\u0561\u0569_\u0577\u0561\u0562\u0561\u0569".split("_"),weekdaysShort:"\u056f\u0580\u056f_\u0565\u0580\u056f_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),weekdaysMin:"\u056f\u0580\u056f_\u0565\u0580\u056f_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0569.",LLL:"D MMMM YYYY \u0569., HH:mm",LLLL:"dddd, D MMMM YYYY \u0569., HH:mm"},calendar:{sameDay:"[\u0561\u0575\u057d\u0585\u0580] LT",nextDay:"[\u057e\u0561\u0572\u0568] LT",lastDay:"[\u0565\u0580\u0565\u056f] LT",nextWeek:function(){return"dddd [\u0585\u0580\u0568 \u056a\u0561\u0574\u0568] LT"},lastWeek:function(){return"[\u0561\u0576\u0581\u0561\u056e] dddd [\u0585\u0580\u0568 \u056a\u0561\u0574\u0568] LT"},sameElse:"L"},relativeTime:{future:"%s \u0570\u0565\u057f\u0578",past:"%s \u0561\u057c\u0561\u057b",s:"\u0574\u056b \u0584\u0561\u0576\u056b \u057e\u0561\u0575\u0580\u056f\u0575\u0561\u0576",ss:"%d \u057e\u0561\u0575\u0580\u056f\u0575\u0561\u0576",m:"\u0580\u0578\u057a\u0565",mm:"%d \u0580\u0578\u057a\u0565",h:"\u056a\u0561\u0574",hh:"%d \u056a\u0561\u0574",d:"\u0585\u0580",dd:"%d \u0585\u0580",M:"\u0561\u0574\u056b\u057d",MM:"%d \u0561\u0574\u056b\u057d",y:"\u057f\u0561\u0580\u056b",yy:"%d \u057f\u0561\u0580\u056b"},meridiemParse:/\u0563\u056b\u0577\u0565\u0580\u057e\u0561|\u0561\u057c\u0561\u057e\u0578\u057f\u057e\u0561|\u0581\u0565\u0580\u0565\u056f\u057e\u0561|\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576/,isPM:function(e){return/^(\u0581\u0565\u0580\u0565\u056f\u057e\u0561|\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576)$/.test(e)},meridiem:function(e){return e<4?"\u0563\u056b\u0577\u0565\u0580\u057e\u0561":e<12?"\u0561\u057c\u0561\u057e\u0578\u057f\u057e\u0561":e<17?"\u0581\u0565\u0580\u0565\u056f\u057e\u0561":"\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(\u056b\u0576|\u0580\u0564)/,ordinal:function(e,a){switch(a){case"DDD":case"w":case"W":case"DDDo":return 1===e?e+"-\u056b\u0576":e+"-\u0580\u0564";default:return e}},week:{dow:1,doy:7}}),l.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(e,a){return 12===e&&(e=0),"pagi"===a?e:"siang"===a?11<=e?e:e+12:"sore"===a||"malam"===a?e+12:void 0},meridiem:function(e,a,t){return e<11?"pagi":e<15?"siang":e<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}}),l.defineLocale("is",{months:"jan\xfaar_febr\xfaar_mars_apr\xedl_ma\xed_j\xfan\xed_j\xfal\xed_\xe1g\xfast_september_okt\xf3ber_n\xf3vember_desember".split("_"),monthsShort:"jan_feb_mar_apr_ma\xed_j\xfan_j\xfal_\xe1g\xfa_sep_okt_n\xf3v_des".split("_"),weekdays:"sunnudagur_m\xe1nudagur_\xferi\xf0judagur_mi\xf0vikudagur_fimmtudagur_f\xf6studagur_laugardagur".split("_"),weekdaysShort:"sun_m\xe1n_\xferi_mi\xf0_fim_f\xf6s_lau".split("_"),weekdaysMin:"Su_M\xe1_\xder_Mi_Fi_F\xf6_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[\xed dag kl.] LT",nextDay:"[\xe1 morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[\xed g\xe6r kl.] LT",lastWeek:"[s\xed\xf0asta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s s\xed\xf0an",s:tn,ss:tn,m:tn,mm:tn,h:"klukkustund",hh:tn,d:tn,dd:tn,M:tn,MM:tn,y:tn,yy:tn},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xec_marted\xec_mercoled\xec_gioved\xec_venerd\xec_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(e){return(/^[0-9].+$/.test(e)?"tra":"in")+" "+e},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%
32d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}}),l.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xec_marted\xec_mercoled\xec_gioved\xec_venerd\xec_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(e){return(/^[0-9].+$/.test(e)?"tra":"in")+" "+e},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}}),l.defineLocale("ja",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u65e5\u66dc\u65e5_\u6708\u66dc\u65e5_\u706b\u66dc\u65e5_\u6c34\u66dc\u65e5_\u6728\u66dc\u65e5_\u91d1\u66dc\u65e5_\u571f\u66dc\u65e5".split("_"),weekdaysShort:"\u65e5_\u6708_\u706b_\u6c34_\u6728_\u91d1_\u571f".split("_"),weekdaysMin:"\u65e5_\u6708_\u706b_\u6c34_\u6728_\u91d1_\u571f".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5(ddd) HH:mm"},meridiemParse:/\u5348\u524d|\u5348\u5f8c/i,isPM:function(e){return"\u5348\u5f8c"===e},meridiem:function(e,a,t){return e<12?"\u5348\u524d":"\u5348\u5f8c"},calendar:{sameDay:"[\u4eca\u65e5] LT",nextDay:"[\u660e\u65e5] LT",nextWeek:function(e){return e.week()<this.week()?"[\u6765\u9031]dddd LT":"dddd LT"},lastDay:"[\u6628\u65e5] LT",lastWeek:function(e){return this.week()<e.week()?"[\u5148\u9031]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}\u65e5/,ordinal:function(e,a){switch(a){case"d":case"D":case"DDD":return e+"\u65e5";default:return e}},relativeTime:{future:"%s\u5f8c",past:"%s\u524d",s:"\u6570\u79d2",ss:"%d\u79d2",m:"1\u5206",mm:"%d\u5206",h:"1\u6642\u9593",hh:"%d\u6642\u9593",d:"1\u65e5",dd:"%d\u65e5",M:"1\u30f6\u6708",MM:"%d\u30f6\u6708",y:"1\u5e74",yy:"%d\u5e74"}}),l.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(e,a){return 12===e&&(e=0),"enjing"===a?e:"siyang"===a?11<=e?e:e+12:"sonten"===a||"ndalu"===a?e+12:void 0},meridiem:function(e,a,t){return e<11?"enjing":e<15?"siyang":e<19?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",ss:"%d detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}}
vendor: 8,244 bytes, line 32
32),l.defineLocale("ka",{months:{standalone:"\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8_\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8_\u10db\u10d0\u10e0\u10e2\u10d8_\u10d0\u10de\u10e0\u10d8\u10da\u10d8_\u10db\u10d0\u10d8\u10e1\u10d8_\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8_\u10d8\u10d5\u10da\u10d8\u10e1\u10d8_\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd_\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8_\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8_\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8_\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8".split("_"),format:"\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10e1_\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10e1_\u10db\u10d0\u10e0\u10e2\u10e1_\u10d0\u10de\u10e0\u10d8\u10da\u10d8\u10e1_\u10db\u10d0\u10d8\u10e1\u10e1_\u10d8\u10d5\u10dc\u10d8\u10e1\u10e1_\u10d8\u10d5\u10da\u10d8\u10e1\u10e1_\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10e1_\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10e1_\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10e1_\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10e1_\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10e1".split("_")},monthsShort:"\u10d8\u10d0\u10dc_\u10d7\u10d4\u10d1_\u10db\u10d0\u10e0_\u10d0\u10de\u10e0_\u10db\u10d0\u10d8_\u10d8\u10d5\u10dc_\u10d8\u10d5\u10da_\u10d0\u10d2\u10d5_\u10e1\u10d4\u10e5_\u10dd\u10e5\u10e2_\u10dc\u10dd\u10d4_\u10d3\u10d4\u10d9".split("_"),weekdays:{standalone:"\u10d9\u10d5\u10d8\u10e0\u10d0_\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10d8_\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8".split("_"),format:"\u10d9\u10d5\u10d8\u10e0\u10d0\u10e1_\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10e1_\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1".split("_"),isFormat:/(\u10ec\u10d8\u10dc\u10d0|\u10e8\u10d4\u10db\u10d3\u10d4\u10d2)/},weekdaysShort:"\u10d9\u10d5\u10d8_\u10dd\u10e0\u10e8_\u10e1\u10d0\u10db_\u10dd\u10d7\u10ee_\u10ee\u10e3\u10d7_\u10de\u10d0\u10e0_\u10e8\u10d0\u10d1".split("_"),weekdaysMin:"\u10d9\u10d5_\u10dd\u10e0_\u10e1\u10d0_\u10dd\u10d7_\u10ee\u10e3_\u10de\u10d0_\u10e8\u10d0".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[\u10d3\u10e6\u10d4\u10e1] LT[-\u10d6\u10d4]",nextDay:"[\u10ee\u10d5\u10d0\u10da] LT[-\u10d6\u10d4]",lastDay:"[\u10d2\u10e3\u10e8\u10d8\u10dc] LT[-\u10d6\u10d4]",nextWeek:"[\u10e8\u10d4\u10db\u10d3\u10d4\u10d2] dddd LT[-\u10d6\u10d4]",lastWeek:"[\u10ec\u10d8\u10dc\u10d0] dddd LT-\u10d6\u10d4",sameElse:"L"},relativeTime:{future:function(e){return/(\u10ec\u10d0\u10db\u10d8|\u10ec\u10e3\u10d7\u10d8|\u10e1\u10d0\u10d0\u10d7\u10d8|\u10ec\u10d4\u10da\u10d8)/.test(e)?e.replace(/\u10d8$/,"\u10e8\u10d8"):e+"\u10e8\u10d8"},past:function(e){return/(\u10ec\u10d0\u10db\u10d8|\u10ec\u10e3\u10d7\u10d8|\u10e1\u10d0\u10d0\u10d7\u10d8|\u10d3\u10e6\u10d4|\u10d7\u10d5\u10d4)/.test(e)?e.replace(/(\u10d8|\u10d4)$/,"\u10d8\u10e1 \u10ec\u10d8\u10dc"):/\u10ec\u10d4\u10da\u10d8/.test(e)?e.replace(/\u10ec\u10d4\u10da\u10d8$/,"\u10ec\u10da\u10d8\u10e1 \u10ec\u10d8\u10dc"):void 0},s:"\u10e0\u10d0\u10db\u10d3\u10d4\u10dc\u10d8\u10db\u10d4 \u10ec\u10d0\u10db\u10d8",ss:"%d \u10ec\u10d0\u10db\u10d8",m:"\u10ec\u10e3\u10d7\u10d8",mm:"%d \u10ec\u10e3\u10d7\u10d8",h:"\u10e1\u10d0\u10d0\u10d7\u10d8",hh:"%d \u10e1\u10d0\u10d0\u10d7\u10d8",d:"\u10d3\u10e6\u10d4",dd:"%d \u10d3\u10e6\u10d4",M:"\u10d7\u10d5\u10d4",MM:"%d \u10d7\u10d5\u10d4",y:"\u10ec\u10d4\u10da\u10d8",yy:"%d \u10ec\u10d4\u10da\u10d8"},dayOfMonthOrdinalParse:/0|1-\u10da\u10d8|\u10db\u10d4-\d{1,2}|\d{1,2}-\u10d4/,ordinal:function(e){return 0===e?e:1===e?e+"-\u10da\u10d8":e<20||e<=100&&e%20==0||e%100==0?"\u10db\u10d4-"+e:e+"-\u10d4"},week:{dow:1,doy:7}});var sn={0:"-\u0448\u0456",1:"-\u0448\u0456",2:"-\u0448\u0456",3:"-\u0448\u0456",4:"-\u0448\u0456",5:"-\u0448\u0456",6:"-\u0448\u044b",7:"-\u0448\u0456",8:"-\u0448\u0456",9:"-\u0448\u044b",10:"-\u0448\u044b",20:"-\u0448\u044b",30:"-\u0448\u044b",40:"-\u0448\u044b",50:"-\u0448\u0456",60:"-\u0448\u044b",70:"-\u0448\u0456",80:"-\u0448\u0456",90:"-\u0448\u044b",100:"-\u0448\u0456"};l.defineLocale("kk",{months:"\u049b\u0430\u04a3\u0442\u0430\u0440_\u0430\u049b\u043f\u0430\u043d_\u043d\u0430\u0443\u0440\u044b\u0437_\u0441\u04d9\u0443\u0456\u0440_\u043c\u0430\u043c\u044b\u0440_\u043c\u0430\u0443\u0441\u044b\u043c_\u0448\u0456\u043b\u0434\u0435_\u0442\u0430\u043c\u044b\u0437_\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a_\u049b\u0430\u0437\u0430\u043d_\u049b\u0430\u0440\u0430\u0448\u0430_\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d".split("_"),monthsShort:"\u049b\u0430\u04a3_\u0430\u049b\u043f_\u043d\u0430\u0443_\u0441\u04d9\u0443_\u043c\u0430\u043c_\u043c\u0430\u0443_\u0448\u0456\u043b_\u0442\u0430\u043c_\u049b\u044b\u0440_\u049b\u0430\u0437_\u049b\u0430\u0440_\u0436\u0435\u043b".split("_"),weekdays:"\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456_\u0434\u04af\u0439\u0441\u0435\u043d\u0431\u0456_\u0441\u0435\u0439\u0441\u0435\u043d\u0431\u0456_\u0441\u04d9\u0440\u0441\u0435\u043d\u0431\u0456_\u0431\u0435\u0439\u0441\u0435\u043d\u0431\u0456_\u0436\u04b1\u043c\u0430_\u0441\u0435\u043d\u0431\u0456".split("_"),weekdaysShort:"\u0436\u0435\u043a_\u0434\u04af\u0439_\u0441\u0435\u0439_\u0441\u04d9\u0440_\u0431\u0435\u0439_\u0436\u04b1\u043c_\u0441\u0435\u043d".split("_"),weekdaysMin:"\u0436\u043a_\u0434\u0439_\u0441\u0439_\u0441\u0440_\u0431\u0439_\u0436\u043c_\u0441\u043d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04af\u0433\u0456\u043d \u0441\u0430\u0493\u0430\u0442] LT",nextDay:"[\u0415\u0440\u0442\u0435\u04a3 \u0441\u0430\u0493\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0493\u0430\u0442] LT",lastDay:"[\u041a\u0435\u0448\u0435 \u0441\u0430\u0493\u0430\u0442] LT",lastWeek:"[\u04e8\u0442\u043a\u0435\u043d \u0430\u043f\u0442\u0430\u043d\u044b\u04a3] dddd [\u0441\u0430\u0493\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0456\u0448\u0456\u043d\u0434\u0435",past:"%s \u0431\u04b1\u0440\u044b\u043d",s:"\u0431\u0456\u0440\u043d\u0435\u0448\u0435 \u0441\u0435\u043a\u0443\u043d\u0434",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434",m:"\u0431\u0456\u0440 \u043c\u0438\u043d\u0443\u0442",mm:"%d \u043c\u0438\u043d\u0443\u0442",h:"\u0431\u0456\u0440 \u0441\u0430\u0493\u0430\u0442",hh:"%d \u0441\u0430\u0493\u0430\u0442",d:"\u0431\u0456\u0440 \u043a\u04af\u043d",dd:"%d \u043a\u04af\u043d",M:"\u0431\u0456\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0456\u0440 \u0436\u044b\u043b",yy:"%d \u0436\u044b\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0448\u0456|\u0448\u044b)/,ordinal:function(e){return e+(sn[e]||sn[e%10]||sn[100<=e?100:null])},week:{dow:1,doy:7}});var nn={1:"\u17e1",2:"\u17e2",3:"\u17e3",4:"\u17e4",5:"\u17e5",6:"\u17e6",7:"\u17e7",8:"\u17e8",9:"\u17e9",0:"\u17e0"},dn={"\u17e1":"1","\u17e2":"2","\u17e3":"3","\u17e4":"4","\u17e5":"5","\u17e6":"6","\u17e7":"7","\u17e8":"8","\u17e9":"9","\u17e0":"0"};l.defineLocale("km",{months:"\u1798\u1780\u179a\u17b6_\u1780\u17bb\u1798\u17d2\u1797\u17c8_\u1798\u17b8\u1793\u17b6_\u1798\u17c1\u179f\u17b6_\u17a7\u179f\u1797\u17b6_\u1798\u17b7\u1790\u17bb\u1793\u17b6_\u1780\u1780\u17d2\u1780\u178a\u17b6_\u179f\u17b8\u17a0\u17b6_\u1780\u1789\u17d2\u1789\u17b6_\u178f\u17bb\u179b\u17b6_\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6_\u1792\u17d2\u1793\u17bc".split("_"),monthsShort:"\u1798\u1780\u179a\u17b6_\u1780\u17bb\u1798\u17d2\u1797\u17c8_\u1798\u17b8\u1793\u17b6_\u1798\u17c1\u179f\u17b6_\u17a7\u179f\u1797\u17b6_\u1798\u17b7\u1790\u17bb\u1793\u17b6_\u1780\u1780\u17d2\u1780\u178a\u17b6_\u179f\u17b8\u17a0\u17b6_\u1780\u1789\u17d2\u1789\u17b6_\u178f\u17bb\u179b\u17b6_\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6_\u1792\u17d2\u1793\u17bc".split("_"),weekdays:"\u
3217a2\u17b6\u1791\u17b7\u178f\u17d2\u1799_\u1785\u17d0\u1793\u17d2\u1791_\u17a2\u1784\u17d2\u1782\u17b6\u179a_\u1796\u17bb\u1792_\u1796\u17d2\u179a\u17a0\u179f\u17d2\u1794\u178f\u17b7\u17cd_\u179f\u17bb\u1780\u17d2\u179a_\u179f\u17c5\u179a\u17cd".split("_"),weekdaysShort:"\u17a2\u17b6_\u1785_\u17a2_\u1796_\u1796\u17d2\u179a_\u179f\u17bb_\u179f".split("_"),weekdaysMin:"\u17a2\u17b6_\u1785_\u17a2_\u1796_\u1796\u17d2\u179a_\u179f\u17bb_\u179f".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u1796\u17d2\u179a\u17b9\u1780|\u179b\u17d2\u1784\u17b6\u1785/,isPM:function(e){return"\u179b\u17d2\u1784\u17b6\u1785"===e},meridiem:function(e,a,t){return e<12?"\u1796\u17d2\u179a\u17b9\u1780":"\u179b\u17d2\u1784\u17b6\u1785"},calendar:{sameDay:"[\u1790\u17d2\u1784\u17c3\u1793\u17c1\u17c7 \u1798\u17c9\u17c4\u1784] LT",nextDay:"[\u179f\u17d2\u17a2\u17c2\u1780 \u1798\u17c9\u17c4\u1784] LT",nextWeek:"dddd [\u1798\u17c9\u17c4\u1784] LT",lastDay:"[\u1798\u17d2\u179f\u17b7\u179b\u1798\u17b7\u1789 \u1798\u17c9\u17c4\u1784] LT",lastWeek:"dddd [\u179f\u1794\u17d2\u178f\u17b6\u17a0\u17cd\u1798\u17bb\u1793] [\u1798\u17c9\u17c4\u1784] LT",sameElse:"L"},relativeTime:{future:"%s\u1791\u17c0\u178f",past:"%s\u1798\u17bb\u1793",s:"\u1794\u17c9\u17bb\u1793\u17d2\u1798\u17b6\u1793\u179c\u17b7\u1793\u17b6\u1791\u17b8",ss:"%d \u179c\u17b7\u1793\u17b6\u1791\u17b8",m:"\u1798\u17bd\u1799\u1793\u17b6\u1791\u17b8",mm:"%d \u1793\u17b6\u1791\u17b8",h:"\u1798\u17bd\u1799\u1798\u17c9\u17c4\u1784",hh:"%d \u1798\u17c9\u17c4\u1784",d:"\u1798\u17bd\u1799\u1790\u17d2\u1784\u17c3",dd:"%d \u1790\u17d2\u1784\u17c3",M:"\u1798\u17bd\u1799\u1781\u17c2",MM:"%d \u1781\u17c2",y:"\u1798\u17bd\u1799\u1786\u17d2\u1793\u17b6\u17c6",yy:"%d \u1786\u17d2\u1793\u17b6\u17c6"},dayOfMonthOrdinalParse:/\u1791\u17b8\d{1,2}/,ordinal:"\u1791\u17b8%d",preparse:function(e){return e.replace(/[\u17e1\u17e2\u17e3\u17e4\u17e5\u17e6\u17e7\u17e8\u17e9\u17e0]/g,function(e){return dn[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return nn[e]})},week:{dow:1,doy:4}});
vendor: 9,767 bytes, line 32
32var rn={1:"\u0ce7",2:"\u0ce8",3:"\u0ce9",4:"\u0cea",5:"\u0ceb",6:"\u0cec",7:"\u0ced",8:"\u0cee",9:"\u0cef",0:"\u0ce6"},_n={"\u0ce7":"1","\u0ce8":"2","\u0ce9":"3","\u0cea":"4","\u0ceb":"5","\u0cec":"6","\u0ced":"7","\u0cee":"8","\u0cef":"9","\u0ce6":"0"};l.defineLocale("kn",{months:"\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf_\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf_\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd_\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd_\u0cae\u0cc6\u0cd5_\u0c9c\u0cc2\u0ca8\u0ccd_\u0c9c\u0cc1\u0cb2\u0cc6\u0cd6_\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd_\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd_\u0c85\u0c95\u0ccd\u0c9f\u0cc6\u0cc2\u0cd5\u0cac\u0cb0\u0ccd_\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd_\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd".split("_"),monthsShort:"\u0c9c\u0ca8_\u0cab\u0cc6\u0cac\u0ccd\u0cb0_\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd_\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd_\u0cae\u0cc6\u0cd5_\u0c9c\u0cc2\u0ca8\u0ccd_\u0c9c\u0cc1\u0cb2\u0cc6\u0cd6_\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd_\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82_\u0c85\u0c95\u0ccd\u0c9f\u0cc6\u0cc2\u0cd5_\u0ca8\u0cb5\u0cc6\u0c82_\u0ca1\u0cbf\u0cb8\u0cc6\u0c82".split("_"),monthsParseExact:!0,weekdays:"\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0_\u0cb8\u0cc6\u0cc2\u0cd5\u0cae\u0cb5\u0cbe\u0cb0_\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0_\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0_\u0c97\u0cc1\u0cb0\u0cc1\u0cb5\u0cbe\u0cb0_\u0cb6\u0cc1\u0c95\u0ccd\u0cb0\u0cb5\u0cbe\u0cb0_\u0cb6\u0ca8\u0cbf\u0cb5\u0cbe\u0cb0".split("_"),weekdaysShort:"\u0cad\u0cbe\u0ca8\u0cc1_\u0cb8\u0cc6\u0cc2\u0cd5\u0cae_\u0cae\u0c82\u0c97\u0cb3_\u0cac\u0cc1\u0ca7_\u0c97\u0cc1\u0cb0\u0cc1_\u0cb6\u0cc1\u0c95\u0ccd\u0cb0_\u0cb6\u0ca8\u0cbf".split("_"),weekdaysMin:"\u0cad\u0cbe_\u0cb8\u0cc6\u0cc2\u0cd5_\u0cae\u0c82_\u0cac\u0cc1_\u0c97\u0cc1_\u0cb6\u0cc1_\u0cb6".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0c87\u0c82\u0ca6\u0cc1] LT",nextDay:"[\u0ca8\u0cbe\u0cb3\u0cc6] LT",nextWeek:"dddd, LT",lastDay:"[\u0ca8\u0cbf\u0ca8\u0ccd\u0ca8\u0cc6] LT",lastWeek:"[\u0c95\u0cc6\u0cc2\u0ca8\u0cc6\u0caf] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0ca8\u0c82\u0ca4\u0cb0",past:"%s \u0cb9\u0cbf\u0c82\u0ca6\u0cc6",s:"\u0c95\u0cc6\u0cb2\u0cb5\u0cc1 \u0c95\u0ccd\u0cb7\u0ca3\u0c97\u0cb3\u0cc1",ss:"%d \u0cb8\u0cc6\u0c95\u0cc6\u0c82\u0ca1\u0cc1\u0c97\u0cb3\u0cc1",m:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca8\u0cbf\u0cae\u0cbf\u0cb7",mm:"%d \u0ca8\u0cbf\u0cae\u0cbf\u0cb7",h:"\u0c92\u0c82\u0ca6\u0cc1 \u0c97\u0c82\u0c9f\u0cc6",hh:"%d \u0c97\u0c82\u0c9f\u0cc6",d:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca6\u0cbf\u0ca8",dd:"%d \u0ca6\u0cbf\u0ca8",M:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1",MM:"%d \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1",y:"\u0c92\u0c82\u0ca6\u0cc1 \u0cb5\u0cb0\u0ccd\u0cb7",yy:"%d \u0cb5\u0cb0\u0ccd\u0cb7"},preparse:function(e){return e.replace(/[\u0ce7\u0ce8\u0ce9\u0cea\u0ceb\u0cec\u0ced\u0cee\u0cef\u0ce6]/g,function(e){return _n[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return rn[e]})},meridiemParse:/\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf|\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6|\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8|\u0cb8\u0c82\u0c9c\u0cc6/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf"===a?e<4?e:e+12:"\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6"===a?e:"\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8"===a?10<=e?e:e+12:"\u0cb8\u0c82\u0c9c\u0cc6"===a?e+12:void 0},meridiem:function(e,a,t){return e<4?"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf":e<10?"\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6":e<17?"\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8":e<20?"\u0cb8\u0c82\u0c9c\u0cc6":"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf"},dayOfMonthOrdinalParse:/\d{1,2}(\u0ca8\u0cc6\u0cd5)/,ordinal:function(e){return e+"\u0ca8\u0cc6\u0cd5"},week:{dow:0,doy:6}}),l.defineLocale("ko",{months:"1\uc6d4_2\uc6d4_3\uc6d4_4\uc6d4_5\uc6d4_6\uc6d4_7\uc6d4_8\uc6d4_9\uc6d4_10\uc6d4_11\uc6d4_12\uc6d4".split("_"),monthsShort:"1\uc6d4_2\uc6d4_3\uc6d4_4\uc6d4_5\uc6d4_6\uc6d4_7\uc6d4_8\uc6d4_9\uc6d4_10\uc6d4_11\uc6d4_12\uc6d4".split("_"),weekdays:"\uc77c\uc694\uc77c_\uc6d4\uc694\uc77c_\ud654\uc694\uc77c_\uc218\uc694\uc77c_\ubaa9\uc694\uc77c_\uae08\uc694\uc77c_\ud1a0\uc694\uc77c".split("_"),weekdaysShort:"\uc77c_\uc6d4_\ud654_\uc218_\ubaa9_\uae08_\ud1a0".split("_"),weekdaysMin:"\uc77c_\uc6d4_\ud654_\uc218_\ubaa9_\uae08_\ud1a0".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY\ub144 MMMM D\uc77c",LLL:"YYYY\ub144 MMMM D\uc77c A h:mm",LLLL:"YYYY\ub144 MMMM D\uc77c dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY\ub144 MMMM D\uc77c",lll:"YYYY\ub144 MMMM D\uc77c A h:mm",llll:"YYYY\ub144 MMMM D\uc77c dddd A h:mm"},calendar:{sameDay:"\uc624\ub298 LT",nextDay:"\ub0b4\uc77c LT",nextWeek:"dddd LT",lastDay:"\uc5b4\uc81c LT",lastWeek:"\uc9c0\ub09c\uc8fc dddd LT",sameElse:"L"},relativeTime:{future:"%s \ud6c4",past:"%s \uc804",s:"\uba87 \ucd08",ss:"%d\ucd08",m:"1\ubd84",mm:"%d\ubd84",h:"\ud55c \uc2dc\uac04",hh:"%d\uc2dc\uac04",d:"\ud558\ub8e8",dd:"%d\uc77c",M:"\ud55c \ub2ec",MM:"%d\ub2ec",y:"\uc77c \ub144",yy:"%d\ub144"},dayOfMonthOrdinalParse:/\d{1,2}(\uc77c|\uc6d4|\uc8fc)/,ordinal:function(e,a){switch(a){case"d":case"D":case"DDD":return e+"\uc77c";case"M":return e+"\uc6d4";case"w":case"W":return e+"\uc8fc";default:return e}},meridiemParse:/\uc624\uc804|\uc624\ud6c4/,isPM:function(e){return"\uc624\ud6c4"===e},meridiem:function(e,a,t){return e<12?"\uc624\uc804":"\uc624\ud6c4"}});var on={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},mn={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},un=["\u06a9\u0627\u0646\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645","\u0634\u0648\u0628\u0627\u062a","\u0626\u0627\u0632\u0627\u0631","\u0646\u06cc\u0633\u0627\u0646","\u0626\u0627\u06cc\u0627\u0631","\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646","\u062a\u06d5\u0645\u0645\u0648\u0632","\u0626\u0627\u0628","\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644","\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u0643\u06d5\u0645","\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645","\u0643\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"];l.defineLocale("ku",{months:un,monthsShort:un,weekdays:"\u06cc\u0647\u200c\u0643\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u062f\u0648\u0648\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0633\u06ce\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0686\u0648\u0627\u0631\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u067e\u06ce\u0646\u062c\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0647\u0647\u200c\u06cc\u0646\u06cc_\u0634\u0647\u200c\u0645\u0645\u0647\u200c".split("_"),weekdaysShort:"\u06cc\u0647\u200c\u0643\u0634\u0647\u200c\u0645_\u062f\u0648\u0648\u0634\u0647\u200c\u0645_\u0633\u06ce\u0634\u0647\u200c\u0645_\u0686\u0648\u0627\u0631\u0634\u0647\u200c\u0645_\u067e\u06ce\u0646\u062c\u0634\u0647\u200c\u0645_\u0647\u0647\u200c\u06cc\u0646\u06cc_\u0634\u0647\u200c\u0645\u0645\u0647\u200c".split("_"),weekdaysMin:"\u06cc_\u062f_\u0633_\u0686_\u067e_\u0647_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u0626\u06ce\u0648\u0627\u0631\u0647\u200c|\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc/,isPM:function(e){return/\u0626\u06ce\u0648\u0627\u0631\u0647\u200c/.test(e)},meridiem:function(e,a,t){return e<12?"\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc":"\u0626\u06ce\u0648\u0627\u0631\u0647\u200c"},calendar:{sameDay:"[\u0626\u0647\u200c\u0645\u0631\u06c6 \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",nextDay:"[\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",nextWeek:"dddd [\u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",lastDay:"[\u062f\u0648\u06ce\u0646\u06ce \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",lastWeek:"dddd [\u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",sameElse:"L"},relativeTime:{future:"\u0644\u0647\u200c %s",past:"%s",s:"\u0686\u0647\u200c\u0646\u062f \u0686\u0631\u0643\u0647\u200c\u06cc\u0647\u200c\u0643",ss:"\u0686\u0631\u0643\u0647\u200c %d",m:"\u06cc\u0647\u200c\u0643 \u062e\u0648\u0644\u0647\u200c\u0643",mm:"%d \u062e\u0648\u0644\u0647\u200c\u0643",h:"\u06cc\u0647\u200c\u0643 \u0643\u0627\u062a\u0698\u0645\u06ce\u0631",hh:"%d \u0643\u0627\u062a\u0698\u0645\u06ce\u0631",d:"\u06cc\u0647\u200c\u0643 \u0695\u06c6\u0698",dd:"%d \u0695\u06c6\u0698",M:"\u06cc\u0647\u200c\u0643 \u0645\u0627\u0646\u06af",MM:"%d \u0645\u0627\u0646\u06af",y:"\u06cc\u0647\u200c\u0643 \u0633\u0627\u06b5",yy:"%d \u0633\u0627\u06b5"},preparse:function(e){return e.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(e){return mn[e]}).replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return on[e]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}});var ln={0:"-\u0447\u04af",1:"-\u0447\u0438",2:"-\u0447\u0438",3:"-\u0447\u04af",4:"-\u0447\u04af",5:"-\u0447\u0438",6:"-\u0447\u044b",7:"-\u0447\u0438",8:"-\u0447\u0438",9:"-\u0447\u0443",10:"-\u0447\u0443",20:"-\u0447\u044b",30:"-\u0447\u0443",40:"-\u0447\u044b",50:"-\u0447\u04af",60:"-\u0447\u044b",70:"-\u0447\u0438",80:"-\u0447\u0438",90:"-\u0447\u0443",100:"-\u0447\u04af"};function Mn(e,a,t,s){var n={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return a?n[t][0]:n[t][1]}function hn(e){if(e=parseInt(e,10),isNaN(e))return!1;if(e<0)return!0;
32if(e<10)return 4<=e&&e<=7;if(e<100){var a=e%10;return hn(0===a?e/10:a)}if(e<1e4){for(;10<=e;)e/=10;return hn(e)}return hn(e/=1e3)}l.defineLocale("ky",{months:"\u044f\u043d\u0432\u0430\u0440\u044c_\u0444\u0435\u0432\u0440\u0430\u043b\u044c_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b\u044c_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c_\u043e\u043a\u0442\u044f\u0431\u0440\u044c_\u043d\u043e\u044f\u0431\u0440\u044c_\u0434\u0435\u043a\u0430\u0431\u0440\u044c".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u0416\u0435\u043a\u0448\u0435\u043c\u0431\u0438_\u0414\u04af\u0439\u0448\u04e9\u043c\u0431\u04af_\u0428\u0435\u0439\u0448\u0435\u043c\u0431\u0438_\u0428\u0430\u0440\u0448\u0435\u043c\u0431\u0438_\u0411\u0435\u0439\u0448\u0435\u043c\u0431\u0438_\u0416\u0443\u043c\u0430_\u0418\u0448\u0435\u043c\u0431\u0438".split("_"),weekdaysShort:"\u0416\u0435\u043a_\u0414\u04af\u0439_\u0428\u0435\u0439_\u0428\u0430\u0440_\u0411\u0435\u0439_\u0416\u0443\u043c_\u0418\u0448\u0435".split("_"),weekdaysMin:"\u0416\u043a_\u0414\u0439_\u0428\u0439_\u0428\u0440_\u0411\u0439_\u0416\u043c_\u0418\u0448".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04af\u0433\u04af\u043d \u0441\u0430\u0430\u0442] LT",nextDay:"[\u042d\u0440\u0442\u0435\u04a3 \u0441\u0430\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0430\u0442] LT",lastDay:"[\u041a\u0435\u0447\u044d\u044d \u0441\u0430\u0430\u0442] LT",lastWeek:"[\u04e8\u0442\u043a\u04e9\u043d \u0430\u043f\u0442\u0430\u043d\u044b\u043d] dddd [\u043a\u04af\u043d\u04af] [\u0441\u0430\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0438\u0447\u0438\u043d\u0434\u0435",past:"%s \u043c\u0443\u0440\u0443\u043d",s:"\u0431\u0438\u0440\u043d\u0435\u0447\u0435 \u0441\u0435\u043a\u0443\u043d\u0434",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434",m:"\u0431\u0438\u0440 \u043c\u04af\u043d\u04e9\u0442",mm:"%d \u043c\u04af\u043d\u04e9\u0442",h:"\u0431\u0438\u0440 \u0441\u0430\u0430\u0442",hh:"%d \u0441\u0430\u0430\u0442",d:"\u0431\u0438\u0440 \u043a\u04af\u043d",dd:"%d \u043a\u04af\u043d",M:"\u0431\u0438\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0438\u0440 \u0436\u044b\u043b",yy:"%d \u0436\u044b\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0447\u0438|\u0447\u044b|\u0447\u04af|\u0447\u0443)/,ordinal:function(e){return e+(ln[e]||ln[e%10]||ln[100<=e?100:null])},week:{dow:1,doy:7}}),l.defineLocale("lb",{months:"Januar_Februar_M\xe4erz_Abr\xebll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_M\xe9indeg_D\xebnschdeg_M\xebttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._M\xe9._D\xeb._M\xeb._Do._Fr._Sa.".split("_"),weekdaysMin:"So_M\xe9_D\xeb_M\xeb_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[G\xebschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:function(e){return hn(e.substr(0,e.indexOf(" ")))?"a "+e:"an "+e},past:function(e){return hn(e.substr(0,e.indexOf(" ")))?"viru "+e:"virun "+e},s:"e puer Sekonnen",ss:"%d Sekonnen",m:Mn,mm:"%d Minutten",h:Mn,hh:"%d Stonnen",d:Mn,dd:"%d Deeg",M:Mn,MM:"%d M\xe9int",y:Mn,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("lo",{months:"\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99_\u0e81\u0eb8\u0ea1\u0e9e\u0eb2_\u0ea1\u0eb5\u0e99\u0eb2_\u0ec0\u0ea1\u0eaa\u0eb2_\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2_\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2_\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94_\u0eaa\u0eb4\u0e87\u0eab\u0eb2_\u0e81\u0eb1\u0e99\u0e8d\u0eb2_\u0e95\u0eb8\u0ea5\u0eb2_\u0e9e\u0eb0\u0e88\u0eb4\u0e81_\u0e97\u0eb1\u0e99\u0ea7\u0eb2".split("_"),monthsShort:"\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99_\u0e81\u0eb8\u0ea1\u0e9e\u0eb2_\u0ea1\u0eb5\u0e99\u0eb2_\u0ec0\u0ea1\u0eaa\u0eb2_\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2_\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2_\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94_\u0eaa\u0eb4\u0e87\u0eab\u0eb2_\u0e81\u0eb1\u0e99\u0e8d\u0eb2_\u0e95\u0eb8\u0ea5\u0eb2_\u0e9e\u0eb0\u0e88\u0eb4\u0e81_\u0e97\u0eb1\u0e99\u0ea7\u0eb2".split("_"),weekdays:"\u0ead\u0eb2\u0e97\u0eb4\u0e94_\u0e88\u0eb1\u0e99_\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99_\u0e9e\u0eb8\u0e94_\u0e9e\u0eb0\u0eab\u0eb1\u0e94_\u0eaa\u0eb8\u0e81_\u0ec0\u0eaa\u0ebb\u0eb2".split("_"),weekdaysShort:"\u0e97\u0eb4\u0e94_\u0e88\u0eb1\u0e99_\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99_\u0e9e\u0eb8\u0e94_\u0e9e\u0eb0\u0eab\u0eb1\u0e94_\u0eaa\u0eb8\u0e81_\u0ec0\u0eaa\u0ebb\u0eb2".split("_"),weekdaysMin:"\u0e97_\u0e88_\u0ead\u0e84_\u0e9e_\u0e9e\u0eab_\u0eaa\u0e81_\u0eaa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"\u0ea7\u0eb1\u0e99dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0e95\u0ead\u0e99\u0ec0\u0e8a\u0ebb\u0ec9\u0eb2|\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87/,isPM:function(e){return"\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87"===e},meridiem:function(e,a,t){return e<12?"\u0e95\u0ead\u0e99\u0ec0\u0e8a\u0ebb\u0ec9\u0eb2":"\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87"},calendar:{sameDay:"[\u0ea1\u0eb7\u0ec9\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",nextDay:"[\u0ea1\u0eb7\u0ec9\u0ead\u0eb7\u0ec8\u0e99\u0ec0\u0ea7\u0ea5\u0eb2] LT",nextWeek:"[\u0ea7\u0eb1\u0e99]dddd[\u0edc\u0ec9\u0eb2\u0ec0\u0ea7\u0ea5\u0eb2] LT",lastDay:"[\u0ea1\u0eb7\u0ec9\u0ea7\u0eb2\u0e99\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",lastWeek:"[\u0ea7\u0eb1\u0e99]dddd[\u0ec1\u0ea5\u0ec9\u0ea7\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",sameElse:"L"},relativeTime:{future:"\u0ead\u0eb5\u0e81 %s",past:"%s\u0e9c\u0ec8\u0eb2\u0e99\u0ea1\u0eb2",s:"\u0e9a\u0ecd\u0ec8\u0ec0\u0e97\u0ebb\u0ec8\u0eb2\u0ec3\u0e94\u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5",ss:"%d \u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5",m:"1 \u0e99\u0eb2\u0e97\u0eb5",mm:"%d \u0e99\u0eb2\u0e97\u0eb5",h:"1 \u0e8a\u0ebb\u0ec8\u0ea7\u0ec2\u0ea1\u0e87",hh:"%
32d \u0e8a\u0ebb\u0ec8\u0ea7\u0ec2\u0ea1\u0e87",d:"1 \u0ea1\u0eb7\u0ec9",dd:"%d \u0ea1\u0eb7\u0ec9",M:"1 \u0ec0\u0e94\u0eb7\u0ead\u0e99",MM:"%d \u0ec0\u0e94\u0eb7\u0ead\u0e99",y:"1 \u0e9b\u0eb5",yy:"%d \u0e9b\u0eb5"},dayOfMonthOrdinalParse:/(\u0e97\u0eb5\u0ec8)\d{1,2}/,ordinal:function(e){return"\u0e97\u0eb5\u0ec8"+e}});var Ln={ss:"sekund\u0117_sekund\u017ei\u0173_sekundes",m:"minut\u0117_minut\u0117s_minut\u0119",mm:"minut\u0117s_minu\u010di\u0173_minutes",h:"valanda_valandos_valand\u0105",hh:"valandos_valand\u0173_valandas",d:"diena_dienos_dien\u0105",dd:"dienos_dien\u0173_dienas",M:"m\u0117nuo_m\u0117nesio_m\u0117nes\u012f",MM:"m\u0117nesiai_m\u0117nesi\u0173_m\u0117nesius",y:"metai_met\u0173_metus",yy:"metai_met\u0173_metus"};function cn(e,a,t,s){return a?yn(t)[0]:s?yn(t)[1]:yn(t)[2]}function Yn(e){return e%10==0||10<e&&e<20}function yn(e){return Ln[e].split("_")}function fn(e,a,t,s){var n=e+" ";return 1===e?n+cn(0,a,t[0],s):a?n+(Yn(e)?yn(t)[1]:yn(t)[0]):s?n+yn(t)[1]:n+(Yn(e)?yn(t)[1]:yn(t)[2])}l.defineLocale("lt",{months:{format:"sausio_vasario_kovo_baland\u017eio_gegu\u017e\u0117s_bir\u017eelio_liepos_rugpj\u016b\u010dio_rugs\u0117jo_spalio_lapkri\u010dio_gruod\u017eio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegu\u017e\u0117_bir\u017eelis_liepa_rugpj\u016btis_rugs\u0117jis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadien\u012f_pirmadien\u012f_antradien\u012f_tre\u010diadien\u012f_ketvirtadien\u012f_penktadien\u012f_\u0161e\u0161tadien\u012f".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_tre\u010diadienis_ketvirtadienis_penktadienis_\u0161e\u0161tadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_\u0160e\u0161".split("_"),weekdaysMin:"S_P_A_T_K_Pn_\u0160".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[\u0160iandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Pra\u0117jus\u012f] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prie\u0161 %s",s:function(e,a,t,s){return a?"kelios sekund\u0117s":s?"keli\u0173 sekund\u017ei\u0173":"kelias sekundes"},ss:fn,m:cn,mm:fn,h:cn,hh:fn,d:cn,dd:fn,M:cn,MM:fn,y:cn,yy:fn},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(e){return e+"-oji"},week:{dow:1,doy:4}});var kn={ss:"sekundes_sekund\u0113m_sekunde_sekundes".split("_"),m:"min\u016btes_min\u016bt\u0113m_min\u016bte_min\u016btes".split("_"),mm:"min\u016btes_min\u016bt\u0113m_min\u016bte_min\u016btes".split("_"),h:"stundas_stund\u0101m_stunda_stundas".split("_"),hh:"stundas_stund\u0101m_stunda_stundas".split("_"),d:"dienas_dien\u0101m_diena_dienas".split("_"),dd:"dienas_dien\u0101m_diena_dienas".split("_"),M:"m\u0113ne\u0161a_m\u0113ne\u0161iem_m\u0113nesis_m\u0113ne\u0161i".split("_"),MM:"m\u0113ne\u0161a_m\u0113ne\u0161iem_m\u0113nesis_m\u0113ne\u0161i".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function pn(e,a,t){return t?a%10==1&&a%100!=11?e[2]:e[3]:a%10==1&&a%100!=11?e[0]:e[1]}function Dn(e,a,t){return e+" "+pn(kn[t],e,a)}function Tn(e,a,t){return pn(kn[t],e,a)}l.defineLocale("lv",{months:"janv\u0101ris_febru\u0101ris_marts_apr\u012blis_maijs_j\u016bnijs_j\u016blijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_j\u016bn_j\u016bl_aug_sep_okt_nov_dec".split("_"),weekdays:"sv\u0113tdiena_pirmdiena_otrdiena_tre\u0161diena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[\u0160odien pulksten] LT",nextDay:"[R\u012bt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pag\u0101ju\u0161\u0101] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"p\u0113c %s",past:"pirms %s",s:function(e,a){return a?"da\u017eas sekundes":"da\u017e\u0101m sekund\u0113m"},ss:Dn,m:Tn,mm:Dn,h:Tn,hh:Dn,d:Tn,dd:Dn,M:Tn,MM:Dn,y:Tn,yy:Dn},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});var gn={words:{ss:["sekund","sekunda","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(e,a){return 1===e?a[0]:2<=e&&e<=4?a[1]:a[2]},translate:function(e,a,t){var s=gn.words[t];return 1===t.length?a?s[0]:s[1]:e+" "+gn.correctGrammaticalCase(e,s)}};function wn(e,a,t,s){switch(t){case"s":return a?"\u0445\u044d\u0434\u0445\u044d\u043d \u0441\u0435\u043a\u0443\u043d\u0434":"\u0445\u044d\u0434\u0445\u044d\u043d \u0441\u0435\u043a\u0443\u043d\u0434\u044b\u043d";case"ss":return e+(a?" \u0441\u0435\u043a\u0443\u043d\u0434":" \u0441\u0435\u043a\u0443\u043d\u0434\u044b\u043d");case"m":case"mm":return e+(a?" \u043c\u0438\u043d\u0443\u0442":" \u043c\u0438\u043d\u0443\u0442\u044b\u043d");case"h":case"hh":return e+(a?" \u0446\u0430\u0433":" \u0446\u0430\u0433\u0438\u0439\u043d");case"d":case"dd":return e+(a?" \u04e9\u0434\u04e9\u0440":" \u04e9\u0434\u0440\u0438\u0439\u043d");case"M":case"MM":return e+(a?" \u0441\u0430\u0440":" \u0441\u0430\u0440\u044b\u043d");case"y":case"yy":return e+(a?" \u0436\u0438\u043b":" \u0436\u0438\u043b\u0438\u0439\u043d");default:return e}}l.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010de u] LT",lastWeek:function(){return["[pro\u0161le] [nedjelje] [u] LT","[pro\u0161log] [ponedjeljka] [u] LT","[pro\u0161log] [utorka] [u] LT","[pro\u0161le] [srijede] [u] LT","[pro\u0161log] [\u010detvrtka] [u] LT","[pro\u0161log] [petka] [u] LT","[pro\u0161le] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:gn.translate,m:gn.translate,mm:gn.translate,h:gn.translate,hh:gn.translate,d:"dan",dd:gn.translate,M:"mjesec",MM:gn.translate,y:"godinu",yy:gn.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}}),l.defineLocale("mi",{months:"Kohi-t\u0101te_Hui-tanguru_Pout\u016b-te-rangi_Paenga-wh\u0101wh\u0101_Haratua_Pipiri_H\u014dngoingoi_Here-turi-k\u014dk\u0101_Mahuru_Whiringa-\u0101-nuku_Whiringa-\u0101-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_H\u014dngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"R\u0101tapu_Mane_T\u016brei_Wenerei_T\u0101ite_Paraire_H\u0101tarei".split("_"),weekdaysShort:"Ta_Ma_T\u016b_We_T\u0101i_Pa_H\u0101".split("_"),weekdaysMin:"Ta_Ma_T\u016b_We_T\u0101i_Pa_H\u0101".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te h\u0113kona ruarua",ss:"%d h\u0113kona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%
32d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}}),l.defineLocale("mk",{months:"\u0458\u0430\u043d\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0458_\u0458\u0443\u043d\u0438_\u0458\u0443\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438_\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438_\u043d\u043e\u0435\u043c\u0432\u0440\u0438_\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438".split("_"),monthsShort:"\u0458\u0430\u043d_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433_\u0441\u0435\u043f_\u043e\u043a\u0442_\u043d\u043e\u0435_\u0434\u0435\u043a".split("_"),weekdays:"\u043d\u0435\u0434\u0435\u043b\u0430_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0440\u0442\u043e\u043a_\u043f\u0435\u0442\u043e\u043a_\u0441\u0430\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434_\u043f\u043e\u043d_\u0432\u0442\u043e_\u0441\u0440\u0435_\u0447\u0435\u0442_\u043f\u0435\u0442_\u0441\u0430\u0431".split("_"),weekdaysMin:"\u043de_\u043fo_\u0432\u0442_\u0441\u0440_\u0447\u0435_\u043f\u0435_\u0441a".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u0435\u043d\u0435\u0441 \u0432\u043e] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432\u043e] LT",nextWeek:"[\u0412\u043e] dddd [\u0432\u043e] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432\u043e] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[\u0418\u0437\u043c\u0438\u043d\u0430\u0442\u0430\u0442\u0430] dddd [\u0432\u043e] LT";case 1:case 2:case 4:case 5:return"[\u0418\u0437\u043c\u0438\u043d\u0430\u0442\u0438\u043e\u0442] dddd [\u0432\u043e] LT"}},sameElse:"L"},relativeTime:{future:"\u043f\u043e\u0441\u043b\u0435 %s",past:"\u043f\u0440\u0435\u0434 %s",s:"\u043d\u0435\u043a\u043e\u043b\u043a\u0443 \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434\u0438",m:"\u043c\u0438\u043d\u0443\u0442\u0430",mm:"%d \u043c\u0438\u043d\u0443\u0442\u0438",h:"\u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0434\u0435\u043d",dd:"%d \u0434\u0435\u043d\u0430",M:"\u043c\u0435\u0441\u0435\u0446",MM:"%d \u043c\u0435\u0441\u0435\u0446\u0438",y:"\u0433\u043e\u0434\u0438\u043d\u0430",yy:"%d \u0433\u043e\u0434\u0438\u043d\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0435\u0432|\u0435\u043d|\u0442\u0438|\u0432\u0438|\u0440\u0438|\u043c\u0438)/,ordinal:function(e){var a=e%10,t=e%100;return 0===e?e+"-\u0435\u0432":0===t?e+"-\u0435\u043d":10<t&&t<20?e+"-\u0442\u0438":1===a?e+"-\u0432\u0438":2===a?e+"-\u0440\u0438":7===a||8===a?e+"-\u043c\u0438":e+"-\u0442\u0438"},week:{dow:1,doy:7}}),l.defineLocale("ml",{months:"\u0d1c\u0d28\u0d41\u0d35\u0d30\u0d3f_\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41\u0d35\u0d30\u0d3f_\u0d2e\u0d3e\u0d7c\u0d1a\u0d4d\u0d1a\u0d4d_\u0d0f\u0d2a\u0d4d\u0d30\u0d3f\u0d7d_\u0d2e\u0d47\u0d2f\u0d4d_\u0d1c\u0d42\u0d7a_\u0d1c\u0d42\u0d32\u0d48_\u0d13\u0d17\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d_\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02\u0d2c\u0d7c_\u0d12\u0d15\u0d4d\u0d1f\u0d4b\u0d2c\u0d7c_\u0d28\u0d35\u0d02\u0d2c\u0d7c_\u0d21\u0d3f\u0d38\u0d02\u0d2c\u0d7c".split("_"),monthsShort:"\u0d1c\u0d28\u0d41._\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41._\u0d2e\u0d3e\u0d7c._\u0d0f\u0d2a\u0d4d\u0d30\u0d3f._\u0d2e\u0d47\u0d2f\u0d4d_\u0d1c\u0d42\u0d7a_\u0d1c\u0d42\u0d32\u0d48._\u0d13\u0d17._\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31._\u0d12\u0d15\u0d4d\u0d1f\u0d4b._\u0d28\u0d35\u0d02._\u0d21\u0d3f\u0d38\u0d02.".split("_"),monthsParseExact:!0,weekdays:"\u0d1e\u0d3e\u0d2f\u0d31\u0d3e\u0d34\u0d4d\u0d1a_\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d33\u0d3e\u0d34\u0d4d\u0d1a_\u0d1a\u0d4a\u0d35\u0d4d\u0d35\u0d3e\u0d34\u0d4d\u0d1a_\u0d2c\u0d41\u0d27\u0d28\u0d3e\u0d34\u0d4d\u0d1a_\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d3e\u0d34\u0d4d\u0d1a_\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u0d1a_\u0d36\u0d28\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u0d1a".split("_"),weekdaysShort:"\u0d1e\u0d3e\u0d2f\u0d7c_\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d7e_\u0d1a\u0d4a\u0d35\u0d4d\u0d35_\u0d2c\u0d41\u0d27\u0d7b_\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d02_\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f_\u0d36\u0d28\u0d3f".split("_"),weekdaysMin:"\u0d1e\u0d3e_\u0d24\u0d3f_\u0d1a\u0d4a_\u0d2c\u0d41_\u0d35\u0d4d\u0d2f\u0d3e_\u0d35\u0d46_\u0d36".split("_"),longDateFormat:{LT:"A h:mm -\u0d28\u0d41",LTS:"A h:mm:ss -\u0d28\u0d41",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -\u0d28\u0d41",LLLL:"dddd, D MMMM YYYY, A h:mm -\u0d28\u0d41"},calendar:{sameDay:"[\u0d07\u0d28\u0d4d\u0d28\u0d4d] LT",nextDay:"[\u0d28\u0d3e\u0d33\u0d46] LT",nextWeek:"dddd, LT",lastDay:"[\u0d07\u0d28\u0d4d\u0d28\u0d32\u0d46] LT",lastWeek:"[\u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d",past:"%s \u0d2e\u0d41\u0d7b\u0d2a\u0d4d",s:"\u0d05\u0d7d\u0d2a \u0d28\u0d3f\u0d2e\u0d3f\u0d37\u0d19\u0d4d\u0d19\u0d7e",ss:"%d \u0d38\u0d46\u0d15\u0d4d\u0d15\u0d7b\u0d21\u0d4d",m:"\u0d12\u0d30\u0d41 \u0d2e\u0d3f\u0d28\u0d3f\u0d31\u0d4d\u0d31\u0d4d",mm:"%d \u0d2e\u0d3f\u0d28\u0d3f\u0d31\u0d4d\u0d31\u0d4d",h:"\u0d12\u0d30\u0d41 \u0d2e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d42\u0d7c",hh:"%
32d \u0d2e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d42\u0d7c",d:"\u0d12\u0d30\u0d41 \u0d26\u0d3f\u0d35\u0d38\u0d02",dd:"%d \u0d26\u0d3f\u0d35\u0d38\u0d02",M:"\u0d12\u0d30\u0d41 \u0d2e\u0d3e\u0d38\u0d02",MM:"%d \u0d2e\u0d3e\u0d38\u0d02",y:"\u0d12\u0d30\u0d41 \u0d35\u0d7c\u0d37\u0d02",yy:"%d \u0d35\u0d7c\u0d37\u0d02"},meridiemParse:/\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f|\u0d30\u0d3e\u0d35\u0d3f\u0d32\u0d46|\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d|\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02|\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f/i,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f"===a&&4<=e||"\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d"===a||"\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02"===a?e+12:e},meridiem:function(e,a,t){return e<4?"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f":e<12?"\u0d30\u0d3e\u0d35\u0d3f\u0d32\u0d46":e<17?"\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d":e<20?"\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02":"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f"}}),l.defineLocale("mn",{months:"\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u043e\u043b\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440".split("_"),monthsShort:"1 \u0441\u0430\u0440_2 \u0441\u0430\u0440_3 \u0441\u0430\u0440_4 \u0441\u0430\u0440_5 \u0441\u0430\u0440_6 \u0441\u0430\u0440_7 \u0441\u0430\u0440_8 \u0441\u0430\u0440_9 \u0441\u0430\u0440_10 \u0441\u0430\u0440_11 \u0441\u0430\u0440_12 \u0441\u0430\u0440".split("_"),monthsParseExact:!0,weekdays:"\u041d\u044f\u043c_\u0414\u0430\u0432\u0430\u0430_\u041c\u044f\u0433\u043c\u0430\u0440_\u041b\u0445\u0430\u0433\u0432\u0430_\u041f\u04af\u0440\u044d\u0432_\u0411\u0430\u0430\u0441\u0430\u043d_\u0411\u044f\u043c\u0431\u0430".split("_"),weekdaysShort:"\u041d\u044f\u043c_\u0414\u0430\u0432_\u041c\u044f\u0433_\u041b\u0445\u0430_\u041f\u04af\u0440_\u0411\u0430\u0430_\u0411\u044f\u043c".split("_"),weekdaysMin:"\u041d\u044f_\u0414\u0430_\u041c\u044f_\u041b\u0445_\u041f\u04af_\u0411\u0430_\u0411\u044f".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY \u043e\u043d\u044b MMMM\u044b\u043d D",LLL:"YYYY \u043e\u043d\u044b MMMM\u044b\u043d D HH:mm",LLLL:"dddd, YYYY \u043e\u043d\u044b MMMM\u044b\u043d D HH:mm"},meridiemParse:/\u04ae\u04e8|\u04ae\u0425/i,isPM:function(e){return"\u04ae\u0425"===e},meridiem:function(e,a,t){return e<12?"\u04ae\u04e8":"\u04ae\u0425"},calendar:{sameDay:"[\u04e8\u043d\u04e9\u04e9\u0434\u04e9\u0440] LT",nextDay:"[\u041c\u0430\u0440\u0433\u0430\u0430\u0448] LT",nextWeek:"[\u0418\u0440\u044d\u0445] dddd LT",lastDay:"[\u04e8\u0447\u0438\u0433\u0434\u04e9\u0440] LT",lastWeek:"[\u04e8\u043d\u0433\u04e9\u0440\u0441\u04e9\u043d] dddd LT",sameElse:"L"},relativeTime:{future:"%s \u0434\u0430\u0440\u0430\u0430",past:"%s \u04e9\u043c\u043d\u04e9",s:wn,ss:wn,m:wn,mm:wn,h:wn,hh:wn,d:wn,dd:wn,M:wn,MM:wn,y:wn,yy:wn},dayOfMonthOrdinalParse:/\d{1,2} \u04e9\u0434\u04e9\u0440/,ordinal:function(e,a){switch(a){case"d":case"D":case"DDD":return e+" \u04e9\u0434\u04e9\u0440";default:return e}}});var vn={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},Sn={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};function Hn(e,a,t,s){var n="";if(a)switch(t){case"s":n="\u0915\u093e\u0939\u0940 \u0938\u0947\u0915\u0902\u0926";break;case"ss":n="%d \u0938\u0947\u0915\u0902\u0926";break;case"m":n="\u090f\u0915 \u092e\u093f\u0928\u093f\u091f";break;case"mm":n="%d \u092e\u093f\u0928\u093f\u091f\u0947";break;case"h":n="\u090f\u0915 \u0924\u093e\u0938";break;case"hh":n="%d \u0924\u093e\u0938";break;case"d":n="\u090f\u0915 \u0926\u093f\u0935\u0938";break;case"dd":n="%d \u0926\u093f\u0935\u0938";break;case"M":n="\u090f\u0915 \u092e\u0939\u093f\u0928\u093e";break;case"MM":n="%d \u092e\u0939\u093f\u0928\u0947";break;case"y":n="\u090f\u0915 \u0935\u0930\u094d\u0937";break;case"yy":n="%d \u0935\u0930\u094d\u0937\u0947";break}else switch(t){case"s":n="\u0915\u093e\u0939\u0940 \u0938\u0947\u0915\u0902\u0926\u093e\u0902";break;case"ss":n="%d \u0938\u0947\u0915\u0902\u0926\u093e\u0902";break;case"m":n="\u090f\u0915\u093e \u092e\u093f\u0928\u093f\u091f\u093e";break;case"mm":n="%d \u092e\u093f\u0928\u093f\u091f\u093e\u0902";break;case"h":n="\u090f\u0915\u093e \u0924\u093e\u0938\u093e";break;case"hh":n="%d \u0924\u093e\u0938\u093e\u0902";break;case"d":n="\u090f\u0915\u093e \u0926\u093f\u0935\u0938\u093e";break;case"dd":n="%d \u0926\u093f\u0935\u0938\u093e\u0902";break;case"M":n="\u090f\u0915\u093e \u092e\u0939\u093f\u0928\u094d\u092f\u093e";break;case"MM":n="%d \u092e\u0939\u093f\u0928\u094d\u092f\u093e\u0902";break;case"y":n="\u090f\u0915\u093e \u0935\u0930\u094d\u0937\u093e";break;case"yy":n="%d \u0935\u0930\u094d\u0937\u093e\u0902";break}return n.replace(/%d/i,e)}l.defineLocale("mr",{months:"\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u090f\u092a\u094d\u0930\u093f\u0932_\u092e\u0947_\u091c\u0942\u0928_\u091c\u0941\u0932\u0948_\u0911\u0917\u0938\u094d\u091f_\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930_\u0911\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930_\u0921\u093f\u0938\u0947\u0902\u092c\u0930".split("_"),monthsShort:"\u091c\u093e\u0928\u0947._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a._\u090f\u092a\u094d\u0930\u093f._\u092e\u0947._\u091c\u0942\u0928._\u091c\u0941\u0932\u0948._\u0911\u0917._\u0938\u092a\u094d\u091f\u0947\u0902._\u0911\u0915\u094d\u091f\u094b._\u0928\u094b\u0935\u094d\u0939\u0947\u0902._\u0921\u093f\u0938\u0947\u0902.".split("_"),monthsParseExact:!0,weekdays:"\u0930\u0935\u093f\u0935\u093e\u0930_\u0938\u094b\u092e\u0935\u093e\u0930_\u092e\u0902\u0917\u0933\u0935\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u0917\u0941\u0930\u0942\u0935\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930_\u0936\u0928\u093f\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093f_\u0938\u094b\u092e_\u092e\u0902\u0917\u0933_\u092c\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094d\u0930_\u0936\u0928\u093f".split("_"),weekdaysMin:"\u0930_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u0935\u093e\u091c\u0924\u093e",LTS:"A h:mm:ss \u0935\u093e\u091c\u0924\u093e",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0935\u093e\u091c\u0924\u093e",LLLL:"dddd, D MMMM YYYY, A h:mm \u0935\u093e\u091c\u0924\u093e"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u0909\u0926\u094d\u092f\u093e] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u093e\u0932] LT",lastWeek:"[\u092e\u093e\u0917\u0940\u0932] dddd, LT",sameElse:"L"},relativeTime:{future:"%s\u092e\u0927\u094d\u092f\u0947",past:"%s\u092a\u0942\u0930\u094d\u0935\u0940",s:Hn,ss:Hn,m:Hn,mm:Hn,h:Hn,hh:Hn,d:Hn,dd:Hn,M:Hn,MM:Hn,y:Hn,yy:Hn},preparse:function(e){return e.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(e){return Sn[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return vn[e]})},meridiemParse:/\u0930\u093e\u0924\u094d\u0930\u0940|\u0938\u0915\u093e\u0933\u0940|\u0926\u0941\u092a\u093e\u0930\u0940|\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0930\u093e\u0924\u094d\u0930\u0940"===a?e<4?e:e+12:"\u0938\u0915\u093e\u0933\u0940"===a?e:"\u0926\u0941\u092a\u093e\u0930\u0940"===a?10<=e?e:e+12:"\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940"===a?e+12:void 0},meridiem:function(e,a,t){return e<4?"\u0930\u093e\u0924\u094d\u0930\u0940":e<10?"\u0938\u0915\u093e\u0933\u0940":e<17?"\u0926\u0941\u092a\u093e\u0930\u0940":e<20?"\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940":"\u0930\u093e\u0924\u094d\u0930\u0940"},week:{dow:0,doy:6}}),l.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,a){return 12===e&&(e=0),"pagi"===a?e:"tengahari"===a?11<=e?e:e+12:"petang"===a||"malam"===a?e+12:void 0},meridiem:function(e,a,t){return e<11?"pagi":e<15?"tengahari":e<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}}),l.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,a){return 12===e&&(e=0),"pagi"===a?e:"tengahari"===a?11<=e?e:e+12:"petang"===a||"malam"===a?e+12:void 0},meridiem:function(e,a,t){return e<11?"pagi":e<15?"tengahari":e<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}}),l.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_\u0120unju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Di\u010bembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_\u0120un_Lul_Aww_Set_Ott_Nov_Di\u010b".split("_"),weekdays:"Il-\u0126add_It-Tnejn_It-Tlieta_L-Erbg\u0127a_Il-\u0126amis_Il-\u0120img\u0127a_Is-Sibt".split("_"),weekdaysShort:"\u0126ad_Tne_Tli_Erb_\u0126am_\u0120im_Sib".split("_"),weekdaysMin:"\u0126a_Tn_Tl_Er_\u0126a_\u0120i_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[G\u0127ada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-biera\u0127 fil-]LT",lastWeek:"dddd [li g\u0127adda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f\u2019 %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"sieg\u0127a",hh:"%d sieg\u0127at",d:"\u0121urnata",dd:"%d \u0121ranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}});var bn={1:"\u1041",2:"\u1042",3:"\u1043",4:"\u1044",5:"\u1045",6:"\u1046",7:"\u1047",8:"\u1048",9:"\u1049",0:"\u1040"},jn={"\u1041":"1","\u1042":"2","\u1043":"3","\u1044":"4","\u1045":"5","\u1046":"6","\u1047":"7","\u1048":"8","\u1049":"9","\u1040":"0"};l.defineLocale("my",{months:"\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e_\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e_\u1019\u1010\u103a_\u1027\u1015\u103c\u102e_\u1019\u1031_\u1007\u103d\u1014\u103a_\u1007\u1030\u101c\u102d\u102f\u1004\u103a_\u101e\u103c\u1002\u102f\u1010\u103a_\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c_\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c_\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c_\u1012\u102e\u1007\u1004\u103a\u1018\u102c".split("_"),monthsShort:"\u1007\u1014\u103a_\u1016\u1031_\u1019\u1010\u103a_\u1015\u103c\u102e_\u1019\u1031_\u1007\u103d\u1014\u103a_\u101c\u102d\u102f\u1004\u103a_\u101e\u103c_\u1005\u1000\u103a_\u1021\u1031\u102c\u1000\u103a_\u1014\u102d\u102f_\u1012\u102e".split("_"),weekdays:"\u
321010\u1014\u1004\u103a\u1039\u1002\u1014\u103d\u1031_\u1010\u1014\u1004\u103a\u1039\u101c\u102c_\u1021\u1004\u103a\u1039\u1002\u102b_\u1017\u102f\u1012\u1039\u1013\u101f\u1030\u1038_\u1000\u103c\u102c\u101e\u1015\u1010\u1031\u1038_\u101e\u1031\u102c\u1000\u103c\u102c_\u1005\u1014\u1031".split("_"),weekdaysShort:"\u1014\u103d\u1031_\u101c\u102c_\u1002\u102b_\u101f\u1030\u1038_\u1000\u103c\u102c_\u101e\u1031\u102c_\u1014\u1031".split("_"),weekdaysMin:"\u1014\u103d\u1031_\u101c\u102c_\u1002\u102b_\u101f\u1030\u1038_\u1000\u103c\u102c_\u101e\u1031\u102c_\u1014\u1031".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u101a\u1014\u1031.] LT [\u1019\u103e\u102c]",nextDay:"[\u1019\u1014\u1000\u103a\u1016\u103c\u1014\u103a] LT [\u1019\u103e\u102c]",nextWeek:"dddd LT [\u1019\u103e\u102c]",lastDay:"[\u1019\u1014\u1031.\u1000] LT [\u1019\u103e\u102c]",lastWeek:"[\u1015\u103c\u102e\u1038\u1001\u1032\u1037\u101e\u1031\u102c] dddd LT [\u1019\u103e\u102c]",sameElse:"L"},relativeTime:{future:"\u101c\u102c\u1019\u100a\u103a\u1037 %s \u1019\u103e\u102c",past:"\u101c\u103d\u1014\u103a\u1001\u1032\u1037\u101e\u1031\u102c %s \u1000",s:"\u1005\u1000\u1039\u1000\u1014\u103a.\u1021\u1014\u100a\u103a\u1038\u1004\u101a\u103a",ss:"%d \u1005\u1000\u1039\u1000\u1014\u1037\u103a",m:"\u1010\u1005\u103a\u1019\u102d\u1014\u1005\u103a",mm:"%d \u1019\u102d\u1014\u1005\u103a",h:"\u1010\u1005\u103a\u1014\u102c\u101b\u102e",hh:"%d \u1014\u102c\u101b\u102e",d:"\u1010\u1005\u103a\u101b\u1000\u103a",dd:"%d \u101b\u1000\u103a",M:"\u1010\u1005\u103a\u101c",MM:"%d \u101c",y:"\u1010\u1005\u103a\u1014\u103e\u1005\u103a",yy:"%d \u1014\u103e\u1005\u103a"},preparse:function(e){return e.replace(/[\u1041\u1042\u1043\u1044\u1045\u1046\u1047\u1048\u1049\u1040]/g,function(e){return jn[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return bn[e]})},week:{dow:1,doy:4}}),l.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"s\xf8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xf8rdag".split("_"),weekdaysShort:"s\xf8._ma._ti._on._to._fr._l\xf8.".split("_"),weekdaysMin:"s\xf8_ma_ti_on_to_fr_l\xf8".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i g\xe5r kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en m\xe5ned",MM:"%d m\xe5neder",y:"ett \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});var xn={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},On={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};l.defineLocale("ne",{months:"\u091c\u0928\u0935\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u093f\u0932_\u092e\u0908_\u091c\u0941\u0928_\u091c\u0941\u0932\u093e\u0908_\u0905\u0917\u0937\u094d\u091f_\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930_\u0905\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930_\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930".split("_"),monthsShort:"\u091c\u0928._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u093f._\u092e\u0908_\u091c\u0941\u0928_\u091c\u0941\u0932\u093e\u0908._\u0905\u0917._\u0938\u0947\u092a\u094d\u091f._\u0905\u0915\u094d\u091f\u094b._\u0928\u094b\u092d\u0947._\u0921\u093f\u0938\u0947.".split("_"),monthsParseExact:!0,weekdays:"\u0906\u0907\u0924\u092c\u093e\u0930_\u0938\u094b\u092e\u092c\u093e\u0930_\u092e\u0919\u094d\u0917\u0932\u092c\u093e\u0930_\u092c\u0941\u0927\u092c\u093e\u0930_\u092c\u093f\u0939\u093f\u092c\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u092c\u093e\u0930_\u0936\u0928\u093f\u092c\u093e\u0930".split("_"),weekdaysShort:"\u0906\u0907\u0924._\u0938\u094b\u092e._\u092e\u0919\u094d\u0917\u0932._\u092c\u0941\u0927._\u092c\u093f\u0939\u093f._\u0936\u0941\u0915\u094d\u0930._\u0936\u0928\u093f.".split("_"),weekdaysMin:"\u0906._\u0938\u094b._\u092e\u0902._\u092c\u0941._\u092c\u093f._\u0936\u0941._\u0936.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A\u0915\u094b h:mm \u092c\u091c\u0947",LTS:"A\u0915\u094b h:mm:ss \u092c\u091c\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A\u0915\u094b h:mm \u092c\u091c\u0947",LLLL:"dddd, D MMMM YYYY, A\u0915\u094b h:mm \u092c\u091c\u0947"},preparse:function(e){return e.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(e){return On[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return xn[e]})},meridiemParse:/\u0930\u093e\u0924\u093f|\u092c\u093f\u0939\u093e\u0928|\u0926\u093f\u0909\u0901\u0938\u094b|\u0938\u093e\u0901\u091d/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0930\u093e\u0924\u093f"===a?e<4?e:e+12:"\u092c\u093f\u0939\u093e\u0928"===a?e:"\u0926\u093f\u0909\u0901\u0938\u094b"===a?10<=e?e:e+12:"\u0938\u093e\u0901\u091d"===a?e+12:void 0},meridiem:function(e,a,t){return e<3?"\u0930\u093e\u0924\u093f":e<12?"\u092c\u093f\u0939\u093e\u0928":e<16?"\u0926\u093f\u0909\u0901\u0938\u094b":e<20?"\u0938\u093e\u0901\u091d":"\u0930\u093e\u0924\u093f"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u092d\u094b\u0932\u093f] LT",nextWeek:"[\u0906\u0909\u0901\u0926\u094b] dddd[,] LT",lastDay:"[\u0939\u093f\u091c\u094b] LT",lastWeek:"[\u0917\u090f\u0915\u094b] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s\u092e\u093e",past:"%s \u0905\u0917\u093e\u0921\u093f",s:"\u0915\u0947\u0939\u0940 \u0915\u094d\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0947\u0923\u094d\u0921",m:"\u090f\u0915 \u092e\u093f\u0928\u0947\u091f",mm:"%d \u092e\u093f\u0928\u0947\u091f",h:"\u090f\u0915 \u0918\u0923\u094d\u091f\u093e",hh:"%d \u0918\u0923\u094d\u091f\u093e",d:"\u090f\u0915 \u0926\u093f\u0928",dd:"%d \u0926\u093f\u0928",M:"\u090f\u0915 \u092e\u0939\u093f\u0928\u093e",MM:"%d \u092e\u0939\u093f\u0928\u093e",y:"\u090f\u0915 \u092c\u0930\u094d\u0937",yy:"%d \u092c\u0930\u094d\u0937"},week:{dow:0,doy:6}});var Pn="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),Wn="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),An=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],En=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;l.defineLocale("nl-be",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(e,a){return e?/-MMM-/.test(a)?Wn[e.month()]:Pn[e.month()]:Pn},monthsRegex:En,monthsShortRegex:En,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:An,longMonthsParse:An,shortMonthsParse:An,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xe9\xe9n minuut",mm:"%d minuten",h:"\xe9\xe9n uur",hh:"%d uur",d:"\xe9\xe9n dag",dd:"%d dagen",M:"\xe9\xe9n maand",MM:"%d maanden",y:"\xe9\xe9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||20<=e?"ste":"de")},week:{dow:1,doy:4}});var Fn="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),zn="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),Jn=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],Nn=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;l.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(e,a){return e?/-MMM-/.test(a)?zn[e.month()]:Fn[e.month()]:Fn}
vendor: 4,301 bytes, line 32
32,monthsRegex:Nn,monthsShortRegex:Nn,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:Jn,longMonthsParse:Jn,shortMonthsParse:Jn,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xe9\xe9n minuut",mm:"%d minuten",h:"\xe9\xe9n uur",hh:"%d uur",d:"\xe9\xe9n dag",dd:"%d dagen",M:"\xe9\xe9n maand",MM:"%d maanden",y:"\xe9\xe9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||20<=e?"ste":"de")},week:{dow:1,doy:4}}),l.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_m\xe5ndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_m\xe5n_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_m\xe5_ty_on_to_fr_l\xf8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I g\xe5r klokka] LT",lastWeek:"[F\xf8reg\xe5ande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s sidan",s:"nokre sekund",ss:"%d sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein m\xe5nad",MM:"%d m\xe5nader",y:"eit \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});var Rn={1:"\u0a67",2:"\u0a68",3:"\u0a69",4:"\u0a6a",5:"\u0a6b",6:"\u0a6c",7:"\u0a6d",8:"\u0a6e",9:"\u0a6f",0:"\u0a66"},Cn={"\u0a67":"1","\u0a68":"2","\u0a69":"3","\u0a6a":"4","\u0a6b":"5","\u0a6c":"6","\u0a6d":"7","\u0a6e":"8","\u0a6f":"9","\u0a66":"0"};l.defineLocale("pa-in",{months:"\u0a1c\u0a28\u0a35\u0a30\u0a40_\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40_\u0a2e\u0a3e\u0a30\u0a1a_\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32_\u0a2e\u0a08_\u0a1c\u0a42\u0a28_\u0a1c\u0a41\u0a32\u0a3e\u0a08_\u0a05\u0a17\u0a38\u0a24_\u0a38\u0a24\u0a70\u0a2c\u0a30_\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30_\u0a28\u0a35\u0a70\u0a2c\u0a30_\u0a26\u0a38\u0a70\u0a2c\u0a30".split("_"),monthsShort:"\u0a1c\u0a28\u0a35\u0a30\u0a40_\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40_\u0a2e\u0a3e\u0a30\u0a1a_\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32_\u0a2e\u0a08_\u0a1c\u0a42\u0a28_\u0a1c\u0a41\u0a32\u0a3e\u0a08_\u0a05\u0a17\u0a38\u0a24_\u0a38\u0a24\u0a70\u0a2c\u0a30_\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30_\u0a28\u0a35\u0a70\u0a2c\u0a30_\u0a26\u0a38\u0a70\u0a2c\u0a30".split("_"),weekdays:"\u0a10\u0a24\u0a35\u0a3e\u0a30_\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30_\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30_\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30_\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30_\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30_\u0a38\u0a3c\u0a28\u0a40\u0a1a\u0a30\u0a35\u0a3e\u0a30".split("_"),weekdaysShort:"\u0a10\u0a24_\u0a38\u0a4b\u0a2e_\u0a2e\u0a70\u0a17\u0a32_\u0a2c\u0a41\u0a27_\u0a35\u0a40\u0a30_\u0a38\u0a3c\u0a41\u0a15\u0a30_\u0a38\u0a3c\u0a28\u0a40".split("_"),weekdaysMin:"\u0a10\u0a24_\u0a38\u0a4b\u0a2e_\u0a2e\u0a70\u0a17\u0a32_\u0a2c\u0a41\u0a27_\u0a35\u0a40\u0a30_\u0a38\u0a3c\u0a41\u0a15\u0a30_\u0a38\u0a3c\u0a28\u0a40".split("_"),longDateFormat:{LT:"A h:mm \u0a35\u0a1c\u0a47",LTS:"A h:mm:ss \u0a35\u0a1c\u0a47",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0a35\u0a1c\u0a47",LLLL:"dddd, D MMMM YYYY, A h:mm \u0a35\u0a1c\u0a47"},calendar:{sameDay:"[\u0a05\u0a1c] LT",nextDay:"[\u0a15\u0a32] LT",nextWeek:"[\u0a05\u0a17\u0a32\u0a3e] dddd, LT",lastDay:"[\u0a15\u0a32] LT",lastWeek:"[\u0a2a\u0a3f\u0a1b\u0a32\u0a47] dddd, LT",sameElse:"L"}
32,relativeTime:{future:"%s \u0a35\u0a3f\u0a71\u0a1a",past:"%s \u0a2a\u0a3f\u0a1b\u0a32\u0a47",s:"\u0a15\u0a41\u0a1d \u0a38\u0a15\u0a3f\u0a70\u0a1f",ss:"%d \u0a38\u0a15\u0a3f\u0a70\u0a1f",m:"\u0a07\u0a15 \u0a2e\u0a3f\u0a70\u0a1f",mm:"%d \u0a2e\u0a3f\u0a70\u0a1f",h:"\u0a07\u0a71\u0a15 \u0a18\u0a70\u0a1f\u0a3e",hh:"%d \u0a18\u0a70\u0a1f\u0a47",d:"\u0a07\u0a71\u0a15 \u0a26\u0a3f\u0a28",dd:"%d \u0a26\u0a3f\u0a28",M:"\u0a07\u0a71\u0a15 \u0a2e\u0a39\u0a40\u0a28\u0a3e",MM:"%d \u0a2e\u0a39\u0a40\u0a28\u0a47",y:"\u0a07\u0a71\u0a15 \u0a38\u0a3e\u0a32",yy:"%d \u0a38\u0a3e\u0a32"},preparse:function(e){return e.replace(/[\u0a67\u0a68\u0a69\u0a6a\u0a6b\u0a6c\u0a6d\u0a6e\u0a6f\u0a66]/g,function(e){return Cn[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return Rn[e]})},meridiemParse:/\u0a30\u0a3e\u0a24|\u0a38\u0a35\u0a47\u0a30|\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30|\u0a38\u0a3c\u0a3e\u0a2e/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0a30\u0a3e\u0a24"===a?e<4?e:e+12:"\u0a38\u0a35\u0a47\u0a30"===a?e:"\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30"===a?10<=e?e:e+12:"\u0a38\u0a3c\u0a3e\u0a2e"===a?e+12:void 0}
32,meridiem:function(e,a,t){return e<4?"\u0a30\u0a3e\u0a24":e<10?"\u0a38\u0a35\u0a47\u0a30":e<17?"\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30":e<20?"\u0a38\u0a3c\u0a3e\u0a2e":"\u0a30\u0a3e\u0a24"},week:{dow:0,doy:6}});var In="stycze\u0144_luty_marzec_kwiecie\u0144_maj_czerwiec_lipiec_sierpie\u0144_wrzesie\u0144_pa\u017adziernik_listopad_grudzie\u0144".split("_"),Un="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrze\u015bnia_pa\u017adziernika_listopada_grudnia".split("_");function Gn(e){return e%10<5&&1<e%10&&~~(e/10)%10!=1}function Vn(e,a,t){var s=e+" ";switch(t){case"ss":return s+(Gn(e)?"sekundy":"sekund");case"m":return a?"minuta":"minut\u0119";case"mm":return s+(Gn(e)?"minuty":"minut");case"h":return a?"godzina":"godzin\u0119";case"hh":return s+(Gn(e)?"godziny":"godzin");case"MM":return s+(Gn(e)?"miesi\u0105ce":"miesi\u0119cy");case"yy":return s+(Gn(e)?"lata":"lat")}}function Kn(e,a,t){var s=" ";return(20<=e%100||100<=e&&e%100==0)&&(s=" de "),e+s+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"}[t]}function Zn(e,a,t){var s,n;return"m"===t?a?"\u043c\u0438\u043d\u0443\u0442\u0430":"\u043c\u0438\u043d\u0443\u0442\u0443":e+" "+(s=+e,n={ss:a?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434",mm:a?"\u043c\u0438\u043d\u0443\u0442\u0430_\u043c\u0438\u043d\u0443\u0442\u044b_\u043c\u0438\u043d\u0443\u0442":"\u043c\u0438\u043d\u0443\u0442\u0443_\u043c\u0438\u043d\u0443\u0442\u044b_\u043c\u0438\u043d\u0443\u0442",hh:"\u0447\u0430\u0441_\u0447\u0430\u0441\u0430_\u0447\u0430\u0441\u043e\u0432",dd:"\u0434\u0435\u043d\u044c_\u0434\u043d\u044f_\u0434\u043d\u0435\u0439",MM:"\u043c\u0435\u0441\u044f\u0446_\u043c\u0435\u0441\u044f\u0446\u0430_\u043c\u0435\u0441\u044f\u0446\u0435\u0432",yy:"\u0433\u043e\u0434_\u0433\u043e\u0434\u0430_\u043b\u0435\u0442"}[t].split("_"),s%10==1&&s%100!=11?n[0]:2<=s%10&&s%10<=4&&(s%100<10||20<=s%100)?n[1]:n[2])}l.defineLocale("pl",{months:function(e,a){return e?""===a?"("+Un[e.month()]+"|"+In[e.month()]+")":/D MMMM/.test(a)?Un[e.month()]:In[e.month()]:In},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_pa\u017a_lis_gru".split("_"),weekdays:"niedziela_poniedzia\u0142ek_wtorek_\u015broda_czwartek_pi\u0105tek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_\u015br_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_\u015ar_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dzi\u015b o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedziel\u0119 o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W \u015brod\u0119 o] LT";case 6:return"[W sobot\u0119 o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zesz\u0142\u0105 niedziel\u0119 o] LT";case 3:return"[W zesz\u0142\u0105 \u015brod\u0119 o] LT";case 6:return"[W zesz\u0142\u0105 sobot\u0119 o] LT";default:return"[W zesz\u0142y] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:Vn,m:Vn,mm:Vn,h:Vn,hh:Vn,d:"1 dzie\u0144",dd:"%d dni",M:"miesi\u0105c",MM:Vn,y:"rok",yy:Vn},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("pt-br",{months:"Janeiro_Fevereiro_Mar\xe7o_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Ter\xe7a-feira_Quarta-feira_Quinta-feira_Sexta-feira_S\xe1bado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_S\xe1b".split("_"),weekdaysMin:"Do_2\xaa_3\xaa_4\xaa_5\xaa_6\xaa_S\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xe0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xe0s] HH:mm"},calendar:{sameDay:"[Hoje \xe0s] LT",nextDay:"[Amanh\xe3 \xe0s] LT",nextWeek:"dddd [\xe0s] LT",lastDay:"[Ontem \xe0s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[\xdaltimo] dddd [\xe0s] LT":"[\xdaltima] dddd [\xe0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"h\xe1 %s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%
32d horas",d:"um dia",dd:"%d dias",M:"um m\xeas",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba"}),l.defineLocale("pt",{months:"Janeiro_Fevereiro_Mar\xe7o_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Ter\xe7a-feira_Quarta-feira_Quinta-feira_Sexta-feira_S\xe1bado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_S\xe1b".split("_"),weekdaysMin:"Do_2\xaa_3\xaa_4\xaa_5\xaa_6\xaa_S\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje \xe0s] LT",nextDay:"[Amanh\xe3 \xe0s] LT",nextWeek:"dddd [\xe0s] LT",lastDay:"[Ontem \xe0s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[\xdaltimo] dddd [\xe0s] LT":"[\xdaltima] dddd [\xe0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"h\xe1 %s",s:"segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xeas",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}}),l.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminic\u0103_luni_mar\u021bi_miercuri_joi_vineri_s\xe2mb\u0103t\u0103".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_S\xe2m".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_S\xe2".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[m\xe2ine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s \xeen urm\u0103",s:"c\xe2teva secunde",ss:Kn,m:"un minut",mm:Kn,h:"o or\u0103",hh:Kn,d:"o zi",dd:Kn,M:"o lun\u0103",MM:Kn,y:"un an",yy:Kn},week:{dow:1,doy:7}});var $n=[/^\u044f\u043d\u0432/i,/^\u0444\u0435\u0432/i,/^\u043c\u0430\u0440/i,/^\u0430\u043f\u0440/i,/^\u043c\u0430[\u0439\u044f]/i,/^\u0438\u044e\u043d/i,/^\u0438\u044e\u043b/i,/^\u0430\u0432\u0433/i,/^\u0441\u0435\u043d/i,/^\u043e\u043a\u0442/i,/^\u043d\u043e\u044f/i,/^\u0434\u0435\u043a/i];l.defineLocale("ru",{months:{format:"\u044f\u043d\u0432\u0430\u0440\u044f_\u0444\u0435\u0432\u0440\u0430\u043b\u044f_\u043c\u0430\u0440\u0442\u0430_\u0430\u043f\u0440\u0435\u043b\u044f_\u043c\u0430\u044f_\u0438\u044e\u043d\u044f_\u0438\u044e\u043b\u044f_\u0430\u0432\u0433\u0443\u0441\u0442\u0430_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f_\u043e\u043a\u0442\u044f\u0431\u0440\u044f_\u043d\u043e\u044f\u0431\u0440\u044f_\u0434\u0435\u043a\u0430\u0431\u0440\u044f".split("_"),standalone:"\u044f\u043d\u0432\u0430\u0440\u044c_\u0444\u0435\u0432\u0440\u0430\u043b\u044c_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b\u044c_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c_\u043e\u043a\u0442\u044f\u0431\u0440\u044c_\u043d\u043e\u044f\u0431\u0440\u044c_\u0434\u0435\u043a\u0430\u0431\u0440\u044c".split("_")},monthsShort:{format:"\u044f\u043d\u0432._\u0444\u0435\u0432\u0440._\u043c\u0430\u0440._\u0430\u043f\u0440._\u043c\u0430\u044f_\u0438\u044e\u043d\u044f_\u0438\u044e\u043b\u044f_\u0430\u0432\u0433._\u0441\u0435\u043d\u0442._\u043e\u043a\u0442._\u043d\u043e\u044f\u0431._\u0434\u0435\u043a.".split("_"),standalone:"\u044f\u043d\u0432._\u0444\u0435\u0432\u0440._\u043c\u0430\u0440\u0442_\u0430\u043f\u0440._\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433._\u0441\u0435\u043d\u0442._\u043e\u043a\u0442._\u043d\u043e\u044f\u0431._\u0434\u0435\u043a.".split("_")},weekdays:{standalone:"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043f\u044f\u0442\u043d\u0438\u0446\u0430_\u0441\u0443\u0431\u0431\u043e\u0442\u0430".split("_"),format:"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043f\u044f\u0442\u043d\u0438\u0446\u0443_\u0441\u0443\u0431\u0431\u043e\u0442\u0443".split("_"),isFormat:/\[ ?[\u0412\u0432] ?(?:\u043f\u0440\u043e\u0448\u043b\u0443\u044e|\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e|\u044d\u0442\u0443)? ?\] ?dddd/},weekdaysShort:"\u0432\u0441_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u0432\u0441_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),monthsParse:$n,longMonthsParse:$n,shortMonthsParse:$n,monthsRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044c\u044f]|\u044f\u043d\u0432\.?|\u0444\u0435\u0432\u0440\u0430\u043b[\u044c\u044f]|\u0444\u0435\u0432\u0440?\.?|\u043c\u0430\u0440\u0442\u0430?|\u043c\u0430\u0440\.?|\u0430\u043f\u0440\u0435\u043b[\u044c\u044f]|\u0430\u043f\u0440\.?|\u043c\u0430[\u0439\u044f]|\u0438\u044e\u043d[\u044c\u044f]|\u0438\u044e\u043d\.?|\u0438\u044e\u043b[\u044c\u044f]|\u0438\u044e\u043b\.?|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0430\u0432\u0433\.?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044c\u044f]|\u0441\u0435\u043d\u0442?\.?|\u043e\u043a\u0442\u044f\u0431\u0440[\u044c\u044f]|\u043e\u043a\u0442\.?|\u043d\u043e\u044f\u0431\u0440[\u044c\u044f]|\u043d\u043e\u044f\u0431?\.?|\u0434\u0435\u043a\u0430\u0431\u0440[\u044c\u044f]|\u0434\u0435\u043a\.?)/i,monthsShortRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044c\u044f]|\u044f\u043d\u0432\.?|\u0444\u0435\u0432\u0440\u0430\u043b[\u044c\u044f]|\u0444\u0435\u0432\u0440?\.?|\u043c\u0430\u0440\u0442\u0430?|\u043c\u0430\u0440\.?|\u0430\u043f\u0440\u0435\u043b[\u044c\u044f]|\u0430\u043f\u0440\.?|\u043c\u0430[\u0439\u044f]|\u0438\u044e\u043d[\u044c\u044f]|\u0438\u044e\u043d\.?|\u0438\u044e\u043b[\u044c\u044f]|\u0438\u044e\u043b\.?|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0430\u0432\u0433\.?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044c\u044f]|\u0441\u0435\u043d\u0442?\.?|\u043e\u043a\u0442\u044f\u0431\u0440[\u044c\u044f]|\u043e\u043a\u0442\.?|\u043d\u043e\u044f\u0431\u0440[\u044c\u044f]|\u043d\u043e\u044f\u0431?\.?|\u0434\u0435\u043a\u0430\u0431\u0440[\u044c\u044f]|\u0434\u0435\u043a\.?)/i,monthsStrictRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044f\u044c]|\u0444\u0435\u0432\u0440\u0430\u043b[\u044f\u044c]|\u043c\u0430\u0440\u0442\u0430?|\u0430\u043f\u0440\u0435\u043b[\u044f\u044c]|\u043c\u0430[\u044f\u0439]|\u0438\u044e\u043d[\u044f\u044c]|\u0438\u044e\u043b[\u044f\u044c]|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044f\u044c]|\u043e\u043a\u0442\u044f\u0431\u0440[\u044f\u044c]|\u043d\u043e\u044f\u0431\u0440[\u044f\u044c]|\u0434\u0435\u043a\u0430\u0431\u0440[\u044f\u044c])/i,monthsShortStrictRegex:/^(\u044f\u043d\u0432\.|\u0444\u0435\u0432\u0440?\.|\u
vendor: 40,108 bytes, line 32
32043c\u0430\u0440[\u0442.]|\u0430\u043f\u0440\.|\u043c\u0430[\u044f\u0439]|\u0438\u044e\u043d[\u044c\u044f.]|\u0438\u044e\u043b[\u044c\u044f.]|\u0430\u0432\u0433\.|\u0441\u0435\u043d\u0442?\.|\u043e\u043a\u0442\.|\u043d\u043e\u044f\u0431?\.|\u0434\u0435\u043a\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., H:mm",LLLL:"dddd, D MMMM YYYY \u0433., H:mm"},calendar:{sameDay:"[\u0421\u0435\u0433\u043e\u0434\u043d\u044f, \u0432] LT",nextDay:"[\u0417\u0430\u0432\u0442\u0440\u0430, \u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430, \u0432] LT",nextWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[\u0412\u043e] dddd, [\u0432] LT":"[\u0412] dddd, [\u0432] LT";switch(this.day()){case 0:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435] dddd, [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439] dddd, [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e] dddd, [\u0432] LT"}},lastWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[\u0412\u043e] dddd, [\u0432] LT":"[\u0412] dddd, [\u0432] LT";switch(this.day()){case 0:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0435] dddd, [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u044b\u0439] dddd, [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u0443\u044e] dddd, [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0447\u0435\u0440\u0435\u0437 %s",past:"%s \u043d\u0430\u0437\u0430\u0434",s:"\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434",ss:Zn,m:Zn,mm:Zn,h:"\u0447\u0430\u0441",hh:Zn,d:"\u0434\u0435\u043d\u044c",dd:Zn,M:"\u043c\u0435\u0441\u044f\u0446",MM:Zn,y:"\u0433\u043e\u0434",yy:Zn},meridiemParse:/\u043d\u043e\u0447\u0438|\u0443\u0442\u0440\u0430|\u0434\u043d\u044f|\u0432\u0435\u0447\u0435\u0440\u0430/i,isPM:function(e){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u0435\u0440\u0430)$/.test(e)},meridiem:function(e,a,t){return e<4?"\u043d\u043e\u0447\u0438":e<12?"\u0443\u0442\u0440\u0430":e<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u0435\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0439|\u0433\u043e|\u044f)/,ordinal:function(e,a){switch(a){case"M":case"d":case"DDD":return e+"-\u0439";case"D":return e+"-\u0433\u043e";case"w":case"W":return e+"-\u044f";default:return e}},week:{dow:1,doy:4}});var Bn=["\u062c\u0646\u0648\u0631\u064a","\u0641\u064a\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u064a\u0644","\u0645\u0626\u064a","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0621\u0650","\u0622\u06af\u0633\u067d","\u0633\u064a\u067e\u067d\u0645\u0628\u0631","\u0622\u06aa\u067d\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u068a\u0633\u0645\u0628\u0631"],qn=["\u0622\u0686\u0631","\u0633\u0648\u0645\u0631","\u0627\u06b1\u0627\u0631\u0648","\u0627\u0631\u0628\u0639","\u062e\u0645\u064a\u0633","\u062c\u0645\u0639","\u0687\u0646\u0687\u0631"];l.defineLocale("sd",{months:Bn,monthsShort:Bn,weekdays:qn,weekdaysShort:qn,weekdaysMin:qn,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd\u060c D MMMM YYYY HH:mm"},meridiemParse:/\u0635\u0628\u062d|\u0634\u0627\u0645/,isPM:function(e){return"\u0634\u0627\u0645"===e},meridiem:function(e,a,t){return e<12?"\u0635\u0628\u062d":"\u0634\u0627\u0645"},calendar:{sameDay:"[\u0627\u0684] LT",nextDay:"[\u0633\u0680\u0627\u06bb\u064a] LT",nextWeek:"dddd [\u0627\u06b3\u064a\u0646 \u0647\u0641\u062a\u064a \u062a\u064a] LT",lastDay:"[\u06aa\u0627\u0644\u0647\u0647] LT",lastWeek:"[\u06af\u0632\u0631\u064a\u0644 \u0647\u0641\u062a\u064a] dddd [\u062a\u064a] LT",sameElse:"L"},relativeTime:{future:"%s \u067e\u0648\u0621",past:"%s \u0627\u06b3",s:"\u0686\u0646\u062f \u0633\u064a\u06aa\u0646\u068a",ss:"%d \u0633\u064a\u06aa\u0646\u068a",m:"\u0647\u06aa \u0645\u0646\u067d",mm:"%d \u0645\u0646\u067d",h:"\u0647\u06aa \u06aa\u0644\u0627\u06aa",hh:"%d \u06aa\u0644\u0627\u06aa",d:"\u0647\u06aa \u068f\u064a\u0646\u0647\u0646",dd:"%d \u068f\u064a\u0646\u0647\u0646",M:"\u0647\u06aa \u0645\u0647\u064a\u0646\u0648",MM:"%d \u0645\u0647\u064a\u0646\u0627",y:"\u0647\u06aa \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(e){return e.replace(/\u060c/g,",")},postformat:function(e){return e.replace(/,/g,"\u060c")},week:{dow:1,doy:4}}),l.defineLocale("se",{months:"o\u0111\u0111ajagem\xe1nnu_guovvam\xe1nnu_njuk\u010dam\xe1nnu_cuo\u014bom\xe1nnu_miessem\xe1nnu_geassem\xe1nnu_suoidnem\xe1nnu_borgem\xe1nnu_\u010dak\u010dam\xe1nnu_golggotm\xe1nnu_sk\xe1bmam\xe1nnu_juovlam\xe1nnu".split("_"),monthsShort:"o\u0111\u0111j_guov_njuk_cuo_mies_geas_suoi_borg_\u010dak\u010d_golg_sk\xe1b_juov".split("_"),weekdays:"sotnabeaivi_vuoss\xe1rga_ma\u014b\u014beb\xe1rga_gaskavahkku_duorastat_bearjadat_l\xe1vvardat".split("_"),weekdaysShort:"sotn_vuos_ma\u014b_gask_duor_bear_l\xe1v".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s gea\u017ees",past:"ma\u014bit %s",s:"moadde sekunddat",ss:"%d sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta m\xe1nnu",MM:"%d m\xe1nut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("si",{months:"\u0da2\u0db1\u0dc0\u0dcf\u0dbb\u0dd2_\u0db4\u0dd9\u0db6\u0dbb\u0dc0\u0dcf\u0dbb\u0dd2_\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4_\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca_\u0db8\u0dd0\u0dba\u0dd2_\u0da2\u0dd6\u0db1\u0dd2_\u0da2\u0dd6\u0dbd\u0dd2_\u0d85\u0d9c\u0ddd\u0dc3\u0dca\u0dad\u0dd4_\u0dc3\u0dd0\u0db4\u0dca\u0dad\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca_\u0d94\u0d9a\u0dca\u0dad\u0ddd\u0db6\u0dbb\u0dca_\u0db1\u0ddc\u0dc0\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca_\u0daf\u0dd9\u0dc3\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca".split("_"),monthsShort:"\u0da2\u0db1_\u0db4\u0dd9\u0db6_\u0db8\u0dcf\u0dbb\u0dca_\u0d85\u0db4\u0dca_\u0db8\u0dd0\u0dba\u0dd2_\u0da2\u0dd6\u0db1\u0dd2_\u0da2\u0dd6\u0dbd\u0dd2_\u0d85\u0d9c\u0ddd_\u0dc3\u0dd0\u0db4\u0dca_\u0d94\u0d9a\u0dca_\u0db1\u0ddc\u0dc0\u0dd0_\u0daf\u0dd9\u0dc3\u0dd0".split("_"),weekdays:"\u0d89\u0dbb\u0dd2\u0daf\u0dcf_\u0dc3\u0db3\u0dd4\u0daf\u0dcf_\u0d85\u0d9f\u0dc4\u0dbb\u0dd4\u0dc0\u0dcf\u0daf\u0dcf_\u0db6\u0daf\u0dcf\u0daf\u0dcf_\u0db6\u0dca\u200d\u0dbb\u0dc4\u0dc3\u0dca\u0db4\u0dad\u0dd2\u0db1\u0dca\u0daf\u0dcf_\u0dc3\u0dd2\u0d9a\u0dd4\u0dbb\u0dcf\u0daf\u0dcf_\u0dc3\u0dd9\u0db1\u0dc3\u0dd4\u0dbb\u0dcf\u0daf\u0dcf".split("_"),weekdaysShort:"\u0d89\u0dbb\u0dd2_\u0dc3\u0db3\u0dd4_\u0d85\u0d9f_\u0db6\u0daf\u0dcf_\u0db6\u0dca\u200d\u0dbb\u0dc4_\u0dc3\u0dd2\u0d9a\u0dd4_\u0dc3\u0dd9\u0db1".split("_"),weekdaysMin:"\u0d89_\u0dc3_\u0d85_\u0db6_\u0db6\u0dca\u200d\u0dbb_\u0dc3\u0dd2_\u0dc3\u0dd9".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [\u0dc0\u0dd0\u0db1\u0dd2] dddd, a h:mm:ss"},calendar:{sameDay:"[\u0d85\u0daf] LT[\u0da7]",nextDay:"[\u0dc4\u0dd9\u0da7] LT[\u0da7]",nextWeek:"dddd LT[\u0da7]",lastDay:"[\u0d8a\u0dba\u0dda] LT[\u0da7]",lastWeek:"[\u0db4\u0dc3\u0dd4\u0d9c\u0dd2\u0dba] dddd LT[\u0da7]",sameElse:"L"},relativeTime:{future:"%s\u0d9a\u0dd2\u0db1\u0dca",past:"%s\u0d9a\u0da7 \u0db4\u0dd9\u0dbb",s:"\u0dad\u0dad\u0dca\u0db4\u0dbb \u0d9a\u0dd2\u0dc4\u0dd2\u0db4\u0dba",ss:"\u0dad\u0dad\u0dca\u0db4\u0dbb %d",m:"\u0db8\u0dd2\u0db1\u0dd2\u0dad\u0dca\u0dad\u0dd4\u0dc0",mm:"\u0db8\u0dd2\u0db1\u0dd2\u0dad\u0dca\u0dad\u0dd4 %d",h:"\u0db4\u0dd0\u0dba",hh:"\u0db4\u0dd0\u0dba %d",d:"\u0daf\u0dd2\u0db1\u0dba",dd:"\u0daf\u0dd2\u0db1 %d",M:"\u0db8\u0dcf\u0dc3\u0dba",MM:"\u0db8\u0dcf\u0dc3 %d",y:"\u0dc0\u0dc3\u0dbb",yy:"\u0dc0\u0dc3\u0dbb %d"},dayOfMonthOrdinalParse:/\d{1,2} \u0dc0\u0dd0\u0db1\u0dd2/,ordinal:function(e){return e+" \u0dc0\u0dd0\u0db1\u0dd2"},meridiemParse:/\u0db4\u0dd9\u0dbb \u0dc0\u0dbb\u0dd4|\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4|\u0db4\u0dd9.\u0dc0|\u0db4.\u0dc0./,isPM:function(e){return"\u0db4.\u0dc0."===e||"\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4"===e},meridiem:function(e,a,t){return 11<e?t?"\u0db4.\u0dc0.":"\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4":t?"\u0db4\u0dd9.\u0dc0.":"\u0db4\u0dd9\u0dbb \u0dc0\u0dbb\u0dd4"}});var Qn="janu\xe1r_febru\xe1r_marec_apr\xedl_m\xe1j_j\xfan_j\xfal_august_september_okt\xf3ber_november_december".split("_"),Xn="jan_feb_mar_apr_m\xe1j_j\xfan_j\xfal_aug_sep_okt_nov_dec".split("_");function ed(e){return 1<e&&e<5}function ad(e,a,t,s){var n=e+" ";switch(t){case"s":return a||s?"p\xe1r sek\xfand":"p\xe1r sekundami";case"ss":return a||s?n+(ed(e)?"sekundy":"sek\xfand"):n+"sekundami";break;case"m":return a?"min\xfata":s?"min\xfatu":"min\xfatou";case"mm":return a||s?n+(ed(e)?"min\xfaty":"min\xfat"):n+"min\xfatami";break;case"h":return a?"hodina":s?"hodinu":"hodinou";case"hh":return a||s?n+(ed(e)?"hodiny":"hod\xedn"):n+"hodinami";break;case"d":return a||s?"de\u0148":"d\u0148om";case"dd":return a||s?n+(ed(e)?"dni":"dn\xed"):n+"d\u0148ami";break;case"M":return a||s?"mesiac":"mesiacom";case"MM":return a||s?n+(ed(e)?"mesiace":"mesiacov"):n+"mesiacmi";break;case"y":return a||s?"rok":"rokom";case"yy":return a||s?n+(ed(e)?"roky":"rokov"):n+"rokmi";break}}function td(e,a,t,s){var n=e+" ";switch(t){case"s":return a||s?"nekaj sekund":"nekaj sekundami";case"ss":return n+=1===e?a?"sekundo":"sekundi":2===e?a||s?"sekundi":"sekundah":e<5?a||s?"sekunde":"sekundah":"sekund";case"m":return a?"ena minuta":"eno minuto";case"mm":return n+=1===e?a?"minuta":"minuto":2===e?a||s?"minuti":"minutama":e<5?a||s?"minute":"minutami":a||s?"minut":"minutami";case"h":return a?"ena ura":"eno uro";case"hh":return n+=1===e?a?"ura":"uro":2===e?a||s?"uri":"urama":e<5?a||s?"ure":"urami":a||s?"ur":"urami";case"d":return a||s?"en dan":"enim dnem";case"dd":return n+=1===e?a||s?"dan":"dnem":2===e?a||s?"dni":"dnevoma":a||s?"dni":"dnevi";case"M":return a||s?"en mesec":"enim mesecem";case"MM":return n+=1===e?a||s?"mesec":"mesecem":2===e?a||s?"meseca":"mesecema":e<5?a||s?"mesece":"meseci":a||s?"mesecev":"meseci";case"y":return a||s?"eno leto":"enim letom";case"yy":return n+=1===e?a||s?"leto":"letom":2===e?a||s?"leti":"letoma":e<5?a||s?"leta":"leti":a||s?"let":"leti"}}l.defineLocale("sk",{months:Qn,monthsShort:Xn,weekdays:"nede\u013ea_pondelok_utorok_streda_\u0161tvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_\u0161t_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_\u0161t_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nede\u013eu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo \u0161tvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[v\u010dera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minul\xfa nede\u013eu o] LT";case 1:case 2:return"[minul\xfd] dddd [o] LT";case 3:return"[minul\xfa stredu o] LT";case 4:case 5:return"[minul\xfd] dddd [o] LT";case 6:return"[minul\xfa sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:ad,ss:ad,m:ad,mm:ad,h:ad,hh:ad,d:ad,dd:ad,M:ad,MM:ad,y:ad,yy:ad},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_\u010detrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._\u010det._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_\u010de_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[v\u010deraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prej\u0161njo] [nedeljo] [ob] LT";case 3:return"[prej\u0161njo] [sredo] [ob] LT";case 6:return"[prej\u0161njo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prej\u0161nji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"\u010dez %s",past:"pred %s",s:td,ss:td,m:td,mm:td,h:td,hh:td,d:td,dd:td,M:td,MM:td,y:td,yy:td},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}}),l.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_N\xebntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_N\xebn_Dhj".split("_"),weekdays:"E Diel_E H\xebn\xeb_E Mart\xeb_E M\xebrkur\xeb_E Enjte_E Premte_E Shtun\xeb".split("_"),weekdaysShort:"Die_H\xebn_Mar_M\xebr_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_M\xeb_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(e){return"M"===e.charAt(0)},meridiem:function(e,a,t){return e<12?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot n\xeb] LT",nextDay:"[Nes\xebr n\xeb] LT",nextWeek:"dddd [n\xeb] LT",lastDay:"[Dje n\xeb] LT",lastWeek:"dddd [e kaluar n\xeb] LT",sameElse:"L"},relativeTime:{future:"n\xeb %s",past:"%s m\xeb par\xeb",s:"disa sekonda",ss:"%d sekonda",m:"nj\xeb minut\xeb",mm:"%d minuta",h:"nj\xeb or\xeb",hh:"%d or\xeb",d:"nj\xeb dit\xeb",dd:"%d dit\xeb",M:"nj\xeb muaj",MM:"%d muaj",y:"nj\xeb vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});var sd={words:{ss:["\u0441\u0435\u043a\u0443\u043d\u0434\u0430","\u0441\u0435\u043a\u0443\u043d\u0434\u0435","\u0441\u0435\u043a\u0443\u043d\u0434\u0438"],m:["\u0458\u0435\u0434\u0430\u043d \u043c\u0438\u043d\u0443\u0442","\u0458\u0435\u0434\u043d\u0435 \u043c\u0438\u043d\u0443\u0442\u0435"],mm:["\u043c\u0438\u043d\u0443\u0442","\u043c\u0438\u043d\u0443\u0442\u0435","\u043c\u0438\u043d\u0443\u0442\u0430"],h:["\u0458\u0435\u0434\u0430\u043d \u0441\u0430\u0442","\u0458\u0435\u0434\u043d\u043e\u0433 \u0441\u0430\u0442\u0430"],hh:["\u0441\u0430\u0442","\u0441\u0430\u0442\u0430","\u0441\u0430\u0442\u0438"],dd:["\u0434\u0430\u043d","\u0434\u0430\u043d\u0430","\u0434\u0430\u043d\u0430"],MM:["\u043c\u0435\u0441\u0435\u0446","\u043c\u0435\u0441\u0435\u0446\u0430","\u043c\u0435\u0441\u0435\u0446\u0438"],yy:["\u0433\u043e\u0434\u0438\u043d\u0430","\u0433\u043e\u0434\u0438\u043d\u0435","\u0433\u043e\u0434\u0438\u043d\u0430"]},correctGrammaticalCase:function(e,a){return 1===e?a[0]:2<=e&&e<=4?a[1]:a[2]},translate:function(e,a,t){var s=sd.words[t];return 1===t.length?a?s[0]:s[1]:e+" "+sd.correctGrammaticalCase(e,s)}};l.defineLocale("sr-cyrl",{months:"\u0458\u0430\u043d\u0443\u0430\u0440_\u0444\u0435\u0431\u0440\u0443\u0430\u0440_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440_\u043e\u043a\u0442\u043e\u0431\u0430\u0440_\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440_\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440".split("_"),monthsShort:"\u0458\u0430\u043d._\u0444\u0435\u0431._\u043c\u0430\u0440._\u0430\u043f\u0440._\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433._\u0441\u0435\u043f._\u043e\u043a\u0442._\u043d\u043e\u0432._\u0434\u0435\u0446.".split("_"),monthsParseExact:!0,weekdays:"\u043d\u0435\u0434\u0435\u0459\u0430_\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u0430\u043a_\u0443\u0442\u043e\u0440\u0430\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0440\u0442\u0430\u043a_\u043f\u0435\u0442\u0430\u043a_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434._\u043f\u043e\u043d._\u0443\u0442\u043e._\u0441\u0440\u0435._\u0447\u0435\u0442._\u043f\u0435\u0442._\u0441\u0443\u0431.".split("_"),weekdaysMin:"\u043d\u0435_\u043f\u043e_\u0443\u0442_\u0441\u0440_\u0447\u0435_\u043f\u0435_\u0441\u0443".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[\u0434\u0430\u043d\u0430\u0441 \u0443] LT",nextDay:"[\u0441\u0443\u0442\u0440\u0430 \u0443] LT",nextWeek:function(){switch(this.day()){case 0:return"[\u0443] [\u043d\u0435\u0434\u0435\u0459\u0443] [\u0443] LT";case 3:return"[\u0443] [\u0441\u0440\u0435\u0434\u0443] [\u0443] LT";case 6:return"[\u0443] [\u0441\u0443\u0431\u043e\u0442\u0443] [\u0443] LT";case 1:case 2:case 4:case 5:return"[\u0443] dddd [\u0443] LT"}},lastDay:"[\u0458\u0443\u0447\u0435 \u0443] LT",lastWeek:function(){return["[\u043f\u0440\u043e\u0448\u043b\u0435] [\u043d\u0435\u0434\u0435\u0459\u0435] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u0443\u0442\u043e\u0440\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u0435] [\u0441\u0440\u0435\u0434\u0435] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u0447\u0435\u0442\u0432\u0440\u0442\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u043f\u0435\u0442\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u0435] [\u0441\u0443\u0431\u043e\u0442\u0435] [\u0443] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"\u043f\u0440\u0435 %s",s:"\u043d\u0435\u043a\u043e\u043b\u0438\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:sd.translate,m:sd.translate,mm:sd.translate,h:sd.translate,hh:sd.translate,d:"\u0434\u0430\u043d",dd:sd.translate,M:"\u043c\u0435\u0441\u0435\u0446",MM:sd.translate,y:"\u0433\u043e\u0434\u0438\u043d\u0443",yy:sd.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});var nd={words:{ss:["sekunda","sekunde","sekundi"],m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(e,a){return 1===e?a[0]:2<=e&&e<=4?a[1]:a[2]},translate:function(e,a,t){var s=nd.words[t];return 1===t.length?a?s[0]:s[1]:e+" "+nd.correctGrammaticalCase(e,s)}};l.defineLocale("sr",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljak_utorak_sreda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010de u] LT",lastWeek:function(){return["[pro\u0161le] [nedelje] [u] LT","[pro\u0161log] [ponedeljka] [u] LT","[pro\u0161log] [utorka] [u] LT","[pro\u0161le] [srede] [u] LT","[pro\u0161log] [\u010detvrtka] [u] LT","[pro\u0161log] [petka] [u] LT","[pro\u0161le] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:nd.translate,m:nd.translate,mm:nd.translate,h:nd.translate,hh:nd.translate,d:"dan",dd:nd.translate,M:"mesec",MM:nd.translate,y:"godinu",yy:nd.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}}),l.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(e,a,t){return e<11?"ekuseni":e<15?"emini":e<19?"entsambama":"ebusuku"},meridiemHour:function(e,a){return 12===e&&(e=0),"ekuseni"===a?e:"emini"===a?11<=e?e:e+12:"entsambama"===a||"ebusuku"===a?0===e?0:e+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}}),l.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xf6ndag_m\xe5ndag_tisdag_onsdag_torsdag_fredag_l\xf6rdag".split("_"),weekdaysShort:"s\xf6n_m\xe5n_tis_ons_tor_fre_l\xf6r".split("_"),weekdaysMin:"s\xf6_m\xe5_ti_on_to_fr_l\xf6".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Ig\xe5r] LT",nextWeek:"[P\xe5] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"f\xf6r %s sedan",s:"n\xe5gra sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en m\xe5nad",MM:"%d m\xe5nader",y:"ett \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}(e|a)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"e":1===a?"a":2===a?"a":"e")},week:{dow:1,doy:4}}),l.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"masiku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}});var dd={1:"\u0be7",2:"\u0be8",3:"\u0be9",4:"\u0bea",5:"\u0beb",6:"\u0bec",7:"\u0bed",8:"\u0bee",9:"\u0bef",0:"\u0be6"},rd={"\u0be7":"1","\u0be8":"2","\u0be9":"3","\u0bea":"4","\u0beb":"5","\u0bec":"6","\u0bed":"7","\u0bee":"8","\u0bef":"9","\u0be6":"0"};l.defineLocale("ta",{months:"\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf_\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf_\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd_\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd_\u0bae\u0bc7_\u0b9c\u0bc2\u0ba9\u0bcd_\u0b9c\u0bc2\u0bb2\u0bc8_\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd_\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bc6\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b85\u0b95\u0bcd\u0b9f\u0bc7\u0bbe\u0baa\u0bb0\u0bcd_\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd".split("_"),monthsShort:"\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf_\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf_\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd_\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd_\u0bae\u0bc7_\u0b9c\u0bc2\u0ba9\u0bcd_\u0b9c\u0bc2\u0bb2\u0bc8_\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd_\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bc6\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b85\u0b95\u0bcd\u0b9f\u0bc7\u0bbe\u0baa\u0bb0\u0bcd_\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd".split("_"),weekdays:"\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bcd\u0bb1\u0bc1\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0b9f\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0baa\u0bc1\u0ba4\u0ba9\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0b9a\u0ba9\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8".split("_"),weekdaysShort:"\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bc1_\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0bb3\u0bcd_\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd_\u0baa\u0bc1\u0ba4\u0ba9\u0bcd_\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0ba9\u0bcd_\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf_\u0b9a\u0ba9\u0bbf".split("_"),weekdaysMin:"\u0b9e\u0bbe_\u0ba4\u0bbf_\u0b9a\u0bc6_\u0baa\u0bc1_\u0bb5\u0bbf_\u0bb5\u0bc6_\u0b9a".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[\u0b87\u0ba9\u0bcd\u0bb1\u0bc1] LT",nextDay:"[\u0ba8\u0bbe\u0bb3\u0bc8] LT",nextWeek:"dddd, LT",lastDay:"[\u0ba8\u0bc7\u0bb1\u0bcd\u0bb1\u0bc1] LT",lastWeek:"[\u0b95\u0b9f\u0ba8\u0bcd\u0ba4 \u0bb5\u0bbe\u0bb0\u0bae\u0bcd] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0b87\u0bb2\u0bcd",past:"%s \u0bae\u0bc1\u0ba9\u0bcd",s:"\u0b92\u0bb0\u0bc1 \u0b9a\u0bbf\u0bb2 \u0bb5\u0bbf\u0ba8\u0bbe\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",ss:"%d \u0bb5\u0bbf\u0ba8\u0bbe\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",m:"\u0b92\u0bb0\u0bc1 \u0ba8\u0bbf\u0bae\u0bbf\u0b9f\u0bae\u0bcd",mm:"%d \u0ba8\u0bbf\u0bae\u0bbf\u0b9f\u0b99\u0bcd\u0b95\u0bb3\u0bcd",h:"\u0b92\u0bb0\u0bc1 \u0bae\u0ba3\u0bbf \u0ba8\u0bc7\u0bb0\u0bae\u0bcd",hh:"%d \u0bae\u0ba3\u0bbf \u0ba8\u0bc7\u0bb0\u0bae\u0bcd",d:"\u0b92\u0bb0\u0bc1 \u0ba8\u0bbe\u0bb3\u0bcd",dd:"%d \u0ba8\u0bbe\u0b9f\u0bcd\u0b95\u0bb3\u0bcd",M:"\u0b92\u0bb0\u0bc1 \u0bae\u0bbe\u0ba4\u0bae\u0bcd",MM:"%d \u0bae\u0bbe\u0ba4\u0b99\u0bcd\u0b95\u0bb3\u0bcd",y:"\u0b92\u0bb0\u0bc1 \u0bb5\u0bb0\u0bc1\u0b9f\u0bae\u0bcd",yy:"%d \u0b86\u0ba3\u0bcd\u0b9f\u0bc1\u0b95\u0bb3\u0bcd"},dayOfMonthOrdinalParse:/\d{1,2}\u0bb5\u0ba4\u0bc1/,ordinal:function(e){return e+"\u0bb5\u0ba4\u0bc1"},preparse:function(e){return e.replace(/[\u0be7\u0be8\u0be9\u0bea\u0beb\u0bec\u0bed\u0bee\u0bef\u0be6]/g,function(e){return rd[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return dd[e]})},meridiemParse:/\u0baf\u0bbe\u0bae\u0bae\u0bcd|\u0bb5\u0bc8\u0b95\u0bb1\u0bc8|\u0b95\u0bbe\u0bb2\u0bc8|\u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd|\u0b8e\u0bb1\u0bcd\u0baa\u0bbe\u0b9f\u0bc1|\u0bae\u0bbe\u0bb2\u0bc8/,meridiem:function(e,a,t){return e<2?" \u0baf\u0bbe\u0bae\u0bae\u0bcd":e<6?" \u0bb5\u0bc8\u0b95\u0bb1\u0bc8":e<10?" \u0b95\u0bbe\u0bb2\u0bc8":e<14?" \u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd":e<18?" \u0b8e\u0bb1\u0bcd\u0baa\u0bbe\u0b9f\u0bc1":e<22?" \u0bae\u0bbe\u0bb2\u0bc8":" \u0baf\u0bbe\u0bae\u0bae\u0bcd"},meridiemHour:function(e,a){return 12===e&&(e=0),"\u0baf\u0bbe\u0bae\u0bae\u0bcd"===a?e<2?e:e+12:"\u0bb5\u0bc8\u0b95\u0bb1\u0bc8"===a||"\u0b95\u0bbe\u0bb2\u0bc8"===a?e:"\u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd"===a&&10<=e?e:e+12},week:{dow:0,doy:6}}),l.defineLocale("te",{months:"\u0c1c\u0c28\u0c35\u0c30\u0c3f_\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f_\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f_\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d_\u0c2e\u0c47_\u0c1c\u0c42\u0c28\u0c4d_\u0c1c\u0c41\u0c32\u0c48_\u0c06\u0c17\u0c38\u0c4d\u0c1f\u0c41_\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02\u0c2c\u0c30\u0c4d_\u0c05\u0c15\u0c4d\u0c1f\u0c4b\u0c2c\u0c30\u0c4d_\u0c28\u0c35\u0c02\u0c2c\u0c30\u0c4d_\u0c21\u0c3f\u0c38\u0c46\u0c02\u0c2c\u0c30\u0c4d".split("_"),monthsShort:"\u0c1c\u0c28._\u0c2b\u0c3f\u0c2c\u0c4d\u0c30._\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f_\u0c0f\u0c2a\u0c4d\u0c30\u0c3f._\u0c2e\u0c47_\u0c1c\u0c42\u0c28\u0c4d_\u0c1c\u0c41\u0c32\u0c48_\u0c06\u0c17._\u0c38\u0c46\u0c2a\u0c4d._\u0c05\u0c15\u0c4d\u0c1f\u0c4b._\u0c28\u0c35._\u0c21\u0c3f\u0c38\u0c46.".split("_"),monthsParseExact:!0,weekdays:"\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02_\u0c38\u0c4b\u0c2e\u0c35\u0c3e\u0c30\u0c02_\u0c2e\u0c02\u0c17\u0c33\u0c35\u0c3e\u0c30\u0c02_\u0c2c\u0c41\u0c27\u0c35\u0c3e\u0c30\u0c02_\u0c17\u0c41\u0c30\u0c41\u0c35\u0c3e\u0c30\u0c02_\u0c36\u0c41\u0c15\u0c4d\u0c30\u0c35\u0c3e\u0c30\u0c02_\u0c36\u0c28\u0c3f\u0c35\u0c3e\u0c30\u0c02".split("_"),weekdaysShort:"\u0c06\u0c26\u0c3f_\u0c38\u0c4b\u0c2e_\u0c2e\u0c02\u0c17\u0c33_\u0c2c\u0c41\u0c27_\u0c17\u0c41\u0c30\u0c41_\u0c36\u0c41\u0c15\u0c4d\u0c30_\u0c36\u0c28\u0c3f".split("_"),weekdaysMin:"\u0c06_\u0c38\u0c4b_\u0c2e\u0c02_\u0c2c\u0c41_\u0c17\u0c41_\u0c36\u0c41_\u0c36".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0c28\u0c47\u0c21\u0c41] LT",nextDay:"[\u0c30\u0c47\u0c2a\u0c41] LT",nextWeek:"dddd, LT",lastDay:"[\u0c28\u0c3f\u0c28\u0c4d\u0c28] LT",lastWeek:"[\u0c17\u0c24] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0c32\u0c4b",past:"%s \u0c15\u0c4d\u0c30\u0c3f\u0c24\u0c02",s:"\u0c15\u0c4a\u0c28\u0c4d\u0c28\u0c3f \u0c15\u0c4d\u0c37\u0c23\u0c3e\u0c32\u0c41",ss:"%d \u0c38\u0c46\u0c15\u0c28\u0c4d\u0c32\u0c41",m:"\u0c12\u0c15 \u0c28\u0c3f\u0c2e\u0c3f\u0c37\u0c02",mm:"%d \u0c28\u0c3f\u0c2e\u0c3f\u0c37\u0c3e\u0c32\u0c41",h:"\u0c12\u0c15 \u0c17\u0c02\u0c1f",hh:"%d \u0c17\u0c02\u0c1f\u0c32\u0c41",d:"\u0c12\u0c15 \u0c30\u0c4b\u0c1c\u0c41",dd:"%d \u0c30\u0c4b\u0c1c\u0c41\u0c32\u0c41",M:"\u0c12\u0c15 \u0c28\u0c46\u0c32",MM:"%d \u0c28\u0c46\u0c32\u0c32\u0c41",y:"\u0c12\u0c15 \u0c38\u0c02\u0c35\u0c24\u0c4d\u0c38\u0c30\u0c02",yy:"%d \u0c38\u0c02\u0c35\u0c24\u0c4d\u0c38\u0c30\u0c3e\u0c32\u0c41"},dayOfMonthOrdinalParse:/\d{1,2}\u0c35/,ordinal:"%d\u0c35",meridiemParse:/\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f|\u0c09\u0c26\u0c2f\u0c02|\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02|\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f"===a?e<4?e:e+12:"\u0c09\u0c26\u0c2f\u0c02"===a?e:"\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02"===a?10<=e?e:e+12:"\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02"===a?e+12:void 0},meridiem:function(e,a,t){return e<4?"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f":e<10?"\u0c09\u0c26\u0c2f\u0c02":e<17?"\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02":e<20?"\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02":"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f"},week:{dow:0,doy:6}}),l.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Ju\xf1u_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"minutu balun",ss:"minutu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")},week:{dow:1,doy:4}});var _d={0:"-\u0443\u043c",1:"-\u0443\u043c",2:"-\u044e\u043c",3:"-\u044e\u043c",4:"-\u0443\u043c",5:"-\u0443\u043c",6:"-\u0443\u043c",7:"-\u0443\u043c",8:"-\u0443\u043c",9:"-\u0443\u043c",10:"-\u0443\u043c",12:"-\u0443\u043c",13:"-\u0443\u043c",20:"-\u0443\u043c",30:"-\u044e\u043c",40:"-\u0443\u043c",50:"-\u0443\u043c",60:"-\u0443\u043c",70:"-\u0443\u043c",80:"-\u0443\u043c",90:"-\u0443\u043c",100:"-\u0443\u043c"};l.defineLocale("tg",{months:"\u044f\u043d\u0432\u0430\u0440_\u0444\u0435\u0432\u0440\u0430\u043b_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440_\u043e\u043a\u0442\u044f\u0431\u0440_\u043d\u043e\u044f\u0431\u0440_\u0434\u0435\u043a\u0430\u0431\u0440".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u044f\u043a\u0448\u0430\u043d\u0431\u0435_\u0434\u0443\u0448\u0430\u043d\u0431\u0435_\u0441\u0435\u0448\u0430\u043d\u0431\u0435_\u0447\u043e\u0440\u0448\u0430\u043d\u0431\u0435_\u043f\u0430\u043d\u04b7\u0448\u0430\u043d\u0431\u0435_\u04b7\u0443\u043c\u044a\u0430_\u0448\u0430\u043d\u0431\u0435".split("_"),weekdaysShort:"\u044f\u0448\u0431_\u0434\u0448\u0431_\u0441\u0448\u0431_\u0447\u0448\u0431_\u043f\u0448\u0431_\u04b7\u0443\u043c_\u0448\u043d\u0431".split("_"),weekdaysMin:"\u044f\u0448_\u0434\u0448_\u0441\u0448_\u0447\u0448_\u043f\u0448_\u04b7\u043c_\u0448\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0418\u043c\u0440\u04ef\u0437 \u0441\u043e\u0430\u0442\u0438] LT",nextDay:"[\u041f\u0430\u0433\u043e\u04b3 \u0441\u043e\u0430\u0442\u0438] LT",lastDay:"[\u0414\u0438\u0440\u04ef\u0437 \u0441\u043e\u0430\u0442\u0438] LT",nextWeek:"dddd[\u0438] [\u04b3\u0430\u0444\u0442\u0430\u0438 \u043e\u044f\u043d\u0434\u0430 \u0441\u043e\u0430\u0442\u0438] LT",lastWeek:"dddd[\u0438] [\u04b3\u0430\u0444\u0442\u0430\u0438 \u0433\u0443\u0437\u0430\u0448\u0442\u0430 \u0441\u043e\u0430\u0442\u0438] LT",sameElse:"L"},relativeTime:{future:"\u0431\u0430\u044a\u0434\u0438 %s",past:"%s \u043f\u0435\u0448",s:"\u044f\u043a\u0447\u0430\u043d\u0434 \u0441\u043e\u043d\u0438\u044f",m:"\u044f\u043a \u0434\u0430\u049b\u0438\u049b\u0430",mm:"%d \u0434\u0430\u049b\u0438\u049b\u0430",h:"\u044f\u043a \u0441\u043e\u0430\u0442",hh:"%d \u0441\u043e\u0430\u0442",d:"\u044f\u043a \u0440\u04ef\u0437",dd:"%d \u0440\u04ef\u0437",M:"\u044f\u043a \u043c\u043e\u04b3",MM:"%d \u043c\u043e\u04b3",y:"\u044f\u043a \u0441\u043e\u043b",yy:"%d \u0441\u043e\u043b"},meridiemParse:/\u0448\u0430\u0431|\u0441\u0443\u0431\u04b3|\u0440\u04ef\u0437|\u0431\u0435\u0433\u043e\u04b3/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0448\u0430\u0431"===a?e<4?e:e+12:"\u0441\u0443\u0431\u04b3"===a?e:"\u0440\u04ef\u0437"===a?11<=e?e:e+12:"\u0431\u0435\u0433\u043e\u04b3"===a?e+12:void 0},meridiem:function(e,a,t){return e<4?"\u0448\u0430\u0431":e<11?"\u0441\u0443\u0431\u04b3":e<16?"\u0440\u04ef\u0437":e<19?"\u0431\u0435\u0433\u043e\u04b3":"\u0448\u0430\u0431"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0443\u043c|\u044e\u043c)/,ordinal:function(e){return e+(_d[e]||_d[e%10]||_d[100<=e?100:null])},week:{dow:1,doy:7}}),l.defineLocale("th",{months:"\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21_\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c_\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21_\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19_\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21_\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19_\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21_\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21_\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19_\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21_\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19_\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21".split("_"),monthsShort:"\u0e21.\u0e04._\u0e01.\u0e1e._\u0e21\u0e35.\u0e04._\u0e40\u0e21.\u0e22._\u0e1e.\u0e04._\u0e21\u0e34.\u0e22._\u0e01.\u0e04._\u0e2a.\u0e04._\u0e01.\u0e22._\u0e15.\u0e04._\u0e1e.\u0e22._\u0e18.\u0e04.".split("_"),monthsParseExact:!0,weekdays:"\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c_\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c_\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23_\u0e1e\u0e38\u0e18_\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35_\u0e28\u0e38\u0e01\u0e23\u0e4c_\u0e40\u0e2a\u0e32\u0e23\u0e4c".split("_"),weekdaysShort:"\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c_\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c_\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23_\u0e1e\u0e38\u0e18_\u0e1e\u0e24\u0e2b\u0e31\u0e2a_\u0e28\u0e38\u0e01\u0e23\u0e4c_\u0e40\u0e2a\u0e32\u0e23\u0e4c".split("_"),weekdaysMin:"\u0e2d\u0e32._\u0e08._\u0e2d._\u0e1e._\u0e1e\u0e24._\u0e28._\u0e2a.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0e40\u0e27\u0e25\u0e32 H:mm",LLLL:"\u0e27\u0e31\u0e19dddd\u0e17\u0e35\u0e48 D MMMM YYYY \u0e40\u0e27\u0e25\u0e32 H:mm"},meridiemParse:/\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07|\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07/,isPM:function(e){return"\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"===e},meridiem:function(e,a,t){return e<12?"\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07":"\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"},calendar:{sameDay:"[\u0e27\u0e31\u0e19\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",nextDay:"[\u0e1e\u0e23\u0e38\u0e48\u0e07\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",nextWeek:"dddd[\u0e2b\u0e19\u0e49\u0e32 \u0e40\u0e27\u0e25\u0e32] LT",lastDay:"[\u0e40\u0e21\u0e37\u0e48\u0e2d\u0e27\u0e32\u0e19\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",lastWeek:"[\u0e27\u0e31\u0e19]dddd[\u0e17\u0e35\u0e48\u0e41\u0e25\u0e49\u0e27 \u0e40\u0e27\u0e25\u0e32] LT",sameElse:"L"},relativeTime:{future:"\u0e2d\u0e35\u0e01 %s",past:"%s\u0e17\u0e35\u0e48\u0e41\u0e25\u0e49\u0e27",s:"\u0e44\u0e21\u0e48\u0e01\u0e35\u0e48\u0e27\u0e34\u0e19\u0e32\u0e17\u0e35",ss:"%d \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35",m:"1 \u0e19\u0e32\u0e17\u0e35",mm:"%d \u0e19\u0e32\u0e17\u0e35",h:"1 \u0e0a\u0e31\u0e48\u0e27\u0e42\u0e21\u0e07",hh:"%d \u0e0a\u0e31\u0e48\u0e27\u0e42\u0e21\u0e07",d:"1 \u0e27\u0e31\u0e19",dd:"%d \u0e27\u0e31\u0e19",M:"1 \u0e40\u0e14\u0e37\u0e2d\u0e19",MM:"%d \u0e40\u0e14\u0e37\u0e2d\u0e19",y:"1 \u0e1b\u0e35",yy:"%d \u0e1b\u0e35"}}),l.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%
32d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}});var id="pagh_wa\u2019_cha\u2019_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function od(e,a,t,s){var n=function(e){var a=Math.floor(e%1e3/100),t=Math.floor(e%100/10),s=e%10,n="";0<a&&(n+=id[a]+"vatlh");0<t&&(n+=(""!==n?" ":"")+id[t]+"maH");0<s&&(n+=(""!==n?" ":"")+id[s]);return""===n?"pagh":n}(e);switch(t){case"ss":return n+" lup";case"mm":return n+" tup";case"hh":return n+" rep";case"dd":return n+" jaj";case"MM":return n+" jar";case"yy":return n+" DIS"}}l.defineLocale("tlh",{months:"tera\u2019 jar wa\u2019_tera\u2019 jar cha\u2019_tera\u2019 jar wej_tera\u2019 jar loS_tera\u2019 jar vagh_tera\u2019 jar jav_tera\u2019 jar Soch_tera\u2019 jar chorgh_tera\u2019 jar Hut_tera\u2019 jar wa\u2019maH_tera\u2019 jar wa\u2019maH wa\u2019_tera\u2019 jar wa\u2019maH cha\u2019".split("_"),monthsShort:"jar wa\u2019_jar cha\u2019_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa\u2019maH_jar wa\u2019maH wa\u2019_jar wa\u2019maH cha\u2019".split("_"),monthsParseExact:!0,weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa\u2019leS] LT",nextWeek:"LLL",lastDay:"[wa\u2019Hu\u2019] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:function(e){var a=e;return a=-1!==e.indexOf("jaj")?a.slice(0,-3)+"leS":-1!==e.indexOf("jar")?a.slice(0,-3)+"waQ":-1!==e.indexOf("DIS")?a.slice(0,-3)+"nem":a+" pIq"},past:function(e){var a=e;return a=-1!==e.indexOf("jaj")?a.slice(0,-3)+"Hu\u2019":-1!==e.indexOf("jar")?a.slice(0,-3)+"wen":-1!==e.indexOf("DIS")?a.slice(0,-3)+"ben":a+" ret"},s:"puS lup",ss:od,m:"wa\u2019 tup",mm:od,h:"wa\u2019 rep",hh:od,d:"wa\u2019 jaj",dd:od,M:"wa\u2019 jar",MM:od,y:"wa\u2019 DIS",yy:od},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});var md={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'\xfcnc\xfc",4:"'\xfcnc\xfc",100:"'\xfcnc\xfc",6:"'nc\u0131",9:"'uncu",10:"'uncu",30:"'uncu",60:"'\u0131nc\u0131",90:"'\u0131nc\u0131"};function ud(e,a,t,s){var n={s:["viensas secunds","'iensas secunds"],ss:[e+" secunds",e+" secunds"],m:["'n m\xedut","'iens m\xedut"],mm:[e+" m\xeduts",e+" m\xeduts"],h:["'n \xfeora","'iensa \xfeora"],hh:[e+" \xfeoras",e+" \xfeoras"],d:["'n ziua","'iensa ziua"],dd:[e+" ziuas",e+" ziuas"],M:["'n mes","'iens mes"],MM:[e+" mesen",e+" mesen"],y:["'n ar","'iens ar"],yy:[e+" ars",e+" ars"]};return s?n[t][0]:a?n[t][0]:n[t][1]}function ld(e,a,t){var s,n;return"m"===t?a?"\u0445\u0432\u0438\u043b\u0438\u043d\u0430":"\u0445\u0432\u0438\u043b\u0438\u043d\u0443":"h"===t?a?"\u0433\u043e\u0434\u0438\u043d\u0430":"\u0433\u043e\u0434\u0438\u043d\u0443":e+" "+(s=+e,n={ss:a?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u0438_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u0438_\u0441\u0435\u043a\u0443\u043d\u0434",mm:a?"\u0445\u0432\u0438\u043b\u0438\u043d\u0430_\u0445\u0432\u0438\u043b\u0438\u043d\u0438_\u0445\u0432\u0438\u043b\u0438\u043d":"\u0445\u0432\u0438\u043b\u0438\u043d\u0443_\u0445\u0432\u0438\u043b\u0438\u043d\u0438_\u0445\u0432\u0438\u043b\u0438\u043d",hh:a?"\u0433\u043e\u0434\u0438\u043d\u0430_\u0433\u043e\u0434\u0438\u043d\u0438_\u0433\u043e\u0434\u0438\u043d":"\u0433\u043e\u0434\u0438\u043d\u0443_\u0433\u043e\u0434\u0438\u043d\u0438_\u0433\u043e\u0434\u0438\u043d",dd:"\u0434\u0435\u043d\u044c_\u0434\u043d\u0456_\u0434\u043d\u0456\u0432",MM:"\u043c\u0456\u0441\u044f\u0446\u044c_\u043c\u0456\u0441\u044f\u0446\u0456_\u043c\u0456\u0441\u044f\u0446\u0456\u0432",yy:"\u0440\u0456\u043a_\u0440\u043e\u043a\u0438_\u0440\u043e\u043a\u0456\u0432"}[t].split("_"),s%10==1&&s%100!=11?n[0]:2<=s%10&&s%10<=4&&(s%100<10||20<=s%100)?n[1]:n[2])}
32function Md(e){return function(){return e+"\u043e"+(11===this.hours()?"\u0431":"")+"] LT"}}l.defineLocale("tr",{months:"Ocak_\u015eubat_Mart_Nisan_May\u0131s_Haziran_Temmuz_A\u011fustos_Eyl\xfcl_Ekim_Kas\u0131m_Aral\u0131k".split("_"),monthsShort:"Oca_\u015eub_Mar_Nis_May_Haz_Tem_A\u011fu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Sal\u0131_\xc7ar\u015famba_Per\u015fembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_\xc7ar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_\xc7a_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn saat] LT",nextDay:"[yar\u0131n saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[d\xfcn] LT",lastWeek:"[ge\xe7en] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \xf6nce",s:"birka\xe7 saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir g\xfcn",dd:"%d g\xfcn",M:"bir ay",MM:"%d ay",y:"bir y\u0131l",yy:"%d y\u0131l"},ordinal:function(e,a){switch(a){case"d":case"D":case"Do":case"DD":return e;default:if(0===e)return e+"'\u0131nc\u0131";var t=e%10;return e+(md[t]||md[e%100-t]||md[100<=e?100:null])}},week:{dow:1,doy:7}}),l.defineLocale("tzl",{months:"Januar_Fevraglh_Mar\xe7_Avr\xefu_Mai_G\xfcn_Julia_Guscht_Setemvar_Listop\xe4ts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_G\xfcn_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"S\xfaladi_L\xfane\xe7i_Maitzi_M\xe1rcuri_Xh\xfaadi_Vi\xe9ner\xe7i_S\xe1turi".split("_"),weekdaysShort:"S\xfal_L\xfan_Mai_M\xe1r_Xh\xfa_Vi\xe9_S\xe1t".split("_"),weekdaysMin:"S\xfa_L\xfa_Ma_M\xe1_Xh_Vi_S\xe1".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiemParse:/d\'o|d\'a/i,isPM:function(e){return"d'o"===e.toLowerCase()},meridiem:function(e,a,t){return 11<e?t?"d'o":"D'O":t?"d'a":"D'A"},calendar:{sameDay:"[oxhi \xe0] LT",nextDay:"[dem\xe0 \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[ieiri \xe0] LT",lastWeek:"[s\xfcr el] dddd [lasteu \xe0] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:ud,ss:ud,m:ud,mm:ud,h:ud,hh:ud,d:ud,dd:ud,M:ud,MM:ud,y:ud,yy:ud},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}}),l.defineLocale("tzm-latn",{months:"innayr_br\u02e4ayr\u02e4_mar\u02e4s\u02e4_ibrir_mayyw_ywnyw_ywlywz_\u0263w\u0161t_\u0161wtanbir_kt\u02e4
32wbr\u02e4_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_br\u02e4ayr\u02e4_mar\u02e4s\u02e4_ibrir_mayyw_ywnyw_ywlywz_\u0263w\u0161t_\u0161wtanbir_kt\u02e4wbr\u02e4_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",ss:"%d imik",m:"minu\u1e0d",mm:"%d minu\u1e0d",h:"sa\u025ba",hh:"%d tassa\u025bin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}}),l.defineLocale("tzm",{months:"\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54_\u2d31\u2d55\u2d30\u2d62\u2d55_\u2d4e\u2d30\u2d55\u2d5a_\u2d49\u2d31\u2d54\u2d49\u2d54_\u2d4e\u2d30\u2d62\u2d62\u2d53_\u2d62\u2d53\u2d4f\u2d62\u2d53_\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63_\u2d56\u2d53\u2d5b\u2d5c_\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d3d\u2d5f\u2d53\u2d31\u2d55_\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d37\u2d53\u2d4a\u2d4f\u2d31\u2d49\u2d54".split("_"),monthsShort:"\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54_\u2d31\u2d55\u2d30\u2d62\u2d55_\u2d4e\u2d30\u2d55\u2d5a_\u2d49\u2d31\u2d54\u2d49\u2d54_\u2d4e\u2d30\u2d62\u2d62\u2d53_\u2d62\u2d53\u2d4f\u2d62\u2d53_\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63_\u2d56\u2d53\u2d5b\u2d5c_\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d3d\u2d5f\u2d53\u2d31\u2d55_\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d37\u2d53\u2d4a\u2d4f\u2d31\u2d49\u2d54".split("_"),weekdays:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),weekdaysShort:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),weekdaysMin:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u2d30\u2d59\u2d37\u2d45 \u2d34] LT",nextDay:"[\u2d30\u2d59\u2d3d\u2d30 \u2d34] LT",nextWeek:"dddd [\u2d34] LT",lastDay:"[\u2d30\u2d5a\u2d30\u2d4f\u2d5c \u2d34] LT",lastWeek:"dddd [\u2d34] LT",sameElse:"L"},relativeTime:{future:"\u2d37\u2d30\u2d37\u2d45 \u2d59 \u2d62\u2d30\u2d4f %s",past:"\u2d62\u2d30\u2d4f %s",s:"\u2d49\u2d4e\u2d49\u2d3d",ss:"%d \u2d49\u2d4e\u2d49\u2d3d",m:"\u2d4e\u2d49\u2d4f\u2d53\u2d3a",mm:"%d \u2d4e\u2d49\u2d4f\u2d53\u2d3a",h:"\u2d59\u2d30\u2d44\u2d30",hh:"%d \u2d5c\u2d30\u2d59\u2d59\u2d30\u2d44\u2d49\u2d4f",d:"\u2d30\u2d59\u2d59",dd:"%d o\u2d59\u2d59\u2d30\u2d4f",M:"\u2d30\u2d62o\u2d53\u2d54",MM:"%d \u2d49\u2d62\u2d62\u2d49\u2d54\u2d4f",y:"\u2d30\u2d59\u2d33\u2d30\u2d59",yy:"%d \u2d49\u2d59\u2d33\u2d30\u2d59\u2d4f"},week:{dow:6,doy:12}}),l.defineLocale("ug-cn",{months:"\u064a\u0627\u0646\u06cb\u0627\u0631_\u0641\u06d0\u06cb\u0631\u0627\u0644_\u0645\u0627\u0631\u062a_\u0626\u0627\u067e\u0631\u06d0\u0644_\u0645\u0627\u064a_\u0626\u0649\u064a\u06c7\u0646_\u0626\u0649\u064a\u06c7\u0644_\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a_\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631_\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631_\u0646\u0648\u064a\u0627\u0628\u0649\u0631_\u062f\u06d0\u0643\u0627\u0628\u0649\u0631".split("_"),monthsShort:"\u064a\u0627\u0646\u06cb\u0627\u0631_\u0641\u06d0\u06cb\u0631\u0627\u0644_\u0645\u0627\u0631\u062a_\u0626\u0627\u067e\u0631\u06d0\u0644_\u0645\u0627\u064a_\u0626\u0649\u064a\u06c7\u0646_\u0626\u0649\u064a\u06c7\u0644_\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a_\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631_\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631_\u0646\u0648\u064a\u0627\u0628\u0649\u0631_\u062f\u06d0\u0643\u0627\u0628\u0649\u0631".split("_"),weekdays:"\u064a\u06d5\u0643\u0634\u06d5\u0646\u0628\u06d5_\u062f\u06c8\u0634\u06d5\u0646\u0628\u06d5_\u0633\u06d5\u064a\u0634\u06d5\u0646\u0628\u06d5_\u0686\u0627\u0631\u0634\u06d5\u0646\u0628\u06d5_\u067e\u06d5\u064a\u0634\u06d5\u0646\u0628\u06d5_\u062c\u06c8\u0645\u06d5_\u0634\u06d5\u0646\u0628\u06d5".split("_"),weekdaysShort:"\u064a\u06d5_\u062f\u06c8_\u0633\u06d5_\u0686\u0627_\u067e\u06d5_\u062c\u06c8_\u0634\u06d5".split("_"),weekdaysMin:"\u064a\u06d5_\u062f\u06c8_\u0633\u06d5_\u0686\u0627_\u067e\u06d5_\u062c\u06c8_\u0634\u06d5".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649",LLL:"YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649\u060c HH:mm",LLLL:"dddd\u060c YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649\u060c HH:mm"},meridiemParse:/\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5|\u0633\u06d5\u06be\u06d5\u0631|\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646|\u0686\u06c8\u0634|\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646|\u0643\u06d5\u0686/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5"===a||"\u0633\u06d5\u06be\u06d5\u0631"===a||"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646"===a?e:"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646"===a||"\u0643\u06d5\u0686"===a?e+12:11<=e?e:e+12},meridiem:function(e,a,t){var s=100*e+a;return s<600?"\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5":s<900?"\u0633\u06d5\u06be\u06d5\u0631":s<1130?"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646":s<1230?"\u0686\u06c8\u0634":s<1800?"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646":"\u0643\u06d5\u0686"},calendar:{sameDay:"[\u0628\u06c8\u06af\u06c8\u0646 \u0633\u0627\u0626\u06d5\u062a] LT",nextDay:"[\u0626\u06d5\u062a\u06d5 \u0633\u0627\u0626\u06d5\u062a] LT",nextWeek:"[\u0643\u06d0\u0644\u06d5\u0631\u0643\u0649] dddd [\u0633\u0627\u0626\u06d5\u062a] LT",lastDay:"[\u062a\u06c6\u0646\u06c8\u06af\u06c8\u0646] LT",lastWeek:"[\u0626\u0627\u0644\u062f\u0649\u0646\u0642\u0649] dddd [\u0633\u0627\u0626\u06d5\u062a] LT",sameElse:"L"},relativeTime:{future:"%s \u0643\u06d0\u064a\u0649\u0646",past:"%s \u0628\u06c7\u0631\u06c7\u0646",s:"\u0646\u06d5\u0686\u0686\u06d5 \u0633\u06d0\u0643\u0648\u0646\u062a",ss:"%d \u0633\u06d0\u0643\u0648\u0646\u062a",m:"\u0628\u0649\u0631 \u0645\u0649\u0646\u06c7\u062a",mm:"%d \u0645\u0649\u0646\u06c7\u062a",h:"\u0628\u0649\u0631 \u0633\u0627\u0626\u06d5\u062a",hh:"%
32d \u0633\u0627\u0626\u06d5\u062a",d:"\u0628\u0649\u0631 \u0643\u06c8\u0646",dd:"%d \u0643\u06c8\u0646",M:"\u0628\u0649\u0631 \u0626\u0627\u064a",MM:"%d \u0626\u0627\u064a",y:"\u0628\u0649\u0631 \u064a\u0649\u0644",yy:"%d \u064a\u0649\u0644"},dayOfMonthOrdinalParse:/\d{1,2}(-\u0643\u06c8\u0646\u0649|-\u0626\u0627\u064a|-\u06be\u06d5\u067e\u062a\u06d5)/,ordinal:function(e,a){switch(a){case"d":case"D":case"DDD":return e+"-\u0643\u06c8\u0646\u0649";case"w":case"W":return e+"-\u06be\u06d5\u067e\u062a\u06d5";default:return e}},preparse:function(e){return e.replace(/\u060c/g,",")},postformat:function(e){return e.replace(/,/g,"\u060c")},week:{dow:1,doy:7}}),l.defineLocale("uk",{months:{format:"\u0441\u0456\u0447\u043d\u044f_\u043b\u044e\u0442\u043e\u0433\u043e_\u0431\u0435\u0440\u0435\u0437\u043d\u044f_\u043a\u0432\u0456\u0442\u043d\u044f_\u0442\u0440\u0430\u0432\u043d\u044f_\u0447\u0435\u0440\u0432\u043d\u044f_\u043b\u0438\u043f\u043d\u044f_\u0441\u0435\u0440\u043f\u043d\u044f_\u0432\u0435\u0440\u0435\u0441\u043d\u044f_\u0436\u043e\u0432\u0442\u043d\u044f_\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434\u0430_\u0433\u0440\u0443\u0434\u043d\u044f".split("_"),standalone:"\u0441\u0456\u0447\u0435\u043d\u044c_\u043b\u044e\u0442\u0438\u0439_\u0431\u0435\u0440\u0435\u0437\u0435\u043d\u044c_\u043a\u0432\u0456\u0442\u0435\u043d\u044c_\u0442\u0440\u0430\u0432\u0435\u043d\u044c_\u0447\u0435\u0440\u0432\u0435\u043d\u044c_\u043b\u0438\u043f\u0435\u043d\u044c_\u0441\u0435\u0440\u043f\u0435\u043d\u044c_\u0432\u0435\u0440\u0435\u0441\u0435\u043d\u044c_\u0436\u043e\u0432\u0442\u0435\u043d\u044c_\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434_\u0433\u0440\u0443\u0434\u0435\u043d\u044c".split("_")},monthsShort:"\u0441\u0456\u0447_\u043b\u044e\u0442_\u0431\u0435\u0440_\u043a\u0432\u0456\u0442_\u0442\u0440\u0430\u0432_\u0447\u0435\u0440\u0432_\u043b\u0438\u043f_\u0441\u0435\u0440\u043f_\u0432\u0435\u0440_\u0436\u043e\u0432\u0442_\u043b\u0438\u0441\u0442_\u0433\u0440\u0443\u0434".split("_"),weekdays:function(e,a){var t={nominative:"\u043d\u0435\u0434\u0456\u043b\u044f_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a_\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a_\u0441\u0435\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u044f_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),accusative:"\u043d\u0435\u0434\u0456\u043b\u044e_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a_\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a_\u0441\u0435\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u044e_\u0441\u0443\u0431\u043e\u0442\u0443".split("_"),genitive:"\u043d\u0435\u0434\u0456\u043b\u0456_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043a\u0430_\u0432\u0456\u0432\u0442\u043e\u0440\u043a\u0430_\u0441\u0435\u0440\u0435\u0434\u0438_\u0447\u0435\u0442\u0432\u0435\u0440\u0433\u0430_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u0456_\u0441\u0443\u0431\u043e\u0442\u0438".split("_")};return!0===e?t.nominative.slice(1,7).concat(t.nominative.slice(0,1)):e?t[/(\[[\u0412\u0432\u0423\u0443]\]) ?dddd/.test(a)?"accusative":/\[?(?:\u043c\u0438\u043d\u0443\u043b\u043e\u0457|\u043d\u0430\u0441\u0442\u0443\u043f\u043d\u043e\u0457)? ?\] ?dddd/.test(a)?"genitive":"nominative"][e.day()]:t.nominative},weekdaysShort:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0440.",LLL:"D MMMM YYYY \u0440., HH:mm",LLLL:"dddd, D MMMM YYYY \u0440., HH:mm"},calendar:{sameDay:Md("[\u0421\u044c\u043e\u0433\u043e\u0434\u043d\u0456 "),nextDay:Md("[\u0417\u0430\u0432\u0442\u0440\u0430 "),lastDay:Md("[\u0412\u0447\u043e\u0440\u0430 "),nextWeek:Md("[\u0423] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return Md("[\u041c\u0438\u043d\u0443\u043b\u043e\u0457] dddd [").call(this);case 1:case 2:case 4:return Md("[\u041c\u0438\u043d\u0443\u043b\u043e\u0433\u043e] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"%s \u0442\u043e\u043c\u0443",s:"\u0434\u0435\u043a\u0456\u043b\u044c\u043a\u0430 \u0441\u0435\u043a\u0443\u043d\u0434",ss:ld,m:ld,mm:ld,h:"\u0433\u043e\u0434\u0438\u043d\u0443",hh:ld,d:"\u0434\u0435\u043d\u044c",dd:ld,M:"\u043c\u0456\u0441\u044f\u0446\u044c",MM:ld,y:"\u0440\u0456\u043a",yy:ld},meridiemParse:/\u043d\u043e\u0447\u0456|\u0440\u0430\u043d\u043a\u0443|\u0434\u043d\u044f|\u0432\u0435\u0447\u043e\u0440\u0430/,isPM:function(e){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u043e\u0440\u0430)$/.test(e)},meridiem:function(e,a,t){return e<4?"\u043d\u043e\u0447\u0456":e<12?"\u0440\u0430\u043d\u043a\u0443":e<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u043e\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0439|\u0433\u043e)/,ordinal:function(e,a){switch(a){case"M":case"d":case"DDD":case"w":case"W":return e+"-\u0439";case"D":return e+"-\u0433\u043e";default:return e}},week:{dow:1,doy:7}});var hd=["\u062c\u0646\u0648\u0631\u06cc","\u0641\u0631\u0648\u0631\u06cc","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u0626\u06cc","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0626\u06cc","\u0627\u06af\u0633\u062a","\u0633\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"],Ld=["\u0627\u062a\u0648\u0627\u0631","\u067e\u06cc\u0631","\u0645\u0646\u06af\u0644","\u0628\u062f\u06be","\u062c\u0645\u0639\u0631\u0627\u062a","\u062c\u0645\u0639\u06c1","\u06c1\u064
321\u062a\u06c1"];return l.defineLocale("ur",{months:hd,monthsShort:hd,weekdays:Ld,weekdaysShort:Ld,weekdaysMin:Ld,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd\u060c D MMMM YYYY HH:mm"},meridiemParse:/\u0635\u0628\u062d|\u0634\u0627\u0645/,isPM:function(e){return"\u0634\u0627\u0645"===e},meridiem:function(e,a,t){return e<12?"\u0635\u0628\u062d":"\u0634\u0627\u0645"},calendar:{sameDay:"[\u0622\u062c \u0628\u0648\u0642\u062a] LT",nextDay:"[\u06a9\u0644 \u0628\u0648\u0642\u062a] LT",nextWeek:"dddd [\u0628\u0648\u0642\u062a] LT",lastDay:"[\u06af\u0630\u0634\u062a\u06c1 \u0631\u0648\u0632 \u0628\u0648\u0642\u062a] LT",lastWeek:"[\u06af\u0630\u0634\u062a\u06c1] dddd [\u0628\u0648\u0642\u062a] LT",sameElse:"L"},relativeTime:{future:"%s \u0628\u0639\u062f",past:"%s \u0642\u0628\u0644",s:"\u0686\u0646\u062f \u0633\u06cc\u06a9\u0646\u0688",ss:"%d \u0633\u06cc\u06a9\u0646\u0688",m:"\u0627\u06cc\u06a9 \u0645\u0646\u0679",mm:"%d \u0645\u0646\u0679",h:"\u0627\u06cc\u06a9 \u06af\u06be\u0646\u0679\u06c1",hh:"%d \u06af\u06be\u0646\u0679\u06d2",d:"\u0627\u06cc\u06a9 \u062f\u0646",dd:"%d \u062f\u0646",M:"\u0627\u06cc\u06a9 \u0645\u0627\u06c1",MM:"%d \u0645\u0627\u06c1",y:"\u0627\u06cc\u06a9 \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(e){return e.replace(/\u060c/g,",")},postformat:function(e){return e.replace(/,/g,"\u060c")},week:{dow:1,doy:4}}),l.defineLocale("uz-latn",{months:"Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr".split("_"),monthsShort:"Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek".split("_"),weekdays:"Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba".split("_"),weekdaysShort:"Yak_Dush_Sesh_Chor_Pay_Jum_Shan".split("_"),weekdaysMin:"Ya_Du_Se_Cho_Pa_Ju_Sha".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Bugun soat] LT [da]",nextDay:"[Ertaga] LT [da]",nextWeek:"dddd [kuni soat] LT [da]",lastDay:"[Kecha soat] LT [da]",lastWeek:"[O'tgan] dddd [kuni soat] LT [da]",sameElse:"L"},relativeTime:{future:"Yaqin %s ichida",past:"Bir necha %s oldin",s:"soniya",ss:"%d soniya",m:"bir daqiqa",mm:"%d daqiqa",h:"bir soat",hh:"%d soat",d:"bir kun",dd:"%d kun",M:"bir oy",MM:"%d oy",y:"bir yil",yy:"%d yil"},week:{dow:1,doy:7}}),l.defineLocale("uz",{months:"\u044f\u043d\u0432\u0430\u0440_\u0444\u0435\u0432\u0440\u0430\u043b_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440_\u043e\u043a\u0442\u044f\u0431\u0440_\u043d\u043e\u044f\u0431\u0440_\u0434\u0435\u043a\u0430\u0431\u0440".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u042f\u043a\u0448\u0430\u043d\u0431\u0430_\u0414\u0443\u0448\u0430\u043d\u0431\u0430_\u0421\u0435\u0448\u0430\u043d\u0431\u0430_\u0427\u043e\u0440\u0448\u0430\u043d\u0431\u0430_\u041f\u0430\u0439\u0448\u0430\u043d\u0431\u0430_\u0416\u0443\u043c\u0430_\u0428\u0430\u043d\u0431\u0430".split("_"),weekdaysShort:"\u042f\u043a\u0448_\u0414\u0443\u0448_\u0421\u0435\u0448_\u0427\u043e\u0440_\u041f\u0430\u0439_\u0416\u0443\u043c_\u0428\u0430\u043d".split("_"),weekdaysMin:"\u042f\u043a_\u0414\u0443_\u0421\u0435_\u0427\u043e_\u041f\u0430_\u0416\u0443_\u0428\u0430".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[\u0411\u0443\u0433\u0443\u043d \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",nextDay:"[\u042d\u0440\u0442\u0430\u0433\u0430] LT [\u0434\u0430]",nextWeek:"dddd [\u043a\u0443\u043d\u0438 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",lastDay:"[\u041a\u0435\u0447\u0430 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",lastWeek:"[\u0423\u0442\u0433\u0430\u043d] dddd [\u043a\u0443\u043d\u0438 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",sameElse:"L"},relativeTime:{future:"\u042f\u043a\u0438\u043d %s \u0438\u0447\u0438\u0434\u0430",past:"\u0411\u0438\u0440 \u043d\u0435\u0447\u0430 %s \u043e\u043b\u0434\u0438\u043d",s:"\u0444\u0443\u0440\u0441\u0430\u0442",ss:"%d \u0444\u0443\u0440\u0441\u0430\u0442",m:"\u0431\u0438\u0440 \u0434\u0430\u043a\u0438\u043a\u0430",mm:"%d \u0434\u0430\u043a\u0438\u043a\u0430",h:"\u0431\u0438\u0440 \u0441\u043e\u0430\u0442",hh:"%d \u0441\u043e\u0430\u0442",d:"\u0431\u0438\u0440 \u043a\u0443\u043d",dd:"%d \u043a\u0443\u043d",M:"\u0431\u0438\u0440 \u043e\u0439",MM:"%d \u043e\u0439",y:"\u0431\u0438\u0440 \u0439\u0438\u043b",yy:"%d \u0439\u0438\u043b"},week:{dow:1,doy:7}}),l.defineLocale("vi",{months:"th\xe1ng 1_th\xe1ng 2_th\xe1ng 3_th\xe1ng 4_th\xe1ng 5_th\xe1ng 6_th\xe1ng 7_th\xe1ng 8_th\xe1ng 9_th\xe1ng 10_th\xe1ng 11_th\xe1ng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"ch\u1ee7 nh\u1eadt_th\u1ee9 hai_th\u1ee9 ba_th\u1ee9 t\u01b0_th\u1ee9 n\u0103m_th\u1ee9 s\xe1u_th\u1ee9 b\u1ea3y".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(e){return/^ch$/i.test(e)}
vendor: 4,189 bytes, line 32
32,meridiem:function(e,a,t){return e<12?t?"sa":"SA":t?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [n\u0103m] YYYY",LLL:"D MMMM [n\u0103m] YYYY HH:mm",LLLL:"dddd, D MMMM [n\u0103m] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[H\xf4m nay l\xfac] LT",nextDay:"[Ng\xe0y mai l\xfac] LT",nextWeek:"dddd [tu\u1ea7n t\u1edbi l\xfac] LT",lastDay:"[H\xf4m qua l\xfac] LT",lastWeek:"dddd [tu\u1ea7n r\u1ed3i l\xfac] LT",sameElse:"L"},relativeTime:{future:"%s t\u1edbi",past:"%s tr\u01b0\u1edbc",s:"v\xe0i gi\xe2y",ss:"%d gi\xe2y",m:"m\u1ed9t ph\xfat",mm:"%d ph\xfat",h:"m\u1ed9t gi\u1edd",hh:"%d gi\u1edd",d:"m\u1ed9t ng\xe0y",dd:"%d ng\xe0y",M:"m\u1ed9t th\xe1ng",MM:"%d th\xe1ng",y:"m\u1ed9t n\u0103m",yy:"%d n\u0103m"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}}),l.defineLocale("x-pseudo",{months:"J~\xe1\xf1\xfa\xe1~r\xfd_F~\xe9br\xfa~\xe1r\xfd_~M\xe1rc~h_\xc1p~r\xedl_~M\xe1\xfd_~J\xfa\xf1\xe9~_J\xfal~\xfd_\xc1\xfa~g\xfast~_S\xe9p~t\xe9mb~\xe9r_\xd3~ct\xf3b~\xe9r_\xd1~\xf3v\xe9m~b\xe9r_~D\xe9c\xe9~mb\xe9r".split("_"),monthsShort:"J~\xe1\xf1_~F\xe9b_~M\xe1r_~\xc1pr_~M\xe1\xfd_~J\xfa\xf1_~J\xfal_~\xc1\xfag_~S\xe9p_~\xd3ct_~\xd1\xf3v_~D\xe9c".split("_"),monthsParseExact:!0,weekdays:"S~\xfa\xf1d\xe1~\xfd_M\xf3~\xf1d\xe1\xfd~_T\xfa\xe9~sd\xe1\xfd~_W\xe9d~\xf1\xe9sd~\xe1\xfd_T~h\xfars~d\xe1\xfd_~Fr\xedd~\xe1\xfd_S~\xe1t\xfar~d\xe1\xfd".split("_"),weekdaysShort:"S~\xfa\xf1_~M\xf3\xf1_~T\xfa\xe9_~W\xe9d_~Th\xfa_~Fr\xed_~S\xe1t".split("_"),weekdaysMin:"S~\xfa_M\xf3~_T\xfa_~W\xe9_T~h_Fr~_S\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[T~\xf3d\xe1~\xfd \xe1t] LT",nextDay:"[T~\xf3m\xf3~rr\xf3~w \xe1t] LT",nextWeek:"dddd [\xe1t] LT",lastDay:"[\xdd~\xe9st~\xe9rd\xe1~\xfd \xe1t] LT",lastWeek:"[L~\xe1st] dddd [\xe1t] LT",sameElse:"L"},relativeTime:{future:"\xed~\xf1 %s",past:"%s \xe1~g\xf3",s:"\xe1 ~f\xe9w ~s\xe9c\xf3~\xf1ds",ss:"%d s~\xe9c\xf3\xf1~ds",m:"\xe1 ~m\xed\xf1~\xfat\xe9",mm:"%d m~\xed\xf1\xfa~t\xe9s",h:"\xe1~\xf1 h\xf3~\xfar",hh:"%d h~\xf3\xfars",d:"\xe1 ~d\xe1\xfd",dd:"%d d~\xe1\xfds",M:"\xe1 ~m\xf3\xf1~th",MM:"%d m~\xf3\xf1t~hs",y:"\xe1 ~\xfd\xe9\xe1r",yy:"%d \xfd~\xe9\xe1rs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var a=e%10;return e+(1==~~(e%100/10)?"th":1===a?"st":2===a?"nd":3===a?"rd":"th")},week:{dow:1,doy:4}}),l.defineLocale("yo",{months:"S\u1eb9\u0301r\u1eb9\u0301_E\u0300re\u0300le\u0300_\u1eb8r\u1eb9\u0300na\u0300_I\u0300gbe\u0301_E\u0300bibi_O\u0300ku\u0300du_Ag\u1eb9mo_O\u0300gu\u0301n_Owewe_\u1ecc\u0300wa\u0300ra\u0300_Be\u0301lu\u0301_\u1ecc\u0300p\u1eb9\u0300\u0300".split("_"),monthsShort:"S\u1eb9\u0301r_E\u0300rl_\u1eb8rn_I\u0300gb_E\u0300bi_O\u0300ku\u0300_Ag\u1eb9_O\u0300gu\u0301_Owe_\u1ecc\u0300wa\u0300_Be\u0301l_\u1ecc\u0300p\u1eb9\u0300\u0300".split("_"),weekdays:"A\u0300i\u0300ku\u0301_Aje\u0301_I\u0300s\u1eb9\u0301gun_\u1eccj\u1ecd\u0301ru\u0301_\u1eccj\u1ecd\u0301b\u1ecd_\u1eb8ti\u0300_A\u0300ba\u0301m\u1eb9\u0301ta".split("_"),weekdaysShort:"A\u0300i\u0300k_Aje\u0301_I\u0300s\u1eb9\u0301_\u1eccjr_\u1eccjb_\u1eb8ti\u0300_A\u0300ba\u0301".split("_"),weekdaysMin:"A\u0300i\u0300_Aj_I\u0300s_\u1eccr_\u1eccb_\u1eb8t_A\u0300b".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[O\u0300ni\u0300 ni] LT",nextDay:"[\u1ecc\u0300la ni] LT",nextWeek:"dddd [\u1eccs\u1eb9\u0300 to\u0301n'b\u1ecd] [ni] LT",lastDay:"[A\u0300na ni] LT",lastWeek:"dddd [\u1eccs\u1eb9\u0300 to\u0301l\u1ecd\u0301] [ni] LT",sameElse:"L"},relativeTime:{future:"ni\u0301 %s",past:"%s k\u1ecdja\u0301",s:"i\u0300s\u1eb9ju\u0301 aaya\u0301 die",ss:"aaya\u0301 %d",m:"i\u0300s\u1eb9ju\u0301 kan",mm:"i\u0300s\u1eb9ju\u0301 %d",h:"wa\u0301kati kan",hh:"wa\u0301kati %d",d:"\u1ecdj\u1ecd\u0301 kan",dd:"\u1ecdj\u1ecd\u0301 %d",M:"osu\u0300 kan",MM:"osu\u0300 %d",y:"\u1ecddu\u0301n kan",yy:"\u1ecddu\u0301n %d"},dayOfMonthOrdinalParse:/\u1ecdj\u1ecd\u0301\s\d{1,2}
32/,ordinal:"\u1ecdj\u1ecd\u0301 %d",week:{dow:1,doy:4}}),l.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u5468\u65e5_\u5468\u4e00_\u5468\u4e8c_\u5468\u4e09_\u5468\u56db_\u5468\u4e94_\u5468\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5Ah\u70b9mm\u5206",LLLL:"YYYY\u5e74M\u6708D\u65e5ddddAh\u70b9mm\u5206",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u51cc\u6668"===a||"\u65e9\u4e0a"===a||"\u4e0a\u5348"===a?e:"\u4e0b\u5348"===a||"\u665a\u4e0a"===a?e+12:11<=e?e:e+12},meridiem:function(e,a,t){var s=100*e+a;return s<600?"\u51cc\u6668":s<900?"\u65e9\u4e0a":s<1130?"\u4e0a\u5348":s<1230?"\u4e2d\u5348":s<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929]LT",nextDay:"[\u660e\u5929]LT",nextWeek:"[\u4e0b]ddddLT",lastDay:"[\u6628\u5929]LT",lastWeek:"[\u4e0a]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u5468)/,ordinal:function(e,a){switch(a){case"d":case"D":case"DDD":return e+"\u65e5";case"M":return e+"\u6708";case"w":case"W":return e+"\u5468";default:return e}},relativeTime:{future:"%s\u5185",past:"%s\u524d",s:"\u51e0\u79d2",ss:"%d \u79d2",m:"1 \u5206\u949f",mm:"%d \u5206\u949f",h:"1 \u5c0f\u65f6",hh:"%d \u5c0f\u65f6",d:"1 \u5929",dd:"%d \u5929",M:"1 \u4e2a\u6708",MM:"%d \u4e2a\u6708",y:"1 \u5e74",yy:"%d \u5e74"},week:{dow:1,doy:4}}),l.defineLocale("zh-hk",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u51cc\u6668"===a||"\u65e9\u4e0a"===a||"\u4e0a\u5348"===a?e:"\u4e2d\u5348"===a?11<=e?e:e+12:"\u4e0b\u5348"===a||"\u665a\u4e0a"===a?e+12:void 0},meridiem:function(e,a,t){var s=100*e+a;return s<600?"\u51cc\u6668":s<900?"\u65e9\u4e0a":s<1130?"\u4e0a\u5348":s<1230?"\u4e2d\u5348":s<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929]LT",nextDay:"[\u660e\u5929]LT",nextWeek:"[\u4e0b]ddddLT",lastDay:"[\u6628\u5929]LT",lastWeek:"[\u4e0a]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(e,a){switch(a){case"d":case"D":case"DDD":return e+"\u65e5";case"M":return e+"\u6708";case"w":case"W":return e+"\u9031";default:return e}},relativeTime:{future:"%s\u5167",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}}),l.defineLocale("zh-tw",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u51cc\u6668"===a||"\u65e9\u4e0a"===a||"\u4e0a\u5348"===a?e:"\u4e2d\u5348"===a?11<=e?e:e+12:"\u4e0b\u5348"===a||"\u665a\u4e0a"===a?e+12:void 0},meridiem:function(e,a,t){var s=100*e+a;return s<600?"\u51cc\u6668":s<900?"\u65e9\u4e0a":s<1130?"\u4e0a\u5348":s<1230?"\u4e2d\u5348":s<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929] LT",nextDay:"[\u660e\u5929] LT",nextWeek:"[\u4e0b]dddd LT",lastDay:"[\u6628\u5929] LT",lastWeek:"[\u4e0a]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(e,a){switch(a){case"d":case"D":case"DDD":return e+"\u65e5";case"M":return e+"\u6708";case"w":case"W":return e+"\u9031";default:return e}},relativeTime:{future:"%s\u5167",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}}),l.locale("en"),l}); 33 34// this loading routine is shamelessly copied from the "moment-duration-format" plugin 35// @see https://github.com/jsmreese/moment-duration-format 36(function loadMomentJS (root, factory) { 37 if (typeof define === 'function' && define.amd) { 38 // Detected AMD; 39 // will register as an anonymous module 40 define(['moment'], factory); 41 } else if (typeof exports === 'object') { 42 // Detected node.js; 43 // this does not work with strict CommonJS, but only CommonJS-like environments 44 // whicht support `module.exports`, like node.js does 45 try { 46 module.exports = factory(require('moment')); 47 } catch (ignore) { 48 // if `moment.js` is not available, leave the setup to the user; 49 // this is necessary if the user works with other plugins which will 50 // come with it's very own version of `moment.js` as a peer dependency 51 // @see https://github.com/icambron/twix.js/issues/102 52 module.exports = factory; 53 } 54 } 55 56 if (root) { 57 //working with globals; 58 root.momentJDateFormatParserSetup = root.moment ? factory(root.moment) : factory; 59 } 60})(this, function loadPlugin (moment) { 61 /** 62 * The internal **Java** date formats cache. 63 * 64 * @property javaDateFormats 65 * @type {Object} 66 */ 67 var javaDateFormats = {}; 68 69 /** 70 * The internal **moment.js** date formats cache. 71 * 72 * @property momentDateFormats 73 * @type {Object} 74 */ 75 var momentDateFormats = {}; 76 77 /** 78 * The format pattern mapping from Java format to momentjs. 79 * 80 * @property javaFormatMapping 81 * @type {Object} 82 */ 83 var javaFormatMapping = { 84 d: 'D', 85 dd: 'DD', 86 y: 'YYYY', 87 yy: 'YY', 88 yyy: 'YYYY', 89 yyyy: 'YYYY', 90 a: 'a', 91 A: 'A', 92 M: 'M', 93 MM: 'MM', 94 MMM: 'MMM', 95 MMMM: 'MMMM', 96 h: 'h', 97 hh: 'hh', 98 H: 'H', 99 HH: 'HH', 100 m: 'm', 101 mm: 'mm', 102 s: 's', 103 ss: 'ss', 104 S: 'SSS', 105 SS: 'SSS', 106 SSS: 'SSS', 107 E: 'ddd', 108 EE: 'ddd', 109 EEE: 'ddd', 110 EEEE: 'dddd', 111 EEEEE: 'dddd', 112 EEEEEE: 'dddd', 113 D: 'DDD', 114 w: 'W', 115 ww: 'WW', 116 z: 'ZZ', 117 zzzz: 'Z', 118 Z: 'ZZ', 119 X: 'ZZ', 120 XX: 'ZZ', 121 XXX: 'Z', 122 u: 'E' 123 }; 124 125 /** 126 * The format pattern mapping from Java format to moment.js. 127 * 128 * @property momentFormatMapping 129 * @type {Object} 130 */ 131 var momentFormatMapping = { 132 D: 'd', 133 DD: 'dd', 134 YY: 'yy', 135 YYY: 'yyyy', 136 YYYY: 'yyyy', 137 a: 'a', 138 A: 'a', 139 M: 'M', 140 MM: 'MM', 141 MMM: 'MMM', 142 MMMM: 'MMMM', 143 h: 'h', 144 hh: 'hh', 145 H: 'H', 146 HH: 'HH', 147 m: 'm', 148 mm: 'mm', 149 s: 's', 150 ss: 'ss', 151 S: 'S', 152 SS: 'S', 153 SSS: 'S', 154 ddd: 'E', 155 dddd: 'EEEE', 156 DDD: 'D', 157 W: 'w', 158 WW: 'ww',
159 ZZ: 'z', 160 Z: 'XXX', 161 E: 'u' 162 }; 163 164 165 /** 166 * Translates the java date format String to a momentjs format String. 167 * 168 * @function translateFormat 169 * @param {String} formatString The unmodified format string 170 * @param {Object} mapping The date format mapping object 171 * @returns {String} 172 */ 173 var translateFormat = function (formatString, mapping) { 174 var len = formatString.length; 175 var i = 0; 176 var startIndex = -1; 177 var lastChar = null; 178 var currentChar = ""; 179 var resultString = ""; 180 181 for (; i < len; i++) { 182 currentChar = formatString.charAt(i); 183 184 if (lastChar === null || lastChar !== currentChar) { 185 // change detected 186 resultString = _appendMappedString(formatString, mapping, startIndex, i, resultString); 187 188 startIndex = i; 189 } 190 191 lastChar = currentChar; 192 } 193 194 return _appendMappedString(formatString, mapping, startIndex, i, resultString); 195 }; 196 197 /** 198 * Checks if the substring is a mapped date format pattern and adds it to the result format String. 199 * 200 * @function _appendMappedString 201 * @param {String} formatString The unmodified format String. 202 * @param {Object} mapping The date format mapping Object. 203 * @param {Number} startIndex The begin index of the continuous format characters. 204 * @param {Number} currentIndex The last index of the continuous format characters. 205 * @param {String} resultString The result format String. 206 * @returns {String} 207 * @private 208 */ 209 var _appendMappedString = function (formatString, mapping, startIndex, currentIndex, resultString) { 210 if (startIndex !== -1) { 211 var tempString = formatString.substring(startIndex, currentIndex); 212 213 // check if the temporary string has a known mapping 214 if (mapping[tempString]) { 215 tempString = mapping[tempString]; 216 } 217 218 resultString += tempString; 219 } 220 221 return resultString; 222 }; 223 224// init 225 function init (momentJS) { 226 if (!momentJS) { 227 throw new Error("Moment JDateFormatParser Plugin - Cannot find moment.js instance."); 228 } 229 230 // register as private function (good for testing purposes) 231 momentJS.fn.__translateJavaFormat = translateFormat; 232 233 /** 234 * Translates the momentjs format String to a java date format String. 235 * 236 * @function toJDFString 237 * @param {String} formatString The format String to be translated. 238 * @returns {String} 239 */ 240 momentJS.fn.toMomentFormatString = function (formatString) { 241 if (!javaDateFormats[formatString]) { 242 var mapped = ""; 243 var regexp = /[^']+|('[^']*')/g; 244 var part = ''; 245 246 while ((part = regexp.exec(formatString))) { 247 part = part[0]; 248 249 if (part.match(/'(.*?)'/)) { 250 mapped += "[" + part.substring(1, part.length - 1) + "]"; 251 } else { 252 mapped += translateFormat(part, javaFormatMapping); 253 } 254 } 255 256 javaDateFormats[formatString] = mapped; 257 } 258 259 return javaDateFormats[formatString]; 260 }; 261 262 /** 263 * Format the moment with the given java date format String. 264 * 265 * @function formatWithJDF 266 * @param {String} formatString The format String to be translated. 267 * @returns {String} 268 */ 269 momentJS.fn.formatWithJDF = function (formatString) { 270 return this.format(this.toMomentFormatString(formatString)); 271 }; 272 273 /** 274 * Translates the momentjs format string to a java date format string 275 * 276 * @function toJDFString 277 * @param {String} formatString The format String to be translated. 278 * @returns {String} 279 */ 280 momentJS.fn.toJDFString = function (formatString) { 281 if (!momentDateFormats[formatString]) { 282 momentDateFormats[formatString] = translateFormat(formatString, momentFormatMapping); 283 } 284 285 return momentDateFormats[formatString]; 286 }; 287 } 288 289 // Initialize JDateFormatParser Plugin on the global moment instance. 290 init(moment); 291 292 // Return the init function so that the JDateFormatParser Plugin can be 293 // initialized on other moment instances. 294 return init; 295}); 296 297!function(a){"use strict";if("function"==typeof define&&define.amd)define(["jquery","moment"],a);
vendor: 7,012 bytes, line 297
297else if("object"==typeof exports)module.exports=a(require("jquery"),require("moment"));else{if("undefined"==typeof jQuery)throw"bootstrap-datetimepicker requires jQuery to be loaded first";if("undefined"==typeof moment)throw"bootstrap-datetimepicker requires Moment.js to be loaded first";a(jQuery,moment)}}(function(a,b){"use strict";if(!b)throw new Error("bootstrap-datetimepicker requires Moment.js to be loaded first");var c=function(c,d){var e,f,g,h,i,j,k,l={},m=!0,n=!1,o=!1,p=0,q=[{clsName:"days",navFnc:"M",navStep:1},{clsName:"months",navFnc:"y",navStep:1},{clsName:"years",navFnc:"y",navStep:10},{clsName:"decades",navFnc:"y",navStep:100}],r=["days","months","years","decades"],s=["top","bottom","auto"],t=["left","right","auto"],u=["default","top","bottom"],v={up:38,38:"up",down:40,40:"down",left:37,37:"left",right:39,39:"right",tab:9,9:"tab",escape:27,27:"escape",enter:13,13:"enter",pageUp:33,33:"pageUp",pageDown:34,34:"pageDown",shift:16,16:"shift",control:17,17:"control",space:32,32:"space",t:84,84:"t",delete:46,46:"delete"},w={},x=function(){return void 0!==b.tz&&void 0!==d.timeZone&&null!==d.timeZone&&""!==d.timeZone},y=function(a){var c;return c=void 0===a||null===a?b():b.isDate(a)||b.isMoment(a)?b(a):x()?b.tz(a,j,d.useStrict,d.timeZone):b(a,j,d.useStrict),x()&&c.tz(d.timeZone),c},z=function(a){if("string"!=typeof a||a.length>1)throw new TypeError("isEnabled expects a single character string parameter");switch(a){case"y":return i.indexOf("Y")!==-1;case"M":return i.indexOf("M")!==-1;case"d":return i.toLowerCase().indexOf("d")!==-1;case"h":case"H":return i.toLowerCase().indexOf("h")!==-1;case"m":return i.indexOf("m")!==-1;case"s":return i.indexOf("s")!==-1;default:return!1}},A=function(){return z("h")||z("m")||z("s")},B=function(){return z("y")||z("M")||z("d")},C=function(){var b=a("<thead>").append(a("<tr>").append(a("<th>").addClass("prev").attr("data-action","previous").append(a("<span>").addClass(d.icons.previous))).append(a("<th>").addClass("picker-switch").attr("data-action","pickerSwitch").attr("colspan",d.calendarWeeks?"6":"5")).append(a("<th>").addClass("next").attr("data-action","next").append(a("<span>").addClass(d.icons.next)))),c=a("<tbody>").append(a("<tr>").append(a("<td>").attr("colspan",d.calendarWeeks?"8":"7")));return[a("<div>").addClass("datepicker-days").append(a("<table>").addClass("table-condensed").append(b).append(a("<tbody>"))),a("<div>").addClass("datepicker-months").append(a("<table>").addClass("table-condensed").append(b.clone()).append(c.clone())),a("<div>").addClass("datepicker-years").append(a("<table>").addClass("table-condensed").append(b.clone()).append(c.clone())),a("<div>").addClass("datepicker-decades").append(a("<table>").addClass("table-condensed").append(b.clone()).append(c.clone()))]},D=function(){var b=a("<tr>"),c=a("<tr>"),e=a("<tr>");return z("h")&&(b.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1",title:d.tooltips.incrementHour}).addClass("btn").attr("data-action","incrementHours").append(a("<span>").addClass(d.icons.up)))),c.append(a("<td>").append(a("<span>").addClass("timepicker-hour").attr({"data-time-component":"hours",title:d.tooltips.pickHour}).attr("data-action","showHours"))),e.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1",title:d.tooltips.decrementHour}).addClass("btn").attr("data-action","decrementHours").append(a("<span>").addClass(d.icons.down))))),z("m")&&(z("h")&&(b.append(a("<td>").addClass("separator")),c.append(a("<td>").addClass("separator").html(":")),e.append(a("<td>").addClass("separator"))),b.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1",title:d.tooltips.incrementMinute}).addClass("btn").attr("data-action","incrementMinutes").append(a("<span>").addClass(d.icons.up)))),c.append(a("<td>").append(a("<span>").addClass("timepicker-minute").attr({"data-time-component":"minutes",title:d.tooltips.pickMinute}).attr("data-action","showMinutes"))),e.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1",title:d.tooltips.decrementMinute}).addClass("btn").attr("data-action","decrementMinutes").append(a("<span>").addClass(d.icons.down))))),z("s")&&(z("m")&&(b.append(a("<td>").addClass("separator")),c.append(a("<td>").addClass("separator").html(":")),e.append(a("<td>").addClass("separator"))),b.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1",title:d.tooltips.incrementSecond}).addClass("btn").attr("data-action","incrementSeconds").append(a("<span>").addClass(d.icons.up)))),c.append(a("<td>").append(a("<span>").addClass("timepicker-second").attr({"data-time-component":"seconds",title:d.tooltips.pickSecond}).attr("data-action","showSeconds"))),e.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1",title:d.tooltips.decrementSecond}).addClass("btn").attr("data-action","decrementSeconds").append(a("<span>").addClass(d.icons.down))))),h||(b.append(a("<td>").addClass("separator")),c.append(a("<td>").append(a("<button>").addClass("btn btn-primary").attr({"data-action":"togglePeriod",tabindex:"-1",title:d.tooltips.togglePeriod}))),e.append(a("<td>").addClass("separator"))),a("<div>").addClass("timepicker-picker").append(a("<table>").addClass("table-condensed").append([b,c,e]))},E=function(){var b=a("<div>").addClass("timepicker-hours").append(a("<table>").addClass("table-condensed")),c=a("<div>").addClass("timepicker-minutes").append(a("<table>").addClass("table-condensed")),d=a("<div>").addClass("timepicker-seconds").append(a("<table>").addClass("table-condensed")),e=[D()];return z("h")&&e.push(b),z("m")&&e.push(c),z("s")&&e.push(d),e},F=function(){var b=[];return d.showTodayButton&&b.push(a("<td>").append(a("<a>").attr({"data-action":"today",title:d.tooltips.today}).append(a("<span>").addClass(d.icons.today)))),!d.sideBySide&&B()&&A()&&b.push(a("<td>").append(a("<a>").attr({"data-action":"togglePicker",title:d.tooltips.selectTime}).append(a("<span>").addClass(d.icons.time)))),d.showClear&&b.push(a("<td>").append(a("<a>").attr({"data-action":"clear",title:d.tooltips.clear}).append(a("<span>").addClass(d.icons.clear)))),d.showClose&&b.push(a("<td>").append(a("<a>").attr({"data-action":"close",title:d.tooltips.close}).append(a("<span>").addClass(d.icons.close)))),a("<table>").addClass("table-condensed").append(a("<tbody>").append(a("<tr>").append(b)))},G=function(){var b=a("<div>").addClass("bootstrap-datetimepicker-widget dropdown-menu"),c=a("<div>").addClass("datepicker").append(C()),e=a("<div>").addClass("timepicker").append(E()),f=a("<ul>").addClass("list-unstyled"),g=a("<li>").addClass("picker-switch"+(d.collapse?" accordion-toggle":"")).append(F());return d.inline&&b.removeClass("dropdown-menu"),h&&b.addClass("usetwentyfour"),z("s")&&!h&&b.addClass("wider"),d.sideBySide&&B()&&A()?(b.addClass("timepicker-sbs"),"top"===d.toolbarPlacement&&b.append(g),b.append(a("<div>").addClass("row").append(c.addClass("col-md-6")).append(e.addClass("col-md-6"))),"bottom"===d.toolbarPlacement&&b.append(g),b):("top"===d.toolbarPlacement&&f.append(g),B()&&f.append(a("<li>
297").addClass(d.collapse&&A()?"collapse in":"").append(c)),"default"===d.toolbarPlacement&&f.append(g),A()&&f.append(a("<li>").addClass(d.collapse&&B()?"collapse":"").append(e)),"bottom"===d.toolbarPlacement&&f.append(g),b.append(f))},H=function(){var b,e={};return b=c.is("input")||d.inline?c.data():c.find("input").data(),b.dateOptions&&b.dateOptions instanceof Object&&(e=a.extend(!0,e,b.dateOptions)),a.each(d,function(a){var c="date"+a.charAt(0).toUpperCase()+a.slice(1);void 0!==b[c]&&(e[a]=b[c])}),e},I=function(){var b,e=(n||c).position(),f=(n||c).offset(),g=d.widgetPositioning.vertical,h=d.widgetPositioning.horizontal;if(d.widgetParent)b=d.widgetParent.append(o);else if(c.is("input"))b=c.after(o).parent();else{if(d.inline)return void(b=c.append(o));b=c,c.children().first().after(o)}if("auto"===g&&(g=f.top+1.5*o.height()>=a(window).height()+a(window).scrollTop()&&o.height()+c.outerHeight()<f.top?"top":"bottom"),"auto"===h&&(h=b.width()<f.left+o.outerWidth()/2&&f.left+o.outerWidth()>a(window).width()?"right":"left"),"top"===g?o.addClass("top").removeClass("bottom"):o.addClass("bottom").removeClass("top"),"right"===h?o.addClass("pull-right"):o.removeClass("pull-right"),"static"===b.css("position")&&(b=b.parents().filter(function(){return"static"!==a(this).css("position")}).first()),0===b.length)throw new Error("datetimepicker component should be placed within a non-static positioned container");o.css({top:"top"===g?"auto":e.top+c.outerHeight(),bottom:"top"===g?b.outerHeight()-(b===c?0:e.top):"auto",left:"left"===h?b===c?0:e.left:"auto",right:"left"===h?"auto":b.outerWidth()-c.outerWidth()-(b===c?0:e.left)})},J=function(a){"dp.change"===a.type&&(a.date&&a.date.isSame(a.oldDate)||!a.date&&!a.oldDate)||c.trigger(a)},K=function(a){"y"===a&&(a="YYYY"),J({type:"dp.update",change:a,viewDate:f.clone()})},L=function(a){o&&(a&&(k=Math.max(p,Math.min(3,k+a))),o.find(".datepicker > div").hide().filter(".datepicker-"+q[k].clsName).show())},M=function(){var b=a("<tr>"),c=f.clone().startOf("w").startOf("d");for(d.calendarWeeks===!0&&b.append(a("<th>").addClass("cw").text("#"));c.isBefore(f.clone().endOf("w"));)b.append(a("<th>").addClass("dow").text(c.format("dd"))),c.add(1,"d");o.find(".datepicker-days thead").append(b)},N=function(a){return d.disabledDates[a.format("YYYY-MM-DD")]===!0},O=function(a){return d.enabledDates[a.format("YYYY-MM-DD")]===!0},P=function(a){return d.disabledHours[a.format("H")]===!0},Q=function(a){return d.enabledHours[a.format("H")]===!0},R=function(b,c){if(!b.isValid())return!1;if(d.disabledDates&&"d"===c&&N(b))return!1;if(d.enabledDates&&"d"===c&&!O(b))return!1;if(d.minDate&&b.isBefore(d.minDate,c))return!1;if(d.maxDate&&b.isAfter(d.maxDate,c))return!1;if(d.daysOfWeekDisabled&&"d"===c&&d.daysOfWeekDisabled.indexOf(b.day())!==-1)return!1;if(d.disabledHours&&("h"===c||"m"===c||"s"===c)&&P(b))return!1;if(d.enabledHours&&("h"===c||"m"===c||"s"===c)&&!Q(b))return!1;if(d.disabledTimeIntervals&&("h"===c||"m"===c||"s"===c)){var e=!1;if(a.each(d.disabledTimeIntervals,function(){if(b.isBetween(this[0],this[1]))return e=!0,!1}),e)return!1}return!0},S=function(){for(var b=[],c=f.clone().startOf("y").startOf("d");c.isSame(f,"y");)b.push(a("<span>").attr("data-action","selectMonth").addClass("month").text(c.format("MMM"))),c.add(1,"M");o.find(".datepicker-months td").empty().append(b)},T=function(){var b=o.find(".datepicker-months"),c=b.find("th"),g=b.find("tbody").find("span");c.eq(0).find("span").attr("title",d.tooltips.prevYear),c.eq(1).attr("title",d.tooltips.selectYear),c.eq(2).find("span").attr("title",d.tooltips.nextYear),b.find(".disabled").removeClass("disabled"),R(f.clone().subtract(1,"y"),"y")||c.eq(0).addClass("disabled"),c.eq(1).text(f.year()),R(f.clone().add(1,"y"),"y")||c.eq(2).addClass("disabled"),g.removeClass("active"),e.isSame(f,"y")&&!m&&g.eq(e.month()).addClass("active"),g.each(function(b){R(f.clone().month(b),"M")||a(this).addClass("disabled")})},U=function(){var a=o.find(".datepicker-years"),b=a.find("th"),c=f.clone().subtract(5,"y"),g=f.clone().add(6,"y"),h="";for(b.eq(0).find("span").attr("title",d.tooltips.prevDecade),b.eq(1).attr("title",d.tooltips.selectDecade),b.eq(2).find("span").attr("title",d.tooltips.nextDecade),a.find(".disabled").removeClass("disabled"),d.minDate&&d.minDate.isAfter(c,"y")&&b.eq(0).addClass("disabled"),b.eq(1).text(c.year()+"-"+g.year()),d.maxDate&&d.maxDate.isBefore(g,"y")&&b.eq(2).addClass("disabled");!c.isAfter(g,"y");)h+='<span data-action="selectYear" class="year'+(c.isSame(e,"y")&&!m?" active":"")+(R(c,"y")?"":" disabled")+'">'+c.year()+"</span>",c.add(1,"y");a.find("td").html(h)},V=function(){var a,c=o.find(".datepicker-decades"),g=c.find("th"),h=b({y:f.year()-f.year()%100-1}),i=h.clone().add(100,"y"),j=h.clone(),k=!1,l=!1,m="";for(g.eq(0).find("span").attr("title",d.tooltips.prevCentury),g.eq(2).find("span").attr("title",d.tooltips.nextCentury),c.find(".disabled").removeClass("disabled"),(h.isSame(b({y:1900}
vendor: 8,812 bytes, line 297
297))||d.minDate&&d.minDate.isAfter(h,"y"))&&g.eq(0).addClass("disabled"),g.eq(1).text(h.year()+"-"+i.year()),(h.isSame(b({y:2e3}))||d.maxDate&&d.maxDate.isBefore(i,"y"))&&g.eq(2).addClass("disabled");!h.isAfter(i,"y");)a=h.year()+12,k=d.minDate&&d.minDate.isAfter(h,"y")&&d.minDate.year()<=a,l=d.maxDate&&d.maxDate.isAfter(h,"y")&&d.maxDate.year()<=a,m+='<span data-action="selectDecade" class="decade'+(e.isAfter(h)&&e.year()<=a?" active":"")+(R(h,"y")||k||l?"":" disabled")+'" data-selection="'+(h.year()+6)+'">'+(h.year()+1)+" - "+(h.year()+12)+"</span>",h.add(12,"y");m+="<span></span><span></span><span></span>",c.find("td").html(m),g.eq(1).text(j.year()+1+"-"+h.year())},W=function(){var b,c,g,h=o.find(".datepicker-days"),i=h.find("th"),j=[],k=[];if(B()){for(i.eq(0).find("span").attr("title",d.tooltips.prevMonth),i.eq(1).attr("title",d.tooltips.selectMonth),i.eq(2).find("span").attr("title",d.tooltips.nextMonth),h.find(".disabled").removeClass("disabled"),i.eq(1).text(f.format(d.dayViewHeaderFormat)),R(f.clone().subtract(1,"M"),"M")||i.eq(0).addClass("disabled"),R(f.clone().add(1,"M"),"M")||i.eq(2).addClass("disabled"),b=f.clone().startOf("M").startOf("w").startOf("d"),g=0;g<42;g++)0===b.weekday()&&(c=a("<tr>"),d.calendarWeeks&&c.append('<td class="cw">'+b.week()+"</td>"),j.push(c)),k=["day"],b.isBefore(f,"M")&&k.push("old"),b.isAfter(f,"M")&&k.push("new"),b.isSame(e,"d")&&!m&&k.push("active"),R(b,"d")||k.push("disabled"),b.isSame(y(),"d")&&k.push("today"),0!==b.day()&&6!==b.day()||k.push("weekend"),J({type:"dp.classify",date:b,classNames:k}),c.append('<td data-action="selectDay" data-day="'+b.format("L")+'" class="'+k.join(" ")+'">'+b.date()+"</td>"),b.add(1,"d");h.find("tbody").empty().append(j),T(),U(),V()}},X=function(){var b=o.find(".timepicker-hours table"),c=f.clone().startOf("d"),d=[],e=a("<tr>");for(f.hour()>11&&!h&&c.hour(12);c.isSame(f,"d")&&(h||f.hour()<12&&c.hour()<12||f.hour()>11);)c.hour()%4===0&&(e=a("<tr>"),d.push(e)),e.append('<td data-action="selectHour" class="hour'+(R(c,"h")?"":" disabled")+'">'+c.format(h?"HH":"hh")+"</td>"),c.add(1,"h");b.empty().append(d)},Y=function(){for(var b=o.find(".timepicker-minutes table"),c=f.clone().startOf("h"),e=[],g=a("<tr>"),h=1===d.stepping?5:d.stepping;f.isSame(c,"h");)c.minute()%(4*h)===0&&(g=a("<tr>"),e.push(g)),g.append('<td data-action="selectMinute" class="minute'+(R(c,"m")?"":" disabled")+'">'+c.format("mm")+"</td>"),c.add(h,"m");b.empty().append(e)},Z=function(){for(var b=o.find(".timepicker-seconds table"),c=f.clone().startOf("m"),d=[],e=a("<tr>");f.isSame(c,"m");)c.second()%20===0&&(e=a("<tr>"),d.push(e)),e.append('<td data-action="selectSecond" class="second'+(R(c,"s")?"":" disabled")+'">'+c.format("ss")+"</td>"),c.add(5,"s");b.empty().append(d)},$=function(){var a,b,c=o.find(".timepicker span[data-time-component]");h||(a=o.find(".timepicker [data-action=togglePeriod]"),b=e.clone().add(e.hours()>=12?-12:12,"h"),a.text(e.format("A")),R(b,"h")?a.removeClass("disabled"):a.addClass("disabled")),c.filter("[data-time-component=hours]").text(e.format(h?"HH":"hh")),c.filter("[data-time-component=minutes]").text(e.format("mm")),c.filter("[data-time-component=seconds]").text(e.format("ss")),X(),Y(),Z()},_=function(){o&&(W(),$())},aa=function(a){var b=m?null:e;if(!a)return m=!0,g.val(""),c.data("date",""),J({type:"dp.change",date:!1,oldDate:b}),void _();if(a=a.clone().locale(d.locale),x()&&a.tz(d.timeZone),1!==d.stepping)for(a.minutes(Math.round(a.minutes()/d.stepping)*d.stepping).seconds(0);d.minDate&&a.isBefore(d.minDate);)a.add(d.stepping,"minutes");R(a)?(e=a,f=e.clone(),g.val(e.format(i)),c.data("date",e.format(i)),m=!1,_(),J({type:"dp.change",date:e.clone(),oldDate:b})):(d.keepInvalid?J({type:"dp.change",date:a,oldDate:b}):g.val(m?"":e.format(i)),J({type:"dp.error",date:a,oldDate:b}))},ba=function(){var b=!1;return o?(o.find(".collapse").each(function(){var c=a(this).data("collapse");return!c||!c.transitioning||(b=!0,!1)}),b?l:(n&&n.hasClass("btn")&&n.toggleClass("active"),o.hide(),a(window).off("resize",I),o.off("click","[data-action]"),o.off("mousedown",!1),o.remove(),o=!1,J({type:"dp.hide",date:e.clone()}),g.blur(),f=e.clone(),l)):l},ca=function(){aa(null)},da=function(a){return void 0===d.parseInputDate?(!b.isMoment(a)||a instanceof Date)&&(a=y(a)):a=d.parseInputDate(a),a},ea={next:function(){var a=q[k].navFnc;f.add(q[k].navStep,a),W(),K(a)},previous:function(){var a=q[k].navFnc;f.subtract(q[k].navStep,a),W(),K(a)},pickerSwitch:function(){L(1)},selectMonth:function(b){var c=a(b.target).closest("tbody").find("span").index(a(b.target));f.month(c),k===p?(aa(e.clone().year(f.year()).month(f.month())),d.inline||ba()):(L(-1),W()),K("M")},selectYear:function(b){var c=parseInt(a(b.target).text(),10)||0;f.year(c),k===p?(aa(e.clone().year(f.year())),d.inline||ba()):(L(-1),W()),K("YYYY")},selectDecade:function(b){var c=parseInt(a(b.target).data("selection"),10)||0;f.year(c),k===p?(aa(e.clone().year(f.year())),d.inline||ba()):(L(-1),W()),K("YYYY")},selectDay:function(b){var c=f.clone();a(b.target).is(".old")&&c.subtract(1,"M"),a(b.target).is(".new")&&c.add(1,"M"),aa(c.date(parseInt(a(b.target).text(),10))),A()||d.keepOpen||d.inline||ba()},incrementHours:function(){var a=e.clone().add(1,"h");R(a,"h")&&aa(a)},incrementMinutes:function(){var a=e.clone().add(d.stepping,"m");R(a,"m")&&aa(a)},incrementSeconds:function(){var a=e.clone().add(1,"s");R(a,"s")&&aa(a)},decrementHours:function(){var a=e.clone().subtract(1,"h");R(a,"h")&&aa(a)},decrementMinutes:function(){var a=e.clone().subtract(d.stepping,"m");R(a,"m")&&aa(a)},decrementSeconds:function(){var a=e.clone().subtract(1,"s");R(a,"s")&&aa(a)},togglePeriod:function(){aa(e.clone().add(e.hours()>=12?-12:12,"h"))},togglePicker:function(b){var c,e=a(b.target),f=e.closest("ul"),g=f.find(".in"),h=f.find(".collapse:not(.in)");if(g&&g.length){if(c=g.data("collapse"),c&&c.transitioning)return;g.collapse?(g.collapse("hide"),h.collapse("show")):(g.removeClass("in"),h.addClass("in")),e.is("span")?e.toggleClass(d.icons.time+" "+d.icons.date):e.find("span").toggleClass(d.icons.time+" "+d.icons.date)}},showPicker:function(){o.find(".timepicker > div:not(.timepicker-picker)").hide(),o.find(".timepicker .timepicker-picker").show()},showHours:function(){o.find(".timepicker .timepicker-picker").hide(),o.find(".timepicker .timepicker-hours").show()},showMinutes:function(){o.find(".timepicker .timepicker-picker").hide(),o.find(".timepicker .timepicker-minutes").show()},showSeconds:function(){o.find(".timepicker .timepicker-picker").hide(),o.find(".timepicker .timepicker-seconds").show()},selectHour:function(b){var c=parseInt(a(b.target).text(),10);h||(e.hours()>=12?12!==c&&(c+=12):12===c&&(c=0)),aa(e.clone().hours(c)),ea.showPicker.call(l)},selectMinute:function(b){aa(e.clone().minutes(parseInt(a(b.target).text(),10))),ea.showPicker.call(l)},selectSecond:function(b){aa(e.clone().seconds(parseInt(a(b.target).text(),10))),ea.showPicker.call(l)},clear:ca,today:function(){var a=y();R(a,"d")&&aa(a)},close:ba},fa=function(b){return!a(b.currentTarget).is(".disabled")&&(ea[a(b.currentTarget).data("action")].apply(l,arguments),!1)},ga=function(){var b,c={year:function(a){return a.month(0).date(1).hours(0).seconds(0).minutes(0)},month:function(a){return a.date(1).hours(0).seconds(0).minutes(0)},day:function(a){return a.hours(0).seconds(0).minutes(0)},hour:function(a){return a.seconds(0).minutes(0)},minute:function(a){return a.seconds(0)}};return g.prop("disabled")||!d.ignoreReadonly&&g.prop("readonly")||o?l:(void 0!==g.val()&&0!==g.val().trim().length?aa(da(g.val().trim())):m&&d.useCurrent&&(d.inline||g.is("input")&&0===g.val().trim().length)&&(b=y(),"string"==typeof d.useCurrent&&(b=c[d.useCurrent](b)),aa(b)),o=G(),M(),S(),o.find(".timepicker-hours").hide(),o.find(".timepicker-minutes").hide(),o.find(".timepicker-seconds").hide(),_(),L(),a(window).on("resize",I),o.on("click","[data-action]",fa),o.on("mousedown",!1),n&&n.hasClass("btn")&&n.toggleClass("active"),I(),o.show(),d.focusOnShow&&!g.is(":focus")&&g.focus(),J({type:"dp.show"}),l)},ha=function(){return o?ba():ga()},ia=function(a){var b,c,e,f,g=null,h=[],i={},j=a.which,k="p";w[j]=k;for(b in w)w.hasOwnProperty(b)&&w[b]===k&&(h.push(b),parseInt(b,10)!==j&&(i[b]=!0));for(b in d.keyBinds)if(d.keyBinds.hasOwnProperty(b)&&"function"==typeof d.keyBinds[b]&&(e=b.split(" "),e.length===h.length&&v[j]===e[e.length-1])){for(f=!0,c=e.length-2;c>=0;c--)if(!(v[e[c]]in i)){f=!1;break}if(f){g=d.keyBinds[b];break}}g&&(g.call(l,o),a.stopPropagation(),a.preventDefault())},ja=function(a){w[a.which]="r",a.stopPropagation(),a.preventDefault()},ka=function(b){var c=a(b.target).val().trim(),d=c?da(c):null;return aa(d),b.stopImmediatePropagation(),!1},la=function(){g.on({change:ka,blur:d.debug?"":ba,keydown:ia,keyup:ja,focus:d.allowInputToggle?ga:""}
297),c.is("input")?g.on({focus:ga}):n&&(n.on("click",ha),n.on("mousedown",!1))},ma=function(){g.off({change:ka,blur:blur,keydown:ia,keyup:ja,focus:d.allowInputToggle?ba:""}),c.is("input")?g.off({focus:ga}):n&&(n.off("click",ha),n.off("mousedown",!1))},na=function(b){var c={};return a.each(b,function(){var a=da(this);a.isValid()&&(c[a.format("YYYY-MM-DD")]=!0)}),!!Object.keys(c).length&&c},oa=function(b){var c={};return a.each(b,function(){c[this]=!0}),!!Object.keys(c).length&&c},pa=function(){var a=d.format||"L LT";i=a.replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,function(a){var b=e.localeData().longDateFormat(a)||a;return b.replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,function(a){return e.localeData().longDateFormat(a)||a})}),j=d.extraFormats?d.extraFormats.slice():[],j.indexOf(a)<0&&j.indexOf(i)<0&&j.push(i),h=i.toLowerCase().indexOf("a")<1&&i.replace(/\[.*?\]/g,"").indexOf("h")<1,z("y")&&(p=2),z("M")&&(p=1),z("d")&&(p=0),k=Math.max(p,k),m||aa(e)};if(l.destroy=function(){ba(),ma(),c.removeData("DateTimePicker"),c.removeData("date")},l.toggle=ha,l.show=ga,l.hide=ba,l.disable=function(){return ba(),n&&n.hasClass("btn")&&n.addClass("disabled"),g.prop("disabled",!0),l},l.enable=function(){return n&&n.hasClass("btn")&&n.removeClass("disabled"),g.prop("disabled",!1),l},l.ignoreReadonly=function(a){if(0===arguments.length)return d.ignoreReadonly;if("boolean"!=typeof a)throw new TypeError("ignoreReadonly () expects a boolean parameter");return d.ignoreReadonly=a,l},l.options=function(b){if(0===arguments.length)return a.extend(!0,{},d);if(!(b instanceof Object))throw new TypeError("options() options parameter should be an object");return a.extend(!0,d,b),a.each(d,function(a,b){if(void 0===l[a])throw new TypeError("option "+a+" is not recognized!");l[a](b)}),l},l.date=function(a){if(0===arguments.length)return m?null:e.clone();if(!(null===a||"string"==typeof a||b.isMoment(a)||a instanceof Date))throw new TypeError("date() parameter must be one of [null, string, moment or Date]");return aa(null===a?null:da(a)),l},l.format=function(a){if(0===arguments.length)return d.format;if("string"!=typeof a&&("boolean"!=typeof a||a!==!1))throw new TypeError("format() expects a string or boolean:false parameter "+a);return d.format=a,i&&pa(),l},l.timeZone=function(a){if(0===arguments.length)return d.timeZone;if("string"!=typeof a)throw new TypeError("newZone() expects a string parameter");return d.timeZone=a,l},l.dayViewHeaderFormat=function(a){if(0===arguments.length)return d.dayViewHeaderFormat;if("string"!=typeof a)throw new TypeError("dayViewHeaderFormat() expects a string parameter");return d.dayViewHeaderFormat=a,l},l.extraFormats=function(a){if(0===arguments.length)return d.extraFormats;if(a!==!1&&!(a instanceof Array))throw new TypeError("extraFormats() expects an array or false parameter");return d.extraFormats=a,j&&pa(),l},l.disabledDates=function(b){if(0===arguments.length)return d.disabledDates?a.extend({},d.disabledDates):d.disabledDates;if(!b)return d.disabledDates=!1,_(),l;if(!(b instanceof Array))throw new TypeError("disabledDates() expects an array parameter");return d.disabledDates=na(b),d.enabledDates=!1,_(),l},l.enabledDates=function(b){if(0===arguments.length)return d.enabledDates?a.extend({},d.enabledDates):d.enabledDates;if(!b)return d.enabledDates=!1,_(),l;if(!(b instanceof Array))throw new TypeError("enabledDates() expects an array parameter");return d.enabledDates=na(b),d.disabledDates=!1,_(),l},l.daysOfWeekDisabled=function(a){if(0===arguments.length)return d.daysOfWeekDisabled.splice(0);if("boolean"==typeof a&&!a)return d.daysOfWeekDisabled=!1,_(),l;if(!(a instanceof Array))throw new TypeError("daysOfWeekDisabled() expects an array parameter");if(d.daysOfWeekDisabled=a.reduce(function(a,b){return b=parseInt(b,10),b>6||b<0||isNaN(b)?a:(a.indexOf(b)===-1&&a.push(b),a)},[]).sort(),d.useCurrent&&!d.keepInvalid){for(var b=0;!R(e,"d");){if(e.add(1,"d"),31===b)throw"Tried 31 times to find a valid date";b++}aa(e)}return _(),l},l.maxDate=function(a){if(0===arguments.length)return d.maxDate?d.maxDate.clone():d.maxDate;if("boolean"==typeof a&&a===!1)return d.maxDate=!1,_(),l;"string"==typeof a&&("now"!==a&&"moment"!==a||(a=y()));var b=da(a);if(!b.isValid())throw new TypeError("maxDate() Could not parse date parameter: "+a);if(d.minDate&&b.isBefore(d.minDate))throw new TypeError("maxDate() date parameter is before options.minDate: "+b.format(i));return d.maxDate=b,d.useCurrent&&!d.keepInvalid&&e.isAfter(a)&&aa(d.maxDate),f.isAfter(b)&&(f=b.clone().subtract(d.stepping,"m")),_(),l}
vendor: 9,198 bytes, lines 297-298
297,l.minDate=function(a){if(0===arguments.length)return d.minDate?d.minDate.clone():d.minDate;if("boolean"==typeof a&&a===!1)return d.minDate=!1,_(),l;"string"==typeof a&&("now"!==a&&"moment"!==a||(a=y()));var b=da(a);if(!b.isValid())throw new TypeError("minDate() Could not parse date parameter: "+a);if(d.maxDate&&b.isAfter(d.maxDate))throw new TypeError("minDate() date parameter is after options.maxDate: "+b.format(i));return d.minDate=b,d.useCurrent&&!d.keepInvalid&&e.isBefore(a)&&aa(d.minDate),f.isBefore(b)&&(f=b.clone().add(d.stepping,"m")),_(),l},l.defaultDate=function(a){if(0===arguments.length)return d.defaultDate?d.defaultDate.clone():d.defaultDate;if(!a)return d.defaultDate=!1,l;"string"==typeof a&&(a="now"===a||"moment"===a?y():y(a));var b=da(a);if(!b.isValid())throw new TypeError("defaultDate() Could not parse date parameter: "+a);if(!R(b))throw new TypeError("defaultDate() date passed is invalid according to component setup validations");return d.defaultDate=b,(d.defaultDate&&d.inline||""===g.val().trim())&&aa(d.defaultDate),l},l.locale=function(a){if(0===arguments.length)return d.locale;if(!b.localeData(a))throw new TypeError("locale() locale "+a+" is not loaded from moment locales!");return d.locale=a,e.locale(d.locale),f.locale(d.locale),i&&pa(),o&&(ba(),ga()),l},l.stepping=function(a){return 0===arguments.length?d.stepping:(a=parseInt(a,10),(isNaN(a)||a<1)&&(a=1),d.stepping=a,l)},l.useCurrent=function(a){var b=["year","month","day","hour","minute"];if(0===arguments.length)return d.useCurrent;if("boolean"!=typeof a&&"string"!=typeof a)throw new TypeError("useCurrent() expects a boolean or string parameter");if("string"==typeof a&&b.indexOf(a.toLowerCase())===-1)throw new TypeError("useCurrent() expects a string parameter of "+b.join(", "));return d.useCurrent=a,l},l.collapse=function(a){if(0===arguments.length)return d.collapse;if("boolean"!=typeof a)throw new TypeError("collapse() expects a boolean parameter");return d.collapse===a?l:(d.collapse=a,o&&(ba(),ga()),l)},l.icons=function(b){if(0===arguments.length)return a.extend({},d.icons);if(!(b instanceof Object))throw new TypeError("icons() expects parameter to be an Object");return a.extend(d.icons,b),o&&(ba(),ga()),l},l.tooltips=function(b){if(0===arguments.length)return a.extend({},d.tooltips);if(!(b instanceof Object))throw new TypeError("tooltips() expects parameter to be an Object");return a.extend(d.tooltips,b),o&&(ba(),ga()),l},l.useStrict=function(a){if(0===arguments.length)return d.useStrict;if("boolean"!=typeof a)throw new TypeError("useStrict() expects a boolean parameter");return d.useStrict=a,l},l.sideBySide=function(a){if(0===arguments.length)return d.sideBySide;if("boolean"!=typeof a)throw new TypeError("sideBySide() expects a boolean parameter");return d.sideBySide=a,o&&(ba(),ga()),l},l.viewMode=function(a){if(0===arguments.length)return d.viewMode;if("string"!=typeof a)throw new TypeError("viewMode() expects a string parameter");if(r.indexOf(a)===-1)throw new TypeError("viewMode() parameter must be one of ("+r.join(", ")+") value");return d.viewMode=a,k=Math.max(r.indexOf(a),p),L(),l},l.toolbarPlacement=function(a){if(0===arguments.length)return d.toolbarPlacement;if("string"!=typeof a)throw new TypeError("toolbarPlacement() expects a string parameter");if(u.indexOf(a)===-1)throw new TypeError("toolbarPlacement() parameter must be one of ("+u.join(", ")+") value");return d.toolbarPlacement=a,o&&(ba(),ga()),l},l.widgetPositioning=function(b){if(0===arguments.length)return a.extend({},d.widgetPositioning);if("[object Object]"!=={}.toString.call(b))throw new TypeError("widgetPositioning() expects an object variable");if(b.horizontal){if("string"!=typeof b.horizontal)throw new TypeError("widgetPositioning() horizontal variable must be a string");if(b.horizontal=b.horizontal.toLowerCase(),t.indexOf(b.horizontal)===-1)throw new TypeError("widgetPositioning() expects horizontal parameter to be one of ("+t.join(", ")+")");d.widgetPositioning.horizontal=b.horizontal}if(b.vertical){if("string"!=typeof b.vertical)throw new TypeError("widgetPositioning() vertical variable must be a string");if(b.vertical=b.vertical.toLowerCase(),s.indexOf(b.vertical)===-1)throw new TypeError("widgetPositioning() expects vertical parameter to be one of ("+s.join(", ")+")");d.widgetPositioning.vertical=b.vertical}return _(),l},l.calendarWeeks=function(a){if(0===arguments.length)return d.calendarWeeks;if("boolean"!=typeof a)throw new TypeError("calendarWeeks() expects parameter to be a boolean value");return d.calendarWeeks=a,_(),l},l.showTodayButton=function(a){if(0===arguments.length)return d.showTodayButton;if("boolean"!=typeof a)throw new TypeError("showTodayButton() expects a boolean parameter");return d.showTodayButton=a,o&&(ba(),ga()),l},l.showClear=function(a){if(0===arguments.length)return d.showClear;if("boolean"!=typeof a)throw new TypeError("showClear() expects a boolean parameter");return d.showClear=a,o&&(ba(),ga()),l},l.widgetParent=function(b){if(0===arguments.length)return d.widgetParent;if("string"==typeof b&&(b=a(b)),null!==b&&"string"!=typeof b&&!(b instanceof a))throw new TypeError("widgetParent() expects a string or a jQuery object parameter");return d.widgetParent=b,o&&(ba(),ga()),l},l.keepOpen=function(a){if(0===arguments.length)return d.keepOpen;if("boolean"!=typeof a)throw new TypeError("keepOpen() expects a boolean parameter");return d.keepOpen=a,l},l.focusOnShow=function(a){if(0===arguments.length)return d.focusOnShow;if("boolean"!=typeof a)throw new TypeError("focusOnShow() expects a boolean parameter");return d.focusOnShow=a,l},l.inline=function(a){if(0===arguments.length)return d.inline;if("boolean"!=typeof a)throw new TypeError("inline() expects a boolean parameter");return d.inline=a,l},l.clear=function(){return ca(),l},l.keyBinds=function(a){return 0===arguments.length?d.keyBinds:(d.keyBinds=a,l)},l.getMoment=function(a){return y(a)},l.debug=function(a){if("boolean"!=typeof a)throw new TypeError("debug() expects a boolean parameter");return d.debug=a,l},l.allowInputToggle=function(a){if(0===arguments.length)return d.allowInputToggle;if("boolean"!=typeof a)throw new TypeError("allowInputToggle() expects a boolean parameter");return d.allowInputToggle=a,l},l.showClose=function(a){if(0===arguments.length)return d.showClose;if("boolean"!=typeof a)throw new TypeError("showClose() expects a boolean parameter");return d.showClose=a,l},l.keepInvalid=function(a){if(0===arguments.length)return d.keepInvalid;if("boolean"!=typeof a)throw new TypeError("keepInvalid() expects a boolean parameter"); 298return d.keepInvalid=a,l},l.datepickerInput=function(a){if(0===arguments.length)return d.datepickerInput;if("string"!=typeof a)throw new TypeError("datepickerInput() expects a string parameter");return d.datepickerInput=a,l},l.parseInputDate=function(a){if(0===arguments.length)return d.parseInputDate;if("function"!=typeof a)throw new TypeError("parseInputDate() sholud be as function");return d.parseInputDate=a,l},l.disabledTimeIntervals=function(b){if(0===arguments.length)return d.disabledTimeIntervals?a.extend({},d.disabledTimeIntervals):d.disabledTimeIntervals;if(!b)return d.disabledTimeIntervals=!1,_(),l;if(!(b instanceof Array))throw new TypeError("disabledTimeIntervals() expects an array parameter");return d.disabledTimeIntervals=b,_(),l},l.disabledHours=function(b){if(0===arguments.length)return d.disabledHours?a.extend({},d.disabledHours):d.disabledHours;if(!b)return d.disabledHours=!1,_(),l;if(!(b instanceof Array))throw new TypeError("disabledHours() expects an array parameter");if(d.disabledHours=oa(b),d.enabledHours=!1,d.useCurrent&&!d.keepInvalid){for(var c=0;!R(e,"h");){if(e.add(1,"h"),24===c)throw"Tried 24 times to find a valid date";c++}aa(e)}return _(),l},l.enabledHours=function(b){if(0===arguments.length)return d.enabledHours?a.extend({},d.enabledHours):d.enabledHours;if(!b)return d.enabledHours=!1,_(),l;if(!(b instanceof Array))throw new TypeError("enabledHours() expects an array parameter");if(d.enabledHours=oa(b),d.disabledHours=!1,d.useCurrent&&!d.keepInvalid){for(var c=0;!R(e,"h");){if(e.add(1,"h"),24===c)throw"Tried 24 times to find a valid date";c++}aa(e)}return _(),l},l.viewDate=function(a){if(0===arguments.length)return f.clone();if(!a)return f=e.clone(),l;if(!("string"==typeof a||b.isMoment(a)||a instanceof Date))throw new TypeError("viewDate() parameter must be one of [string, moment or Date]");return f=da(a),K(),l},c.is("input"))g=c;else if(g=c.find(d.datepickerInput),0===g.length)g=c.find("input");else if(!g.is("input"))throw new Error('CSS class "'+d.datepickerInput+'" cannot be applied to non input element');if(c.hasClass("input-group")&&(n=0===c.find(".datepickerbutton").length?c.find(".input-group-addon"):c.find(".datepickerbutton")),!d.inline&&!g.is("input"))throw new Error("Could not initialize DateTimePicker without an input element");return e=y(),f=e.clone(),a.extend(!0,d,H()),l.options(d),pa(),la(),g.prop("disabled")&&l.disable(),g.is("input")&&0!==g.val().trim().length?aa(da(g.val().trim())):d.defaultDate&&void 0===g.attr("placeholder")&&aa(d.defaultDate),d.inline&&ga(),l};return a.fn.datetimepicker=function(b){b=b||{};
298var d,e=Array.prototype.slice.call(arguments,1),f=!0,g=["destroy","hide","show","toggle"];if("object"==typeof b)return this.each(function(){var d,e=a(this);e.data("DateTimePicker")||(d=a.extend(!0,{},a.fn.datetimepicker.defaults,b),e.data("DateTimePicker",c(e,d)))});if("string"==typeof b)return this.each(function(){var c=a(this),g=c.data("DateTimePicker");if(!g)throw new Error('bootstrap-datetimepicker("'+b+'") method was called on an element that is not using DateTimePicker');d=g[b].apply(g,e),f=d===g}),f||a.inArray(b,g)>-1?this:d;throw new TypeError("Invalid arguments for DateTimePicker: "+b)},a.fn.datetimepicker.defaults={timeZone:"",format:!1,dayViewHeaderFormat:"MMMM YYYY",extraFormats:!1,stepping:1,minDate:!1,maxDate:!1,useCurrent:!0,collapse:!0,locale:b.locale(),defaultDate:!1,disabledDates:!1,enabledDates:!1,icons:{time:"glyphicon glyphicon-time",date:"glyphicon glyphicon-calendar",up:"glyphicon glyphicon-chevron-up",down:"glyphicon glyphicon-chevron-down",previous:"glyphicon glyphicon-chevron-left",next:"glyphicon glyphicon-chevron-right",today:"glyphicon glyphicon-screenshot",clear:"glyphicon glyphicon-trash",close:"glyphicon glyphicon-remove"},tooltips:{today:"Go to today",clear:"Clear selection",close:"Close the picker",selectMonth:"Select Month",prevMonth:"Previous Month",nextMonth:"Next Month",selectYear:"Select Year",prevYear:"Previous Year",nextYear:"Next Year",selectDecade:"Select Decade",prevDecade:"Previous Decade",nextDecade:"Next Decade",prevCentury:"Previous Century",nextCentury:"Next Century",pickHour:"Pick Hour",incrementHour:"Increment Hour",decrementHour:"Decrement Hour",pickMinute:"Pick Minute",incrementMinute:"Increment Minute",decrementMinute:"Decrement Minute",pickSecond:"Pick Second",incrementSecond:"Increment Second",decrementSecond:"Decrement Second",togglePeriod:"Toggle Period",selectTime:"Select Time"},useStrict:!1,sideBySide:!1,daysOfWeekDisabled:!1,calendarWeeks:!1,viewMode:"days",toolbarPlacement:"default",showTodayButton:!1,showClear:!1,showClose:!1,widgetPositioning:{horizontal:"auto",vertical:"auto"},widgetParent:null,ignoreReadonly:!1,keepOpen:!1,focusOnShow:!0,inline:!1,keepInvalid:!1,datepickerInput:".datepickerinput",keyBinds:{up:function(a){if(a){var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")?this.date(b.clone().subtract(7,"d")):this.date(b.clone().add(this.stepping(),"m"))}},down:function(a){if(!a)return void this.show();var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")?this.date(b.clone().add(7,"d")):this.date(b.clone().subtract(this.stepping(),"m"))},"control up":function(a){if(a){var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")?this.date(b.clone().subtract(1,"y")):this.date(b.clone().add(1,"h"))}},"control down":function(a){if(a){var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")?this.date(b.clone().add(1,"y")):this.date(b.clone().subtract(1,"h"))}},left:function(a){if(a){var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")&&this.date(b.clone().subtract(1,"d"))}},right:function(a){if(a){var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")&&this.date(b.clone().add(1,"d"))}},pageUp:function(a){if(a){var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")&&this.date(b.clone().subtract(1,"M"))}},pageDown:function(a){if(a){var b=this.date()||this.getMoment();a.find(".datepicker").is(":visible")&&this.date(b.clone().add(1,"M"))}},enter:function(){this.hide()},escape:function(){this.hide()},"control space":function(a){a&&a.find(".timepicker").is(":visible")&&a.find('.btn[data-action="togglePeriod"]').click()},t:function(){this.date(this.getMoment())},delete:function(){this.clear()}},debug:!1,allowInputToggle:!1,disabledTimeIntervals:!1,disabledHours:!1,enabledHours:!1,viewDate:!1},a.fn.datetimepicker}); 299 300$(document).ready(function() { 301 hyperix.registerLoadHandler(activateDatepicker); 302 hyperix.registerUnloadHandler(deactivateDatepicker); 303}); 304 305function activateDatepicker() { 306// console.log('Activating datepicker'); 307 308 $(".datetimepicker").each(function(key, item) { 309 let lFormat = $(item).attr("data-format"); 310 let lLocale = $(item).attr("data-locale"); 311 let lColor = $(item).attr("data-color"); 312 let lClearLabel = $(item).attr("data-label-clear"); 313 let lCloseLabel = $(item).attr("data-label-close"); 314 let lValue = $(item).find("input").val(); 315// console.log(lFormat); 316 317 if (!lFormat) { 318 console.warn("Warning: No format in datetime attribute"); 319 lFormat = 'YYYY-MM-DD HH:mm'; 320 } 321 322 // Convertoanie formatu na moment.js // 323 lFormat = moment().toMomentFormatString(lFormat); 324// console.log(lFormat); 325// console.log(lValue); 326 327 // init datetimepicker 328 $(item).datetimepicker({ 329 format: lFormat, 330 locale: (lLocale ? lLocale: 'en-en'), 331 date: (lValue ? moment(lValue) : null), 332 sideBySide: true, 333 showClear: true, 334 showClose: true, 335 allowInputToggle: true, 336 // inline: true, 337 toolbarPlacement: 'bottom', 338 icons: { 339 time: 'hx_btn_icon icon-calendar ' + lColor, 340 date: 'hx_btn_icon icon-calendar ' + lColor, 341 up: 'hx_btn_icon icon-time-up ' + lColor, 342 down: 'hx_btn_icon icon-time-down ' + lColor, 343 previous: 'hx_btn_icon icon-time-left ' + lColor, 344 next: 'hx_btn_icon icon-time-right ' + lColor, 345 today: 'hx_btn_icon icon-calendar ' + lColor, 346 clear: 'hx_btn_icon icon-clear ' + lColor, 347 close: 'hx_btn_icon icon-delete ' + lColor 348 }, 349 });
350 351 // format buttons 352 $(item).on('dp.show', function (e) { 353// console.log('------ SHOW EVENT DATEPICKER -----'); 354 let pickerSwitch = $(item).find('li.picker-switch'); 355 let btnClass = 'btn btn-sm ' + lColor; 356 let buttonsHtml = $('<div class="col-6"><a data-action="clear" title="Clear selection" class="' + btnClass + '">' + lClearLabel + '</a></div>' + 357 '<div class="col-6"><a data-action="close" title="Close the picker" class="' + btnClass + '">' + lCloseLabel + '</a></div>'); 358 pickerSwitch.addClass('row'); 359 pickerSwitch.find('table').remove(); 360 pickerSwitch.html(buttonsHtml); 361 $(item).find('.picker-switch [data-action="clear"]').addClass('btn btn-sm').text(lClearLabel); 362 $(item).find('.picker-switch [data-action="close"]').addClass('btn btn-sm').text(lCloseLabel); 363 }); 364 }) 365}; 366 367function deactivateDatepicker() { 368// console.log('Dectivating datepicker'); 369}; 370 371 372(function(){function o(n){var i=e;n&&(e[n]||(e[n]={}),i=e[n]);if(!i.define||!i.define.packaged)t.original=i.define,i.define=t,i.define.packaged=!0;if(!i.require||!i.require.packaged)r.original=i.require,i.require=r,i.require.packaged=!0}var ACE_NAMESPACE="",e=function(){return this}();!e&&typeof window!="undefined"&&(e=window);if(!ACE_NAMESPACE&&typeof requirejs!="undefined")return;var t=function(e,n,r){if(typeof e!="string"){t.original?t.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(r=n),t.modules[e]||(t.payloads[e]=r,t.modules[e]=null)};t.modules={},t.payloads={};var n=function(e,t,n){if(typeof t=="string"){var i=s(e,t);if(i!=undefined)return n&&n(),i}else if(Object.prototype.toString.call(t)==="[object Array]"){var o=[];for(var u=0,a=t.length;u<a;++u){var f=s(e,t[u]);if(f==undefined&&r.original)return;o.push(f)}return n&&n.apply(null,o)||!0}},r=function(e,t){var i=n("",e,t);return i==undefined&&r.original?r.original.apply(this,arguments):i},i=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return i(e,n[0])+"!"+i(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&s!=t){var s=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},s=function(e,r){r=i(e,r);var s=t.modules[r];if(!s){s=t.payloads[r];if(typeof s=="function"){var o={},u={id:r,uri:"",exports:o,packaged:!0},a=function(e,t){return n(r,e,t)},f=s(a,o,u);o=f||u.exports,t.modules[r]=o,delete t.payloads[r]}s=t.modules[r]=o||s}return s};o(ACE_NAMESPACE)})(),define("ace/lib/fixoldbrowsers",["require","exports","module"],function(e,t,n){"use strict";typeof Element!="undefined"&&!Element.prototype.remove&&Object.defineProperty(Element.prototype,"remove",{enumerable:!1,writable:!0,configurable:!0,value:function(){this.parentNode&&this.parentNode.removeChild(this)}})}),define("ace/lib/useragent",["require","exports","module"],function(e,t,n){"use strict";t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS};var r=typeof navigator=="object"?navigator:{},i=(/mac|win|linux/i.exec(r.platform)||["other"])[0].toLowerCase(),s=r.userAgent||"",o=r.appName||"";t.isWin=i=="win",t.isMac=i=="mac",t.isLinux=i=="linux",t.isIE=o=="Microsoft Internet Explorer"||o.indexOf("MSAppHost")>=0?parseFloat((s.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((s.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=s.match(/ Gecko\/\d+/),t.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window.opera)=="[object Opera]",t.isWebKit=parseFloat(s.split("WebKit/")[1])||undefined,t.isChrome=parseFloat(s.split(" Chrome/")[1])||undefined,t.isEdge=parseFloat(s.split(" Edge/")[1])||undefined,t.isAIR=s.indexOf("AdobeAIR")>=0,t.isAndroid=s.indexOf("Android")>=0,t.isChromeOS=s.indexOf(" CrOS ")>=0,t.isIOS=/iPad|iPhone|iPod/.test(s)&&!window.MSStream,t.isIOS&&(t.isMac=!0),t.isMobile=t.isIOS||t.isAndroid}),define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(e,t,n){"use strict";function u(){var e=o;o=null,e&&e.forEach(function(e){a(e[0],e[1])})}function a(e,n,r){if(typeof document=="undefined")return;if(o)if(r)u();else if(r===!1)return o.push([e,n]);if(s)return;var i=r;if(!r||!r.getRootNode)i=document;else{i=r.getRootNode();if(!i||i==r)i=document}var a=i.ownerDocument||i;if(n&&t.hasCssString(n,i))return null;n&&(e+="\n/*# sourceURL=ace/css/"+n+" */");var f=t.createElement("style");f.appendChild(a.createTextNode(e)),n&&(f.id=n),i==a&&(i=t.getDocumentHead(a)),i.insertBefore(f,i.firstChild)}
372var r=e("./useragent"),i="http://www.w3.org/1999/xhtml";t.buildDom=function l(e,t,n){if(typeof e=="string"&&e){var r=document.createTextNode(e);return t&&t.appendChild(r),r}if(!Array.isArray(e))return e&&e.appendChild&&t&&t.appendChild(e),e;if(typeof e[0]!="string"||!e[0]){var i=[];for(var s=0;s<e.length;s++){var o=l(e[s],t,n);o&&i.push(o)}return i}var u=document.createElement(e[0]),a=e[1],f=1;a&&typeof a=="object"&&!Array.isArray(a)&&(f=2);for(var s=f;s<e.length;s++)l(e[s],u,n);return f==2&&Object.keys(a).forEach(function(e){var t=a[e];e==="class"?u.className=Array.isArray(t)?t.join(" "):t:typeof t=="function"||e=="value"||e[0]=="$"?u[e]=t:e==="ref"?n&&(n[t]=u):e==="style"?typeof t=="string"&&(u.style.cssText=t):t!=null&&u.setAttribute(e,t)}),t&&t.appendChild(u),u},t.getDocumentHead=function(e){return e||(e=document),e.head||e.getElementsByTagName("head")[0]||e.documentElement},t.createElement=function(e,t){return document.createElementNS?document.createElementNS(t||i,e):document.createElement(e)},t.removeChildren=function(e){e.innerHTML=""},t.createTextNode=function(e,t){var n=t?t.ownerDocument:document;return n.createTextNode(e)},t.createFragment=function(e){var t=e?e.ownerDocument:document;return t.createDocumentFragment()},t.hasCssClass=function(e,t){var n=(e.className+"").split(/\s+/g);return n.indexOf(t)!==-1},t.addCssClass=function(e,n){t.hasCssClass(e,n)||(e.className+=" "+n)},t.removeCssClass=function(e,t){var n=e.className.split(/\s+/g);for(;;){var r=n.indexOf(t);if(r==-1)break;n.splice(r,1)}e.className=n.join(" ")},t.toggleCssClass=function(e,t){var n=e.className.split(/\s+/g),r=!0;for(;;){var i=n.indexOf(t);if(i==-1)break;r=!1,n.splice(i,1)}return r&&n.push(t),e.className=n.join(" "),r},t.setCssClass=function(e,n,r){r?t.addCssClass(e,n):t.removeCssClass(e,n)},t.hasCssString=function(e,t){var n=0,r;t=t||document;if(r=t.querySelectorAll("style"))while(n<r.length)if(r[n++].id===e)return!0};var s,o=[];t.useStrictCSP=function(e){s=e,e==0?u():o||(o=[])},t.importCssString=a,t.importCssStylsheet=function(e,n){t.buildDom(["link",{rel:"stylesheet",href:e}],t.getDocumentHead(n))},t.scrollbarWidth=function(e){var n=t.createElement("ace_inner");n.style.width="100%",n.style.minWidth="0px",n.style.height="200px",n.style.display="block";var r=t.createElement("ace_outer"),i=r.style;i.position="absolute",i.left="-10000px",i.overflow="hidden",i.width="200px",i.minWidth="0px",i.height="150px",i.display="block",r.appendChild(n);var s=e.documentElement;s.appendChild(r);var o=n.offsetWidth;i.overflow="scroll";var u=n.offsetWidth;return o==u&&(u=r.clientWidth),s.removeChild(r),o-u},t.computedStyle=function(e,t){return window.getComputedStyle(e,"")||{}},t.setStyle=function(e,t,n){e[t]!==n&&(e[t]=n)},t.HAS_CSS_ANIMATION=!1,t.HAS_CSS_TRANSFORMS=!1,t.HI_DPI=r.isWin?typeof window!="undefined"&&window.devicePixelRatio>=1.5:!0,r.isChromeOS&&(t.HI_DPI=!1);if(typeof document!="undefined"){var f=document.createElement("div");t.HI_DPI&&f.style.transform!==undefined&&(t.HAS_CSS_TRANSFORMS=!0),!r.isEdge&&typeof f.style.animationName!="undefined"&&(t.HAS_CSS_ANIMATION=!0),f=null}t.HAS_CSS_TRANSFORMS?t.translate=function(e,t,n){e.style.transform="translate("+Math.round(t)+"px, "+Math.round(n)+"px)"}:t.translate=function(e,t,n){e.style.top=Math.round(n)+"px",e.style.left=Math.round(t)+"px"}}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(e,t,n){"use strict";var r=e("./oop"),i=function(){var e={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta",91:"MetaLeft",92:"MetaRight",93:"ContextMenu"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,"super":8,meta:8,command:8,cmd:8,control:1},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}},t,n;
372for(n in e.FUNCTION_KEYS)t=e.FUNCTION_KEYS[n].toLowerCase(),e[t]=parseInt(n,10);for(n in e.PRINTABLE_KEYS)t=e.PRINTABLE_KEYS[n].toLowerCase(),e[t]=parseInt(n,10);return r.mixin(e,e.MODIFIER_KEYS),r.mixin(e,e.PRINTABLE_KEYS),r.mixin(e,e.FUNCTION_KEYS),e.enter=e["return"],e.escape=e.esc,e.del=e["delete"],e[173]="-",function(){var t=["cmd","ctrl","alt","shift"];for(var n=Math.pow(2,t.length);n--;)e.KEY_MODS[n]=t.filter(function(t){return n&e.KEY_MODS[t]}).join("-")+"-"}(),e.KEY_MODS[0]="",e.KEY_MODS[-1]="input-",e}();r.mixin(t,i),t.keyCodeToString=function(e){var t=i[e];return typeof t!="string"&&(t=String.fromCharCode(e)),t.toLowerCase()}}),define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){"use strict";function a(){u=!1;try{document.createComment("").addEventListener("test",function(){},{get passive(){u={passive:!1}}})}catch(e){}}function f(){return u==undefined&&a(),u}function l(e,t,n){this.elem=e,this.type=t,this.callback=n}function d(e,t,n){var u=p(t);if(!i.isMac&&s){t.getModifierState&&(t.getModifierState("OS")||t.getModifierState("Win"))&&(u|=8);if(s.altGr){if((3&u)==3)return;s.altGr=0}if(n===18||n===17){var a="location"in t?t.location:t.keyLocation;if(n===17&&a===1)s[n]==1&&(o=t.timeStamp);else if(n===18&&u===3&&a===2){var f=t.timeStamp-o;f<50&&(s.altGr=!0)}}}n in r.MODIFIER_KEYS&&(n=-1);if(!u&&n===13){var a="location"in t?t.location:t.keyLocation;if(a===3){e(t,u,-n);if(t.defaultPrevented)return}}if(i.isChromeOS&&u&8){e(t,u,n);if(t.defaultPrevented)return;u&=-9}return!!u||n in r.FUNCTION_KEYS||n in r.PRINTABLE_KEYS?e(t,u,n):!1}function v(){s=Object.create(null)}var r=e("./keys"),i=e("./useragent"),s=null,o=0,u;l.prototype.destroy=function(){h(this.elem,this.type,this.callback),this.elem=this.type=this.callback=undefined};var c=t.addListener=function(e,t,n,r){e.addEventListener(t,n,f()),r&&r.$toDestroy.push(new l(e,t,n))},h=t.removeListener=function(e,t,n){e.removeEventListener(t,n,f())};t.stopEvent=function(e){return t.stopPropagation(e),t.preventDefault(e),!1},t.stopPropagation=function(e){e.stopPropagation&&e.stopPropagation()},t.preventDefault=function(e){e.preventDefault&&e.preventDefault()},t.getButton=function(e){return e.type=="dblclick"?0:e.type=="contextmenu"||i.isMac&&e.ctrlKey&&!e.altKey&&!e.shiftKey?2:e.button},t.capture=function(e,t,n){function i(e){t&&t(e),n&&n(e),h(r,"mousemove",t),h(r,"mouseup",i),h(r,"dragstart",i)}var r=e&&e.ownerDocument||document;return c(r,"mousemove",t),c(r,"mouseup",i),c(r,"dragstart",i),i},t.addMouseWheelListener=function(e,t,n){"onmousewheel"in e?c(e,"mousewheel",function(e){var n=8;e.wheelDeltaX!==undefined?(e.wheelX=-e.wheelDeltaX/n,e.wheelY=-e.wheelDeltaY/n):(e.wheelX=0,e.wheelY=-e.wheelDelta/n),t(e)},n):"onwheel"in e?c(e,"wheel",function(e){var n=.35;switch(e.deltaMode){case e.DOM_DELTA_PIXEL:e.wheelX=e.deltaX*n||0,e.wheelY=e.deltaY*n||0;break;case e.DOM_DELTA_LINE:case e.DOM_DELTA_PAGE:e.wheelX=(e.deltaX||0)*5,e.wheelY=(e.deltaY||0)*5}t(e)},n):c(e,"DOMMouseScroll",function(e){e.axis&&e.axis==e.HORIZONTAL_AXIS?(e.wheelX=(e.detail||0)*5,e.wheelY=0):(e.wheelX=0,e.wheelY=(e.detail||0)*5),t(e)},n)},t.addMultiMouseDownListener=function(e,n,r,s,o){function p(e){t.getButton(e)!==0?u=0:e.detail>1?(u++,u>4&&(u=1)):u=1;if(i.isIE){var o=Math.abs(e.clientX-a)>5||Math.abs(e.clientY-f)>5;if(!l||o)u=1;l&&clearTimeout(l),l=setTimeout(function(){l=null},n[u-1]||600),u==1&&(a=e.clientX,f=e.clientY)}e._clicks=u,r[s]("mousedown",e);if(u>4)u=0;else if(u>1)return r[s](h[u],e)}var u=0,a,f,l,h={2:"dblclick",3:"tripleclick",4:"quadclick"};Array.isArray(e)||(e=[e]),e.forEach(function(e){c(e,"mousedown",p,o)})};var p=function(e){return 0|(e.ctrlKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.metaKey?8:0)};t.getModifierString=function(e){return r.KEY_MODS[p(e)]},t.addCommandKeyListener=function(e,n,r){if(i.isOldGecko||i.isOpera&&!("KeyboardEvent"in window)){var o=null;c(e,"keydown",function(e){o=e.keyCode},r),c(e,"keypress",function(e){return d(n,e,o)},r)}else{var u=null;c(e,"keydown",function(e){s[e.keyCode]=(s[e.keyCode]||0)+1;var t=d(n,e,e.keyCode);return u=e.defaultPrevented,t},r),c(e,"keypress",function(e){u&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),u=null)},r),c(e,"keyup",function(e){s[e.keyCode]=null}
372,r),s||(v(),c(window,"focus",v))}};if(typeof window=="object"&&window.postMessage&&!i.isOldIE){var m=1;t.nextTick=function(e,n){n=n||window;var r="zero-timeout-message-"+m++,i=function(s){s.data==r&&(t.stopPropagation(s),h(n,"message",i),e())};c(n,"message",i),n.postMessage(r,"*")}}t.$idleBlocked=!1,t.onIdle=function(e,n){return setTimeout(function r(){t.$idleBlocked?setTimeout(r,100):e()},n)},t.$idleBlockId=null,t.blockIdle=function(e){t.$idleBlockId&&clearTimeout(t.$idleBlockId),t.$idleBlocked=!0,t.$idleBlockId=setTimeout(function(){t.$idleBlocked=!1},e||100)},t.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),define("ace/range",["require","exports","module"],function(e,t,n){"use strict";var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){"use strict";t.last=function(e){return e[e.length-1]}
372,t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function s(e){if(typeof e!="object"||!e)return e;var t;if(Array.isArray(e)){t=[];for(var n=0;n<e.length;n++)t[n]=s(e[n]);return t}if(Object.prototype.toString.call(e)!=="[object Object]")return e;t={};for(var n in e)t[n]=s(e[n]);return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return(""+e).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r.isPending=function(){return t},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n==null&&(n=setTimeout(r,e||t))};return i.delay=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)},i.schedule=i,i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/clipboard",["require","exports","module"],function(e,t,n){"use strict";var r;n.exports={lineMode:!1,pasteCancelled:function(){return r&&r>Date.now()-50?!0:r=!1},cancel:function(){r=Date.now()}}}),define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(e,t,n){"use strict";var r=e("../lib/event"),i=e("../lib/useragent"),s=e("../lib/dom"),o=e("../lib/lang"),u=e("../clipboard"),a=i.isChrome<18,f=i.isIE,l=i.isChrome>63,c=400,h=e("../lib/keys"),p=h.KEY_MODS,d=i.isIOS,v=d?/\s/:/\n/,m=i.isMobile,g=function(e,t){function X(){x=!0,n.blur(),n.focus(),x=!1}function $(e){e.keyCode==27&&n.value.length<n.selectionStart&&(b||(T=n.value),N=C=-1,O()),V()}function K(){clearTimeout(J),J=setTimeout(function(){E&&(n.style.cssText=E,E=""),t.renderer.$isMousePressed=!1,t.renderer.$keepTextAreaAtCursor&&t.renderer.$moveTextAreaToCursor()},0)}function G(e,t,n){var r=null,i=!1;n.addEventListener("keydown",function(e){r&&clearTimeout(r),i=!0},!0),n.addEventListener("keyup",function(e){r=setTimeout(function(){i=!1},100)},!0);var s=function(e){if(document.activeElement!==n)return;if(i||b||t.$mouseHandler.isMousePressed)return;if(g)return;var r=n.selectionStart,s=n.selectionEnd,o=null,u=0;if(r==0)o=h.up;else if(r==1)o=h.home;else if(s>C&&T[s]=="\n")o=h.end;else if(r<N&&T[r-1]==" ")o=h.left,u=p.option;else if(r<N||r==N&&C!=N&&r==s)o=h.left;else if(s>C&&T.slice(0,s).split("\n").length>2)o=h.down;else if(s>C&&T[s-1]==" ")o=h.right,u=p.option;else if(s>C||s==C&&C!=N&&r==s)o=h.right;r!==s&&(u|=p.shift);if(o){var a=t.onCommandKey({},u,o);if(!a&&t.commands){o=h.keyCodeToString(o);var f=t.commands.findKeyCommand(u,o);f&&t.execCommand(f)}N=r,C=s,O("")}};document.addEventListener("selectionchange",s),t.on("destroy",function(){document.removeEventListener("selectionchange",s)})}var n=s.createElement("textarea");n.className="ace_text-input",n.setAttribute("wrap","off"),n.setAttribute("autocorrect","off"),n.setAttribute("autocapitalize","off"),n.setAttribute("spellcheck",!1),n.style.opacity="0",e.insertBefore(n,e.firstChild);var g=!1,y=!1,b=!1,w=!1,E="";m||(n.style.fontSize="1px");var S=!1,x=!1,T="",N=0,C=0,k=0;try{var L=document.activeElement===n}catch(A){}r.addListener(n,"blur",function(e){if(x)return;t.onBlur(e),L=!1}
372,t),r.addListener(n,"focus",function(e){if(x)return;L=!0;if(i.isEdge)try{if(!document.hasFocus())return}catch(e){}t.onFocus(e),i.isEdge?setTimeout(O):O()},t),this.$focusScroll=!1,this.focus=function(){if(E||l||this.$focusScroll=="browser")return n.focus({preventScroll:!0});var e=n.style.top;n.style.position="fixed",n.style.top="0px";try{var t=n.getBoundingClientRect().top!=0}catch(r){return}var i=[];if(t){var s=n.parentElement;while(s&&s.nodeType==1)i.push(s),s.setAttribute("ace_nocontext",!0),!s.parentElement&&s.getRootNode?s=s.getRootNode().host:s=s.parentElement}n.focus({preventScroll:!0}),t&&i.forEach(function(e){e.removeAttribute("ace_nocontext")}),setTimeout(function(){n.style.position="",n.style.top=="0px"&&(n.style.top=e)},0)},this.blur=function(){n.blur()},this.isFocused=function(){return L},t.on("beforeEndOperation",function(){var e=t.curOp,r=e&&e.command&&e.command.name;if(r=="insertstring")return;var i=r&&(e.docChanged||e.selectionChanged);b&&i&&(T=n.value="",W()),O()});var O=d?function(e){if(!L||g&&!e||w)return;e||(e="");var r="\n ab"+e+"cde fg\n";r!=n.value&&(n.value=T=r);var i=4,s=4+(e.length||(t.selection.isEmpty()?0:1));(N!=i||C!=s)&&n.setSelectionRange(i,s),N=i,C=s}:function(){if(b||w)return;if(!L&&!P)return;b=!0;var e=0,r=0,i="";if(t.session){var s=t.selection,o=s.getRange(),u=s.cursor.row;e=o.start.column,r=o.end.column,i=t.session.getLine(u);if(o.start.row!=u){var a=t.session.getLine(u-1);e=o.start.row<u-1?0:e,r+=a.length+1,i=a+"\n"+i}else if(o.end.row!=u){var f=t.session.getLine(u+1);r=o.end.row>u+1?f.length:r,r+=i.length+1,i=i+"\n"+f}else m&&u>0&&(i="\n"+i,r+=1,e+=1);i.length>c&&(e<c&&r<c?i=i.slice(0,c):(i="\n",e==r?e=r=0:(e=0,r=1)))}var l=i+"\n\n";l!=T&&(n.value=T=l,N=C=l.length),P&&(N=n.selectionStart,C=n.selectionEnd);if(C!=r||N!=e||n.selectionEnd!=C)try{n.setSelectionRange(e,r),N=e,C=r}catch(h){}b=!1};this.resetSelection=O,L&&t.onFocus();var M=function(e){return e.selectionStart===0&&e.selectionEnd>=T.length&&e.value===T&&T&&e.selectionEnd!==C},_=function(e){if(b)return;g?g=!1:M(n)?(t.selectAll(),O()):m&&n.selectionStart!=N&&O()},D=null;this.setInputHandler=function(e){D=e},this.getInputHandler=function(){return D};var P=!1,H=function(e,r){P&&(P=!1);if(y)return O(),e&&t.onPaste(e),y=!1,"";var s=n.selectionStart,o=n.selectionEnd,u=N,a=T.length-C,f=e,l=e.length-s,c=e.length-o,h=0;while(u>0&&T[h]==e[h])h++,u--;f=f.slice(h),h=1;while(a>0&&T.length-h>N-1&&T[T.length-h]==e[e.length-h])h++,a--;l-=h-1,c-=h-1;var p=f.length-h+1;p<0&&(u=-p,p=0),f=f.slice(0,p);if(!r&&!f&&!l&&!u&&!a&&!c)return"";w=!0;var d=!1;return i.isAndroid&&f==". "&&(f=" ",d=!0),f&&!u&&!a&&!l&&!c||S?t.onTextInput(f):t.onTextInput(f,{extendLeft:u,extendRight:a,restoreStart:l,restoreEnd:c}),w=!1,T=e,N=s,C=o,k=c,d?"\n":f},B=function(e){if(b)return z();if(e&&e.inputType){if(e.inputType=="historyUndo")return t.execCommand("undo");if(e.inputType=="historyRedo")return t.execCommand("redo")}var r=n.value,i=H(r,!0);(r.length>c+100||v.test(i)||m&&N<1&&N==C)&&O()},j=function(e,t,n){var r=e.clipboardData||window.clipboardData;if(!r||a)return;var i=f||n?"Text":"text/plain";try{return t?r.setData(i,t)!==!1:r.getData(i)}catch(e){if(!n)return j(e,t,!0)}},F=function(e,i){var s=t.getCopyText();if(!s)return r.preventDefault(e);j(e,s)?(d&&(O(s),g=s,setTimeout(function(){g=!1},10)),i?t.onCut():t.onCopy(),r.preventDefault(e)):(g=!0,n.value=s,n.select(),setTimeout(function(){g=!1,O(),i?t.onCut():t.onCopy()}))},I=function(e){F(e,!0)},q=function(e){F(e,!1)},R=function(e){var s=j(e);if(u.pasteCancelled())return;typeof s=="string"?(s&&t.onPaste(s,e),i.isIE&&setTimeout(O),r.preventDefault(e)):(n.value="",y=!0)};r.addCommandKeyListener(n,t.onCommandKey.bind(t),t),r.addListener(n,"select",_,t),r.addListener(n,"input",B,t),r.addListener(n,"cut",I,t),r.addListener(n,"copy",q,t),r.addListener(n,"paste",R,t),(!("oncut"in n)||!("oncopy"in n)||!("onpaste"in n))&&r.addListener(e,"keydown",function(e){if(i.isMac&&!e.metaKey||!e.ctrlKey)return;switch(e.keyCode){case 67:q(e);break;case 86:R(e);break;case 88:I(e)}},t);var U=function(e){if(b||!t.onCompositionStart||t.$readOnly)return;b={};if(S)return;e.data&&(b.useTextareaForIME=!1),setTimeout(z,0),t._signal("compositionStart"),t.on("mousedown",X);var r=t.getSelectionRange();r.end.row=r.start.row,r.end.column=r.start.column,b.markerRange=r,b.selectionStart=N,t.onCompositionStart(b),b.useTextareaForIME?(T=n.value="",N=0,C=0):(n.msGetInputContext&&(b.context=n.msGetInputContext()),n.getInputContext&&(b.context=n.getInputContext()))},z=function(){if(!b||!t.onCompositionUpdate||t.$readOnly)return;if(S)return X();if(b.useTextareaForIME)t.onCompositionUpdate(n.value);else{var e=n.value;H(e),b.markerRange&&(b.context&&(b.markerRange.start.column=b.selectionStart=b.context.compositionStartOffset),b.markerRange.end.column=b.markerRange.start.column+C-b.selectionStart+k)}},W=function(e){if(!t.onCompositionEnd||t.$readOnly)return;b=!1,t.onCompositionEnd(),t.off("mousedown",X),e&&B()},V=o.delayedCall(z,50).schedule.bind(null,null);r.addListener(n,"compositionstart",U,t),r.addListener(n,"compositionupdate",z,t),r.addListener(n,"keyup",$,t),r.addListener(n,"keydown",V,t),r.addListener(n,"compositionend",W,t),this.getElement=function(){return n}
372,this.setCommandMode=function(e){S=e,n.readOnly=!1},this.setReadOnly=function(e){S||(n.readOnly=e)},this.setCopyWithEmptySelection=function(e){},this.onContextMenu=function(e){P=!0,O(),t._emit("nativecontextmenu",{target:t,domEvent:e}),this.moveToMouse(e,!0)},this.moveToMouse=function(e,o){E||(E=n.style.cssText),n.style.cssText=(o?"z-index:100000;":"")+(i.isIE?"opacity:0.1;":"")+"text-indent: -"+(N+C)*t.renderer.characterWidth*.5+"px;";var u=t.container.getBoundingClientRect(),a=s.computedStyle(t.container),f=u.top+(parseInt(a.borderTopWidth)||0),l=u.left+(parseInt(u.borderLeftWidth)||0),c=u.bottom-f-n.clientHeight-2,h=function(e){s.translate(n,e.clientX-l-2,Math.min(e.clientY-f-2,c))};h(e);if(e.type!="mousedown")return;t.renderer.$isMousePressed=!0,clearTimeout(J),i.isWin&&r.capture(t.container,h,K)},this.onContextMenuClose=K;var J,Q=function(e){t.textInput.onContextMenu(e),K()};r.addListener(n,"mouseup",Q,t),r.addListener(n,"mousedown",function(e){e.preventDefault(),K()},t),r.addListener(t.renderer.scroller,"contextmenu",Q,t),r.addListener(n,"contextmenu",Q,t),d&&G(e,t,n)};t.TextInput=g,t.$setUserAgentForTests=function(e,t){m=e,d=t}}),define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(e,t,n){"use strict";function o(e){e.$clickSelection=null;var t=e.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(e)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(e)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(e)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(e)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(e));var n=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];n.forEach(function(t){e[t]=this[t]},this),e.selectByLines=this.extendSelectionBy.bind(e,"getLineRange"),e.selectByWords=this.extendSelectionBy.bind(e,"getWordRange")}function u(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}function a(e,t){if(e.start.row==e.end.row)var n=2*t.column-e.start.column-e.end.column;else if(e.start.row==e.end.row-1&&!e.start.column&&!e.end.column)var n=t.column-4;else var n=2*t.row-e.start.row-e.end.row;return n<0?{cursor:e.start,anchor:e.end}:{cursor:e.end,anchor:e.start}}var r=e("../lib/useragent"),i=0,s=550;(function(){this.onMouseDown=function(e){var t=e.inSelection(),n=e.getDocumentPosition();this.mousedownEvent=e;var i=this.editor,s=e.getButton();if(s!==0){var o=i.getSelectionRange(),u=o.isEmpty();(u||s==1)&&i.selection.moveToPosition(n),s==2&&(i.textInput.onContextMenu(e.domEvent),r.isMozilla||e.preventDefault());return}this.mousedownEvent.time=Date.now();if(t&&!i.isFocused()){i.focus();if(this.$focusTimeout&&!this.$clickSelection&&!i.inMultiSelectMode){this.setState("focusWait"),this.captureMouse(e);return}}return this.captureMouse(e),this.startSelect(n,e.domEvent._clicks>1),e.preventDefault()},this.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var n=this.editor;if(!this.mousedownEvent)return;this.mousedownEvent.getShiftKey()?n.selection.selectToPosition(e):t||n.selection.moveToPosition(e),t||this.select(),n.renderer.scroller.setCapture&&n.renderer.scroller.setCapture(),n.setStyle("ace_selecting"),this.setState("select")},this.select=function(){var e,t=this.editor,n=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var r=this.$clickSelection.comparePoint(n);if(r==-1)e=this.$clickSelection.end;else if(r==1)e=this.$clickSelection.start;else{var i=a(this.$clickSelection,n);n=i.cursor,e=i.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(n),t.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(e){var t,n=this.editor,r=n.renderer.screenToTextCoordinates(this.x,this.y),i=n.selection[e](r.row,r.column);if(this.$clickSelection){var s=this.$clickSelection.comparePoint(i.start),o=this.$clickSelection.comparePoint(i.end);if(s==-1&&o<=0){t=this.$clickSelection.end;if(i.end.row!=r.row||i.end.column!=r.column)r=i.start}else if(o==1&&s>=0){t=this.$clickSelection.start;if(i.start.row!=r.row||i.start.column!=r.column)r=i.end}else if(s==-1&&o==1)r=i.end,t=i.start;else{var u=a(this.$clickSelection,r);r=u.cursor,t=u.anchor}n.selection.setSelectionAnchor(t.row,t.column)}n.selection.selectToPosition(r),n.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var e=u(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>i||t-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(e){var t=e.getDocumentPosition(),n=this.editor,r=n.session,i=r.getBracketRange(t);i?(i.isEmpty()&&(i.start.column--,i.end.column++),this.setState("select")):(i=n.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=i,this.select()},this.onTripleClick=function(e){var t=e.getDocumentPosition(),n=this.editor;this.setState("selectByLines");var r=n.getSelectionRange();r.isMultiLine()&&r.contains(t.row,t.column)?(this.$clickSelection=n.selection.getLineRange(r.start.row),this.$clickSelection.end=n.selection.getLineRange(r.end.row).end):this.$clickSelection=n.selection.getLineRange(t.row),this.select()},this.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(e){if(e.getAccelKey())return;e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var n=this.$lastScroll,r=e.domEvent.timeStamp,i=r-n.t,o=i?e.wheelX/i:n.vx,u=i?e.wheelY/i:n.vy;i<s&&(o=(o+n.vx)/2,u=(u+n.vy)/2);var a=Math.abs(o/u),f=!1;a>
372=1&&t.renderer.isScrollableBy(e.wheelX*e.speed,0)&&(f=!0),a<=1&&t.renderer.isScrollableBy(0,e.wheelY*e.speed)&&(f=!0);if(f)n.allowed=r;else if(r-n.allowed<s){var l=Math.abs(o)<=1.5*Math.abs(n.vx)&&Math.abs(u)<=1.5*Math.abs(n.vy);l?(f=!0,n.allowed=r):n.allowed=0}n.t=r,n.vx=o,n.vy=u;if(f)return t.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()}}).call(o.prototype),t.DefaultHandlers=o}),define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(e,t,n){"use strict";function s(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}var r=e("./lib/oop"),i=e("./lib/dom");(function(){this.$init=function(){return this.$element=i.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(e){this.getElement().textContent=e},this.setHtml=function(e){this.getElement().innerHTML=e},this.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},this.setClassName=function(e){i.addCssClass(this.getElement(),e)},this.show=function(e,t,n){e!=null&&this.setText(e),t!=null&&n!=null&&this.setPosition(t,n),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth},this.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)}}).call(s.prototype),t.Tooltip=s}),define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(e,t,n){"use strict";function u(e){function l(){var r=u.getDocumentPosition().row,s=n.$annotations[r];if(!s)return c();var o=t.session.getLength();if(r==o){var a=t.renderer.pixelToScreenCoordinates(0,u.y).row,l=u.$pos;if(a>t.session.documentToScreenRow(l.row,l.column))return c()}if(f==s)return;f=s.text.join("<br/>"),i.setHtml(f),i.show(),t._signal("showGutterTooltip",i),t.on("mousewheel",c);if(e.$tooltipFollowsMouse)h(u);else{var p=u.domEvent.target,d=p.getBoundingClientRect(),v=i.getElement().style;v.left=d.right+"px",v.top=d.bottom+"px"}}function c(){o&&(o=clearTimeout(o)),f&&(i.hide(),f=null,t._signal("hideGutterTooltip",i),t.off("mousewheel",c))}function h(e){i.setPosition(e.x,e.y)}var t=e.editor,n=t.renderer.$gutterLayer,i=new a(t.container);e.editor.setDefaultHandler("guttermousedown",function(r){if(!t.isFocused()||r.getButton()!=0)return;var i=n.getRegion(r);if(i=="foldWidgets")return;var s=r.getDocumentPosition().row,o=t.session.selection;if(r.getShiftKey())o.selectTo(s,0);else{if(r.domEvent.detail==2)return t.selectAll(),r.preventDefault();e.$clickSelection=t.selection.getLineRange(s)}return e.setState("selectByLines"),e.captureMouse(r),r.preventDefault()});var o,u,f;e.editor.setDefaultHandler("guttermousemove",function(t){var n=t.domEvent.target||t.domEvent.srcElement;if(r.hasCssClass(n,"ace_fold-widget"))return c();f&&e.$tooltipFollowsMouse&&h(t),u=t;if(o)return;o=setTimeout(function(){o=null,u&&!e.isMousePressed?l():c()},50)}),s.addListener(t.renderer.$gutter,"mouseout",function(e){u=null;if(!f||o)return;o=setTimeout(function(){o=null,c()},50)},t),t.on("changeSession",c)}function a(e){o.call(this,e)}var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../lib/event"),o=e("../tooltip").Tooltip;i.inherits(a,o),function(){this.setPosition=function(e,t){var n=window.innerWidth||document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight,i=this.getWidth(),s=this.getHeight();e+=15,t+=15,e+i>n&&(e-=e+i-n),t+s>r&&(t-=20+s),o.prototype.setPosition.call(this,e,t)}}.call(a.prototype),t.GutterHandler=u}),define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";var r=e("../lib/event"),i=e("../lib/useragent"),s=t.MouseEvent=function(e,t){this.domEvent=e,this.editor=t,this.x=this.clientX=e.clientX,this.y=this.clientY=e.clientY,this.$pos=null,this.$inSelection=null,this.prop
372agationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){r.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){r.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(this.$inSelection!==null)return this.$inSelection;var e=this.editor,t=e.getSelectionRange();if(t.isEmpty())this.$inSelection=!1;else{var n=this.getDocumentPosition();this.$inSelection=t.contains(n.row,n.column)}return this.$inSelection},this.getButton=function(){return r.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=i.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(s.prototype)}),define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";function f(e){function T(e,n){var r=Date.now(),i=!n||e.row!=n.row,s=!n||e.column!=n.column;if(!S||i||s)t.moveCursorToPosition(e),S=r,x={x:p,y:d};else{var o=l(x.x,x.y,p,d);o>a?S=null:r-S>=u&&(t.renderer.scrollCursorIntoView(),S=null)}}function N(e,n){var r=Date.now(),i=t.renderer.layerConfig.lineHeight,s=t.renderer.layerConfig.characterWidth,u=t.renderer.scroller.getBoundingClientRect(),a={x:{left:p-u.left,right:u.right-p},y:{top:d-u.top,bottom:u.bottom-d}},f=Math.min(a.x.left,a.x.right),l=Math.min(a.y.top,a.y.bottom),c={row:e.row,column:e.column};f/s<=2&&(c.column+=a.x.left<a.x.right?-3:2),l/i<=1&&(c.row+=a.y.top<a.y.bottom?-1:1);var h=e.row!=c.row,v=e.column!=c.column,m=!n||e.row!=n.row;h||v&&!m?E?r-E>=o&&t.renderer.scrollCursorIntoView(c):E=r:E=null}function C(){var e=g;g=t.renderer.screenToTextCoordinates(p,d),T(g,e),N(g,e)}function k(){m=t.selection.toOrientedRange(),h=t.session.addMarker(m,"ace_selection",t.getSelectionStyle()),t.clearSelection(),t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1),clearInterval(v),C(),v=setInterval(C,20),y=0,i.addListener(document,"mousemove",O)}function L(){clearInterval(v),t.session.removeMarker(h),h=null,t.selection.fromOrientedRange(m),t.isFocused()&&!w&&t.$resetCursorStyle(),m=null,g=null,y=0,E=null,S=null,i.removeListener(document,"mousemove",O)}function O(){A==null&&(A=setTimeout(function(){A!=null&&h&&L()},20))}function M(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return e=="text/plain"||e=="Text"})}function _(e){var t=["copy","copymove","all","uninitialized"],n=["move","copymove","linkmove","all","uninitialized"],r=s.isMac?e.altKey:e.ctrlKey,i="uninitialized";try{i=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var o="none";return r&&t.indexOf(i)>=0?o="copy":n.indexOf(i)>=0?o="move":t.indexOf(i)>=0&&(o="copy"),o}var t=e.editor,n=r.createElement("div");n.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",n.textContent="\u00a0";var f=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];f.forEach(function(t){e[t]=this[t]},this),t.on("mousedown",this.onMouseDown.bind(e));var c=t.container,h,p,d,v,m,g,y=0,b,w,E,S,x;this.onDragStart=function(e){if(this.cancelDrag||!c.draggable){var r=this;return setTimeout(function(){r.startSelect(),r.captureMouse(e)},0),e.preventDefault()}m=t.getSelectionRange();var i=e.dataTransfer;i.effectAllowed=t.getReadOnly()?"copy":"copyMove",t.container.appendChild(n),i.setDragImage&&i.setDragImage(n,0,0),setTimeout(function(){t.container.removeChild(n)}),i.clearData(),i.setData("Text",t.session.getTextRange()),w=!0,this.setState("drag")},this.onDragEnd=function(e){c.draggable=!1,w=!1,this.setState(null);if(!t.getReadOnly()){var n=e.dataTransfer.dropEffect;!b&&n=="move"&&t.session.remove(t.getSelectionRange()),t.$resetCursorStyle()}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||k(),y++,e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragOver=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||(k(),y++),A!==null&&(A=null),e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragLeave=function(e){y--;if(y<=0&&h)return L(),b=null,i.preventDefault(e)},this.onDrop=function(e){if(!g)return;var n=e.dataTransfer;if(w)switch(b){case"move":m.contains(g.row,g.column)?m={start:g,end:g}:m=t.moveText(m,g);break;case"copy":m=t.moveText(m,g,!0)}else{var r=n.getData("Text");m={start:g,end:t.session.insert(g,r)},t.focus(),b=null}return L(),i.preventDefault(e)},i.addListener(c,"dragstart",this.onDragStart.bind(e),t),i.addListener(c,"dragend",this.onDragEnd.bind(e),t),i.addListener(c,"dragenter",this.onDragEnter.bind(e),t),i.addListener(c,"dragover",this.onDragOver.bind(e),t),i.addListener(c,"dragleave",this.onDragLeave.bind(e),t),i.addListener(c,"drop",this.onDrop.bind(e),t);var A=null}function l(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}
372var r=e("../lib/dom"),i=e("../lib/event"),s=e("../lib/useragent"),o=200,u=200,a=5;(function(){this.dragWait=function(){var e=Date.now()-this.mousedownEvent.time;e>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var e=this.editor.container;e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor,t=e.container;t.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var n=s.isWin?"default":"move";e.renderer.setCursorStyle(n),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;if(s.isIE&&this.state=="dragReady"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>3&&t.dragDrop()}if(this.state==="dragWait"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(e){if(!this.$dragEnabled)return;this.mousedownEvent=e;var t=this.editor,n=e.inSelection(),r=e.getButton(),i=e.domEvent.detail||1;if(i===1&&r===0&&n){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var o=e.domEvent.target||e.domEvent.srcElement;"unselectable"in o&&(o.unselectable="on");if(t.getDragDelay()){if(s.isWebKit){this.cancelDrag=!0;var u=t.container;u.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}).call(f.prototype),t.DragdropHandler=f}),define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./mouse_event").MouseEvent,i=e("../lib/event"),s=e("../lib/dom");t.addTouchListeners=function(e,t){function b(){var e=window.navigator&&window.navigator.clipboard,r=!1,i=function(){var n=t.getCopyText(),i=t.session.getUndoManager().hasUndo();y.replaceChild(s.buildDom(r?["span",!n&&["span",{"class":"ace_mobile-button",action:"selectall"},"Select All"],n&&["span",{"class":"ace_mobile-button",action:"copy"},"Copy"],n&&["span",{"class":"ace_mobile-button",action:"cut"},"Cut"],e&&["span",{"class":"ace_mobile-button",action:"paste"},"Paste"],i&&["span",{"class":"ace_mobile-button",action:"undo"},"Undo"],["span",{"class":"ace_mobile-button",action:"find"},"Find"],["span",{"class":"ace_mobile-button",action:"openCommandPallete"},"Pallete"]]:["span"]),y.firstChild)},o=function(n){var s=n.target.getAttribute("action");if(s=="more"||!r)return r=!r,i();if(s=="paste")e.readText().then(function(e){t.execCommand(s,e)});else if(s){if(s=="cut"||s=="copy")e?e.writeText(t.getCopyText()):document.execCommand("copy");t.execCommand(s)}y.firstChild.style.display="none",r=!1,s!="openCommandPallete"&&t.focus()};y=s.buildDom(["div",{"class":"ace_mobile-menu",ontouchstart:function(e){n="menu",e.stopPropagation(),e.preventDefault(),t.textInput.focus()},ontouchend:function(e){e.stopPropagation(),e.preventDefault(),o(e)},onclick:o},["span"],["span",{"class":"ace_mobile-button",action:"more"},"..."]],t.container)}function w(){y||b();var e=t.selection.cursor,n=t.renderer.textToScreenCoordinates(e.row,e.column),r=t.renderer.textToScreenCoordinates(0,0).pageX,i=t.renderer.scrollLeft,s=t.container.getBoundingClientRect();y.style.top=n.pageY-s.top-3+"px",n.pageX-s.left<s.width-70?(y.style.left="",y.style.right="10px"):(y.style.right="",y.style.left=r+i-s.left+"px"),y.style.display="",y.firstChild.style.display="none",t.on("input",E)}function E(e){y&&(y.style.display="none"),t.off("input",E)}function S(){l=null,clearTimeout(l);var e=t.selection.getRange(),r=e.contains(p.row,p.column);if(e.isEmpty()||!r)t.selection.moveToPosition(p),t.selection.selectWord();n="wait",w()}function x(){l=null,clearTimeout(l),t.selection.moveToPosition(p);var e=d>=2?t.selection.getLineRange(p.row):t.session.getBracketRange(p);e&&!e.isEmpty()?t.selection.setRange(e):t.selection.selectWord(),n="wait"}function T(){h+=60,c=setInterval(function(){h--<=0&&(clearInterval(c),c=null),Math.abs(v)<.01&&(v=0),Math.abs(m)<.01&&(m=0),h<20&&(v=.9*v),h<20&&(m=.9*m);var e=t.session.getScrollTop();t.renderer.scrollBy(10*v,10*m),e==t.session.getScrollTop()&&(h=0)},10)}var n="scroll",o,u,a,f,l,c,h=0,p,d=0,v=0,m=0,g,y;i.addListener(e,"contextmenu",function(e){if(!g)return;var n=t.textInput.getElement();n.focus()},t),i.addListener(e,"touchstart",function(e){var i=e.touches;if(l||i.length>1){clearTimeout(l),l=null,a=-1,n="zoom";return}g=t.$mouseHandler.isMousePressed=!0;var s=t.renderer.layerConfig.lineHeight,c=t.renderer.layerConfig.lineHeight,y=e.timeStamp;f=y;var b=i[0],w=b.clientX,E=b.clientY;Math.abs(o-w)+Math.abs(u-E)>s&&(a=-1),o=e.clientX=w,u=e.clientY=E,v=m=0;var T=new r(e,t);p=T.getDocumentPosition();if(y-a<500&&i.length==1&&!h)d++,e.preventDefault(),e.button=0,x();else{d=0;var N=t.selection.cursor,C=t.selection.isEmpty()?N:t.selection.anchor,k=t.renderer.$cursorLayer.getPixelPosition(N,!0),L=t.renderer.$cursorLayer.getPixelPosition(C,!0),A=t.renderer.scroller.getBoundingClientRect(),O=t.renderer.layerConfig.offset,M=t.renderer.scrollLeft,_=function(e,t){return e/=c,t=t/s-.75,e*e+t*t};
372if(e.clientX<A.left){n="zoom";return}var D=_(e.clientX-A.left-k.left+M,e.clientY-A.top-k.top+O),P=_(e.clientX-A.left-L.left+M,e.clientY-A.top-L.top+O);D<3.5&&P<3.5&&(n=D>P?"cursor":"anchor"),P<3.5?n="anchor":D<3.5?n="cursor":n="scroll",l=setTimeout(S,450)}a=y},t),i.addListener(e,"touchend",function(e){g=t.$mouseHandler.isMousePressed=!1,c&&clearInterval(c),n=="zoom"?(n="",h=0):l?(t.selection.moveToPosition(p),h=0,w()):n=="scroll"?(T(),E()):w(),clearTimeout(l),l=null},t),i.addListener(e,"touchmove",function(e){l&&(clearTimeout(l),l=null);var i=e.touches;if(i.length>1||n=="zoom")return;var s=i[0],a=o-s.clientX,c=u-s.clientY;if(n=="wait"){if(!(a*a+c*c>4))return e.preventDefault();n="cursor"}o=s.clientX,u=s.clientY,e.clientX=s.clientX,e.clientY=s.clientY;var h=e.timeStamp,p=h-f;f=h;if(n=="scroll"){var d=new r(e,t);d.speed=1,d.wheelX=a,d.wheelY=c,10*Math.abs(a)<Math.abs(c)&&(a=0),10*Math.abs(c)<Math.abs(a)&&(c=0),p!=0&&(v=a/p,m=c/p),t._emit("mousewheel",d),d.propagationStopped||(v=m=0)}else{var g=new r(e,t),y=g.getDocumentPosition();n=="cursor"?t.selection.moveCursorToPosition(y):n=="anchor"&&t.selection.setSelectionAnchor(y.row,y.column),t.renderer.scrollCursorIntoView(y),e.preventDefault()}},t)}}),define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./dom");t.get=function(e,t){var n=new XMLHttpRequest;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&t(n.responseText)},n.send(null)},t.loadScript=function(e,t){var n=r.getDocumentHead(),i=document.createElement("script");i.src=e,n.appendChild(i),i.onload=i.onreadystatechange=function(e,n){if(n||!i.readyState||i.readyState=="loaded"||i.readyState=="complete")i=i.onload=i.onreadystatechange=null,n||t()}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;n=n.slice();for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;this.on(e,function r(){n.off(e,r),t.apply(null,arguments)});if(!t)return new Promise(function(e){t=e})},r.setDefaultHandler=function(e,t){var n=this._defaultHandlers;n||(n=this._defaultHandlers={_disabled_:{}});if(n[e]){var r=n[e],i=n._disabled_[e];i||(n._disabled_[e]=i=[]),i.push(r);var s=i.indexOf(t);s!=-1&&i.splice(s,1)}n[e]=t},r.removeDefaultHandler=function(e,t){var n=this._defaultHandlers;if(!n)return;var r=n._disabled_[e];if(n[e]==t)r&&this.setDefaultHandler(e,r.pop());else if(r){var i=r.indexOf(t);i!=-1&&r.splice(i,1)}},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){e||(this._eventRegistry=this._defaultHandlers=undefined),this._eventRegistry&&(this._eventRegistry[e]=undefined),this._defaultHandlers&&(this._defaultHandlers[e]=undefined)},t.EventEmitter=r}),define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"no use strict";function o(e){typeof console!="undefined"&&console.warn&&console.warn.apply(console,arguments)}function u(e,t){var n=new Error(e);n.data=t,typeof console=="object"&&console.error&&console.error(n),setTimeout(function(){throw n})}var r=e("./oop"),i=e("./event_emitter").EventEmitter,s={setOptions:function(e){Object.keys(e).forEach(function(t){this.setOption(t,e[t])},this)},getOptions:function(e){var t={};if(!e){var n=this.$options;e=Object.keys(n).filter(function(e){return!n[e].hidden})}else Array.isArray(e)||(t=e,e=Object.keys(t));return e.forEach(function(e){t[e]=this.getOption(e)},this),t},setOption:function(e,t){if(this["$"+e]===t)return;var n=this.$options[e];if(!n)return o('misspelled option "'+e+'"');if(n.forwardTo)return this[n.forwardTo]&&this[n.forwardTo].setOption(e,t);n.handlesSet||(this["$"+e]=t),n&&n.set&&n.set.call(this,t)},getOption:function(e){var t=this.$options[e];return t?t.forwardTo?this[t.forwardTo]&&this[t.forwardTo].getOption(e):t&&t.get?t.get.call(this):this["$"+e]:o('misspelled option "'+e+'"')}},a=function(){this.$defaultOptions={}};(function(){r.implement(this,i),this.defineOptions=function(e,t,n){return e.$options||(this.$defaultOptions[t]=e.$options={}
372),Object.keys(n).forEach(function(t){var r=n[t];typeof r=="string"&&(r={forwardTo:r}),r.name||(r.name=t),e.$options[r.name]=r,"initialValue"in r&&(e["$"+r.name]=r.initialValue)}),r.implement(e,s),this},this.resetOptions=function(e){Object.keys(e.$options).forEach(function(t){var n=e.$options[t];"value"in n&&e.setOption(t,n.value)})},this.setDefaultValue=function(e,t,n){if(!e){for(e in this.$defaultOptions)if(this.$defaultOptions[e][t])break;if(!this.$defaultOptions[e][t])return!1}var r=this.$defaultOptions[e]||(this.$defaultOptions[e]={});r[t]&&(r.forwardTo?this.setDefaultValue(r.forwardTo,t,n):r[t].value=n)},this.setDefaultValues=function(e,t){Object.keys(t).forEach(function(n){this.setDefaultValue(e,n,t[n])},this)},this.warn=o,this.reportError=u}).call(a.prototype),t.AppConfig=a}),define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/dom","ace/lib/app_config"],function(e,t,n){"no use strict";function c(r){if(!a||!a.document)return;f.packaged=r||e.packaged||n.packaged||a.define&&define.packaged;var i={},s="",o=document.currentScript||document._currentScript,u=o&&o.ownerDocument||document,l=u.getElementsByTagName("script");for(var c=0;c<l.length;c++){var p=l[c],d=p.src||p.getAttribute("src");if(!d)continue;var v=p.attributes;for(var m=0,g=v.length;m<g;m++){var y=v[m];y.name.indexOf("data-ace-")===0&&(i[h(y.name.replace(/^data-ace-/,""))]=y.value)}var b=d.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);b&&(s=b[1])}s&&(i.base=i.base||s,i.packaged=!0),i.basePath=i.base,i.workerPath=i.workerPath||i.base,i.modePath=i.modePath||i.base,i.themePath=i.themePath||i.base,delete i.base;for(var w in i)typeof i[w]!="undefined"&&t.set(w,i[w])}function h(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./lib/net"),o=e("./lib/dom"),u=e("./lib/app_config").AppConfig;n.exports=t=new u;var a=function(){return this||typeof window!="undefined"&&window}(),f={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{},loadWorkerFromBlob:!0,sharedPopups:!1,useStrictCSP:null};t.get=function(e){if(!f.hasOwnProperty(e))throw new Error("Unknown config key: "+e);return f[e]},t.set=function(e,t){if(f.hasOwnProperty(e))f[e]=t;else if(this.setDefaultValue("",e,t)==0)throw new Error("Unknown config key: "+e);e=="useStrictCSP"&&o.useStrictCSP(t)},t.all=function(){return r.copyObject(f)},t.$modes={},t.moduleUrl=function(e,t){if(f.$moduleUrls[e])return f.$moduleUrls[e];var n=e.split("/");t=t||n[n.length-2]||"";var r=t=="snippets"?"/":"-",i=n[n.length-1];if(t=="worker"&&r=="-"){var s=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g");i=i.replace(s,"")}(!i||i==t)&&n.length>1&&(i=n[n.length-2]);var o=f[t+"Path"];return o==null?o=f.basePath:r=="/"&&(t=r=""),o&&o.slice(-1)!="/"&&(o+="/"),o+t+r+i+this.get("suffix")},t.setModuleUrl=function(e,t){return f.$moduleUrls[e]=t},t.$loading={},t.loadModule=function(n,r){var i,o;Array.isArray(n)&&(o=n[0],n=n[1]);try{i=e(n)}catch(u){}if(i&&!t.$loading[n])return r&&r(i);t.$loading[n]||(t.$loading[n]=[]),t.$loading[n].push(r);if(t.$loading[n].length>1)return;var a=function(){e([n],function(e){t._emit("load.module",{name:n,module:e});var r=t.$loading[n];t.$loading[n]=null,r.forEach(function(t){t&&t(e)})})};if(!t.get("packaged"))return a();s.loadScript(t.moduleUrl(n,o),a),l()};var l=function(){!f.basePath&&!f.workerPath&&!f.modePath&&!f.themePath&&!Object.keys(f.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),l=function(){})};t.init=c,t.version="1.4.13"}),define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/mouse/touch_handler","ace/config"],function(e,t,n){"use strict";var r=e("../lib/event"),i=e("../lib/useragent"),s=e("./default_handlers").DefaultHandlers,o=e("./default_gutter_handler").GutterHandler,u=e("./mouse_event").MouseEvent,a=e("./dragdrop_handler").DragdropHandler,f=e("./touch_handler").addTouchListeners,l=e("../config"),c=function(e){var t=this;this.editor=e,new s(this),new o(this),new a(this);var n=function(t){var n=!document.hasFocus||!document.hasFocus()||!e.isFocused()&&document.activeElement==(e.textInput&&e.textInput.getElement());n&&window.focus(),e.focus()},u=e.renderer.getMouseEventTarget();r.addListener(u,"click",this.onMouseEvent.bind(this,"click"),e),r.addListener(u,"mousemove",this.onMouseMove.bind(this,"mousemove"),e),r.addMultiMouseDownListener([u,e.renderer.scrollBarV&&e.renderer.scrollBarV.inner,e.renderer.scrollBarH&&e.renderer.scrollBarH.inner,e.textInput&&e.textInput.getElement()].filter(
372Boolean),[400,300,250],this,"onMouseEvent",e),r.addMouseWheelListener(e.container,this.onMouseWheel.bind(this,"mousewheel"),e),f(e.container,e);var l=e.renderer.$gutter;r.addListener(l,"mousedown",this.onMouseEvent.bind(this,"guttermousedown"),e),r.addListener(l,"click",this.onMouseEvent.bind(this,"gutterclick"),e),r.addListener(l,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick"),e),r.addListener(l,"mousemove",this.onMouseEvent.bind(this,"guttermousemove"),e),r.addListener(u,"mousedown",n,e),r.addListener(l,"mousedown",n,e),i.isIE&&e.renderer.scrollBarV&&(r.addListener(e.renderer.scrollBarV.element,"mousedown",n,e),r.addListener(e.renderer.scrollBarH.element,"mousedown",n,e)),e.on("mousemove",function(n){if(t.state||t.$dragDelay||!t.$dragEnabled)return;var r=e.renderer.screenToTextCoordinates(n.x,n.y),i=e.session.selection.getRange(),s=e.renderer;!i.isEmpty()&&i.insideStart(r.row,r.column)?s.setCursorStyle("default"):s.setCursorStyle("")},e)};(function(){this.onMouseEvent=function(e,t){if(!this.editor.session)return;this.editor._emit(e,new u(t,this.editor))},this.onMouseMove=function(e,t){var n=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;if(!n||!n.length)return;this.editor._emit(e,new u(t,this.editor))},this.onMouseWheel=function(e,t){var n=new u(t,this.editor);n.speed=this.$scrollSpeed*2,n.wheelX=t.wheelX,n.wheelY=t.wheelY,this.editor._emit(e,n)},this.setState=function(e){this.state=e},this.captureMouse=function(e,t){this.x=e.x,this.y=e.y,this.isMousePressed=!0;var n=this.editor,s=this.editor.renderer;s.$isMousePressed=!0;var o=this,a=function(e){if(!e)return;if(i.isWebKit&&!e.which&&o.releaseMouse)return o.releaseMouse();o.x=e.clientX,o.y=e.clientY,t&&t(e),o.mouseEvent=new u(e,o.editor),o.$mouseMoved=!0},f=function(e){n.off("beforeEndOperation",c),clearInterval(h),n.session&&l(),o[o.state+"End"]&&o[o.state+"End"](e),o.state="",o.isMousePressed=s.$isMousePressed=!1,s.$keepTextAreaAtCursor&&s.$moveTextAreaToCursor(),o.$onCaptureMouseMove=o.releaseMouse=null,e&&o.onMouseEvent("mouseup",e),n.endOperation()},l=function(){o[o.state]&&o[o.state](),o.$mouseMoved=!1};if(i.isOldIE&&e.domEvent.type=="dblclick")return setTimeout(function(){f(e)});var c=function(e){if(!o.releaseMouse)return;n.curOp.command.name&&n.curOp.selectionChanged&&(o[o.state+"End"]&&o[o.state+"End"](),o.state="",o.releaseMouse())};n.on("beforeEndOperation",c),n.startOperation({command:{name:"mouse"}}),o.$onCaptureMouseMove=a,o.releaseMouse=r.capture(this.editor.container,a,f);var h=setInterval(l,20)},this.releaseMouse=null,this.cancelContextMenu=function(){var e=function(t){if(t&&t.domEvent&&t.domEvent.type!="contextmenu")return;this.editor.off("nativecontextmenu",e),t&&t.domEvent&&r.stopEvent(t.domEvent)}.bind(this);setTimeout(e,10),this.editor.on("nativecontextmenu",e)},this.destroy=function(){this.releaseMouse&&this.releaseMouse()}}).call(c.prototype),l.defineOptions(c.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:i.isMac?150:0},dragEnabled:{initialValue:!0},focusTimeout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),t.MouseHandler=c}),define("ace/mouse/fold_handler",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";function i(e){e.on("click",function(t){var n=t.getDocumentPosition(),i=e.session,s=i.getFoldAt(n.row,n.column,1);s&&(t.getAccelKey()?i.removeFold(s):i.expandFold(s),t.stop());var o=t.domEvent&&t.domEvent.target;o&&r.hasCssClass(o,"ace_inline_button")&&r.hasCssClass(o,"ace_toggle_wrap")&&(i.setOption("wrap",!i.getUseWrapMode()),e.renderer.scrollCursorIntoView())}),e.on("gutterclick",function(t){var n=e.renderer.$gutterLayer.getRegion(t);if(n=="foldWidgets"){var r=t.getDocumentPosition().row,i=e.session;i.foldWidgets&&i.foldWidgets[r]&&e.session.onFoldWidgetClick(r,t),e.isFocused()||e.focus(),t.stop()}}),e.on("gutterdblclick",function(t){var n=e.renderer.$gutterLayer.getRegion(t);if(n=="foldWidgets"){var r=t.getDocumentPosition().row,i=e.session,s=i.getParentFoldRangeData(r,!0),o=s.range||s.firstRange;if(o){r=o.start.row;var u=i.getFoldAt(r,i.getLine(r).length,1);u?i.removeFold(u):(i.addFold("...",o),e.renderer.scrollCursorIntoView({row:o.start.row,column:0}))}t.stop()}})}var r=e("../lib/dom");t.FoldHandler=i}),define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,t,n){"use strict";var r=e("../lib/keys"),i=e("../lib/event"),s=function(e){this.$editor=e,this.$data={editor:e},this.$handlers=[],this.setDefaultHandler(e.commands)};(function(){this.setDefaultHandler=function(e){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=e,this.addKeyboardHandler(e,0)},this.setKeyboardHandler=function(e){var t=this.$handlers;if(t[t.length-1]==e)return;while(t[t.length-1]&&t[t.length-1]!=this.$defaultHandler)this.removeKeyboardHandler(t[t.length-1]);this.addKeyboardHandler(e,1)},this.addKeyboardHandler=function(e,t){if(!e)return;typeof e=="function"&&!e.handleKeyboard&&(e.handleKeyboard=e);var n=this.$handlers.indexOf(e);n!=-1&&this.$handlers.splice(n,1),t==undefined?this.$handlers.push(e):this.$handlers.splice(t,0,e),n==-1&&e.attach&&e.attach(this.$editor)},this.removeKeyboardHandler=function(e){var t=this.$handlers.indexOf(e);return t==-1?!1:(this.$handlers.splice(t,1),e.detach&&e.detach(this.$editor),!0)},this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]}
372,this.getStatusText=function(){var e=this.$data,t=e.editor;return this.$handlers.map(function(n){return n.getStatusText&&n.getStatusText(t,e)||""}).filter(Boolean).join(" ")},this.$callKeyboardHandlers=function(e,t,n,r){var s,o=!1,u=this.$editor.commands;for(var a=this.$handlers.length;a--;){s=this.$handlers[a].handleKeyboard(this.$data,e,t,n,r);if(!s||!s.command)continue;s.command=="null"?o=!0:o=u.exec(s.command,this.$editor,s.args,r),o&&r&&e!=-1&&s.passEvent!=1&&s.command.passEvent!=1&&i.stopEvent(r);if(o)break}return!o&&e==-1&&(s={command:"insertstring"},o=u.exec("insertstring",this.$editor,t)),o&&this.$editor._signal&&this.$editor._signal("keyboardActivity",s),o},this.onCommandKey=function(e,t,n){var i=r.keyCodeToString(n);return this.$callKeyboardHandlers(t,i,n,e)},this.onTextInput=function(e){return this.$callKeyboardHandlers(-1,e)}}).call(s.prototype),t.KeyBinding=s}),define("ace/lib/bidiutil",["require","exports","module"],function(e,t,n){"use strict";function F(e,t,n,r){var i=s?d:p,c=null,h=null,v=null,m=0,g=null,y=null,b=-1,w=null,E=null,T=[];if(!r)for(w=0,r=[];w<n;w++)r[w]=R(e[w]);o=s,u=!1,a=!1,f=!1,l=!1;for(E=0;E<n;E++){c=m,T[E]=h=q(e,r,T,E),m=i[c][h],g=m&240,m&=15,t[E]=v=i[m][5];if(g>0)if(g==16){for(w=b;w<E;w++)t[w]=1;b=-1}else b=-1;y=i[m][6];if(y)b==-1&&(b=E);else if(b>-1){for(w=b;w<E;w++)t[w]=v;b=-1}r[E]==S&&(t[E]=0),o|=v}if(l)for(w=0;w<n;w++)if(r[w]==x){t[w]=s;for(var C=w-1;C>=0;C--){if(r[C]!=N)break;t[C]=s}}}function I(e,t,n){if(o<e)return;if(e==1&&s==m&&!f){n.reverse();return}var r=n.length,i=0,u,a,l,c;while(i<r){if(t[i]>=e){u=i+1;while(u<r&&t[u]>=e)u++;for(a=i,l=u-1;a<l;a++,l--)c=n[a],n[a]=n[l],n[l]=c;i=u}i++}}function q(e,t,n,r){var i=t[r],o,c,h,p;switch(i){case g:case y:u=!1;case E:case w:return i;case b:return u?w:b;case T:return u=!0,a=!0,y;case N:return E;case C:if(r<1||r+1>=t.length||(o=n[r-1])!=b&&o!=w||(c=t[r+1])!=b&&c!=w)return E;return u&&(c=w),c==o?c:E;case k:o=r>0?n[r-1]:S;if(o==b&&r+1<t.length&&t[r+1]==b)return b;return E;case L:if(r>0&&n[r-1]==b)return b;if(u)return E;p=r+1,h=t.length;while(p<h&&t[p]==L)p++;if(p<h&&t[p]==b)return b;return E;case A:h=t.length,p=r+1;while(p<h&&t[p]==A)p++;if(p<h){var d=e[r],v=d>=1425&&d<=2303||d==64286;o=t[p];if(v&&(o==y||o==T))return y}if(r<1||(o=t[r-1])==S)return E;return n[r-1];case S:return u=!1,f=!0,s;case x:return l=!0,E;case O:case M:case D:case P:case _:u=!1;case H:return E}}function R(e){var t=e.charCodeAt(0),n=t>>8;return n==0?t>191?g:B[t]:n==5?/[\u0591-\u05f4]/.test(e)?y:g:n==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(e)?A:/[\u0660-\u0669\u066b-\u066c]/.test(e)?w:t==1642?L:/[\u06f0-\u06f9]/.test(e)?b:T:n==32&&t<=8287?j[t&255]:n==254?t>=65136?T:E:E}function U(e){return e>="\u064b"&&e<="\u0655"}var r=["\u0621","\u0641"],i=["\u063a","\u064a"],s=0,o=0,u=!1,a=!1,f=!1,l=!1,c=!1,h=!1,p=[[0,3,0,1,0,0,0],[0,3,0,1,2,2,0],[0,3,0,17,2,0,1],[0,3,5,5,4,1,0],[0,3,21,21,4,0,1],[0,3,5,5,4,2,0]],d=[[2,0,1,1,0,1,0],[2,0,1,1,0,2,0],[2,0,2,1,3,2,0],[2,0,2,33,3,1,1]],v=0,m=1,g=0,y=1,b=2,w=3,E=4,S=5,x=6,T=7,N=8,C=9,k=10,L=11,A=12,O=13,M=14,_=15,D=16,P=17,H=18,B=[H,H,H,H,H,H,H,H,H,x,S,x,N,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,S,S,S,x,N,E,E,L,L,L,E,E,E,E,E,k,C,k,C,C,b,b,b,b,b,b,b,b,b,b,C,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,H,H,H,H,H,H,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,C,E,L,L,L,L,E,E,E,E,g,E,E,H,E,E,L,L,b,b,E,g,E,E,E,b,g,E,E,E,E,E],j=[N,N,N,N,N,N,N,N,N,N,N,H,H,H,g,y,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,N,S,O,M,_,D,P,C,L,L,L,L,L,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,C,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,N];t.L=g,t.R=y,t.EN=b,t.ON_R=3,t.AN=4,t.R_H=5,t.B=6,t.RLE=7,t.DOT="\u00b7",t.doBidiReorder=function(e,n,r){if(e.length<2)return{};var i=e.split(""),o=new Array(i.length),u=new Array(i.length),a=[];s=r?m:v,F(i,a,i.length,n);for(var f=0;f<o.length;o[f]=f,f++);I(2,a,o),I(1,a,o);for(var f=0;f<o.length-1;f++)n[f]===w?a[f]=t.AN:a[f]===y&&(n[f]>T&&n[f]<O||n[f]===E||n[f]===H)?a[f]=t.ON_R:f>0&&i[f-1]==="\u0644"&&/\u0622|\u0623|\u0625|\u0627/.test(i[f])&&(a[f-1]=a[f]=t.R_H,f++);i[i.length-1]===t.DOT&&(a[i.length-1]=t.B),i[0]==="\u202b"&&(a[0]=t.RLE);for(var f=0;f<o.length;f++)u[f]=a[o[f]];return{logicalFromVisual:o,bidiLevels:u}},t.hasBidiCharacters=function(e,t){var n=!1;for(var r=0;r<e.length;r++)t[r]=R(e.charAt(r)),!n&&(t[r]==y||t[r]==T||t[r]==w)&&(n=!0);return n},t.getVisualFromLogicalIdx=function(e,t){for(var n=0;n<t.logicalFromVisual.length;n++)if(t.logicalFromVisual[n]==e)return n;return 0}}),define("ace/bidihandler",["require","exports","module","ace/lib/bidiutil","ace/lib/lang"],function(e,t,n){"use strict";var r=e("./lib/bidiutil"),i=e("./lib/lang"),s=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\u202B]/,o=function(e){this.session=e,this.bidiMap={},this.currentRow=null,this.bidiUtil=r,this.charWidths=[],this.EOL="\u00ac",this.showInvisibles=!0,this.isRtlDir=!1,this.$isRtl=!1,this.line="",this.wrapIndent=0,this.EOF="\u00b6",this.RLE="\u202b",this.contentWidth=0,this.fontMetrics=null,this.rtlLineOffset=0,this.wrapOffset=0,this.isMoveLeftOperation=!1,this.seenBidi=s.test(e.getValue())};(function(){this.isBidiRow=function(e,t,n){return this.seenBidi?(e!==this.currentRow&&(this.currentRow=e,this.updateRowLine(t,n),this.updateBidiMap()),this.bidiMap.bidiLevels):!1},this.onChange=function(e){this.seenBidi?this.currentRow=null:e.action=="insert"&&s.test(e.lines.join("\n"))&&(this.seenBidi=!0,this.currentRow=null)},this.getDocumentRow=function(){var e=0,t=this.session.$screenRowCache;if(t.length){var n=this.session.$getRowCacheIndex(t,this.currentRow);n>=0&&(e=this.session.$docRowCache[n])}return e}
372,this.getSplitIndex=function(){var e=0,t=this.session.$screenRowCache;if(t.length){var n,r=this.session.$getRowCacheIndex(t,this.currentRow);while(this.currentRow-e>0){n=this.session.$getRowCacheIndex(t,this.currentRow-e-1);if(n!==r)break;r=n,e++}}else e=this.currentRow;return e},this.updateRowLine=function(e,t){e===undefined&&(e=this.getDocumentRow());var n=e===this.session.getLength()-1,s=n?this.EOF:this.EOL;this.wrapIndent=0,this.line=this.session.getLine(e),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE;if(this.session.$useWrapMode){var o=this.session.$wrapData[e];o&&(t===undefined&&(t=this.getSplitIndex()),t>0&&o.length?(this.wrapIndent=o.indent,this.wrapOffset=this.wrapIndent*this.charWidths[r.L],this.line=t<o.length?this.line.substring(o[t-1],o[t]):this.line.substring(o[o.length-1])):this.line=this.line.substring(0,o[t])),t==o.length&&(this.line+=this.showInvisibles?s:r.DOT)}else this.line+=this.showInvisibles?s:r.DOT;var u=this.session,a=0,f;this.line=this.line.replace(/\t|[\u1100-\u2029, \u202F-\uFFE6]/g,function(e,t){return e===" "||u.isFullWidth(e.charCodeAt(0))?(f=e===" "?u.getScreenTabSize(t+a):2,a+=f-1,i.stringRepeat(r.DOT,f)):e}),this.isRtlDir&&(this.fontMetrics.$main.textContent=this.line.charAt(this.line.length-1)==r.DOT?this.line.substr(0,this.line.length-1):this.line,this.rtlLineOffset=this.contentWidth-this.fontMetrics.$main.getBoundingClientRect().width)},this.updateBidiMap=function(){var e=[];r.hasBidiCharacters(this.line,e)||this.isRtlDir?this.bidiMap=r.doBidiReorder(this.line,e,this.isRtlDir):this.bidiMap={}},this.markAsDirty=function(){this.currentRow=null},this.updateCharacterWidths=function(e){if(this.characterWidth===e.$characterSize.width)return;this.fontMetrics=e;var t=this.characterWidth=e.$characterSize.width,n=e.$measureCharWidth("\u05d4");this.charWidths[r.L]=this.charWidths[r.EN]=this.charWidths[r.ON_R]=t,this.charWidths[r.R]=this.charWidths[r.AN]=n,this.charWidths[r.R_H]=n*.45,this.charWidths[r.B]=this.charWidths[r.RLE]=0,this.currentRow=null},this.setShowInvisibles=function(e){this.showInvisibles=e,this.currentRow=null},this.setEolChar=function(e){this.EOL=e},this.setContentWidth=function(e){this.contentWidth=e},this.isRtlLine=function(e){return this.$isRtl?!0:e!=undefined?this.session.getLine(e).charAt(0)==this.RLE:this.isRtlDir},this.setRtlDirection=function(e,t){var n=e.getCursorPosition();for(var r=e.selection.getSelectionAnchor().row;r<=n.row;r++)!t&&e.session.getLine(r).charAt(0)===e.session.$bidiHandler.RLE?e.session.doc.removeInLine(r,0,1):t&&e.session.getLine(r).charAt(0)!==e.session.$bidiHandler.RLE&&e.session.doc.insert({column:0,row:r},e.session.$bidiHandler.RLE)},this.getPosLeft=function(e){e-=this.wrapIndent;var t=this.line.charAt(0)===this.RLE?1:0,n=e>t?this.session.getOverwrite()?e:e-1:t,i=r.getVisualFromLogicalIdx(n,this.bidiMap),s=this.bidiMap.bidiLevels,o=0;!this.session.getOverwrite()&&e<=t&&s[i]%2!==0&&i++;for(var u=0;u<i;u++)o+=this.charWidths[s[u]];return!this.session.getOverwrite()&&e>t&&s[i]%2===0&&(o+=this.charWidths[s[i]]),this.wrapIndent&&(o+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(o+=this.rtlLineOffset),o},this.getSelections=function(e,t){var n=this.bidiMap,r=n.bidiLevels,i,s=[],o=0,u=Math.min(e,t)-this.wrapIndent,a=Math.max(e,t)-this.wrapIndent,f=!1,l=!1,c=0;this.wrapIndent&&(o+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var h,p=0;p<r.length;p++)h=n.logicalFromVisual[p],i=r[p],f=h>=u&&h<a,f&&!l?c=o:!f&&l&&s.push({left:c,width:o-c}),o+=this.charWidths[i],l=f;f&&p===r.length&&s.push({left:c,width:o-c});if(this.isRtlDir)for(var d=0;d<s.length;d++)s[d].left+=this.rtlLineOffset;return s},this.offsetToCol=function(e){this.isRtlDir&&(e-=this.rtlLineOffset);var t=0,e=Math.max(e,0),n=0,r=0,i=this.bidiMap.bidiLevels,s=this.charWidths[i[r]];this.wrapIndent&&(e-=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);while(e>n+s/2){n+=s;if(r===i.length-1){s=0;break}s=this.charWidths[i[++r]]}return r>0&&i[r-1]%2!==0&&i[r]%2===0?(e<n&&r--,t=this.bidiMap.logicalFromVisual[r]):r>0&&i[r-1]%2===0&&i[r]%2!==0?t=1+(e>n?this.bidiMap.logicalFromVisual[r]:this.bidiMap.logicalFromVisual[r-1]):this.isRtlDir&&r===i.length-1&&s===0&&i[r-1]%2===0||!this.isRtlDir&&r===0&&i[r]%2!==0?t=1+this.bidiMap.logicalFromVisual[r]:(r>0&&i[r-1]%2!==0&&s!==0&&r--,t=this.bidiMap.logicalFromVisual[r]),t===0&&this.isRtlDir&&t++,t+this.wrapIndent}}).call(o.prototype),t.BidiHandler=o}),define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=function(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var t=this;this.cursor.on("change",function(e){t.$cursorChanged=!0,t.$silent||t._emit("changeCursor"),!t.$isEmpty&&!t.$silent&&t._emit("changeSelection"),!t.$keepDesiredColumnOnChange&&e.old.column!=e.value.column&&(t.$desiredColumn=null)}),this.anchor.on("change",function(){t.$anchorChanged=!0,!t.$isEmpty&&!t.$silent&&t._emit("changeSelection")})};(function(){r.implement(this,s),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},this.getCursor=function(){return this.lead.getPosition()},this.setSelectionAnchor=function(e,t){this.$isEmpty=!1,this.anchor.setPosition(e,t)},this.getAnchor=this.getSelectionAnchor=function(){return this.$isEmpty?this.get
372SelectionLead():this.anchor.getPosition()},this.getSelectionLead=function(){return this.lead.getPosition()},this.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},this.getRange=function(){var e=this.anchor,t=this.lead;return this.$isEmpty?o.fromPoints(t,t):this.isBackwards()?o.fromPoints(t,e):o.fromPoints(e,t)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},this.setRange=this.setSelectionRange=function(e,t){var n=t?e.end:e.start,r=t?e.start:e.end;this.$setSelection(n.row,n.column,r.row,r.column)},this.$setSelection=function(e,t,n,r){if(this.$silent)return;var i=this.$isEmpty,s=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(e,t),this.cursor.setPosition(n,r),this.$isEmpty=!o.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||i!=this.$isEmpty||s)&&this._emit("changeSelection")},this.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},this.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},this.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},this.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},this.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(e,t){if(typeof t=="undefined"){var n=e||this.lead;e=n.row,t=n.column}return this.session.getWordRange(e,t)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},this.getLineRange=function(e,t){var n=typeof e=="number"?e:this.lead.row,r,i=this.session.getFoldLine(n);return i?(n=i.start.row,r=i.end.row):r=n,t===!0?new o(n,0,r,this.session.getLine(r).length):new o(n,0,r+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.wouldMoveIntoSoftTab=function(e,t,n){var r=e.column,i=e.column+t;return n<0&&(r=e.column-t,i=e.column),this.session.isTabStop(e)&&this.doc.getLine(e.row).slice(r,i).split(" ").length-1==t},this.moveCursorLeft=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,-1))this.moveCursorTo(t.start.row,t.start.column);else if(e.column===0)e.row>0&&this.moveCursorTo(e.row-1,this.doc.getLine(e.row-1).length);else{var n=this.session.getTabSize();this.wouldMoveIntoSoftTab(e,n,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-n):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,1))this.moveCursorTo(t.end.row,t.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row<this.doc.getLength()-1&&this.moveCursorTo(this.lead.row+1,0);else{var n=this.session.getTabSize(),e=this.lead;this.wouldMoveIntoSoftTab(e,n,1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,n):this.moveCursorBy(0,1)}},this.moveCursorLineStart=function(){var e=this.lead.row,t=this.lead.column,n=this.session.documentToScreenRow(e,t),r=this.session.screenToDocumentPosition(n,0),i=this.session.getDisplayLine(e,null,r.row,r.column),s=i.match(/^\s*/);s[0].length!=t&&!this.session.$useEmacsStyleLineStart&&(r.column+=s[0].length),this.moveCursorToPosition(r)},this.moveCursorLineEnd=function(){var e=this.lead,t=this.session.getDocumentLastRowColumnPosition(e.row,e.column);if(this.lead.column==t.column){var n=this.session.getLine(t.row);if(t.column==n.length){var r=n.search(/\s+$/);r>0&&(t.column=r)}}this.moveCursorTo(t.row,t.column)},this.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t);
372this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var i=this.session.getFoldAt(e,t,1);if(i){this.moveCursorTo(i.end.row,i.end.column);return}this.session.nonTokenRe.exec(r)&&(t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,r=n.substring(t));if(t>=n.length){this.moveCursorTo(e,n.length),this.moveCursorRight(),e<this.doc.getLength()-1&&this.moveCursorWordRight();return}this.session.tokenRe.exec(r)&&(t+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,t)},this.moveCursorLongWordLeft=function(){var e=this.lead.row,t=this.lead.column,n;if(n=this.session.getFoldAt(e,t,-1)){this.moveCursorTo(n.start.row,n.start.column);return}var r=this.session.getFoldStringAt(e,t,-1);r==null&&(r=this.doc.getLine(e).substring(0,t));var s=i.stringReverse(r);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,this.session.nonTokenRe.exec(s)&&(t-=this.session.nonTokenRe.lastIndex,s=s.slice(this.session.nonTokenRe.lastIndex),this.session.nonToken
372Re.lastIndex=0);if(t<=0){this.moveCursorTo(e,0),this.moveCursorLeft(),e>0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(s)&&(t-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,t)},this.$shortWordEndIndex=function(e){var t=0,n,r=/\s/,i=this.session.tokenRe;i.lastIndex=0;if(this.session.tokenRe.exec(e))t=this.session.tokenRe.lastIndex;else{while((n=e[t])&&r.test(n))t++;if(t<1){i.lastIndex=0;while((n=e[t])&&!i.test(n)){i.lastIndex=0,t++;if(r.test(n)){if(t>2){t--;break}while((n=e[t])&&r.test(n))t++;if(t>2)break}}}}return i.lastIndex=0,t},this.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t),i=this.session.getFoldAt(e,t,1);if(i)return this.moveCursorTo(i.end.row,i.end.column);if(t==n.length){var s=this.doc.getLength();do e++,r=this.doc.getLine(e);while(e<s&&/^\s*$/.test(r));/^\s+/.test(r)||(r=""),t=0}var o=this.$shortWordEndIndex(r);this.moveCursorTo(e,t+o)},this.moveCursorShortWordLeft=function(){var e=this.lead.row,t=this.lead.column,n;if(n=this.session.getFoldAt(e,t,-1))return this.moveCursorTo(n.start.row,n.start.column);var r=this.session.getLine(e).substring(0,t);if(t===0){do e--,r=this.doc.getLine(e);while(e>0&&/^\s*$/.test(r));t=r.length,/\s+$/.test(r)||(r="")}var s=i.stringReverse(r),o=this.$shortWordEndIndex(s);return this.moveCursorTo(e,t-o)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(e,t){var n=this.session.documentToScreenPosition(this.lead.row,this.lead.column),r;t===0&&(e!==0&&(this.session.$bidiHandler.isBidiRow(n.row,this.lead.row)?(r=this.session.$bidiHandler.getPosLeft(n.column),n.column=Math.round(r/this.session.$bidiHandler.charWidths[0])):r=n.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?n.column=this.$desiredColumn:this.$desiredColumn=n.column);if(e!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var i=this.session.lineWidgets[this.lead.row];e<0?e-=i.rowsAbove||0:e>0&&(e+=i.rowCount-(i.rowsAbove||0))}var s=this.session.screenToDocumentPosition(n.row+e,n.column,r);e!==0&&t===0&&s.row===this.lead.row&&s.column===this.lead.column,this.moveCursorTo(s.row,s.column+t,t===0)},this.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},this.moveCursorTo=function(e,t,n){var r=this.session.getFoldAt(e,t,1);r&&(e=r.start.row,t=r.start.column),this.$keepDesiredColumnOnChange=!0;var i=this.session.getLine(e);/[\uDC00-\uDFFF]/.test(i.charAt(t))&&i.charAt(t-1)&&(this.lead.row==e&&this.lead.column==t+1?t-=1:t+=1),this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,n||(this.$desiredColumn=null)},this.moveCursorToScreen=function(e,t,n){var r=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(r.row,r.column,n)},this.detach=function(){this.lead.detach(),this.anchor.detach()},this.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},this.getRangeOfMovements=function(e){var t=this.getCursor();try{e(this);var n=this.getCursor();return o.fromPoints(t,n)}catch(r){return o.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},this.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else{var e=this.getRange();e.isBackwards=this.isBackwards()}return e},this.fromJSON=function(e){if(e.start==undefined){if(this.rangeList&&e.length>1){this.toSingleRange(e[0]);for(var t=e.length;t--;){var n=o.fromPoints(e[t].start,e[t].end);e[t].isBackwards&&(n.cursor=n.start),this.addRange(n,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},this.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0}}).call(u.prototype),t.Selection=u}),define("ace/tokenizer",["require","exports","module","ace/config"],function(e,t,n){"use strict";var r=e("./config"),i=2e3,s=function(e){this.states=e,this.regExps={},this.matchMappings={};for(var t in this.states){var n=this.states[t],r=[],i=0,s=this.matchMappings[t]={defaultToken:"text"},o="g",u=[];for(var a=0;a<n.length;a++){var f=n[a];f.defaultToken&&(s.defaultToken=f.defaultToken),f.caseInsensitive&&(o="gi");if(f.regex==null)continue;f.regex instanceof RegExp&&(f.regex=f.regex.toString().slice(1,-1));var l=f.regex,c=(new RegExp("(?:("+l+")|(.))")).exec("a").length-2;Array.isArray(f.token)?f.token.length==1||c==1?f.token=f.token[0]:c-1!=f.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:f,groupCount:c-1}),f.token=f.token[0]):(f.tokenArray=f.token,f.token=null,f.onMatch=this.$arrayTokens):typeof f.token=="function"&&!f.onMatch&&(c>1?f.onMatch=this.$applyToken:f.onMatch=f.token),c>1&&(/\\\d/.test(f.regex)?l=f.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+i+1)}):(c=1,l=this.removeCapturingGroups(f.regex)),!f.splitRegex&&typeof f.token!="string"&&u.push(f)),s[i]=a,i+=c,r.push(l),f.onMatch||(f.onMatch=null)}r.length||(s[0]=0,r.push("$")),u.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,o)},this),this.regExps[t]=new RegExp("("+r.join(")|(")+")|($)",o)}};(function(){this.$setMaxTokenCount=function(e){i=e|0},this.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),n=this.token.apply(this,t);if(typeof n=="string")return[{type:n,value:e}];var r=[];for(var i=0,s=n.length;i<s;i++)t[i]&&(r[r.length]={type:n[i],value:t[i]});return r},this.$arrayTokens=function(e){if(!e)return[];var t=this.splitRegex.exec(e);if(!t)return"text";var n=[],r=this.tokenArray;for(var i=0,s=r.length;i<s;i++)t[i+1]&&(n[n.length]={type:r[i],value:t[i+1]});return n},this.removeCapturingGroups=function(e){var t=e.replace(/\\.|\[(?:\\.|[^\\\]])*|\(\?[:=!<]|(\()/g,function(e,t){return t?"(?:":e});return t},this.createSplitterRegexp=function(e,t){if(e.indexOf("(?=")!=-1){var n=0,r=!1,i={};e.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(e,t,s,o,u,a){return r?r=u!="]":u?r=!0:o?(n==i.stack&&(i.end=a+1,i.stack=-1),n--):s&&(n++,s.length!=1&&(i.stack=n,i.start=a)),e}),i.end!=null&&/^\)*$/.test(e.substr(i.end))&&(e=e.substring(0,i.start)+e.substr(i.end))}return e.charAt(0)!="^"&&(e="^"+e),e.charAt(e.length-1)!="$"&&(e+="$"),new RegExp(e,(t||"").replace("g",""))},this.getLineTokens=function(e,t){if(t&&typeof t!="string"){var n=t.slice(0);t=n[0],t==="#tmp"&&(n.shift(),t=n.shift())}else var n=[];var r=t||"start",s=this.states[r];s||(r="start",s=this.states[r]);var o=this.matchMappings[r],u=this.regExps[r];u.lastIndex=0;var a,f=[],l=0,c=0,h={type:null,value:""};while(a=u.exec(e)){var p=o.defaultToken,d=null,v=a[0],m=u.lastIndex;if(m-v.length>l){var g=e.substring(l,m-v.length);h.type==p?h.value+=g:(h.type&&f.push(h),h={type:p,value:g})}for(var y=0;y<a.length-2;y++){if(a[y+1]===undefined)continue;d=s[o[y]],d.onMatch?p=d.onMatch(v,r,n,e):p=d.token,d.next&&(typeof d.next=="string"?r=
372d.next:r=d.next(r,n),s=this.states[r],s||(this.reportError("state doesn't exist",r),r="start",s=this.states[r]),o=this.matchMappings[r],l=m,u=this.regExps[r],u.lastIndex=m),d.consumeLineEnd&&(l=m);break}if(v)if(typeof p=="string")!!d&&d.merge===!1||h.type!==p?(h.type&&f.push(h),h={type:p,value:v}):h.value+=v;else if(p){h.type&&f.push(h),h={type:null,value:""};for(var y=0;y<p.length;y++)f.push(p[y])}if(l==e.length)break;l=m;if(c++>i){c>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});while(l<e.length)h.type&&f.push(h),h={value:e.substring(l,l+=500),type:"overflow"};r="start",n=[];break}}return h.type&&f.push(h),n.length>1&&n[0]!==r&&n.unshift("#tmp",r),{tokens:f,state:n.length?n:r}},this.reportError=r.reportError}).call(s.prototype),t.Tokenizer=s}),define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(e,t,n){"use strict";var r=e("../lib/lang"),i=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(e,t){if(!t){for(var n in e)this.$rules[n]=e[n];return}for(var n in e){var r=e[n];for(var i=0;i<r.length;i++){var s=r[i];if(s.next||s.onMatch)typeof s.next=="string"&&s.next.indexOf(t)!==0&&(s.next=t+s.next),s.nextState&&s.nextState.indexOf(t)!==0&&(s.nextState=t+s.nextState)}this.$rules[t+n]=r}},this.getRules=function(){return this.$rules},this.embedRules=function(e,t,n,i,s){var o=typeof e=="function"?(new e).getRules():e;if(i)for(var u=0;u<i.length;u++)i[u]=t+i[u];else{i=[];for(var a in o)i.push(t+a)}this.addRules(o,t);if(n){var f=Array.prototype[s?"push":"unshift"];for(var u=0;u<i.length;u++)f.apply(this.$rules[i[u]],r.deepCopy(n))}this.$embeds||(this.$embeds=[]),this.$embeds.push(t)},this.getEmbeds=function(){return this.$embeds};var e=function(e,t){return(e!="start"||t.length)&&t.unshift(this.nextState,e),this.nextState},t=function(e,t){return t.shift(),t.shift()||"start"};this.normalizeRules=function(){function i(s){var o=r[s];o.processed=!0;for(var u=0;u<o.length;u++){var a=o[u],f=null;Array.isArray(a)&&(f=a,a={}),!a.regex&&a.start&&(a.regex=a.start,a.next||(a.next=[]),a.next.push({defaultToken:a.token},{token:a.token+".end",regex:a.end||a.start,next:"pop"}),a.token=a.token+".start",a.push=!0);var l=a.next||a.push;if(l&&Array.isArray(l)){var c=a.stateName;c||(c=a.token,typeof c!="string"&&(c=c[0]||""),r[c]&&(c+=n++)),r[c]=l,a.next=c,i(c)}else l=="pop"&&(a.next=t);a.push&&(a.nextState=a.next||a.push,a.next=e,delete a.push);if(a.rules)for(var h in a.rules)r[h]?r[h].push&&r[h].push.apply(r[h],a.rules[h]):r[h]=a.rules[h];var p=typeof a=="string"?a:a.include;p&&(Array.isArray(p)?f=p.map(function(e){return r[e]}):f=r[p]);if(f){var d=[u,1].concat(f);a.noEscape&&(d=d.filter(function(e){return!e.next})),o.splice.apply(o,d),u--}a.keywordMap&&(a.token=this.createKeywordMapper(a.keywordMap,a.defaultToken||"text",a.caseInsensitive),delete a.defaultToken)}}var n=0,r=this.$rules;Object.keys(r).forEach(i,this)},this.createKeywordMapper=function(e,t,n,r){var i=Object.create(null);return this.$keywordList=[],Object.keys(e).forEach(function(t){var s=e[t],o=s.split(r||"|");for(var u=o.length;u--;){var a=o[u];this.$keywordList.push(a),n&&(a=a.toLowerCase()),i[a]=t}},this),e=null,n?function(e){return i[e.toLowerCase()]||t}:function(e){return i[e]||t}},this.getKeywords=function(){return this.$keywords}}).call(i.prototype),t.TextHighlightRules=i}),define("ace/mode/behaviour",["require","exports","module"],function(e,t,n){"use strict";var r=function(){this.$behaviours={}};(function(){this.add=function(e,t,n){switch(undefined){case this.$behaviours:this.$behaviours={};case this.$behaviours[e]:this.$behaviours[e]={}}this.$behaviours[e][t]=n},this.addBehaviours=function(e){for(var t in e)for(var n in e[t])this.add(t,n,e[t][n])},this.remove=function(e){this.$behaviours&&this.$behaviours[e]&&delete this.$behaviours[e]},this.inherit=function(e,t){if(typeof e=="function")var n=(new e).getBehaviours(t);else var n=e.getBehaviours(t);this.addBehaviours(n)},this.getBehaviours=function(e){if(!e)return this.$behaviours;var t={};for(var n=0;n<e.length;n++)this.$behaviours[e[n]]&&(t[e[n]]=this.$behaviours[e[n]]);return t}}
372).call(r.prototype),t.Behaviour=r}),define("ace/token_iterator",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("./range").Range,i=function(e,t,n){this.$session=e,this.$row=t,this.$rowTokens=e.getTokens(t);var r=e.getTokenAt(t,n);this.$tokenIndex=r?r.index:-1};(function(){this.stepBackward=function(){this.$tokenIndex-=1;while(this.$tokenIndex<0){this.$row-=1;if(this.$row<0)return this.$row=0,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=this.$rowTokens.length-1}return this.$rowTokens[this.$tokenIndex]},this.stepForward=function(){this.$tokenIndex+=1;var e;while(this.$tokenIndex>=this.$rowTokens.length){this.$row+=1,e||(e=this.$session.getLength());if(this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,n=e[t].start;if(n!==undefined)return n;n=0;while(t>0)t-=1,n+=e[t].value.length;return n},this.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},this.getCurrentTokenRange=function(){var e=this.$rowTokens[this.$tokenIndex],t=this.getCurrentTokenColumn();return new r(this.$row,t,this.$row,t+e.value.length)}}).call(i.prototype),t.TokenIterator=i}),define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),u=["text","paren.rparen","rparen","paren","punctuation.operator"],a=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],f,l={},c={'"':'"',"'":"'"},h=function(e){var t=-1;e.multiSelect&&(t=e.selection.index,l.rangeCount!=e.multiSelect.rangeCount&&(l={rangeCount:e.multiSelect.rangeCount}));if(l[t])return f=l[t];f=l[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},p=function(e,t,n,r){var i=e.end.row-e.start.row;return{text:n+t+r,selection:[0,e.start.column+1,i,e.end.column+(i?0:1)]}},d=function(e){this.add("braces","insertion",function(t,n,r,i,s){var u=r.getCursorPosition(),a=i.doc.getLine(u.row);if(s=="{"){h(r);var l=r.getSelectionRange(),c=i.doc.getTextRange(l);if(c!==""&&c!=="{"&&r.getWrapBehavioursEnabled())return p(l,c,"{","}");if(d.isSaneInsertion(r,i))return/[\]\}\)]/.test(a[u.column])||r.inMultiSelectMode||e&&e.braces?(d.recordAutoInsert(r,i,"}"),{text:"{}",selection:[1,1]}):(d.recordMaybeInsert(r,i,"{"),{text:"{",selection:[1,1]})}else if(s=="}"){h(r);var v=a.substring(u.column,u.column+1);if(v=="}"){var m=i.$findOpeningBracket("}",{column:u.column+1,row:u.row});if(m!==null&&d.isAutoInsertedClosing(u,a,s))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if(s=="\n"||s=="\r\n"){h(r);var g="";d.isMaybeInsertedClosing(u,a)&&(g=o.stringRepeat("}",f.maybeInsertedBrackets),d.clearMaybeInsertedClosing());var v=a.substring(u.column,u.column+1);if(v==="}"){var y=i.findMatchingBracket({row:u.row,column:u.column+1},"}");if(!y)return null;var b=this.$getIndent(i.getLine(y.row))}else{if(!g){d.clearMaybeInsertedClosing();return}var b=this.$getIndent(a)}var w=b+i.getTabString();return{text:"\n"+w+"\n"+b+g,selection:[1,w.length,1,w.length]}}d.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="{"){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.end.column,i.end.column+1);if(u=="}")return i.end.column++,i;f.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,n,r,i){if(i=="("){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"(",")");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,")"),{text:"()",selection:[1,1]}}else if(i==")"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f==")"){var l=r.$findOpeningBracket(")",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="("){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==")")return i.end.column++,i}}),this.add("brackets","insertion",function(e,t,n,r,i){if(i=="["){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"[","]");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,"]"),{text:"[]",selection:[1,1]}}else if(i=="]"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f=="]"){var l=r.$findOpeningBracket("]",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="["){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u=="]")return i.end.column++,i}}
372),this.add("string_dquotes","insertion",function(e,t,n,r,i){var s=r.$mode.$quotes||c;if(i.length==1&&s[i]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(i)!=-1)return;h(n);var o=i,u=n.getSelectionRange(),a=r.doc.getTextRange(u);if(a!==""&&(a.length!=1||!s[a])&&n.getWrapBehavioursEnabled())return p(u,a,o,o);if(!a){var f=n.getCursorPosition(),l=r.doc.getLine(f.row),d=l.substring(f.column-1,f.column),v=l.substring(f.column,f.column+1),m=r.getTokenAt(f.row,f.column),g=r.getTokenAt(f.row,f.column+1);if(d=="\\"&&m&&/escape/.test(m.type))return null;var y=m&&/string|escape/.test(m.type),b=!g||/string|escape/.test(g.type),w;if(v==o)w=y!==b,w&&/string\.end/.test(g.type)&&(w=!1);else{if(y&&!b)return null;if(y&&b)return null;var E=r.$mode.tokenRe;E.lastIndex=0;var S=E.test(d);E.lastIndex=0;var x=E.test(d);if(S||x)return null;if(v&&!/[\s;,.})\]\\]/.test(v))return null;var T=l[f.column-2];if(!(d!=o||T!=o&&!E.test(T)))return null;w=!0}return{text:w?o+o:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.$mode.$quotes||c,o=r.doc.getTextRange(i);if(!i.isMultiLine()&&s.hasOwnProperty(o)){h(n);var u=r.doc.getLine(i.start.row),a=u.substring(i.start.column+1,i.start.column+2);if(a==o)return i.end.column++,i}})};d.isSaneInsertion=function(e,t){var n=e.getCursorPosition(),r=new s(t,n.row,n.column);if(!this.$matchTokenType(r.getCurrentToken()||"text",u)){if(/[)}\]]/.test(e.session.getLine(n.row)[n.column]))return!0;var i=new s(t,n.row,n.column+1);if(!this.$matchTokenType(i.getCurrentToken()||"text",u))return!1}return r.stepForward(),r.getCurrentTokenRow()!==n.row||this.$matchTokenType(r.getCurrentToken()||"text",a)},d.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},d.recordAutoInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,i,f.autoInsertedLineEnd[0])||(f.autoInsertedBrackets=0),f.autoInsertedRow=r.row,f.autoInsertedLineEnd=n+i.substr(r.column),f.autoInsertedBrackets++},d.recordMaybeInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,i)||(f.maybeInsertedBrackets=0),f.maybeInsertedRow=r.row,f.maybeInsertedLineStart=i.substr(0,r.column)+n,f.maybeInsertedLineEnd=i.substr(r.column),f.maybeInsertedBrackets++},d.isAutoInsertedClosing=function(e,t,n){return f.autoInsertedBrackets>0&&e.row===f.autoInsertedRow&&n===f.autoInsertedLineEnd[0]&&t.substr(e.column)===f.autoInsertedLineEnd},d.isMaybeInsertedClosing=function(e,t){return f.maybeInsertedBrackets>0&&e.row===f.maybeInsertedRow&&t.substr(e.column)===f.maybeInsertedLineEnd&&t.substr(0,e.column)==f.maybeInsertedLineStart},d.popAutoInsertedClosing=function(){f.autoInsertedLineEnd=f.autoInsertedLineEnd.substr(1),f.autoInsertedBrackets--},d.clearMaybeInsertedClosing=function(){f&&(f.maybeInsertedBrackets=0,f.maybeInsertedRow=-1)},r.inherits(d,i),t.CstyleBehaviour=d}),define("ace/unicode",["require","exports","module"],function(e,t,n){"use strict";var r=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],i=0,s=[];for(var o=0;o<r.length;o+=2)s.push(i+=r[o]),r[o+1]&&s.push(45,i+=r[o+1]);t.wordChars=String.fromCharCode.apply(null,s)}),define("ace/mode/text",["require","exports","module","ace/config","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour/cstyle","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,t,n){"use strict";var r=e("../config"),i=e("../tokenizer").Tokenizer,s=e("./text_highlight_rules").TextHighlightRules,o=e("./behaviour/cstyle").CstyleBehaviour,u=e("../unicode"),a=e("../lib/lang"),f=e("../token_iterator").TokenIterator,l=e("../range").Range,c=function(){this.HighlightRules=s};(function(){this.$defaultBehaviour=new o,this.tokenRe=new RegExp("^["+u.wordChars+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+u.wordChars+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules(this.$highlightRuleConfig),this.$tokenizer=new i(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(e,t,n,r){function w(e){for(var t=n;t<=r;t++)e(i.getLine(t),t)}var i=t.doc,s=!0,o=!0,u=Infinity,f=t.getTabSize(),l=!1;if(!this.lineCommentStart){if(!this.blockComment)return!1;var c=this.blockComment.start,h=this.blockComment.end,p=new RegExp("^(\\s*)(?:"+a.escapeRegExp(c)+")"),d=new RegExp("(?:"+a.escapeRegExp(h)+")\\s*$"),v=function(e,t){if(g(e,t))return;if(!s||/\S/.test(e))i.insertInLine({row:t,column:e.length},h),i.insertInLine({row:t,column:u},c)},m=function(e,t){var n;(n=e.match(d))&&i.removeInLine(t,e.length-n[0].length,e.length),(n=e.match(p))&&i.removeInLine(t,n[1].length,n[0].length)},g=function(e,n){if(p.test(e))return!0;var r=t.getTokens(n);for(var i=0;i<r.length;i++)if(r[i].type==="comment")return!0}}else{if(Array.isArray(this.lineCommentStart))var p=this.lineCommentStart.map(a.escapeRegExp).join("|"),c=this.lineCommentStart[0];else var p=a.escapeRegExp(this.lineCommentStart),c=this.lineCommentStart;p=new RegExp("^(\\s*)(?:"+p+") ?"),l=t.getUseSoftTabs();var m=function(e,t){var n=e.match(p);if(!n)return;var r=n[1].length,s=n[0].length;!b(e,r,s)&&n[0][s-1]==" "&&s--,i.removeInLine(t,r,s)},y=c+" ",v=function(e,t){if(!s||/\S/.test(e))b(e,u,u)?i.insertInLine({row:t,column:u},y):i.insertInLine({row:t,column:u},c)},g=function(e,t){return p.test(e)},b=function(e,t,n){var r=0;while(t--&&e.charAt(t)==" ")r++;if(r%f!=0)return!1;var r=0;while(e.charAt(n++)==" ")r++;return f>2?r%f!=f-1:r%f==0}}var E=Infinity;w(function(e,t){var n=e.search(/\S/);n!==-1?(n<u&&(u=n),o&&!g(e,t)&&(o=!1)):E>e.length&&(E=e.length)}),u==Infinity&&(u=E,s=!1,o=!1),l&&u%f!=0&&(u=Math.floor(u/f)*f),w(o?m:v)},this.toggleBlockComment=function(e,t,n,r){var i=this.blockComment;if(!i)return;!i.start&&i[0]&&(i=i[0]);var s=new f(t,r.row,r.column),o=s.getCurrentToken(),u=t.selection,a=t.selection.toOrientedRange(),c,h;if(o&&/comment/.test(o.type)){var p,d;while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.start);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;p=new l(m,g,m,g+i.start.length);break}o=s.stepBackward()}var s=new f(t,r.row,r.column),o=s.getCurrentToken();while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.end);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;d=new l(m,g,m,g+i.end.length);break}o=s.stepForward()}d&&t.remove(d),p&&(t.remove(p),c=p.start.row,h=-i.start.length)}else h=i.start.length,c=n.start.row,t.insert(n.end,i.end),t.insert(n.start,i.start);a.start.row==c&&(a.start.column+=h),a.end.row==c&&(a.end.column+=h),t.selection.fromOrientedRange(a)},this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.checkOutdent=function(e,t,n){return!1},this.autoOutdent=function(e,t,n){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var t in e)if(e[t]){var n=e[t],i=n.prototype.$id,s=r.$modes[i];s||(r.$modes[i]=s=new n),r.$modes[t]||(r.$modes[t]=s),this.$embeds.push(t),this.$modes[t]=s}var o=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"];for(var t=0;t<o.length;t++)(function(e){var n=o[t],r=e[n];e[o[t]]=function(){return this.$delegator(n,arguments,r)}})(this)},this.$delegator=function(e,t,n){var r=t[0]||"start";if(typeof r!="string"){if(Array.isArray(r[2])){var i=r[2][r[2].length-1],s=this.$modes[i];if(s)return s[e].apply(s,[r[1]].concat([].slice.call(t,1)))}r=r[0]||"start"}for(var o=0;o<this.$embeds.length;o++){if(!this.$modes[this.$embeds[o]])continue;var u=r.split(this.$embeds[o]);if(!u[0]&&u[1]){t[0]=u[1];var s=this.$modes[this.$embeds[o]];return s[e].apply(s,t)}}var a=n.apply(this,t);return n?a:undefined},this.transformAction=function(e,t,n,r,i){if(this.$behaviour){var s=this.$behaviour.getBehaviours();for(var o in s)if(s[o][t]){var u=s[o][t].apply(this,arguments);if(u)return u}}},this.getKeywords=function(e){if(!this.completionKeywords){var t=this.$tokenizer.rules,n=[];for(var r in t){var i=t[r];for(var s=0,o=i.length;s<o;s++)if(typeof i[s].token=="string")/keyword|support|storage/.test(i[s].token)&&n.push(i[s].regex);else if(typeof i[s].token=="object")for(var u=0,a=i[s].token.length;u<a;u++)if(/keyword|support|storage/.test(i[s].token[u])){var r=i[s].regex.match(/\(.+?\)/g)[u];n.push(r.substr(1,r.length-2))}}this.completionKeywords=n}return e?n.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(e,t,n,r){var i=this.$keywordList||this.$createKeywordList();return i.map(function(e){return{name:e,value:e,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(c.prototype),t.Mode=c}),define("ace/apply_delta",["require","exports","module"],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row<e.length&&t.column>=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.$onChange=this.onChange.bind(this),this.attach(e),typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n)};(function(){function e(e,t,n){var r=n?e.column<=t.column:e.column<t.column;return e.row<t.row||e.row==t.row&&r}function t(t,n,r){var i=t.action=="insert",s=(i?1:-1)*(t.end.row-t.start.row),o=(i?1:-1)*(t.end.column-t.start.column),u=t.start,a=i?u:t.end;return e(n,u,r)?{row:n.row,column:n.column}:e(a,n,!r)?{row:n.row+s,column:n.column+(n.row==a.row?o:0)}:{row:u.row,column:u.column}}r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){if(e.start.row==e.end.row&&e.start.row!=this.row)return;if(e.start.row>this.row)return;var n=t(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},this.detach=function(){this.document.off("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.c
372olumn=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)};(function(){r.implement(this,s),this.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new u(this,e,t)},"aaa".split(/a/).length===0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},this.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},this.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},this.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},this.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},this.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},this.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},this.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},this.clonePos=function(e){return{row:e.row,column:e.column}},this.pos=function(e,t){return{row:e,column:t}},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},this.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e<this.getLength()?(t=t.concat([""]),n=0):(t=[""].concat(t),e--,n=this.$lines[e].length),this.insertMergedLines({row:e,column:n},t)},this.insertMergedLines=function(e,t){var n=this.clippedPos(e.row,e.column),r={row:n.row+t.length-1,column:(t.length==1?n.column:0)+t[t.length-1].length};return this.applyDelta({start:n,end:r,action:"insert",lines:t}),this.clonePos(r)},this.remove=function(e){var t=this.clippedPos(e.start.row,e.start.column),n=this.clippedPos(e.end.row,e.end.column);return this.applyDelta({start:t,end:n,action:"remove",lines:this.getLinesForRange({start:t,end:n})}),this.clonePos(t)},this.removeInLine=function(e,t,n){var r=this.clippedPos(e,t),i=this.clippedPos(e,n);return this.applyDelta({start:r,end:i,action:"remove",lines:this.getLinesForRange({start:r,end:i})},!0),this.clonePos(r)},this.removeFullLines=function(e,t){e=Math.min(Math.max(0,e),this.getLength()-1),t=Math.min(Math.max(0,t),this.getLength()-1);var n=t==this.getLength()-1&&e>0,r=t<this.getLength()-1,i=n?e-1:e,s=n?this.getLine(i).length:0,u=r?t+1:t,a=r?0:this.getLine(u).length,f=new o(i,s,u,a),l=this.$lines.slice(e,t+1);return this.applyDelta({start:f.start,end:f.end,action:"remove",lines:this.getLinesForRange(f)}),l},this.removeNewLine=function(e){e<this.getLength()-1&&e>=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},this.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++)this.applyDelta(e[t])},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--)this.revertDelta(e[t])},this.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},this.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row<t&&e.end.row<t||e.action=="insert"&&e.start.row<=t)&&this.applyDelta(e)},this.$splitAndapplyLargeDelta=function(e,t){var n=e.lines,r=n.length-t+1,i=e.start.row,s=e.start.column;for(var o=0,u=0;o<r;o=u){u+=t-1;var a=n.slice(o,u);a.push(""),this.applyDelta({start:this.pos(i+o,s),end:this.pos(i+u,s=0),action:e.action,lines:a},!0)}e.lines=n.slice(o),e.start.row=i+o,e.start.column=s,this.applyDelta(e,!0)},this.revertDelta=function(e){this.$safeApplyDelta({start:this.clonePos(e.start),end:this.clonePos(e.end),action:e.action=="insert"?"remove":"insert",lines:e.lines.slice()})},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}
372return{row:s-1,column:e+n[s-1].length+r}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length+r;return i+e.column}}).call(a.prototype),t.Document=a}),define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=function(e,t){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=e;var n=this;this.$worker=function(){if(!n.running)return;var e=new Date,t=n.currentLine,r=-1,i=n.doc,s=t;while(n.lines[t])t++;var o=i.getLength(),u=0;n.running=!1;while(t<o){n.$tokenizeRow(t),r=t;do t++;while(n.lines[t]);u++;if(u%5===0&&new Date-e>20){n.running=setTimeout(n.$worker,20);break}}n.currentLine=t,r==-1&&(r=t),s<=r&&n.fireUpdateEvent(s,r)}};(function(){r.implement(this,i),this.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(e,t){var n={first:e,last:t};this._signal("update",{data:n})},this.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.lines[t]=null;else if(e.action=="remove")this.lines.splice(t,n+1,null),this.states.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.lines.splice.apply(this.lines,r),this.states.splice.apply(this.states,r)}this.currentLine=Math.min(t,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},this.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},this.$tokenizeRow=function(e){var t=this.doc.getLine(e),n=this.states[e-1],r=this.tokenizer.getLineTokens(t,n,e);return this.states[e]+""!=r.state+""?(this.states[e]=r.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=r.tokens}}).call(s.prototype),t.BackgroundTokenizer=s}),define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){"use strict";var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./range").Range,o=function(e,t,n){this.setRegexp(e),this.clazz=t,this.type=n||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(e){if(this.regExp+""==e+"")return;this.regExp=e,this.cache=[]},this.update=function(e,t,n,i){if(!this.regExp)return;var o=i.firstRow,u=i.lastRow;for(var a=o;a<=u;a++){var f=this.cache[a];f==null&&(f=r.getMatchOffsets(n.getLine(a),this.regExp),f.length>this.MAX_RANGES&&(f=f.slice(0,this.MAX_RANGES)),f=f.map(function(e){return new s(a,e.offset,a,e.offset+e.length)}),this.cache[a]=f.length?f:"");for(var l=f.length;l--;)t.drawSingleLineMarker(e,f[l].toScreenRange(n),this.clazz,i)}}}).call(o.prototype),t.SearchHighlight=o}),define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,n){"use strict";function i(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var n=t[t.length-1];this.range=new r(t[0].start.row,t[0].start.column,n.end.row,n.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}var r=e("../range").Range;(function(){this.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},this.addFold=function(e){if(e.sameRow){if(e.start.row<this.startRow||e.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},this.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},this.walk=function(e,t,n){var r=0,i=this.folds,s,o,u,a=!0;t==null&&(t=this.end.row,n=this.end.column);for(var f=0;f<i.length;f++){s=i[f],o=s.range.compareStart(t,n);if(o==-1){e(null,t,n,r,a);return}u=e(null,s.start.row,s.start.column,r,a),u=!u&&e(s.placeholder,s.start.row,s.start.column,r);if(u||o===0)return;a=!s.sameRow,r=s.end.column}e(null,t,n,r,a)},this.getNextFoldTo=function(e,t){var n,r;for(var i=0;i<this.folds.length;i++){n=this.folds[i],r=n.range.compareEnd(e,t);if(r==-1)return{fold:n,kind:"after"};if(r===0)return{fold:n,kind:"inside"}}return null},this.addRemoveChars=function(e,t,n){var r=this.getNextFoldTo(e,t),i,s;if(r){i=r.fold;if(r.kind=="inside"&&i.start.column!=t&&i.start.row!=e)window.console&&window.console.log(e,t,i);else if(i.start.row==e){s=this.folds;var o=s.indexOf(i);o===0&&(this.start.column+=n);for(o;o<s.length;o++){i=s[o],i.start.column+=n;if(!i.sameRow)return;i.end.column+=n}this.end.column+=n}}},this.split=function(e,t){var n=this.getNextFoldTo(e,t);if(!n||n.kind=="inside")return null;var r=n.fold,s=this.folds,o=this.foldData,u=s.indexOf(r),a=s[u-1];this.end.row=a.end.row,this.end.column=a.end.column,s=s.splice(u,s.length-u);var f=new i(o,s);return o.splice(o.indexOf(this)+1,0,f),f},this.merge=function(e){var t=e.folds;for(var n=0;n<t.length;n++)this.addFold(t[n]);var r=this.foldData;r.splice(r.indexOf(e),1)},this.toString=function(){var e=[this.range.toString()+": ["];return this.folds.forEach(function(t){e.push(" "+t.toString())}),e.push("]"),e.join("\n")},this.idxToPosition=function(e){var t=0;for(var n=0;n<this.folds.length;n++){var r=this.folds[n];e-=r.start.column-t;
372if(e<0)return{row:r.start.row,column:r.start.column+e};e-=r.placeholder.length;if(e<0)return r.start;t=r.end.column}return{row:this.end.row,column:this.end.column+e}}}).call(i.prototype),t.FoldLine=i}),define("ace/range_list",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("./range").Range,i=r.comparePoints,s=function(){this.ranges=[],this.$bias=1};(function(){this.comparePoints=i,this.pointIndex=function(e,t,n){var r=this.ranges;for(var s=n||0;s<r.length;s++){var o=r[s],u=i(e,o.end);if(u>0)continue;var a=i(e,o.start);return u===0?t&&a!==0?-s-2:s:a>0||a===0&&!t?s:-s-1}return-s-1},this.add=function(e){var t=!e.isEmpty(),n=this.pointIndex(e.start,t);n<0&&(n=-n-1);var r=this.pointIndex(e.end,t,n);return r<0?r=-r-1:r++,this.ranges.splice(n,r-n,e)},this.addList=function(e){var t=[];for(var n=e.length;n--;)t.push.apply(t,this.add(e[n]));return t},this.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},this.merge=function(){var e=[],t=this.ranges;t=t.sort(function(e,t){return i(e.start,t.start)});var n=t[0],r;for(var s=1;s<t.length;s++){r=n,n=t[s];var o=i(r.end,n.start);if(o<0)continue;if(o==0&&!r.isEmpty()&&!n.isEmpty())continue;i(r.end,n.end)<0&&(r.end.row=n.end.row,r.end.column=n.end.column),t.splice(s,1),e.push(n),n=r,s--}return this.ranges=t,e},this.contains=function(e,t){return this.pointIndex({row:e,column:t})>=0},this.containsPoint=function(e){return this.pointIndex(e)>=0},this.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},this.clipRows=function(e,t){var n=this.ranges;if(n[0].start.row>t||n[n.length-1].start.row<e)return[];var r=this.pointIndex({row:e,column:0});r<0&&(r=-r-1);var i=this.pointIndex({row:t,column:0},r);i<0&&(i=-i-1);var s=[];for(var o=r;o<i;o++)s.push(n[o]);return s},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(e){this.session&&this.detach(),this.session=e,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){if(!this.session)return;this.session.removeListener("change",this.onChange),this.session=null},this.$onChange=function(e){var t=e.start,n=e.end,r=t.row,i=n.row,s=this.ranges;for(var o=0,u=s.length;o<u;o++){var a=s[o];if(a.end.row>=r)break}if(e.action=="insert"){var f=i-r,l=-t.column+n.column;for(;o<u;o++){var a=s[o];if(a.start.row>r)break;a.start.row==r&&a.start.column>=t.column&&(a.start.column==t.column&&this.$bias<=0||(a.start.column+=l,a.start.row+=f));if(a.end.row==r&&a.end.column>=t.column){if(a.end.column==t.column&&this.$bias<0)continue;a.end.column==t.column&&l>0&&o<u-1&&a.end.column>a.start.column&&a.end.column==s[o+1].start.column&&(a.end.column-=l),a.end.column+=l,a.end.row+=f}}}else{var f=r-i,l=t.column-n.column;for(;o<u;o++){var a=s[o];if(a.start.row>i)break;if(a.end.row<i&&(r<a.end.row||r==a.end.row&&t.column<a.end.column))a.end.row=r,a.end.column=t.column;else if(a.end.row==i)if(a.end.column<=n.column){if(f||a.end.column>t.column)a.end.column=t.column,a.end.row=t.row}else a.end.column+=l,a.end.row+=f;else a.end.row>i&&(a.end.row+=f);if(a.start.row<i&&(r<a.start.row||r==a.start.row&&t.column<a.start.column))a.start.row=r,a.start.column=t.column;else if(a.start.row==i)if(a.start.column<=n.column){if(f||a.start.column>t.column)a.start.column=t.column,a.start.row=t.row}else a.start.column+=l,a.start.row+=f;else a.start.row>i&&(a.start.row+=f)}}if(f!=0&&o<u)for(;o<u;o++){var a=s[o];a.start.row+=f,a.end.row+=f}}}).call(s.prototype),t.RangeList=s}),define("ace/edit_session/fold",["require","exports","module","ace/range_list","ace/lib/oop"],function(e,t,n){"use strict";function o(e,t){e.row-=t.row,e.row==0&&(e.column-=t.column)}function u(e,t){o(e.start,t),o(e.end,t)}function a(e,t){e.row==0&&(e.column+=t.column),e.row+=t.row}function f(e,t){a(e.start,t),a(e.end,t)}var r=e("../range_list").RangeList,i=e("../lib/oop"),s=t.Fold=function(e,t){this.foldLine=null,this.placeholder=t,this.range=e,this.start=e.start,this.end=e.end,this.sameRow=e.start.row==e.end.row,this.subFolds=this.ranges=[]};i.inherits(s,r),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(e){this.foldLine=e,this.subFolds.forEach(function(t){t.setFoldLine(e)})},this.clone=function(){var e=this.range.clone(),t=new s(e,this.placeholder);return this.subFolds.forEach(function(e){t.subFolds.push(e.clone())}),t.collapseChildren=this.collapseChildren,t},this.addSubFold=function(e){if(this.range.isEqual(e))return;u(e,this.start);var t=e.start.row,n=e.start.column;for(var r=0,i=-1;r<this.subFolds.length;r++){i=this.subFolds[r].range.compare(t,n);if(i!=1)break}var s=this.subFolds[r],o=0;if(i==0){if(s.range.containsRange(e))return s.addSubFold(e);o=1}var t=e.range.end.row,n=e.range.end.column;for(var a=r,i=-1;a<this.subFolds.length;a++){i=this.subFolds[a].range.compare(t,n);if(i!=1)break}i==0&&a++;var f=this.subFolds.splice(r,a-r,e),l=i==0?f.length-1:f.length;for(var c=o;c<l;c++)e.addSubFold(f[c]);return e.setFoldLine(this.foldLine),e},this.restoreRange=function(e){return f(e,this.start)}}.call(s.prototype)}),define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(e,t,n){"use strict";function u(){this.getFoldAt=function(e,t,n){var r=this.getFoldLine(e);if(!r)return null;var i=r.folds;for(var s=0;s<i.length;s++){var o=i[s].range;if(o.contains(e,t)){if(n==1&&o.isEnd(e,t)&&!o.isEmpty())continue;if(n==-1&&o.isStart(e,t)&&!o.isEmpty())continue;return i[s]}}},this.getFoldsInRange=function(e){var t=e.start,n=e.end,r=this.$foldData,i=[];
372t.column+=1,n.column-=1;for(var s=0;s<r.length;s++){var o=r[s].range.compareRange(e);if(o==2)continue;if(o==-2)break;var u=r[s].folds;for(var a=0;a<u.length;a++){var f=u[a];o=f.range.compareRange(e);if(o==-2)break;if(o==2)continue;if(o==42)break;i.push(f)}}return t.column-=1,n.column+=1,i},this.getFoldsInRangeList=function(e){if(Array.isArray(e)){var t=[];e.forEach(function(e){t=t.concat(this.getFoldsInRange(e))},this)}else var t=this.getFoldsInRange(e);return t},this.getAllFolds=function(){var e=[],t=this.$foldData;for(var n=0;n<t.length;n++)for(var r=0;r<t[n].folds.length;r++)e.push(t[n].folds[r]);return e},this.getFoldStringAt=function(e,t,n,r){r=r||this.getFoldLine(e);if(!r)return null;var i={end:{column:0}},s,o;for(var u=0;u<r.folds.length;u++){o=r.folds[u];var a=o.range.compareEnd(e,t);if(a==-1){s=this.getLine(o.start.row).substring(i.end.column,o.start.column);break}if(a===0)return null;i=o}return s||(s=this.getLine(o.start.row).substring(i.end.column)),n==-1?s.substring(0,t-i.end.column):n==1?s.substring(t-i.end.column):s},this.getFoldLine=function(e,t){var n=this.$foldData,r=0;t&&(r=n.indexOf(t)),r==-1&&(r=0);for(r;r<n.length;r++){var i=n[r];if(i.start.row<=e&&i.end.row>=e)return i;if(i.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var n=this.$foldData,r=0;t&&(r=n.indexOf(t)),r==-1&&(r=0);for(r;r<n.length;r++){var i=n[r];if(i.end.row>=e)return i}return null},this.getFoldedRowCount=function(e,t){var n=this.$foldData,r=t-e+1;for(var i=0;i<n.length;i++){var s=n[i],o=s.end.row,u=s.start.row;if(o>=t){u<t&&(u>=e?r-=t-u:r=0);break}o>=e&&(u>=e?r-=o-u:r-=o-e+1)}return r},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var n=this.$foldData,r=!1,o;e instanceof s?o=e:(o=new s(t,e),o.collapseChildren=t.collapseChildren),this.$clipRangeToDocument(o.range);var u=o.start.row,a=o.start.column,f=o.end.row,l=o.end.column,c=this.getFoldAt(u,a,1),h=this.getFoldAt(f,l,-1);if(c&&h==c)return c.addSubFold(o);c&&!c.range.isStart(u,a)&&this.removeFold(c),h&&!h.range.isEnd(f,l)&&this.removeFold(h);var p=this.getFoldsInRange(o.range);p.length>0&&(this.removeFolds(p),o.collapseChildren||p.forEach(function(e){o.addSubFold(e)}));for(var d=0;d<n.length;d++){var v=n[d];if(f==v.start.row){v.addFold(o),r=!0;break}if(u==v.end.row){v.addFold(o),r=!0;if(!o.sameRow){var m=n[d+1];if(m&&m.start.row==f){v.merge(m);break}}break}if(f<=v.start.row)break}return r||(v=this.$addFoldLine(new i(this.$foldData,o))),this.$useWrapMode?this.$updateWrapData(v.start.row,v.start.row):this.$updateRowLengthCache(v.start.row,v.start.row),this.$modified=!0,this._signal("changeFold",{data:o,action:"add"}),o},this.addFolds=function(e){e.forEach(function(e){this.addFold(e)},this)},this.removeFold=function(e){var t=e.foldLine,n=t.start.row,r=t.end.row,i=this.$foldData,s=t.folds;if(s.length==1)i.splice(i.indexOf(t),1);else if(t.range.isEnd(e.end.row,e.end.column))s.pop(),t.end.row=s[s.length-1].end.row,t.end.column=s[s.length-1].end.column;else if(t.range.isStart(e.start.row,e.start.column))s.shift(),t.start.row=s[0].start.row,t.start.column=s[0].start.column;else if(e.sameRow)s.splice(s.indexOf(e),1);else{var o=t.split(e.start.row,e.start.column);s=o.folds,s.shift(),o.start.row=s[0].start.row,o.start.column=s[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(n,r):this.$updateRowLengthCache(n,r)),this.$modified=!0,this._signal("changeFold",{data:e,action:"remove"})},this.removeFolds=function(e){var t=[];for(var n=0;n<e.length;n++)t.push(e[n]);t.forEach(function(e){this.removeFold(e)},this),this.$modified=!0},this.expandFold=function(e){this.removeFold(e),e.subFolds.forEach(function(t){e.restoreRange(t),this.addFold(t)},this),e.collapseChildren>0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var n,i;if(e==null)n=new r(0,0,this.getLength(),0),t==null&&(t=!0);else if(typeof e=="number")n=new r(e,0,e,this.getLine(e).length);else if("row"in e)n=r.fromPoints(e,e);else{if(Array.isArray(e))return i=[],e.forEach(function(e){i=i.concat(this.unfold(e))},this),i;n=e}i=this.getFoldsInRangeList(n);var s=i;while(i.length==1&&r.comparePoints(i[0].start,n.start)<0&&r.comparePoints(i[0].end,n.end)>0)this.expandFolds(i),i=this.getFoldsInRangeList(n);t!=0?this.removeFolds(i):this.expandFolds(i);if(s.length)return s},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var n=this.getFoldLine(e,t);return n?n.end.row:e},this.getRowFoldStart=function(e,t){var n=this.getFoldLine(e,t);return n?n.start.row:e},this.getFoldDisplayLine=function(e,t,n,r,i){r==null&&(r=e.start.row),i==null&&(i=0),t==null&&(t=e.end.row),n==null&&(n=this.getLine(t).length);var s=this.doc,o="";return e.walk(function(e,t,n,u){if(t<r)return;if(t==r){if(n<i)return;u=Math.max(i,u)}e!=null?o+=e:o+=s.getLine(t).substring(u,n)},t,n),o},this.getDisplayLine=function(e,t,n,r){var i=this.getFoldLine(e);if(!i){var s;return s=this.doc.getLine(e),s.substring(r||0,t||s.length)}return this.getFoldDisplayLine(i,e,t,n,r)},this.$cloneFoldData=function(){var e=[];return e=this.$foldData.map(function(t){var n=t.folds.map(function(e){return e.clone()});return new i(e,n)}),e},this.toggleFold=function(e){var t=this.selection,n=t.getRange(),r,i;if(n.isEmpty()){var s=n.start;r=this.getFoldAt(s.row,s.column);if(r){this.expandFold(r);return}(i=this.findMatchingBracket(s))?n.comparePoint(i)==1?n.end=i:(n.start=i,n.start.column++,n.end.column--):(i=this.findMatchingBracket({row:s.row,column:s.column+1}))?(n.comparePoint(i)==1?n.end=i:n.start=i,n.start.column++):n=this.getCommentFoldRange(s.row,s.column)||n}else{var o=this.getFoldsInRange(n);if(e&&o.length){this.expandFolds(o);return}o.length==1&&(r=o[0])}r||(r=this.getFoldAt(n.start.row,n.start.column));if(r&&r.range.toString()==n.toString()){this.expandFold(r);return}var u="...";if(!n.isMultiLine()){u=this.getTextRange(n);if(u.length<4)return;u=u.trim().substring(0,2)+".."}this.addFold(u,n)},this.getCommentFoldRange=function(e,t,n){var i=new o(this,e,t),s=i.getCurrentToken(),u=s&&s.type;if(s&&/^comment|string/.test(u)){u=u.match(/comment|string/)[0],u=="comment"&&(u+="|doc-start");var a=new RegExp(u),f=new r;if(n!=1){do s=i.stepBackward();while(s&&a.test(s.type));i.stepForward()}f.start.row=i.getCurrentTokenRow(),f.start.column=i.getCurrentTokenColumn()+2,i=new o(this,e,t);if(n!=-1){var l=-1;do{s=i.stepForward();if(l==-1){var c=this.getState(i.$row);a.test(c)||(l=i.$row)}else if(i.$row>l)break}while(s&&a.test(s.type));s=i.stepBackward()}else s=i.getCurrentToken();return f.end.row=i.getCurrentTokenRow(),f.end.column=i.getCurrentTokenColumn()+s.value.length-2,f}},this.foldAll=function(e,t,n,r){n==undefined&&(n=1e5);var i=this.foldWidgets;if(!i)return;t=t||this.getLength(),e=e||0;for(var s=e;s<t;s++){i[s]==null&&(i[s]=this.getFoldWidget(s));if(i[s]!="start")continue;if(r&&!r(s))continue;var o=this.getFoldWidgetRange(s);o&&o.isMultiLine()&&o.end.row<=t&&o.start.row>=e&&(s=o.end.row,o.collapseChildren=n,this.addFold("...",o))}},this.foldToLevel=function(e){this.foldAll();while(e-->0)this.unfold(null,!1)},this.foldAllComments=function(){var e=this;this.foldAll(null,null,null,function(t){var n=e.getTokens(t);for(var r=0;r<n.length;r++){var i=n[r];if(i.type=="text"&&/^\s+$/.test(i.value))continue;return/comment/.test(i.type)?!0:!1}})},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(e){if(!this.$foldStyles[e])throw new Error("invalid fold style: "+e+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle==e)return;this.$foldStyle=e,e=="manual"&&this.unfold();var t=this.$foldMode;this.$setFolding(null),this.$setFolding(t)},this.$setFolding=function(e){if(this.$foldMode==e)return;this.$foldMode=e,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation");if(!e||this.$foldStyle=="manual"){this.foldWidgets=null;return}this.foldWidgets=[],this.getFoldWidget=e.getFoldWidget.bind(e,this,this.$foldStyle),this.getFoldWidgetRange=e.getFoldWidgetRange.bind(e,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.$tokenizerUpdateFoldWidgets=this.tokenizerUpdateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets),this.on("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets)},this.getParentFoldRangeData=function(e,t){var n=this.foldWidgets;if(!n||t&&n[e])return{};var r=e-1,i;while(r>=0){var s=n[r];s==null&&(s=n[r]=this.getFoldWidget(r));if(s=="start"){var o=this.getFoldWidgetRange(r);i||(i=o);if(o&&o.end.row>=e)break}r--}return{range:r!==-1&&o,firstRange:i}},this.onFoldWidgetClick=function(e,t){t=t.domEvent;var n={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey},r=this.$toggleFoldWidget(e,n);if(!r){var i=t.target||t.srcElement;i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(!this.getFoldWidget)return;var n=this.getFoldWidget(e),r=this.getLine(e),i=n==="end"?-1:1,s=this.getFoldAt(e,i===-1?0:r.length,i);if(s)return t.children||t.all?this.removeFold(s):this.expandFold(s),s;var o=this.getFoldWidgetRange(e,!0);if(o&&!o.isMultiLine()){s=this.getFoldAt(o.start.row,o.start.column,1);if(s&&o.isEqual(s.range))return this.removeFold(s),s}if(t.siblings){var u=this.getParentFoldRangeData(e);if(u.range)var a=u.range.start.row+1,f=u.range.end.row;this.foldAll(a,f,t.all?1e4:0)}else t.children?(f=o?o.end.row:this.getLength(),this.foldAll(e+1,f,t.all?1e4:0)):o&&(t.all&&(o.collapseChildren=1e4),this.addFold("...",o));return o},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var n=this.$toggleFoldWidget(t,{});if(n)return;var r=this.getParentFoldRangeData(t,!0);n=r.range||r.firstRange;if(n){t=n.start.row;var i=this.getFoldAt(t,this.getLine(t).length,1);i?this.removeFold(i):this.addFold("...",n)}},this.updateFoldWidgets=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.foldWidgets[t]=null;else if(e.action=="remove")this.foldWidgets.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,r)}},this.tokenizerUpdateFoldWidgets=function(e){var t=e.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}
372var r=e("../range").Range,i=e("./fold_line").FoldLine,s=e("./fold").Fold,o=e("../token_iterator").TokenIterator;t.Folding=u}),define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,n){"use strict";function s(){this.findMatchingBracket=function(e,t){if(e.column==0)return null;var n=t||this.getLine(e.row).charAt(e.column-1);if(n=="")return null;var r=n.match(/([\(\[\{])|([\)\]\}])/);return r?r[1]?this.$findClosingBracket(r[1],e):this.$findOpeningBracket(r[2],e):null},this.getBracketRange=function(e){var t=this.getLine(e.row),n=!0,r,s=t.charAt(e.column-1),o=s&&s.match(/([\(\[\{])|([\)\]\}])/);o||(s=t.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(/([\(\[\{])|([\)\]\}])/),n=!1);if(!o)return null;if(o[1]){var u=this.$findClosingBracket(o[1],e);if(!u)return null;r=i.fromPoints(e,u),n||(r.end.column++,r.start.column--),r.cursor=r.end}else{var u=this.$findOpeningBracket(o[2],e);if(!u)return null;r=i.fromPoints(u,e),n||(r.start.column++,r.end.column--),r.cursor=r.start}return r},this.getMatchingBracketRanges=function(e){var t=this.getLine(e.row),n=t.charAt(e.column-1),r=n&&n.match(/([\(\[\{])|([\)\]\}])/);r||(n=t.charAt(e.column),e={row:e.row,column:e.column+1},r=n&&n.match(/([\(\[\{])|([\)\]\}])/));if(!r)return null;var s=new i(e.row,e.column-1,e.row,e.column),o=r[1]?this.$findClosingBracket(r[1],e):this.$findOpeningBracket(r[2],e);if(!o)return[s];var u=new i(o.row,o.column,o.row,o.column+1);return[s,u]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)")+")+"));var a=t.column-o.getCurrentTokenColumn()-2,f=u.value;for(;;){while(a>=0){var l=f.charAt(a);if(l==i){s-=1;if(s==0)return{row:o.getCurrentTokenRow(),column:a+o.getCurrentTokenColumn()}}else l==e&&(s+=1);a-=1}do u=o.stepBackward();while(u&&!n.test(u.type));if(u==null)break;f=u.value,a=f.length-1}return null},this.$findClosingBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)")+")+"));var a=t.column-o.getCurrentTokenColumn();for(;;){var f=u.value,l=f.length;while(a<l){var c=f.charAt(a);if(c==i){s-=1;if(s==0)return{row:o.getCurrentTokenRow(),column:a+o.getCurrentTokenColumn()}}else c==e&&(s+=1);a+=1}do u=o.stepForward();while(u&&!n.test(u.type));if(u==null)break;a=0}return null}}var r=e("../token_iterator").TokenIterator,i=e("../range").Range;t.BracketMatch=s}),define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/bidihandler","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./bidihandler").BidiHandler,o=e("./config"),u=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,f=e("./mode/text").Mode,l=e("./range").Range,c=e("./document").Document,h=e("./background_tokenizer").BackgroundTokenizer,p=e("./search_highlight").SearchHighlight,d=function(e,t){this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.id="session"+ ++d.$uid,this.$foldData.toString=function(){return this.join("\n")},this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this);if(typeof e!="object"||!e.getLine)e=new c(e);this.setDocument(e),this.selection=new a(this),this.$bidiHandler=new s(this),o.resetOptions(this),this.setMode(t),o._signal("session",this)};d.$uid=0,function(){function m(e){return e<4352?!1:e>=4352&&e<=4447||e>=4515&&e<=4519||e>
372=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510}r.implement(this,u),this.setDocument=function(e){this.doc&&this.doc.off("change",this.$onChange),this.doc=e,e.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(e){if(!e){this.$docRowCache=[],this.$screenRowCache=[];return}var t=this.$docRowCache.length,n=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>n&&(this.$docRowCache.splice(n,t),this.$screenRowCache.splice(n,t))},this.$getRowCacheIndex=function(e,t){var n=0,r=e.length-1;while(n<=r){var i=n+r>>1,s=e[i];if(t>s)n=i+1;else{if(!(t<s))return i;r=i-1}}return n-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(e){var t=e.data;this.$resetRowCache(t.start.row)},this.onChange=function(e){this.$modified=!0,this.$bidiHandler.onChange(e),this.$resetRowCache(e.start.row);var t=this.$updateInternalDataOnChange(e);!this.$fromUndo&&this.$undoManager&&(t&&t.length&&(this.$undoManager.add({action:"removeFolds",folds:t},this.mergeUndoDeltas),this.mergeUndoDeltas=!0),this.$undoManager.add(e,this.mergeUndoDeltas),this.mergeUndoDeltas=!0,this.$informUndoManager.schedule()),this.bgTokenizer&&this.bgTokenizer.$updateOnChange(e),this._signal("change",e)},this.setValue=function(e){this.doc.setValue(e),this.selection.moveTo(0,0),this.$resetRowCache(0),this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(e){return this.bgTokenizer.getState(e)},this.getTokens=function(e){return this.bgTokenizer.getTokens(e)},this.getTokenAt=function(e,t){var n=this.bgTokenizer.getTokens(e),r,i=0;if(t==null){var s=n.length-1;i=this.getLine(e).length}else for(var s=0;s<n.length;s++){i+=n[s].value.length;if(i>=t)break}return r=n[s],r?(r.index=s,r.start=i-r.value.length,r):null},this.setUndoManager=function(e){this.$undoManager=e,this.$informUndoManager&&this.$informUndoManager.cancel();if(e){var t=this;e.addSession(this),this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.mergeUndoDeltas=!1},this.$informUndoManager=i.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?i.stringRepeat(" ",this.getTabSize()):" "},this.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(e){this.setOption("tabSize",e)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize===0},this.setNavigateWithinSoftTabs=function(e){this.setOption("navigateWithinSoftTabs",e)},this.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},this.$overwrite=!1,this.setOverwrite=function(e){this.setOption("over
372write",e)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t<e.length;t++)this.$breakpoints[e[t]]="ace_breakpoint";this._signal("changeBreakpoint",{})},this.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},this.setBreakpoint=function(e,t){t===undefined&&(t="ace_breakpoint"),t?this.$breakpoints[e]=t:delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.clearBreakpoint=function(e){delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.addMarker=function(e,t,n,r){var i=this.$markerId++,s={range:e,type:n||"line",renderer:typeof n=="function"?n:null,clazz:t,inFront:!!r,id:i};return r?(this.$frontMarkers[i]=s,this._signal("changeFrontMarker")):(this.$backMarkers[i]=s,this._signal("changeBackMarker")),i},this.addDynamicMarker=function(e,t){if(!e.update)return;var n=this.$markerId++;return e.id=n,e.inFront=!!t,t?(this.$frontMarkers[n]=e,this._signal("changeFrontMarker")):(this.$backMarkers[n]=e,this._signal("changeBackMarker")),e},this.removeMarker=function(e){var t=this.$frontMarkers[e]||this.$backMarkers[e];if(!t)return;var n=t.inFront?this.$frontMarkers:this.$backMarkers;delete n[e],this._signal(t.inFront?"changeFrontMarker":"changeBackMarker")},this.getMarkers=function(e){return e?this.$frontMarkers:this.$backMarkers},this.highlight=function(e){if(!this.$searchHighlight){var t=new p(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(t)}this.$searchHighlight.setRegexp(e)},this.highlightLines=function(e,t,n,r){typeof t!="number"&&(n=t,t=e),n||(n="ace_step");var i=new l(e,0,t,Infinity);return i.id=this.addMarker(i,n,"fullLine",r),i},this.setAnnotations=function(e){this.$annotations=e,this._signal("changeAnnotation",{})},this.getAnnotations=function(){return this.$annotations||[]},this.clearAnnotations=function(){this.setAnnotations([])},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r?\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getWordRange=function(e,t){var n=this.getLine(e),r=!1;t>0&&(r=!!n.charAt(t-1).match(this.tokenRe)),r||(r=!!n.charAt(t).match(this.tokenRe));if(r)var i=this.tokenRe;else if(/^\s+$/.test(n.slice(t-1,t+1)))var i=/\s/;else var i=this.nonTokenRe;var s=t;if(s>0){do s--;while(s>=0&&n.charAt(s).match(i));s++}var o=t;while(o<n.length&&n.charAt(o).match(i))o++;return new l(e,s,e,o)},this.getAWordRange=function(e,t){var n=this.getWordRange(e,t),r=this.getLine(n.end.row);while(r.charAt(n.end.column).match(/[ \t]/))n.end.column+=1;return n},this.setNewLineMode=function(e){this.doc.setNewLineMode(e)},this.getNewLineMode=function(){return this.doc.getNewLineMode()},this.setUseWorker=function(e){this.setOption("useWorker",e)},this.getUseWorker=function(){return this.$useWorker},this.onReloadTokenizer=function(e){var t=e.data;this.bgTokenizer.start(t.first),this._signal("tokenizerUpdate",e)},this.$modes=o.$modes,this.$mode=null,this.$modeId=null,this.setMode=function(e,t){if(e&&typeof e=="object"){if(e.getTokenizer)return this.$onChangeMode(e);var n=e,r=n.path}else r=e||"ace/mode/text";this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new f);if(this.$modes[r]&&!n){this.$onChangeMode(this.$modes[r]),t&&t();return}this.$modeId=r,o.loadModule(["mode",r],function(e){if(this.$modeId!==r)return t&&t();this.$modes[r]&&!n?this.$onChangeMode(this.$modes[r]):e&&e.Mode&&(e=new e.Mode(n),n||(this.$modes[r]=e,e.$id=r),this.$onChangeMode(e)),t&&t()}.bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},this.$onChangeMode=function(e,t){t||(this.$modeId=e.$id);if(this.$mode===e)return;var n=this.$mode;this.$mode=e,this.$stopWorker(),this.$useWorker&&this.$startWorker();var r=e.getTokenizer();if(r.on!==undefined){var i=this.onReloadTokenizer.bind(this);r.on("update",i)}if(!this.bgTokenizer){this.bgTokenizer=new h(r);var s=this;this.bgTokenizer.on("update",function(e){s._signal("tokenizerUpdate",e)})}else this.bgTokenizer.setTokenizer(r);this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=e.tokenRe,this.nonTokenRe=e.nonTokenRe,t||(e.attachToSession&&e.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(e.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode",{oldMode:n,mode:e}))},this.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},this.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(e){o.warn("Could not load worker",e),this.$worker=null}},this.getMode=function(){return this.$mode},this.$scrollTop=0,this.setScrollTop=function(e){if(this.$scrollTop===e||isNaN(e))return;this.$scrollTop=e,this._signal("changeScrollTop",e)}
372,this.getScrollTop=function(){return this.$scrollTop},this.$scrollLeft=0,this.setScrollLeft=function(e){if(this.$scrollLeft===e||isNaN(e))return;this.$scrollLeft=e,this._signal("changeScrollLeft",e)},this.getScrollLeft=function(){return this.$scrollLeft},this.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},this.getLineWidgetMaxWidth=function(){if(this.lineWidgetsWidth!=null)return this.lineWidgetsWidth;var e=0;return this.lineWidgets.forEach(function(t){t&&t.screenWidth>e&&(e=t.screenWidth)}),this.lineWidgetWidth=e},this.$computeWidth=function(e){if(this.$modified||e){this.$modified=!1;if(this.$useWrapMode)return this.screenWidth=this.$wrapLimit;var t=this.doc.getAllLines(),n=this.$rowLengthCache,r=0,i=0,s=this.$foldData[i],o=s?s.start.row:Infinity,u=t.length;for(var a=0;a<u;a++){if(a>o){a=s.end.row+1;if(a>=u)break;s=this.$foldData[i++],o=s?s.start.row:Infinity}n[a]==null&&(n[a]=this.$getStringScreenWidth(t[a])[0]),n[a]>r&&(r=n[a])}this.screenWidth=r}},this.getLine=function(e){return this.doc.getLine(e)},this.getLines=function(e,t){return this.doc.getLines(e,t)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},this.insert=function(e,t){return this.doc.insert(e,t)},this.remove=function(e){return this.doc.remove(e)},this.removeFullLines=function(e,t){return this.doc.removeFullLines(e,t)},this.undoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=e.length-1;n!=-1;n--){var r=e[n];r.action=="insert"||r.action=="remove"?this.doc.revertDelta(r):r.folds&&this.addFolds(r.folds)}!t&&this.$undoSelect&&(e.selectionBefore?this.selection.fromJSON(e.selectionBefore):this.selection.setRange(this.$getUndoSelection(e,!0))),this.$fromUndo=!1},this.redoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=0;n<e.length;n++){var r=e[n];(r.action=="insert"||r.action=="remove")&&this.doc.$safeApplyDelta(r)}!t&&this.$undoSelect&&(e.selectionAfter?this.selection.fromJSON(e.selectionAfter):this.selection.setRange(this.$getUndoSelection(e,!1))),this.$fromUndo=!1},this.setUndoSelect=function(e){this.$undoSelect=e},this.$getUndoSelection=function(e,t){function n(e){return t?e.action!=="insert":e.action==="insert"}var r,i;for(var s=0;s<e.length;s++){var o=e[s];if(!o.start)continue;if(!r){n(o)?r=l.fromPoints(o.start,o.end):r=l.fromPoints(o.start,o.start);continue}n(o)?(i=o.start,r.compare(i.row,i.column)==-1&&r.setStart(i),i=o.end,r.compare(i.row,i.column)==1&&r.setEnd(i)):(i=o.start,r.compare(i.row,i.column)==-1&&(r=l.fromPoints(o.start,o.start)))}return r},this.replace=function(e,t){return this.doc.replace(e,t)},this.moveText=function(e,t,n){var r=this.getTextRange(e),i=this.getFoldsInRange(e),s=l.fromPoints(t,t);if(!n){this.remove(e);var o=e.start.row-e.end.row,u=o?-e.end.column:e.start.column-e.end.column;u&&(s.start.row==e.end.row&&s.start.column>e.end.column&&(s.start.column+=u),s.end.row==e.end.row&&s.end.column>e.end.column&&(s.end.column+=u)),o&&s.start.row>=e.end.row&&(s.start.row+=o,s.end.row+=o)}s.end=this.insert(s.start,r);if(i.length){var a=e.start,f=s.start,o=f.row-a.row,u=f.column-a.column;this.addFolds(i.map(function(e){return e=e.clone(),e.start.row==a.row&&(e.start.column+=u),e.end.row==a.row&&(e.end.column+=u),e.start.row+=o,e.end.row+=o,e}))}return s},this.indentRows=function(e,t,n){n=n.replace(/\t/g,this.getTabString());for(var r=e;r<=t;r++)this.doc.insertInLine({row:r,column:0},n)},this.outdentRows=function(e){var t=e.collapseRows(),n=new l(0,0,0,0),r=this.getTabSize();for(var i=t.start.row;i<=t.end.row;++i){var s=this.getLine(i);n.start.row=i,n.end.row=i;for(var o=0;o<r;++o)if(s.charAt(o)!=" ")break;o<r&&s.charAt(o)==" "?(n.start.column=o,n.end.column=o+1):(n.start.column=0,n.end.column=o),this.remove(n)}},this.$moveLines=function(e,t,n){e=this.getRowFoldStart(e),t=this.getRowFoldEnd(t);if(n<0){var r=this.getRowFoldStart(e+n);if(r<0)return 0;var i=r-e}else if(n>0){var r=this.getRowFoldEnd(t+n);if(r>this.doc.getLength()-1)return 0;var i=r-t}else{e=this.$clipRowToDocument(e),t=this.$clipRowToDocument(t);var i=t-e+1}var s=new l(e,0,t,Number.MAX_VALUE),o=this.getFoldsInRange(s).map(function(e){return e=e.clone(),e.start.row+=i,e.end.row+=i,e}),u=n==0?this.doc.getLines(e,t):this.doc.removeFullLines(e,t);return this.doc.insertFullLines(e+i,u),o.length&&this.addFolds(o),i},this.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},this.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},this.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},this.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},this.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},this.$clipPositionToDocument=function(e,t){t=Math.max(0,t);if(e<0)e=0,t=0;else{var n=this.doc.getLength();e>=n?(e=n-1,t=this.doc.getLine(n-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},this.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(e){if(e!=this.$useWrapMode){this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0);if(e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(e,t){if(this.$wrapLimitRange.min!==e||this.$wrapLimitRange.max!==t)this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode")},this.adjustWrapLimit=function(e,t){var n=this.$wrapLimitRange;n.max<0&&(n={min:t,max:t});var r=this.$constrainWrapLimit(e,n.min,n.max);return r!=this.$wrapLimit&&r>1?(this.$wrapLimit=r,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},this.$constrainWrapLimit=function(e,t,n){return t&&(e=Math.max(t,e)),n&&(e=Math.min(n,e)),e},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,n=e.action,r=e.start,i=e.end,s=r.row,o=i.row,u=o-s,a=null;this.$updating=!0;if(u!=0)if(n==="remove"){this[t?"$wrapData":"$rowLengthCache"].splice(s,u);var f=this.$foldData;a=this.getFoldsInRange(e),this.removeFolds(a);var l=this.getFoldLine(i.row),c=0;if(l){l.addRemoveChars(i.row,i.column,r.column-i.column),l.shiftRow(-u);var h=this.getFoldLine(s);h&&h!==l&&(h.merge(l),l=h),c=f.indexOf(l)+1}for(c;c<f.length;c++){var l=f[c];l.start.row>=i.row&&l.shiftRow(-u)}o=s}else{var p=Array(u);p.unshift(s,0);var d=t?this.$wrapData:this.$rowLengthCache;d.splice.apply(d,p);var f=this.$foldData,l=this.getFoldLine(s),c=0;if(l){var v=l.range.compareInside(r.row,r.column);v==0?(l=l.split(r.row,r.column),l&&(l.shiftRow(u),l.addRemoveChars(o,0,i.column-r.column))):v==-1&&(l.addRemoveChars(s,0,i.column-r.column),l.shiftRow(u)),c=f.indexOf(l)+1}for(c;c<f.length;c++){var l=f[c];l.start.row>=s&&l.shiftRow(u)}}else{u=Math.abs(e.start.column-e.end.column),n==="remove"&&(a=this.getFoldsInRange(e),this.removeFolds(a),u=-u);var l=this.getFoldLine(s);l&&l.addRemoveChars(s,r.column,u)}return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(s,o):this.$updateRowLengthCache(s,o),a},this.$updateRowLengthCache=function(e,t,n){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},this.$updateWrapData=function(e,t){var r=this.doc.getAllLines(),i=this.getTabSize(),o=this.$wrapData,u=this.$wrapLimit,a,f,l=e;t=Math.min(t,r.length-1);while(l<=t)f=this.getFoldLine(l,f),f?(a=[],f.walk(function(e,t,i,o){var u;if(e!=null){u=this.$getDisplayTokens(e,a.length),u[0]=n;for(var f=1;f<u.length;f++)u[f]=s}else u=this.$getDisplayTokens(r[t].substring(o,i),a.length);a=a.concat(u)}.bind(this),f.end.row,r[f.end.row].length+1),o[f.start.row]=this.$computeWrapSplits(a,u,i),l=f.end.row+1):(a=this.$getDisplayTokens(r[l]),o[l]=this.$computeWrapSplits(a,u,i),l++)};var e=1,t=2,n=3,s=4,a=9,c=10,d=11,v=12;this.$computeWrapSplits=function(e,r,i){function g(){var t=0;if(m===0)return t;if(p)for(var n=0;n<e.length;n++){var r=e[n];if(r==c)t+=1;else{if(r!=d){if(r==v)continue;break}t+=i}}return h&&p!==!1&&(t+=i),Math.min(t,m)}
372function y(t){var n=t-f;for(var r=f;r<t;r++){var i=e[r];if(i===12||i===2)n-=1}o.length||(b=g(),o.indent=b),l+=n,o.push(l),f=t}if(e.length==0)return[];var o=[],u=e.length,f=0,l=0,h=this.$wrapAsCode,p=this.$indentedSoftWrap,m=r<=Math.max(2*i,8)||p===!1?0:Math.floor(r/2),b=0;while(u-f>r-b){var w=f+r-b;if(e[w-1]>=c&&e[w]>=c){y(w);continue}if(e[w]==n||e[w]==s){for(w;w!=f-1;w--)if(e[w]==n)break;if(w>f){y(w);continue}w=f+r;for(w;w<e.length;w++)if(e[w]!=s)break;if(w==e.length)break;y(w);continue}var E=Math.max(w-(r-(r>>2)),f-1);while(w>E&&e[w]<n)w--;if(h){while(w>E&&e[w]<n)w--;while(w>E&&e[w]==a)w--}else while(w>E&&e[w]<c)w--;if(w>E){y(++w);continue}w=f+r,e[w]==t&&w--,y(w-b)}return o},this.$getDisplayTokens=function(n,r){var i=[],s;r=r||0;for(var o=0;o<n.length;o++){var u=n.charCodeAt(o);if(u==9){s=this.getScreenTabSize(i.length+r),i.push(d);for(var f=1;f<s;f++)i.push(v)}else u==32?i.push(c):u>39&&u<48||u>57&&u<64?i.push(a):u>=4352&&m(u)?i.push(e,t):i.push(e)}return i},this.$getStringScreenWidth=function(e,t,n){if(t==0)return[0,0];t==null&&(t=Infinity),n=n||0;var r,i;for(i=0;i<e.length;i++){r=e.charCodeAt(i),r==9?n+=this.getScreenTabSize(n):r>=4352&&m(r)?n+=2:n+=1;if(n>t)break}return[n,i]},this.lineWidgets=null,this.getRowLength=function(e){var t=1;return this.lineWidgets&&(t+=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0),!this.$useWrapMode||!this.$wrapData[e]?t:this.$wrapData[e].length+t},this.getRowLineCount=function(e){return!this.$useWrapMode||!this.$wrapData[e]?1:this.$wrapData[e].length+1},this.getRowWrapIndent=function(e){if(this.$useWrapMode){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE),n=this.$wrapData[t.row];return n.length&&n[0]<t.column?n.indent:0}return 0}
372,this.getScreenLastRowColumn=function(e){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE);return this.documentToScreenColumn(t.row,t.column)},this.getDocumentLastRowColumn=function(e,t){var n=this.documentToScreenRow(e,t);return this.getScreenLastRowColumn(n)},this.getDocumentLastRowColumnPosition=function(e,t){var n=this.documentToScreenRow(e,t);return this.screenToDocumentPosition(n,Number.MAX_VALUE/10)},this.getRowSplitData=function(e){return this.$useWrapMode?this.$wrapData[e]:undefined},this.getScreenTabSize=function(e){return this.$tabSize-(e%this.$tabSize|0)},this.screenToDocumentRow=function(e,t){return this.screenToDocumentPosition(e,t).row},this.screenToDocumentColumn=function(e,t){return this.screenToDocumentPosition(e,t).column},this.screenToDocumentPosition=function(e,t,n){if(e<0)return{row:0,column:0};var r,i=0,s=0,o,u=0,a=0,f=this.$screenRowCache,l=this.$getRowCacheIndex(f,e),c=f.length;if(c&&l>=0)var u=f[l],i=this.$docRowCache[l],h=e>f[c-1];else var h=!c;var p=this.getLength()-1,d=this.getNextFoldLine(i),v=d?d.start.row:Infinity;while(u<=e){a=this.getRowLength(i);if(u+a>e||i>=p)break;u+=a,i++,i>v&&(i=d.end.row+1,d=this.getNextFoldLine(i,d),v=d?d.start.row:Infinity),h&&(this.$docRowCache.push(i),this.$screenRowCache.push(u))}if(d&&d.start.row<=i)r=this.getFoldDisplayLine(d),i=d.start.row;else{if(u+a<=e||i>p)return{row:p,column:this.getLine(p).length};r=this.getLine(i),d=null}var m=0,g=Math.floor(e-u);if(this.$useWrapMode){var y=this.$wrapData[i];y&&(o=y[g],g>0&&y.length&&(m=y.indent,s=y[g-1]||y[y.length-1],r=r.substring(s)))}return n!==undefined&&this.$bidiHandler.isBidiRow(u+g,i,g)&&(t=this.$bidiHandler.offsetToCol(n)),s+=this.$getStringScreenWidth(r,t-m)[1],this.$useWrapMode&&s>=o&&(s=o-1),d?d.idxToPosition(s):{row:i,column:s}},this.documentToScreenPosition=function(e,t){if(typeof t=="undefined")var n=this.$clipPositionToDocument(e.row,e.column);else n=this.$clipPositionToDocument(e,t);e=n.row,t=n.column;var r=0,i=null,s=null;s=this.getFoldAt(e,t,1),s&&(e=s.start.row,t=s.start.column);var o,u=0,a=this.$docRowCache,f=this.$getRowCacheIndex(a,e),l=a.length;if(l&&f>=0)var u=a[f],r=this.$screenRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getNextFoldLine(u),p=h?h.start.row:Infinity;while(u<e){if(u>=p){o=h.end.row+1;if(o>e)break;h=this.getNextFoldLine(o,h),p=h?h.start.row:Infinity}else o=u+1;r+=this.getRowLength(u),u=o,c&&(this.$docRowCache.push(u),this.$screenRowCache.push(r))}var d="";h&&u>=p?(d=this.getFoldDisplayLine(h,e,t),i=h.start.row):(d=this.getLine(e).substring(0,t),i=e);var v=0;if(this.$useWrapMode){var m=this.$wrapData[i];if(m){var g=0;while(d.length>=m[g])r++,g++;d=d.substring(m[g-1]||0,d.length),v=g>0?m.indent:0}}return this.lineWidgets&&this.lineWidgets[u]&&this.lineWidgets[u].rowsAbove&&(r+=this.lineWidgets[u].rowsAbove),{row:r,column:v+this.$getStringScreenWidth(d)[0]}},this.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},this.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},this.getScreenLength=function(){var e=0,t=null;if(!this.$useWrapMode){e=this.getLength();var n=this.$foldData;for(var r=0;r<n.length;r++)t=n[r],e-=t.end.row-t.start.row}else{var i=this.$wrapData.length,s=0,r=0,t=this.$foldData[r++],o=t?t.start.row:Infinity;while(s<i){var u=this.$wrapData[s];e+=u?u.length+1:1,s++,s>o&&(s=t.end.row+1,t=this.$foldData[r++],o=t?t.start.row:Infinity)}}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e},this.$setFontMetrics=function(e){if(!this.$enableVarChar)return;this.$getStringScreenWidth=function(t,n,r){if(n===0)return[0,0];n||(n=Infinity),r=r||0;var i,s;for(s=0;s<t.length;s++){i=t.charAt(s),i===" "?r+=this.getScreenTabSize(r):r+=e.getCharacterWidth(i);if(r>n)break}return[r,s]}},this.destroy=function(){this.bgTokenizer&&(this.bgTokenizer.setDocument(null),this.bgTokenizer=null),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection.detach()},this.isFullWidth=m}.call(d.prototype),e("./edit_session/folding").Folding.call(d.prototype),e("./edit_session/bracket_match").BracketMatch.call(d.prototype),o.defineOptions(d.prototype,"session",{wrap:{set:function(e){!e||e=="off"?e=!1:e=="free"?e=!0:e=="printMargin"?e=-1:typeof e=="string"&&(e=parseInt(e,10)||
372!1);if(this.$wrap==e)return;this.$wrap=e;if(!e)this.setUseWrapMode(!1);else{var t=typeof e=="number"?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){e=e=="auto"?this.$mode.type!="text":e!="text",e!=this.$wrapAsCode&&(this.$wrapAsCode=e,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){e=parseInt(e),e>0&&this.$tabSize!==e&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(e){this.setFoldStyle(e)},handlesSet:!0},overwrite:{set:function(e){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId},handlesSet:!0}}),t.EditSession=d}),define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){"use strict";function u(e,t){function n(e){return/\w/.test(e)||t.regExp?"\\b":""}return n(e[0])+e+n(e[e.length-1])}var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./range").Range,o=function(){this.$options={}};(function(){this.set=function(e){return i.mixin(this.$options,e),this},this.getOptions=function(){return r.copyObject(this.$options)},this.setOptions=function(e){this.$options=e},this.find=function(e){var t=this.$options,n=this.$matchIterator(e,t);if(!n)return!1;var r=null;return n.forEach(function(e,n,i,o){return r=new s(e,n,i,o),n==o&&t.start&&t.start.start&&t.skipCurrent!=0&&r.isEqual(t.start)?(r=null,!1):!0}),r},this.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var n=t.range,i=n?e.getLines(n.start.row,n.end.row):e.doc.getAllLines(),o=[],u=t.re;if(t.$isMultiLine){var a=u.length,f=i.length-a,l;e:for(var c=u.offset||0;c<=f;c++){for(var h=0;h<a;h++)if(i[c+h].search(u[h])==-1)continue e;var p=i[c],d=i[c+a-1],v=p.length-p.match(u[0])[0].length,m=d.match(u[a-1])[0].length;if(l&&l.end.row===c&&l.end.column>v)continue;o.push(l=new s(c,v,c+a-1,m)),a>2&&(c=c+a-2)}}else for(var g=0;g<i.length;g++){var y=r.getMatchOffsets(i[g],u);for(var h=0;h<y.length;h++){var b=y[h];o.push(new s(g,b.offset,g,b.offset+b.length))}}if(n){var w=n.start.column,E=n.start.column,g=0,h=o.length-1;while(g<h&&o[g].start.column<w&&o[g].start.row==n.start.row)g++;while(g<h&&o[h].end.column>E&&o[h].end.row==n.end.row)h--;o=o.slice(g,h+1);for(g=0,h=o.length;g<h;g++)o[g].start.row+=n.start.row,o[g].end.row+=n.start.row}return o},this.replace=function(e,t){var n=this.$options,r=this.$assembleRegExp(n);if(n.$isMultiLine)return t;if(!r)return;var i=r.exec(e);if(!i||i[0].length!=e.length)return null;t=e.replace(r,t);if(n.preserveCase){t=t.split("");for(var s=Math.min(e.length,e.length);s--;){var o=e[s];o&&o.toLowerCase()!=o?t[s]=t[s].toUpperCase():t[s]=t[s].toLowerCase()}t=t.join("")}return t},this.$assembleRegExp=function(e,t){if(e.needle instanceof RegExp)return e.re=e.needle;var n=e.needle;if(!e.needle)return e.re=!1;e.regExp||(n=r.escapeRegExp(n)),e.wholeWord&&(n=u(n,e));var i=e.caseSensitive?"gm":"gmi";e.$isMultiLine=!t&&/[\n\r]/.test(n);if(e.$isMultiLine)return e.re=this.$assembleMultilineRegExp(n,i);try{var s=new RegExp(n,i)}catch(o){s=!1}return e.re=s},this.$assembleMultilineRegExp=function(e,t){var n=e.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),r=[];for(var i=0;i<n.length;i++)try{r.push(new RegExp(n[i],t))}catch(s){return!1}return r},this.$matchIterator=function(e,t){var n=this.$assembleRegExp(t);if(!n)return!1;var r=t.backwards==1,i=t.skipCurrent!=0,s=t.range,o=t.start;o||(o=s?s[r?"end":"start"]:e.selection.getRange()),o.start&&(o=o[i!=r?"end":"start"]);var u=s?s.start.row:0,a=s?s.end.row:e.getLength()-1;if(r)var f=function(e){var n=o.row;if(c(n,o.column,e))return;for(n--;n>=u;n--)if(c(n,Number.MAX_VALUE,e))return;if(t.wrap==0)return;for(n=a,u=o.row;n>=u;n--)if(c(n,Number.MAX_VALUE,e))return};else var f=function(e){var n=o.row;if(c(n,o.column,e))return;for(n+=1;n<=a;n++)if(c(n,0,e))return;if(t.wrap==0)return;for(n=u,a=o.row;n<=a;n++)if(c(n,0,e))return};if(t.$isMultiLine)var l=n.length,c=function(t,i,s){var o=r?t-l+1:t;if(o<0||o+l>e.getLength())return;var u=e.getLine(o),a=u.search(n[0]);if(!r&&a<i||a===-1)return;for(var f=1;f<l;f++){u=e.getLine(o+f);if(u.search(n[f])==-1)return}var c=u.match(n[l-1])[0].length;if(r&&c>i)return;if(s(o,a,o+l-1,c))return!0};else if(r)var c=function(t,r,i){var s=e.getLine(t),o=[],u,a=0;n.lastIndex=0;while(u=n.exec(s)){var f=u[0].length;a=u.index;if(!f){if(a>=s.length)break;n.lastIndex=a+=1}if(u.index+f>r)break;o.push(u.index,f)}for(var l=o.length-1;l>=0;l-=2){var c=o[l-1],f=o[l];if(i(t,c,t,c+f))return!0}};else var c=function(t,r,i){var s=e.getLine(t),o,u;n.lastIndex=r;while(u=n.exec(s)){var a=u[0].length;o=u.index;if(i(t,o,t,o+a))return!0;
372if(!a){n.lastIndex=o+=1;if(o>=s.length)return!1}}};return{forEach:f}}}).call(o.prototype),t.Search=o}),define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){"use strict";function o(e,t){this.platform=t||(i.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=!0}function u(e,t){o.call(this,e,t),this.$singleCommand=!1}var r=e("../lib/keys"),i=e("../lib/useragent"),s=r.KEY_MODS;u.prototype=o.prototype,function(){function e(e){return typeof e=="object"&&e.bindKey&&e.bindKey.position||(e.isDefault?-100:0)}this.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},this.removeCommand=function(e,t){var n=e&&(typeof e=="string"?e:e.name);e=this.commands[n],t||delete this.commands[n];var r=this.commandKeyBinding;for(var i in r){var s=r[i];if(s==e)delete r[i];else if(Array.isArray(s)){var o=s.indexOf(e);o!=-1&&(s.splice(o,1),s.length==1&&(r[i]=s[0]))}}},this.bindKey=function(e,t,n){typeof e=="object"&&e&&(n==undefined&&(n=e.position),e=e[this.platform]);if(!e)return;if(typeof t=="function")return this.addCommand({exec:t,bindKey:e,name:t.name||e});e.split("|").forEach(function(e){var r="";if(e.indexOf(" ")!=-1){var i=e.split(/\s+/);e=i.pop(),i.forEach(function(e){var t=this.parseKeys(e),n=s[t.hashId]+t.key;r+=(r?" ":"")+n,this._addCommandToBinding(r,"chainKeys")},this),r+=" "}var o=this.parseKeys(e),u=s[o.hashId]+o.key;this._addCommandToBinding(r+u,t,n)},this)},this._addCommandToBinding=function(t,n,r){var i=this.commandKeyBinding,s;if(!n)delete i[t];else if(!i[t]||this.$singleCommand)i[t]=n;else{Array.isArray(i[t])?(s=i[t].indexOf(n))!=-1&&i[t].splice(s,1):i[t]=[i[t]],typeof r!="number"&&(r=e(n));var o=i[t];for(s=0;s<o.length;s++){var u=o[s],a=e(u);if(a>r)break}o.splice(s,0,n)}},this.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var n=e[t];if(!n)return;if(typeof n=="string")return this.bindKey(n,t);typeof n=="function"&&(n={exec:n});if(typeof n!="object")return;n.name||(n.name=t),this.addCommand(n)},this)},this.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},this.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},this._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},this.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),n=t.pop(),i=r[n];if(r.FUNCTION_KEYS[i])n=r.FUNCTION_KEYS[i].toLowerCase();else{if(!t.length)return{key:n,hashId:-1};if(t.length==1&&t[0]=="shift")return{key:n.toUpperCase(),hashId:-1}}var s=0;for(var o=t.length;o--;){var u=r.KEY_MODS[t[o]];if(u==null)return typeof console!="undefined"&&console.error("invalid modifier "+t[o]+" in "+e),!1;s|=u}return{key:n,hashId:s}},this.findKeyCommand=function(t,n){var r=s[t]+n;return this.commandKeyBinding[r]},this.handleKeyboard=function(e,t,n,r){if(r<0)return;var i=s[t]+n,o=this.commandKeyBinding[i];e.$keyChain&&(e.$keyChain+=" "+i,o=this.commandKeyBinding[e.$keyChain]||o);if(o)if(o=="chainKeys"||o[o.length-1]=="chainKeys")return e.$keyChain=e.$keyChain||i,{command:"null"};if(e.$keyChain)if(!!t&&t!=4||n.length!=1){if(t==-1||r>0)e.$keyChain=""}else e.$keyChain=e.$keyChain.slice(0,-i.length-1);return{command:o}}
372,this.getStatusText=function(e,t){return t.$keyChain||""}}.call(o.prototype),t.HashHandler=o,t.MultiHashHandler=u}),define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../keyboard/hash_handler").MultiHashHandler,s=e("../lib/event_emitter").EventEmitter,o=function(e,t){i.call(this,t,e),this.byName=this.commands,this.setDefaultHandler("exec",function(e){return e.command.exec(e.editor,e.args||{})})};r.inherits(o,i),function(){r.implement(this,s),this.exec=function(e,t,n){if(Array.isArray(e)){for(var r=e.length;r--;)if(this.exec(e[r],t,n))return!0;return!1}typeof e=="string"&&(e=this.commands[e]);if(!e)return!1;if(t&&t.$readOnly&&!e.readOnly)return!1;if(this.$checkCommandState!=0&&e.isAvailable&&!e.isAvailable(t))return!1;var i={editor:t,command:e,args:n};return i.returnValue=this._emit("exec",i),this._signal("afterExec",i),i.returnValue===!1?!1:!0},this.toggleRecording=function(e){if(this.$inReplay)return;return e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},this.replay=function(e){if(this.$inReplay||!this.macro)return;if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){typeof t=="string"?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}},this.trimMacro=function(e){return e.map(function(e){return typeof e[0]!="string"&&(e[0]=e[0].name),e[1]||(e=e[0]),e})}}.call(o.prototype),t.CommandManager=o}),define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,n){"use strict";function o(e,t){return{win:e,mac:t}}var r=e("../lib/lang"),i=e("../config"),s=e("../range").Range;t.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:o("Ctrl-,","Command-,"),exec:function(e){i.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:o("Alt-E","F4"),exec:function(e){i.loadModule("./ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:o("Alt-Shift-E","Shift-F4"),exec:function(e){i.loadModule("./ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:o("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:o(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:o("Ctrl-L","Command-L"),exec:function(e,t){typeof t=="number"&&!isNaN(t)&&e.gotoLine(t),e.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:o("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:o("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:o("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:o("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAllComments
vendor: 8,339 bytes, line 372
372()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:o("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:o("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:o("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:o("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:o("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:o("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:o("Ctrl-F","Command-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:o("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:o("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:o("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:o("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:o("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:o("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:o("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:o("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:o("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:o("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:o("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:o("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:o("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:o("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:o("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:o("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:o("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:o("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:o("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:o("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:o(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:o("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:o(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:o("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:o("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:o("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:o("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:o("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:o("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:o("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(e){e.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:o(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(e){},readOnly:!0},{name:"cut",description:"Cut",exec:function(e){var t=e.$copyWithEmptySelection&&e.selection.isEmpty()
372,n=t?e.selection.getLineRange():e.selection.getRange();e._emit("cut",n),n.isEmpty()||e.session.remove(n
vendor: 6,020 bytes, line 372
372),e.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(e,t){e.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:o("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:o("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:o("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:o("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:o("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:o("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:o("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:o("Ctrl-H","Command-Option-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",description:"Undo",bindKey:o("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",description:"Redo",bindKey:o("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:o("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:o("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:o("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:o("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:o("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:o("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:o("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:o("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:o("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:o("Ctrl-Shift-Backspace",null),exec:function(e){var t=e.selection.getRange();t.start.column=0,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:o("Ctrl-Shift-Delete",null),exec:function(e){var t=e.selection.getRange();t.end.column=Number.MAX_VALUE,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:o("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:o("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:o("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:o("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:o("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:o("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(e,t){e.insert(r.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:o(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:o("Alt-Shift-X","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:o("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:o("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"
372autoindent",description:"Auto Indent",bindKey:o(null,null),exec:function(e){e.autoIndent()},multiSelectAction:"forEachLine",scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:o("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",description:"Join lines",bindKey:o(null,null),exec:function(e){var t=e.selection.isBackwards(),n=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),i=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),o=e.session.doc.getLine(n.row).length,u=e.session.doc.getTextRange(e.selection.getRange()),a=u.replace(/\n\s*/," ").length,f=e.session.doc.getLine(n.row);for(var l=n.row+1;l<=i.row+1;l++){var c=r.stringTrimLeft(r.stringTrimRight(e.session.doc.getLine(l)));c.length!==0&&(c=" "+c),f+=c}i.row+1<e.session.doc.getLength()-1&&(f+=e.session.doc.getNewLineCharacter()),e.clearSelection(),e.session.doc.replace(new s(n.row,0,i.row+2,0),f),a>0?(e.selection.moveCursorTo(n.row,n.column),e.selection.selectTo(n.row,n.column+a)):(o=e.session.doc.getLine(n.row).length>o?o+1:o,e.selection.moveCursorTo(n.row,o))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:o(null,null),exec:function(e){var t=e.session.doc.getLength()-1,n=e.session.doc.getLine(t).length,r=e.selection.rangeList.ranges,i=[];r.length<1&&(r=[e.selection.getRange()]);for(var o=0;o<r.length;o++)o==r.length-1&&(r[o].end.row!==t||r[o].end.column!==n)&&i.push(new s(r[o].end.row,r[o].end.column,t,n)),o===0?(r[o].start.row!==0||r[o].start.column!==0)&&i.push(new s(0,0,r[o].start.row,r[o].start.column)):i.push(new s(r[o-1].end.row,r[o-1].end.column,r[o].start.row,r[o].start.column));e.exitMultiSelectMode(),e.clearSelection();for(var o=0;o<i.length;o++)e.selection.addRange(i[o],!1)},readOnly:!0,scrollIntoView:"none"},{name:"addLineAfter",description:"Add new line after the current line",exec:function(e){e.selection.clearSelection(),e.navigateLineEnd(),e.insert("\n")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"addLineBefore",description:"Add new line before the current line",exec:function(e){e.selection.clearSelection();var t=e.getCursorPosition();e.selection.moveTo(t.row-1,Number.MAX_VALUE),e.insert("\n"),t.row===0&&e.navigateUp()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"openCommandPallete",description:"Open command pallete",bindKey:o("F1","F1"),exec:function(e){e.prompt({$type:"commands"})},readOnly:!0},{name:"modeSelect",description:"Change language mode...",bindKey:o(null,null),exec:function(e){e.prompt({$type:"modes"})},readOnly:!0}];for(var u=1;u<9;u++)t.commands.push({name:"foldToLevel"+u,description:"Fold To Level "+u,level:u,exec:function(e){e.session.foldToLevel(this.level)},scrollIntoView:"center",readOnly:!0})}),define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config","ace/token_iterator","ace/clipboard"],function(e,t,n){"use strict";e("./lib/fixoldbrowsers");var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./lib/lang"),o=e("./lib/useragent"),u=e("./keyboard/textinput").TextInput,a=e("./mouse/mouse_handler").MouseHandler,f=e("./mouse/fold_handler").FoldHandler,l=e("./keyboard/keybinding").KeyBinding,c=e("./edit_session").EditSession,h=e("./search").Search,p=e("./range").Range,d=e("./lib/event_emitter").EventEmitter,v=e("./commands/command_manager").CommandManager,m=e("./commands/default_commands").commands,g=e("./config"),y=e("./token_iterator").TokenIterator,b=e("./clipboard"),w=function(e,t,n){this.$toDestroy=[];var r=e.getContainerElement();this.container=r,this.renderer=e,this.id="editor"+ ++w.$uid,this.commands=new v(o.isMac?"mac":"win",m),typeof document=="object"&&(this.textInput=new u(e.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new a(this),new f(this)),this.keyBinding=new l(this),this.$search=(new h).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=s.delayedCall(function(){this._signal("input",{}),this.session&&this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}
372.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(t||n&&n.session||new c("")),g.resetOptions(this),n&&this.setOptions(n),g._signal("editor",this)};w.$uid=0,function(){r.implement(this,d),this.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=s.delayedCall(this.endOperation.bind(this,!0)),this.on("change",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.selectionChanged=!0}.bind(this),!0)},this.curOp=null,this.prevOp={},this.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(this.previousCommand=null,e={}),this.$opResetTimer.schedule(),this.curOp=this.session.curOp={command:e.command||{},args:e.args,scrollTop:this.renderer.scrollTop},this.curOp.selectionBefore=this.selection.toJSON()},this.endOperation=function(e){if(this.curOp&&this.session){if(e&&e.returnValue===!1||!this.session)return this.curOp=null;if(e==1&&this.curOp.command&&this.curOp.command.name=="mouse")return;this._signal("beforeEndOperation");if(!this.curOp)return;var t=this.curOp.command,n=t&&t.scrollIntoView;if(n){switch(n){case"center-animate":n="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var r=this.selection.getRange(),i=this.renderer.layerConfig;(r.start.row>=i.lastRow||r.end.row<=i.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break;default:}n=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}var s=this.selection.toJSON();this.curOp.selectionAfter=s,this.$lastSel=this.selection.toJSON(),this.session.getUndoManager().addSelection(s),this.prevOp=this.curOp,this.curOp=null}},this.$mergeableCommands=["backspace","del","insertstring"],this.$historyTracker=function(e){if(!this.$mergeUndoDeltas)return;var t=this.prevOp,n=this.$mergeableCommands,r=t.command&&e.command.name==t.command.name;if(e.command.name=="insertstring"){var i=e.args;this.mergeNextCommand===undefined&&(this.mergeNextCommand=!0),r=r&&this.mergeNextCommand&&(!/\s/.test(i)||/\s/.test(t.args)),this.mergeNextCommand=!0}else r=r&&n.indexOf(e.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(r=!1),r?this.session.mergeUndoDeltas=!0:n.indexOf(e.command.name)!==-1&&(this.sequenceStartTime=Date.now())},this.setKeyboardHandler=function(e,t){if(e&&typeof e=="string"&&e!="ace"){this.$keybindingId=e;var n=this;g.loadModule(["keybinding",e],function(r){n.$keybindingId==e&&n.keyBinding.setKeyboardHandler(r&&r.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(e){if(this.session==e)return;this.curOp&&this.endOperation(),this.curOp={};var t=this.session;if(t){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var n=this.session.getSelection();n.off("changeCursor",this.$onCursorChange),n.off("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.on("change",this.$onDocumentChange),this.renderer.setSession(e),this.$onChangeMode=this.onChangeMode.bind(this),e.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onCh
372angeTabSize.bind(this.renderer),e.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(e)),this._signal("changeSession",{session:e,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),e&&e._signal("changeEditor",{editor:this}),e&&e.bgTokenizer&&e.bgTokenizer.scheduleStart()},this.getSession=function(){return this.session},this.setValue=function(e,t){return this.session.doc.setValue(e),t?t==1?this.navigateFileEnd():t==-1&&this.navigateFileStart():this.selectAll(),e},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(e){this.renderer.onResize(e)},this.setTheme=function(e,t){this.renderer.setTheme(e,t)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(e){this.renderer.setStyle(e)},this.unsetStyle=function(e){this.renderer.unsetStyle(e)},this.getFontSize=function(){return this.getOption("fontSize")||i.computedStyle(this.container).fontSize},this.setFontSize=function(e){this.setOption("fontSize",e)},this.$highlightBrackets=function(){if(this.$highlightPending)return;var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(!t||!t.bgTokenizer)return;t.$bracketHighlight&&(t.$bracketHighlight.markerIds.forEach(function(e){t.removeMarker(e)}),t.$bracketHighlight=null);var n=t.getMatchingBracketRanges(e.getCursorPosition());!n&&t.$mode.getMatching&&(n=t.$mode.getMatching(e.session));if(!n)return;var r="ace_bracket";Array.isArray(n)?n.length==1&&(r="ace_error_bracket"):n=[n],n.length==2&&(p.comparePoints(n[0].end,n[1].start)==0?n=[p.fromPoints(n[0].start,n[1].end)]:p.comparePoints(n[0].start,n[1].end)==0&&(n=[p.fromPoints(n[1].start,n[0].end)])),t.$bracketHighlight={ranges:n,markerIds:n.map(function(e){return t.addMarker(e,r,"text")})}},50)},this.$highlightTags=function(){if(this.$highlightTagPending)return;var e=this;this.$highlightTagPending=!0,setTimeout(function(){e.$highlightTagPending=!1;var t=e.session;if(!t||!t.bgTokenizer)return;var n=e.getCursorPosition(),r=new y(e.session,n.row,n.column),i=r.getCurrentToken();if(!i||!/\b(?:tag-open|tag-name)/.test(i.type)){t.removeMarker(t.$tagHighlight),t.$tagHighlight=null;return}if(i.type.indexOf("tag-open")!==-1){i=r.stepForward();if(!i)return}var s=i.value,o=i.value,u=0,a=r.stepBackward();if(a.value==="<"){do a=i,i=r.stepForward(),i&&(i.type.indexOf("tag-name")!==-1?(o=i.value,s===o&&(a.value==="<"?u++:a.value==="</"&&u--)):s===o&&i.value==="/>"&&u--);while(i&&u>=0)}else{do{i=a,a=r.stepBackward();
372if(i)if(i.type.indexOf("tag-name")!==-1)s===i.value&&(a.value==="<"?u++:a.value==="</"&&u--);else if(i.value==="/>"){var f=0,l=a;while(l){if(l.type.indexOf("tag-name")!==-1&&l.value===s){u--;break}if(l.value==="<")break;l=r.stepBackward(),f++}for(var c=0;c<f;c++)r.stepForward()}}while(a&&u<=0);r.stepForward()}if(!i){t.removeMarker(t.$tagHighlight),t.$tagHighlight=null;return}var h=r.getCurrentTokenRow(),d=r.getCurrentTokenColumn(),v=new p(h,d,h,d+i.value.length),m=t.$backMarkers[t.$tagHighlight];t.$tagHighlight&&m!=undefined&&v.compareRange(m.range)!==0&&(t.removeMarker(t.$tagHighlight),t.$tagHighlight=null),t.$tagHighlight||(t.$tagHighlight=t.addMarker(v,"ace_bracket","text"))},50)},this.focus=function(){var e=this;setTimeout(function(){e.isFocused()||e.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(e){if(this.$isFocused)return;this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e)},this.onBlur=function(e){if(!this.$isFocused)return;this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e)},this.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$highlightTags(),this.$updateHighlightActiveLine()},this.onDocumentChange=function(e){var t=this.session.$useWrapMode,n=e.start.row==e.end.row?e.end.row:Infinity;this.renderer.updateLines(e.start.row,n,t),this._signal("change",e),this.$cursorChange()},this.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var e=this.getSession(),t;if(this.$highlightActiveLine){if(this.$selectionStyle!="line"||!this.selection.isMultiLine())t=this.getCursorPosition();this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(t=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(t=!1)}if(e.$highlightLineMarker&&!t)e.removeMarker(e.$highlightLineMarker.id),e.$highlightLineMarker=null;else if(!e.$highlightLineMarker&&t){var n=new p(t.row,t.column,t.row,Infinity);n.id=e.addMarker(n,"ace_active-line","screenLine"),e.$highlightLineMarker=n}else t&&(e.$highlightLineMarker.start.row=t.row,e.$highlightLineMarker.end.row=t.row,e.$highlightLineMarker.start.column=t.column,e._signal("changeBackMarker"))},this.onSelectionChange=function(e){var t=this.session;t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null;if(!this.selection.isEmpty()){var n=this.selection.getRange(),r=this.getSelectionStyle();t.$selectionMarker=t.addMarker(n,"ace_selection",r)}else this.$updateHighlightActiveLine();var i=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(i),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(t.isEmpty()||t.isMultiLine())return;var n=t.start.column,r=t.end.column,i=e.getLine(t.start.row),s=i.substring(n,r);if(s.length>5e3||!/[\w\d]/.test(s))return;var o=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s}),u=i.substring(n-1,r+1);if(!o.test(u))return;return o},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()}
372,this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var e=this.getSelectedText(),t=this.session.doc.getNewLineCharacter(),n=!1;if(!e&&this.$copyWithEmptySelection){n=!0;var r=this.selection.getAllRanges();for(var i=0;i<r.length;i++){var s=r[i];if(i&&r[i-1].start.row==s.start.row)continue;e+=this.session.getLine(s.start.row)+t}}var o={text:e};return this._signal("copy",o),b.lineMode=n?o.text:!1,o.text},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(e,t){var n={text:e,event:t};this.commands.exec("paste",this,n)},this.$handlePaste=function(e){typeof e=="string"&&(e={text:e}),this._signal("paste",e);var t=e.text,n=t===b.lineMode,r=this.session;if(!this.inMultiSelectMode||this.inVirtualSelectionMode)n?r.insert({row:this.selection.lead.row,column:0},t):this.insert(t);else if(n)this.selection.rangeList.ranges.forEach(function(e){r.insert({row:e.start.row,column:0},t)});else{var i=t.split(/\r\n|\r|\n/),s=this.selection.rangeList.ranges,o=i.length==2&&(!i[0]||!i[1]);if(i.length!=s.length||o)return this.commands.exec("insertstring",this,t);for(var u=s.length;u--;){var a=s[u];a.isEmpty()||r.remove(a),r.insert(a.start,i[u])}}},this.execCommand=function(e,t){return this.commands.exec(e,this,t)},this.insert=function(e,t){var n=this.session,r=n.getMode(),i=this.getCursorPosition();if(this.getBehavioursEnabled()&&!t){var s=r.transformAction(n.getState(i.row),"insertion",this,n,e);s&&(e!==s.text&&(this.inVirtualSelectionMode||(this.session.mergeUndoDeltas=!1,this.mergeNextCommand=!1)),e=s.text)}e==" "&&(e=this.session.getTabString());if(!this.selection.isEmpty()){var o=this.getSelectionRange();i=this.session.remove(o),this.clearSelection()}else if(this.session.getOverwrite()&&e.indexOf("\n")==-1){var o=new p.fromPoints(i,i);o.end.column+=e.length,this.session.remove(o)}if(e=="\n"||e=="\r\n"){var u=n.getLine(i.row);if(i.column>u.search(/\S|$/)){var a=u.substr(i.column).search(/\S|$/);n.doc.removeInLine(i.row,i.column,i.column+a)}}this.clearSelection();var f=i.column,l=n.getState(i.row),u=n.getLine(i.row),c=r.checkOutdent(l,u,e);n.insert(i,e),s&&s.selection&&(s.selection.length==2?this.selection.setSelectionRange(new p(i.row,f+s.selection[0],i.row,f+s.selection[1])):this.selection.setSelectionRange(new p(i.row+s.selection[0],s.selection[1],i.row+s.selection[2],s.selection[3])));if(this.$enableAutoIndent){if(n.getDocument().isNewLine(e)){var h=r.getNextLineIndent(l,u.slice(0,i.column),n.getTabString());n.insert({row:i.row+1,column:0},h)}c&&r.autoOutdent(l,n,i.row)}},this.autoIndent=function(){var e=this.session,t=e.getMode(),n,r;if(this.selection.isEmpty())n=0,r=e.doc.getLength()-1;else{var i=this.getSelectionRange();n=i.start.row,r=i.end.row}var s="",o="",u="",a,f,l,c=e.getTabString();for(var h=n;h<=r;h++)h>0&&(s=e.getState(h-1),o=e.getLine(h-1),u=t.getNextLineIndent(s,o,c)),a=e.getLine(h),f=t.$getIndent(a),u!==f&&(f.length>0&&(l=new p(h,0,h,f.length),e.remove(l)),u.length>0&&e.insert({row:h,column:0},u)),t.autoOutdent(s,e,h)},this.onTextInput=function(e,t){if(!t)return this.keyBinding.onTextInput(e);this.startOperation({command:{name:"insertstring"}});var n=this.applyComposition.bind(this,e,t);this.selection.rangeCount?this.forEachSelection(n):n(),this.endOperation()},this.applyComposition=function(e,t){if(t.extendLeft||t.extendRight){var n=this.selection.getRange();n.start.column-=t.extendLeft,n.end.column+=t.extendRight,n.start.column<0&&(n.start.row--,n.start.column+=this.session.getLine(n.start.row).length+1),this.selection.setRange(n),!e&&!n.isEmpty()&&this.remove()}(e||!this.selection.isEmpty())&&this.insert(e,!0);if(t.restoreStart||t.restoreEnd){var n=this.selection.getRange();n.start.column-=t.restoreStart,n.end.column-=t.restoreEnd,this.selection.setRange(n)}},this.onCommandKey=function(e,t,n){return this.keyBinding.onCommandKey(e,t,n)},this.setOverwrite=function(e){this.session.setOverwrite(e)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)}
372,this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(e){this.setOption("dragDelay",e)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(e){this.setOption("readOnly",e)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(e){this.selection.isEmpty()&&(e=="left"?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var n=this.session,r=n.getState(t.start.row),i=n.getMode().transformAction(r,"deletion",this,n,t);if(t.end.column===0){var s=n.getTextRange(t);if(s[s.length-1]=="\n"){var o=n.getLine(t.end.row);/^\s+$/.test(o)&&(t.end.column=o.length)}}i&&(t=i)}this.session.remove(t),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},this.transposeLetters=function(){if(!this.selection.isEmpty())return;var e=this.getCursorPosition(),t=e.column;if(t===0)return;var n=this.session.getLine(e.row),r,i;t<n.length?(r=n.charAt(t)+n.charAt(t-1),i=new p(e.row,t-1,e.row,t+1)):(r=n.charAt(t-1)+n.charAt(t-2),i=new p(e.row,t-2,e.row,t)),this.session.replace(i,r),this.session.selection.moveToPosition(i.end)},this.toLowerCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),n=this.session.getTextRange(t);this.session.replace(t,n.toLowerCase()),this.selection.setSelectionRange(e)},this.toUpperCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),n=this.session.getTextRange(t);this.session.replace(t,n.toUpperCase()),this.selection.setSelectionRange(e)},this.indent=function(){var e=this.session,t=this.getSelectionRange();if(t.start.row<t.end.row){var n=this.$getSelectedRows();e.indentRows(n.first,n.last," ");return}if(t.start.column<t.end.column){var r=e.getTextRange(t);if(!/^\s+$/.test(r)){var n=this.$getSelectedRows();e.indentRows(n.first,n.last," ");return}}var i=e.getLine(t.start.row),o=t.start,u=e.getTabSize(),a=e.documentToScreenColumn(o.row,o.column);if(this.session.getUseSoftTabs())var f=u-a%u,l=s.stringRepeat(" ",f);else{var f=a%u;while(i[t.start.column-1]==" "&&f)t.start.column--,f--;this.selection.setSelectionRange(t),l=" "}return this.insert(l)},this.blockIndent=function(){var e=this.$getSelectedRows();this.session.indentRows(e.first,e.last," ")},this.blockOutdent=function(){var e=this.session.getSelection();this.session.outdentRows(e.getRange())},this.sortLines=function(){var e=this.$getSelectedRows(),t=this.session,n=[];for(var r=e.first;r<=e.last;r++)n.push(t.getLine(r));n.sort(function(e,t){return e.toLowerCase()<t.toLowerCase()?-1:e.toLowerCase()>t.toLowerCase()?1:0});var i=new p(0,0,0,0);for(var r=e.first;r<=e.last;r++){var s=t.getLine(r);i.start.row=r,i.end.row=r,i.end.column=s.length,t.replace(i,n[r-e.first])}},this.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},this.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),n=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,n,e)},this.getNumberAt=function(e,t){var n=/[\-]?[0-9]+(?:\.[0-9]+)?/g;n.lastIndex=0;var r=this.session.getLine(e);while(n.lastIndex<t){var i=n.exec(r);if(i.index<=t&&i.index+i[0].length>=t){var s={value:i[0],start:i.index,end:i.index+i[0].length};return s}}return null},this.modifyNumber=function(e){var t=this.selection.getCursor().row,n=this.selection.getCursor().column,r=new p(t,n-1,t,n),i=this.session.getTextRange(r);if(!isNaN(parseFloat(i))&&isFinite(i)){var s=this.getNumberAt(t,n);if(s){var o=s.value.indexOf(".")>=0?s.start+s.value.indexOf(".")+1:s.end,u=s.start+s.value.length-o,a=parseFloat(s.value);a*=Math.pow(10,u),o!==s.end&&n<o?e*=Math.pow(10,s.end-n-1):e*=Math.pow(10,s.end-n),a+=e,a/=Math.pow(10,u);var f=a.toFixed(u),l=new p(t,s.start,t,s.end);this.session.replace(l,f),this.moveCursorTo(t,Math.max(s.start+1,n+f.length-s.value.length))}}else this.toggleWord()},this.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],this.toggleWord=function(){var e=this.selection.getCursor().row,t=this.selection.getCursor().column;this.selection.selectWord();var n=this.getSelectedText(),r=this.selection.getWordRange().start.column,i=n.replace(/([a-z]+|[A-Z]+)(?=[A-Z_]|$)/g,"$1 ").split(/\s/),o=t-r-1;o<0&&(o=0);var u=0,a=0,f=this;
372n.match(/[A-Za-z0-9_]+/)&&i.forEach(function(t,i){a=u+t.length,o>=u&&o<=a&&(n=t,f.selection.clearSelection(),f.moveCursorTo(e,u+r),f.selection.selectTo(e,a+r)),u=a});var l=this.$toggleWordPairs,c;for(var h=0;h<l.length;h++){var p=l[h];for(var d=0;d<=1;d++){var v=+!d,m=n.match(new RegExp("^\\s?_?("+s.escapeRegExp(p[d])+")\\s?$","i"));if(m){var g=n.match(new RegExp("([_]|^|\\s)("+s.escapeRegExp(m[1])+")($|\\s)","g"));g&&(c=n.replace(new RegExp(s.escapeRegExp(p[d]),"i"),function(e){var t=p[v];return e.toUpperCase()==e?t=t.toUpperCase():e.charAt(0).toUpperCase()==e.charAt(0)&&(t=t.substr(0,0)+p[v].charAt(0).toUpperCase()+t.substr(1)),t}),this.insert(c),c="")}}}},this.removeLines=function(){var e=this.$getSelectedRows();this.session.removeFullLines(e.first,e.last),this.clearSelection()},this.duplicateSelection=function(){var e=this.selection,t=this.session,n=e.getRange(),r=e.isBackwards();if(n.isEmpty()){var i=n.start.row;t.duplicateLines(i,i)}else{var s=r?n.start:n.end,o=t.insert(s,t.getTextRange(n),!1);n.start=s,n.end=o,e.setSelectionRange(n,r)}},this.moveLinesDown=function(){this.$moveLines(1,!1)},this.moveLinesUp=function(){this.$moveLines(-1,!1)},this.moveText=function(e,t,n){return this.session.moveText(e,t,n)}
372,this.copyLinesUp=function(){this.$moveLines(-1,!0)},this.copyLinesDown=function(){this.$moveLines(1,!0)},this.$moveLines=function(e,t){var n,r,i=this.selection;if(!i.inMultiSelectMode||this.inVirtualSelectionMode){var s=i.toOrientedRange();n=this.$getSelectedRows(s),r=this.session.$moveLines(n.first,n.last,t?0:e),t&&e==-1&&(r=0),s.moveBy(r,0),i.fromOrientedRange(s)}else{var o=i.rangeList.ranges;i.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;var u=0,a=0,f=o.length;for(var l=0;l<f;l++){var c=l;o[l].moveBy(u,0),n=this.$getSelectedRows(o[l]);var h=n.first,p=n.last;while(++l<f){a&&o[l].moveBy(a,0);var d=this.$getSelectedRows(o[l]);if(t&&d.first!=p)break;if(!t&&d.first>p+1)break;p=d.last}l--,u=this.session.$moveLines(h,p,t?0:e),t&&e==-1&&(c=l+1);while(c<=l)o[c].moveBy(u,0),c++;t||(u=0),a+=u}i.fromOrientedRange(i.ranges[0]),i.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},this.$getSelectedRows=function(e){return e=(e||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},this.onCompositionStart=function(e){this.renderer.showComposition(e)},this.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},this.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(e,t){var n=this.renderer,r=this.renderer.layerConfig,i=e*Math.floor(r.height/r.lineHeight);t===!0?this.selection.$moveSelection(function(){this.moveCursorBy(i,0)}):t===!1&&(this.selection.moveCursorBy(i,0),this.selection.clearSelection());var s=n.scrollTop;n.scrollBy(0,i*r.lineHeight),t!=null&&n.scrollCursorIntoView(null,.5),n.animateScrolling(s)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(e){this.renderer.scrollToRow(e)},this.scrollToLine=function(e,t,n,r){this.renderer.scrollToLine(e,t,n,r)},this.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.selection.selectAll()},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},this.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},this.jumpToMatching=function(e,t){var n=this.getCursorPosition(),r=new y(this.session,n.row,n.column),i=r.getCurrentToken(),s=i||r.stepForward();if(!s)return;var o,u=!1,a={},f=n.column-s.start,l,c={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(s.value.match(/[{}()\[\]]/g))for(;f<s.value.length&&!u;f++){if(!c[s.value[f]])continue;l=c[s.value[f]]+"."+s.type.replace("rparen","lparen"),isNaN(a[l])&&(a[l]=0);switch(s.value[f]){case"(":case"[":case"{":a[l]++;break;case")":case"]":case"}":a[l]--,a[l]===-1&&(o="bracket",u=!0)}}else s.type.indexOf("tag-name")!==-1&&(isNaN(a[s.value])&&(a[s.value]=0),i.value==="<"?a[s.value]++:i.value==="</"&&a[s.value]--,a[s.value]===-1&&(o="tag",u=!0));u||(i=s,s=r.stepForward(),f=0)}while(s&&!u);if(!o)return;var h,d;if(o==="bracket"){h=this.session.getBracketRange(n);if(!h){h=new p(r.getCurrentTokenRow(),r.getCurrentTokenColumn()+f-1,r.getCurrentTokenRow(),r.getCurrentTokenColumn()+f-1),d=h.start;if(t||d.row===n.row&&Math.abs(d.column-n.column)<2)h=this.session.getBracketRange(d)}}else if(o==="tag"){if(!s||s.type.indexOf("tag-name")===-1)return;var v=s.value;h=new p(r.getCurrentTokenRow(),r.getCurrentTokenColumn()-2,r.getCurrentTokenRow(),r.getCurrentTokenColumn()-2);if(h.compare(n.row,n.column)===0){u=!1;do s=i,i=r.stepBackward(),i&&(i.type.indexOf("tag-close")!==-1&&h.setEnd(r.getCurrentTokenRow(),r.getCurrentTokenColumn()+1),s.value===v&&s.type.indexOf("tag-name")!==-1&&(i.value==="<"?a[v]++:i.value==="</"&&a[v]--,a[v]===0&&(u=!0)));while(i&&!u)}s&&s.type.indexOf("tag-name")&&(d=h.start,d.row==n.row&&Math.abs(d.column-n.column)<2&&(d=h.end))}d=h&&h.cursor||d,d&&(e?h&&t?this.selection.setRange(h):h&&h.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(d.row,d.column):this.selection.moveTo(d.row,d.column))},this.gotoLine=function(e,t,n){this.selection.clearSelection(),this.session.unfold({row:e-1,column:t||0}),this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(e-1,t||0),this.isRowFullyVisible(e-1)||this.scrollToLine(e-1,!0,n)},this.navigateTo=function(e,t){this.selection.moveTo(e,t)},this.navigateUp=function(e){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(-e||-1,0)},this.navigateDown=function(e){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(e||1,0)},this.navigateLeft=function(e){if(!this.selection.isEmpty()){var t=this.getSelectionRange().start;this.moveCursorToPosition(t)}else{e=e||1;while(e--)this.selection.moveCursorLeft()}this.clearSelection()},this.navigateRight=function(e){if(!this.selection.isEmpty()){var t=this.getSelectionRange().end;this.moveCursorToPosition(t)}else{e=e||1;while(e--)this.selection.moveCursorRight()}this.clearSelection()},this.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},this.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},this.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},this.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},this.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},this.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},this.replace=function(e,t){t&&this.$search.set(t);var n=this.$search.find(this.session),r=0;return n?(this.$tryReplace(n,e)&&(r=1),this.selection.setSelectionRange(n),this.renderer.scrollSelectionIntoView(n.start,n.end),r):r},this.replaceAll=function(e,t){t&&this.$search.set(t);var n=this.$search.findAll(this.session),r=0;if(!n.length)return r;var i=this.getSelectionRange();this.selection.moveTo(0,0);for(var s=n.length-1;s>=0;--s)this.$tryReplace(n[s],e)&&r++;return this.selection.setSelectionRange(i),r},this.$tryReplace=function(e,t){var n=this.session.getTextRange(e);return t=this.$search.replace(n,t),t!==null?(e.end=this.session.replace(e,t),e):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(e,t,n){t||(t={}),typeof e=="string"||e instanceof RegExp?t.needle=e:typeof e=="object"&&r.mixin(t,e);var i=this.selection.getRange();t.needle==null&&(e=this.session.getTextRange(i)||this.$search.$options.needle,e||(i=this.session.getWordRange(i.start.row,i.start.column),e=this.session.getTextRange(i)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:i});var s=this.$search.find(this.session);if(t.preventScroll)return s;if(s)return this.revealRange(s,n),s;t.backwards?i.start=i.end:i.end=i.start,this.selection.setRange(i)}
372,this.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},this.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},this.revealRange=function(e,t){this.session.unfold(e),this.selection.setSelectionRange(e);var n=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),t!==!1&&this.renderer.animateScrolling(n)},this.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(e){e.destroy()}),this.$toDestroy=null),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},this.setAutoScrollEditorIntoView=function(e){if(!e)return;var t,n=this,r=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var i=this.$scrollAnchor;i.style.cssText="position:absolute",this.container.insertBefore(i,this.container.firstChild);var s=this.on("changeSelection",function(){r=!0}),o=this.renderer.on("beforeRender",function(){r&&(t=n.renderer.container.getBoundingClientRect())}),u=this.renderer.on("afterRender",function(){if(r&&t&&(n.isFocused()||n.searchBox&&n.searchBox.isFocused())){var e=n.renderer,s=e.$cursorLayer.$pixelPos,o=e.layerConfig,u=s.top-o.offset;s.top>=0&&u+t.top<0?r=!0:s.top<o.height&&s.top+t.top+o.lineHeight>window.innerHeight?r=!1:r=null,r!=null&&(i.style.top=u+"px",i.style.left=s.left+"px",i.style.height=o.lineHeight+"px",i.scrollIntoView(r)),r=t=null}});this.setAutoScrollEditorIntoView=function(e){if(e)return;delete this.setAutoScrollEditorIntoView,this.off("changeSelection",s),this.renderer.off("afterRender",u),this.renderer.off("beforeRender",o)}},this.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;if(!t)return;t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&e!="wide",i.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e))},this.prompt=function(e,t,n){var r=this;g.loadModule("./ext/prompt",function(i){i.prompt(r,e,t,n)})}}.call(w.prototype),g.defineOptions(w.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){this.textInput.setReadOnly(e),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(e){this.textInput.setCopyWithEmptySelection(e)},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},keyboardHandler:{set:function(e){this.setKeyboardHandler(e)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(e){this.session.setValue(e)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(e){this.setSession(e)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(e){this.renderer.$gutterLayer.setShowLineNumbers(e),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),e&&this.$relativeLineNumbers?E.attach(this):E.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(e){this.$showLineNumbers&&e?E.attach(this):E.detach(this)}},placeholder:{set:function(e){this.$updatePlaceholder||(this.$updatePlaceholder=function(){var e=this.session&&(this.renderer.$composition||this.getValue());if(e&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),i.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!e&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),i.addCssClass(this.container,"ace_hasPlaceholder");var t=i.createElement("div");t.className="ace_placeholder",t.textContent=this.$placeholder||"",this.renderer.placeholderNode=t,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!e&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}.bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focu
372sTimeout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var E={getText:function(e,t){return(Math.abs(e.selection.lead.row-t)||t+1+(t<9?"\u00b7":""))+""},getWidth:function(e,t,n){return Math.max(t.toString().length,(n.lastRow+1).toString().length,2)*n.characterWidth},update:function(e,t){t.renderer.$loop.schedule(t.renderer.CHANGE_GUTTER)},attach:function(e){e.renderer.$gutterLayer.$renderer=this,e.on("changeSelection",this.update),this.update(null,e)},detach:function(e){e.renderer.$gutterLayer.$renderer==this&&(e.renderer.$gutterLayer.$renderer=null),e.off("changeSelection",this.update),this.update(null,e)}};t.Editor=w}),define("ace/undomanager",["require","exports","module","ace/range"],function(e,t,n){"use strict";function i(e,t){for(var n=t;n--;){var r=e[n];if(r&&!r[0].ignore){while(n<t-1){var i=d(e[n],e[n+1]);e[n]=i[0],e[n+1]=i[1],n++}return!0}}}function a(e){var t=e.action=="insert",n=e.start,r=e.end,i=(r.row-n.row)*(t?1:-1),s=(r.column-n.column)*(t?1:-1);t&&(r=n);for(var o in this.marks){var a=this.marks[o],f=u(a,n);if(f<0)continue;if(f===0&&t){if(a.bias!=1){a.bias==-1;continue}f=1}var l=t?f:u(a,r);if(l>0){a.row+=i,a.column+=a.row==r.row?s:0;continue}!t&&l<=0&&(a.row=n.row,a.column=n.column,l===0&&(a.bias=1))}}function f(e){return{row:e.row,column:e.column}}function l(e){return{start:f(e.start),end:f(e.end),action:e.action,lines:e.lines.slice()}}function c(e){e=e||this;if(Array.isArray(e))return e.map(c).join("\n");var t="";e.action?(t=e.action=="insert"?"+":"-",t+="["+e.lines+"]"):e.value&&(Array.isArray(e.value)?t=e.value.map(h).join("\n"):t=h(e.value)),e.start&&(t+=h(e));if(e.id||e.rev)t+=" ("+(e.id||e.rev)+")";return t}function h(e){return e.start.row+":"+e.start.column+"=>"+e.end.row+":"+e.end.column}function p(e,t){var n=e.action=="insert",r=t.action=="insert";if(n&&r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}else if(!n&&r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(!n&&!r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}return[t,e]}function d(e,t){for(var n=e.length;n--;)for(var r=0;r<t.length;r++)if(!p(e[n],t[r])){while(n<e.length){while(r--)p(t[r],e[n]);r=t.length,n++}return[e,t]}return e.selectionBefore=t.selectionBefore=e.selectionAfter=t.selectionAfter=null,[t,e]}function v(e,t){var n=e.action=="insert",r=t.action=="insert";if(n&&r)o(e.start,t.start)<0?m(t,e,1):m(e,t,1);else if(n&&!r)o(e.start,t.end)>=0?m(e,t,-1):o(e.start,t.start)<=0?m(t,e,1):(m(e,s.fromPoints(t.start,e.start),-1),m(t,e,1));else if(!n&&r)o(t.start,e.end)>=0?m(t,e,-1):o(t.start,e.start)<=0?m(e,t,1):(m(t,s.fromPoints(e.start,t.start),-1),m(e,t,1));else if(!n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0)){var i,u;return o(e.start,t.start)<0&&(i=e,e=y(e,t.start)),o(e.end,t.end)>0&&(u=y(e,t.end)),g(t.end,e.start,e.end,-1),u&&!i&&(e.lines=u.lines,e.start=u.start,e.end=u.end,u=e),[t,i,u].filter(Boolean)}m(e,t,-1)}return[t,e]}function m(e,t,n){g(e.start,t.start,t.end,n),g(e.end,t.start,t.end,n)}function g(e,t,n,r){e.row==(r==1?t:n).row&&(e.column+=r*(n.column-t.column)),e.row+=r*(n.row-t.row)}function y(e,t){var n=e.lines,r=e.end;e.end=f(t);var i=e.end.row-e.start.row,s=n.splice(i,n.length),o=i?t.column:t.column-e.start.column;n.push(s[0].substring(0,o)),s[0]=s[0].substr(o);var u={start:f(t),end:r,lines:s,action:e.action};return u}function b(e,t){t=l(t);for(var n=e.length;n--;){var r=e[n];for(var i=0;i<r.length;i++){var s=r[i],o=v(s,t);t=o[0],o.length!=2&&(o[2]?(r.splice(i+1,1,o[1],o[2]),i++):o[1]||(r.splice(i,1),i--))}r.length||e.splice(n,1)}return e}function w(e,t){for(var n=0;n<t.length;n++){var r=t[n];for(var i=0;i<r.length;i++)b(e,r[i])}}var r=function(){this.$maxRev=0,this.$fromUndo=!1,this.reset()};(function(){this.addSession=function(e){this.$session=e},this.add=function(e,t,n){if(this.$fromUndo)return;if(e==this.$lastDelta)return;this.$keepRedoStack||(this.$redoStack.length=0);if(t===!1||!this.lastDeltas)this.lastDeltas=[],this.$undoStack.push(this.lastDeltas),e.id=this.$rev=++this.$maxRev;if(e.action=="remove"||e.action=="insert")this.$lastDelta=e;this.lastDeltas.push(e)},this.addSelection=function(e,t){this.selections.push({value:e,rev:t||this.$rev})},this.startNewGroup=function(){return this.lastDeltas=null,this.$rev},this.markIgnored=function(e,t){t==null&&(t=this.$rev+1);var n=this.$undoStack;for(var r=n.length;r--;){var i=n[r][0];if(i.id<=e)break;i.id<t&&(i.ignore=!0)}this.lastDeltas=null}
372,this.getSelection=function(e,t){var n=this.selections;for(var r=n.length;r--;){var i=n[r];if(i.rev<e)return t&&(i=n[r+1]),i}},this.getRevision=function(){return this.$rev},this.getDeltas=function(e,t){t==null&&(t=this.$rev+1);var n=this.$undoStack,r=null,i=0;for(var s=n.length;s--;){var o=n[s][0];o.id<t&&!r&&(r=s+1);if(o.id<=e){i=s+1;break}}return n.slice(i,r)},this.getChangedRanges=function(e,t){t==null&&(t=this.$rev+1)},this.getChangedLines=function(e,t){t==null&&(t=this.$rev+1)},this.undo=function(e,t){this.lastDeltas=null;var n=this.$undoStack;if(!i(n,n.length))return;e||(e=this.$session),this.$redoStackBaseRev!==this.$rev&&this.$redoStack.length&&(this.$redoStack=[]),this.$fromUndo=!0;var r=n.pop(),s=null;return r&&(s=e.undoChanges(r,t),this.$redoStack.push(r),this.$syncRev()),this.$fromUndo=!1,s},this.redo=function(e,t){this.lastDeltas=null,e||(e=this.$session),this.$fromUndo=!0;if(this.$redoStackBaseRev!=this.$rev){var n=this.getDeltas(this.$redoStackBaseRev,this.$rev+1);w(this.$redoStack,n),this.$redoStackBaseRev=this.$rev,this.$redoStack.forEach(function(e){e[0].id=++this.$maxRev},this)}var r=this.$redoStack.pop(),i=null;return r&&(i=e.redoChanges(r,t),this.$undoStack.push(r),this.$syncRev()),this.$fromUndo=!1,i},this.$syncRev=function(){var e=this.$undoStack,t=e[e.length-1],n=t&&t[0].id||0;this.$redoStackBaseRev=n,this.$rev=n},this.reset=function(){this.lastDeltas=null,this.$lastDelta=null,this.$undoStack=[],this.$redoStack=[],this.$rev=0,this.mark=0,this.$redoStackBaseRev=this.$rev,this.selections=[]},this.canUndo=function(){return this.$undoStack.length>0},this.canRedo=function(){return this.$redoStack.length>0},this.bookmark=function(e){e==undefined&&(e=this.$rev),this.mark=e},this.isAtBookmark=function(){return this.$rev===this.mark},this.toJSON=function(){},this.fromJSON=function(){},this.hasUndo=this.canUndo,this.hasRedo=this.canRedo,this.isClean=this.isAtBookmark,this.markClean=this.bookmark,this.$prettyPrint=function(e){return e?c(e):c(this.$undoStack)+"\n---\n"+c(this.$redoStack)}}).call(r.prototype);var s=e("./range").Range,o=s.comparePoints,u=s.comparePoints;t.UndoManager=r}),define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(e,t){this.element=e,this.canvasHeight=t||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0};(function(){this.moveContainer=function(e){r.translate(this.element,0,-(e.firstRowScreen*e.lineHeight%this.canvasHeight)-e.offset*this.$offsetCoefficient)},this.pageChanged=function(e,t){return Math.floor(e.firstRowScreen*e.lineHeight/this.canvasHeight)!==Math.floor(t.firstRowScreen*t.lineHeight/this.canvasHeight)},this.computeLineTop=function(e,t,n){var r=t.firstRowScreen*t.lineHeight,i=Math.floor(r/this.canvasHeight),s=n.documentToScreenRow(e,0)*t.lineHeight;return s-i*this.canvasHeight},this.computeLineHeight=function(e,t,n){return t.lineHeight*n.getRowLineCount(e)},this.getLength=function(){return this.cells.length},this.get=function(e){return this.cells[e]},this.shift=function(){this.$cacheCell(this.cells.shift())},this.pop=function(){this.$cacheCell(this.cells.pop())},this.push=function(e){if(Array.isArray(e)){this.cells.push.apply(this.cells,e);var t=r.createFragment(this.element);for(var n=0;n<e.length;n++)t.appendChild(e[n].element);this.element.appendChild(t)}else this.cells.push(e),this.element.appendChild(e.element)},this.unshift=function(e){if(Array.isArray(e)){this.cells.unshift.apply(this.cells,e);var t=r.createFragment(this.element);for(var n=0;n<e.length;n++)t.appendChild(e[n].element);this.element.firstChild?this.element.insertBefore(t,this.element.firstChild):this.element.appendChild(t)}else this.cells.unshift(e),this.element.insertAdjacentElement("afterbegin",e.element)},this.last=function(){return this.cells.length?this.cells[this.cells.length-1]:null},this.$cacheCell=function(e){if(!e)return;e.element.remove(),this.cellCache.push(e)},this.createCell=function(e,t,n,i){var s=this.cellCache.pop();if(!s){var o=r.createElement("div");i&&i(o),this.element.appendChild(o),s={element:o,text:"",row:e}}return s.row=e,s}}).call(i.prototype),t.Lines=i}),define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/layer/lines"],function(e,t,n){"use strict";function f(e){var t=document.createTextNode("");e.appendChild(t);var n=r.createElement("span");return e.appendChild(n),e}var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../lib/lang"),o=e("../lib/event_emitter").EventEmitter,u=e("./lines").Lines,a=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_gutter-layer",e.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$lines=new u(this.element),this.$lines.$offsetCoefficient=1};(function(){i.implement(this,o),this.setSession=function(e){this.session&&this.session.off("
372change",this.$updateAnnotations),this.session=e,e&&e.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(e,t)},this.setAnnotations=function(e){this.$annotations=[];for(var t=0;t<e.length;t++){var n=e[t],r=n.row,i=this.$annotations[r];i||(i=this.$annotations[r]={text:[]});var o=n.text;o=o?s.escapeHTML(o):n.html||"",i.text.indexOf(o)===-1&&i.text.push(o);var u=n.type;u=="error"?i.className=" ace_error":u=="warning"&&i.className!=" ace_error"?i.className=" ace_warning":u=="info"&&!i.className&&(i.className=" ace_info")}},this.$updateAnnotations=function(e){if(!this.$annotations.length)return;var t=e.start.row,n=e.end.row-t;if(n!==0)if(e.action=="remove")this.$annotations.splice(t,n+1,null);else{var r=new Array(n+1);r.unshift(t,1),this.$annotations.splice.apply(this.$annotations,r)}},this.update=function(e){this.config=e;var t=this.session,n=e.firstRow,r=Math.min(e.lastRow+e.gutterOffset,t.getLength()-1);this.oldLastRow=r,this.config=e,this.$lines.moveContainer(e),this.$updateCursorRow();var i=t.getNextFoldLine(n),s=i?i.start.row:Infinity,o=null,u=-1,a=n;for(;;){a>s&&(a=i.end.row+1,i=t.getNextFoldLine(a,i),s=i?i.start.row:Infinity);if(a>r){while(this.$lines.getLength()>u+1)this.$lines.pop();break}o=this.$lines.get(++u),o?o.row=a:(o=this.$lines.createCell(a,e,this.session,f),this.$lines.push(o)),this.$renderCell(o,e,i,a),a++}this._signal("afterRender"),this.$updateGutterWidth(e)},this.$updateGutterWidth=function(e){var t=this.session,n=t.gutterRenderer||this.$renderer,r=t.$firstLineNumber,i=this.$lines.last()?this.$lines.last().text:"";if(this.$fixedWidth||t.$useWrapMode)i=t.getLength()+r-1;var s=n?n.getWidth(t,i,e):i.toString().length*e.characterWidth,o=this.$padding||this.$computePadding();s+=o.left+o.right,s!==this.gutterWidth&&!isNaN(s)&&(this.gutterWidth=s,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",s))},this.$updateCursorRow=function(){if(!this.$highlightGutterLine)return;var e=this.session.selection.getCursor();if(this.$cursorRow===e.row)return;this.$cursorRow=e.row},this.updateLineHighlight=function(){if(!this.$highlightGutterLine)return;var e=this.session.selection.cursor.row;this.$cursorRow=e;if(this.$cursorCell&&this.$cursorCell.row==e)return;this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var t=this.$lines.cells;this.$cursorCell=null;for(var n=0;n<t.length;n++){var r=t[n];if(r.row>=this.$cursorRow){if(r.row>this.$cursorRow){var i=this.session.getFoldLine(this.$cursorRow);if(!(n>0&&i&&i.start.row==t[n-1].row))break;r=t[n-1]}r.element.className="ace_gutter-active-line "+r.element.className,this.$cursorCell=r;break}}},this.scrollLines=function(e){var t=this.config;this.config=e,this.$updateCursorRow();if(this.$lines.pageChanged(t,e))return this.update(e);this.$lines.moveContainer(e);var n=Math.min(e.lastRow+e.gutterOffset,this.session.getLength()-1),r=this.oldLastRow;this.oldLastRow=n;if(!t||r<e.firstRow)return this.update(e);if(n<t.firstRow)return this.update(e);if(t.firstRow<e.firstRow)for(var i=this.session.getFoldedRowCount(t.firstRow,e.firstRow-1);i>0;i--)this.$lines.shift();if(r>n)for(var i=this.session.getFoldedRowCount(n+1,r);i>0;i--)this.$lines.pop();e.firstRow<t.firstRow&&this.$lines.unshift(this.$renderLines(e,e.firstRow,t.firstRow-1)),n>r&&this.$lines.push(this.$renderLines(e,r+1,n)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(e)},this.$renderLines=function(e,t,n){var r=[],i=t,s=this.session.getNextFoldLine(i),o=s?s.start.row:Infinity;for(;;){i>o&&(i=s.end.row+1,s=this.session.getNextFoldLine(i,s),o=s?s.start.row:Infinity);if(i>n)break;var u=this.$lines.createCell(i,e,this.session,f);this.$renderCell(u,e,s,i),r.push(u),i++}
372return r},this.$renderCell=function(e,t,n,i){var s=e.element,o=this.session,u=s.childNodes[0],a=s.childNodes[1],f=o.$firstLineNumber,l=o.$breakpoints,c=o.$decorations,h=o.gutterRenderer||this.$renderer,p=this.$showFoldWidgets&&o.foldWidgets,d=n?n.start.row:Number.MAX_VALUE,v="ace_gutter-cell ";this.$highlightGutterLine&&(i==this.$cursorRow||n&&i<this.$cursorRow&&i>=d&&this.$cursorRow<=n.end.row)&&(v+="ace_gutter-active-line ",this.$cursorCell!=e&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=e)),l[i]&&(v+=l[i]),c[i]&&(v+=c[i]),this.$annotations[i]&&(v+=this.$annotations[i].className),s.className!=v&&(s.className=v);if(p){var m=p[i];m==null&&(m=p[i]=o.getFoldWidget(i))}if(m){var v="ace_fold-widget ace_"+m;m=="start"&&i==d&&i<n.end.row?v+=" ace_closed":v+=" ace_open",a.className!=v&&(a.className=v);var g=t.lineHeight+"px";r.setStyle(a.style,"height",g),r.setStyle(a.style,"display","inline-block")}else a&&r.setStyle(a.style,"display","none");var y=(h?h.getText(o,i):i+f).toString();return y!==u.data&&(u.data=y),r.setStyle(e.element.style,"height",this.$lines.computeLineHeight(i,t,o)+"px"),r.setStyle(e.element.style,"top",this.$lines.computeLineTop(i,t,o)+"px"),e.text=y,e},this.$fixedWidth=!1,this.$highlightGutterLine=!0,this.$renderer="",this.setHighlightGutterLine=function(e){this.$highlightGutterLine=e},this.$showLineNumbers=!0,this.$renderer="",this.setShowLineNumbers=function(e){this.$renderer=!e&&{getWidth:function(){return 0},getText:function(){return""}}},this.getShowLineNumbers=function(){return this.$showLineNumbers},this.$showFoldWidgets=!0,this.setShowFoldWidgets=function(e){e?r.addCssClass(this.element,"ace_folding-enabled"):r.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=e,this.$padding=null},this.getShowFoldWidgets=function(){return this.$showFoldWidgets},this.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var e=r.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=(parseInt(e.borderLeftWidth)||0)+(parseInt(e.paddingLeft)||0)+1,this.$padding.right=(parseInt(e.borderRightWidth)||0)+(parseInt(e.paddingRight)||0),this.$padding},this.getRegion=function(e){var t=this.$padding||this.$computePadding(),n=this.element.getBoundingClientRect();if(e.x<t.left+n.left)return"markers";if(this.$showFoldWidgets&&e.x>n.right-t.right)return"foldWidgets"}}).call(a.prototype),t.Gutter=a}),define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../range").Range,i=e("../lib/dom"),s=function(e){this.element=i.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)};(function(){function e(e,t,n,r){return(e?1:0)|(t?2:0)|(n?4:0)|(r?8:0)}this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setMarkers=function(e){this.markers=e},this.elt=function(e,t){var n=this.i!=-1&&this.element.childNodes[this.i];n?this.i++:(n=document.createElement("div"),this.element.appendChild(n),this.i=-1),n.style.cssText=t,n.className=e},this.update=function(e){if(!e)return;this.config=e,this.i=0;var t;for(var n in this.markers){var r=this.markers[n];if(!r.range){r.update(t,this,this.session,e);continue}var i=r.range.clipRows(e.firstRow,e.lastRow);if(i.isEmpty())continue;i=i.toScreenRange(this.session);if(r.renderer){var s=this.$getTop(i.start.row,e),o=this.$padding+i.start.column*e.characterWidth;r.renderer(t,i,o,s,e)}else r.type=="fullLine"?this.drawFullLineMarker(t,i,r.clazz,e):r.type=="screenLine"?this.drawScreenLineMarker(t,i,r.clazz,e):i.isMultiLine()?r.type=="text"?this.drawTextMarker(t,i,r.clazz,e):this.drawMultiLineMarker(t,i,r.clazz,e):this.drawSingleLineMarker(t,i,r.clazz+" ace_start"+" ace_br15",e)}if(this.i!=-1)while(this.i<this.element.childElementCount)this.element.removeChild(this.element.lastChild)},this.$getTop=function(e,t){return(e-t.firstRowScreen)*t.lineHeight},this.drawTextMarker=function(t,n,i,s,o){var u=this.session,a=n.start.row,f=n.end.row,l=a,c=0,h=0,p=u.getScreenLastRowColumn(l),d=new r(l,n.start.column,l,h);for(;l<=f;l++)d.start.row=d.end.row=l,d.start.column=l==a?n.start.column:u.getRowWrapIndent(l),d.end.column=p,c=h,h=p,p=l+1<f?u.getScreenLastRowColumn(l+1):l==f?0:n.end.column,this.drawSingleLineMarker(t,d,i+(l==a?" ace_start":"")+" ace_br"+e(l==a||l==a+1&&n.start.column,c<h,h>p,l==f),s,l==f?0:1,o)},this.drawMultiLineMarker=function(e,t,n,r,i){var s=this.$padding,o=r.lineHeight,u=this.$getTop(t.start.row,r),a=s+t.start.column*r.characterWidth;i=i||"";if(this.session.$bidiHandler.isBidiRow(t.start.row)){var f=t.clone();f.end.row=f.start.row,f.end.column=this.session.getLine(f.start.row).length,this.drawBidiSingleLineMarker(e,f,n+" ace_br1 ace_start",r,null,i)}else this.elt(n+" ace_br1 ace_start","height:"+o+"px;"+"right:0;"+"top:"+u+"px;left:"+a+"px;"+(i||""));if(this.session.$bidiHandler.isBidiRow(t.end.row)){var f=t.clone();f.start.row=f.end.row,f.start.column=0,this.drawBidiSingleLineMarker(e,f,n+" ace_br12",r,null,i)}else{u=this.$getTop(t.end.row,r);var l=t.end.column*r.characterWidth;this.elt(n+" ace_br12","height:"+o+"px;"+"width:"+l+"px;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))}o=(t.end.row-t.start.row-1)*r.lineHeight;if(o<=0)return;u=this.$getTop(t.start.row+1,r);var c=(t.start.column?1:0)|(t.end.column?0:8);this.elt(n+(c?" ace_br"+c:""),"height:"+o+"px;"+"right:0;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))},this.drawSingleLineMarker=function(e,t,n,r,i,s){if(this.session.$bidiHandler.isBidiRow(t.start.row))return this.drawBidiSingleLineMarker(e,t,n,r,i,s);var o=r.lineHeight,u=(t.end.column+(i||0)-t.start.column)*r.characterWidth,a=this.$getTop(t.start.row,r),f=this.$padding+t.start.column*r.characterWidth;this.elt(n,"height:"+o+"px;"+"width:"+u+"px;"+"top:"+a+"px;"+"left:"+f+"px;"+(s||""))},this.drawBidiSingleLineMarker=function(e,t,n,r,i,s){var o=r.lineHeight,u=this.$getTop(t.start.row,r),a=this.$padding,f
372=this.session.$bidiHandler.getSelections(t.start.column,t.end.column);f.forEach(function(e){this.elt(n,"height:"+o+"px;"+"width:"+e.width+(i||0)+"px;"+"top:"+u+"px;"+"left:"+(a+e.left)+"px;"+(s||""))},this)},this.drawFullLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;t.start.row!=t.end.row&&(o+=this.$getTop(t.end.row,r)-s),this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))},this.drawScreenLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))}}).call(s.prototype),t.Marker=s}),define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/dom"),s=e("../lib/lang"),o=e("./lines").Lines,u=e("../lib/event_emitter").EventEmitter,a=function(e){this.dom=i,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new o(this.element)};(function(){r.implement(this,u),this.EOF_CHAR="\u00b6",this.EOL_CHAR_LF="\u00ac",this.EOL_CHAR_CRLF="\u00a4",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="\u2014",this.SPACE_CHAR="\u00b7",this.$padding=0,this.MAX_LINE_LENGTH=1e4,this.$updateEolChar=function(){var e=this.session.doc,t=e.getNewLineCharacter()=="\n"&&e.getNewLineMode()!="windows",n=t?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=n)return this.EOL_CHAR=n,!0},this.setPadding=function(e){this.$padding=e,this.element.style.margin="0 "+e+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(e){this.session=e,e&&this.$computeTabString()},this.showInvisibles=!1,this.showSpaces=!1,this.showTabs=!1,this.showEOL=!1,this.setShowInvisibles=function(e){return this.showInvisibles==e?!1:(this.showInvisibles=e,typeof e=="string"?(this.showSpaces=/tab/i.test(e),this.showTabs=/space/i.test(e),this.showEOL=/eol/i.test(e)):this.showSpaces=this.showTabs=this.showEOL=e,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(e){return this.displayIndentGuides==e?!1:(this.displayIndentGuides=e,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;var t=this.$tabStrings=[0];for(var n=1;n<e+1;n++)if(this.showTabs){var r=this.dom.createElement("span");r.className="ace_invisible ace_invisible_tab",r.textContent=s.stringRepeat(this.TAB_CHAR,n),t.push(r)}else t.push(this.dom.createTextNode(s.stringRepeat(" ",n),this.element));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var i="ace_indent-guide",o=this.showSpaces?" ace_invisible ace_invisible_space":"",u=this.showSpaces?s.stringRepeat(this.SPACE_CHAR,this.tabSize):s.stringRepeat(" ",this.tabSize),a=this.showTabs?" ace_invisible ace_invisible_tab":"",f=this.showTabs?s.stringRepeat(this.TAB_CHAR,this.tabSize):u,r=this.dom.createElement("span");r.className=i+o,r.textContent=u,this.$tabStrings[" "]=r;var r=this.dom.createElement("span");r.className=i+a,r.textContent=f,this.$tabStrings[" "]=r}},this.updateLines=function(e,t,n){if(this.config.lastRow!=e.lastRow||this.config.firstRow!=e.firstRow)return this.update(e);this.config=e;var r=Math.max(t,e.firstRow),i=Math.min(n,e.lastRow),s=this.element.childNodes,o=0;for(var u=e.firstRow;u<r;u++){var a=this.session.getFoldLine(u);if(a){if(a.containsRow(r)){r=a.start.row;break}u=a.end.row}o++}var f=!1,u=r,a=this.session.getNextFoldLine(u),l=a?a.start.row:Infinity;for(;;){u>l&&(u=a.end.row+1,a=this.session.getNextFoldLine(u,a),l=a?a.start.row:Infinity);if(u>i)break;var c=s[o++];if(c){this.dom.removeChildren(c),this.$renderLine(c,u,u==l?a:!1),f&&(c.style.top=this.$lines.computeLineTop(u,e,this.session)+"px");var h=e.lineHeight*this.session.getRowLength(u)+"px";c.style.height!=h&&(f=!0,c.style.height=h)}u++}if(f)while(o<this.$lines.cells.length){var p=this.$lines.cells[o++];p.element.style.top=this.$lines.computeLineTop(p.row,e,this.session)+"px"}},this.scrollLines=function(e){var t=this.config;this.config=e;if(this.$lines.pageChanged(t,e))return this.update(e);
372this.$lines.moveContainer(e);var n=e.lastRow,r=t?t.lastRow:-1;if(!t||r<e.firstRow)return this.update(e);if(n<t.firstRow)return this.update(e);if(!t||t.lastRow<e.firstRow)return this.update(e);if(e.lastRow<t.firstRow)return this.update(e);if(t.firstRow<e.firstRow)for(var i=this.session.getFoldedRowCount(t.firstRow,e.firstRow-1);i>0;i--)this.$lines.shift();if(t.lastRow>e.lastRow)for(var i=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);i>0;i--)this.$lines.pop();e.firstRow<t.firstRow&&this.$lines.unshift(this.$renderLinesFragment(e,e.firstRow,t.firstRow-1)),e.lastRow>t.lastRow&&this.$lines.push(this.$renderLinesFragment(e,t.lastRow+1,e.lastRow))},this.$renderLinesFragment=function(e,t,n){var r=[],s=t,o=this.session.getNextFoldLine(s),u=o?o.start.row:Infinity;for(;;){s>u&&(s=o.end.row+1,o=this.session.getNextFoldLine(s,o),u=o?o.start.row:Infinity);if(s>n)break;var a=this.$lines.createCell(s,e,this.session),f=a.element;this.dom.removeChildren(f),i.setStyle(f.style,"height",this.$lines.computeLineHeight(s,e,this.session)+"px"),i.setStyle(f.style,"top",this.$lines.computeLineTop(s,e,this.session)+"px"),this.$renderLine(f,s,s==u?o:!1),this.$useLineGroups()?f.className="ace_line_group":f.className="ace_line",r.push(a),s++}return r},this.update=function(e){this.$lines.moveContainer(e),this.config=e;var t=e.firstRow,n=e.lastRow,r=this.$lines;while(r.getLength())r.pop();r.push(this.$renderLinesFragment(e,t,n))},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(e,t,n,r){var i=this,o=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF])/g,u=this.dom.createFragment(this.element),a,f=0;while(a=o.exec(r)){var l=a[1],c=a[2],h=a[3],p=a[4],d=a[5];if(!i.showSpaces&&c)continue;var v=f!=a.index?r.slice(f,a.index):"";f=a.index+a[0].length,v&&u.appendChild(this.dom.createTextNode(v,this.element));if(l){var m=i.session.getScreenTabSize(t+a.index);u.appendChild(i.$tabStrings[m].cloneNode(!0)),t+=m-1}else if(c)if(i.showSpaces){var g=this.dom.createElement("span");g.className="ace_invisible ace_invisible_space",g.textContent=s.stringRepeat(i.SPACE_CHAR,c.length),u.appendChild(g)}else u.appendChild(this.com.createTextNode(c,this.element));else if(h){var g=this.dom.createElement("span");g.className="ace_invisible ace_invisible_space ace_invalid",g.textContent=s.stringRepeat(i.SPACE_CHAR,h.length),u.appendChild(g)}else if(p){t+=1;var g=this.dom.createElement("span");g.style.width=i.config.characterWidth*2+"px",g.className=i.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",g.textContent=i.showSpaces?i.SPACE_CHAR:p,u.appendChild(g)}else if(d){t+=1;var g=this.dom.createElement("span");g.style.width=i.config.characterWidth*2+"px",g.className="ace_cjk",g.textContent=d,u.appendChild(g)}}u.appendChild(this.dom.createTextNode(f?r.slice(f):r,this.element));if(!this.$textToken[n.type]){var y="ace_"+n.type.replace(/\./g," ace_"),g=this.dom.createElement("span");n.type=="fold"&&(g.style.width=n.value.length*this.config.characterWidth+"px"),g.className=y,g.appendChild(u),e.appendChild(g)}else e.appendChild(u);return t+r.length},this.renderIndentGuide=function(e,t,n){var r=t.search(this.$indentGuideRe);if(r<=0||r>=n)return t;if(t[0]==" "){r-=r%this.tabSize;var i=r/this.tabSize;for(var s=0;s<i;s++)e.appendChild(this.$tabStrings[" "].cloneNode(!0));return t.substr(r)}if(t[0]==" "){for(var s=0;s<r;s++)e.appendChild(this.$tabStrings[" "].cloneNode(!0));return t.substr(r)}return t},this.$createLineElement=function(e){var t=this.dom.createElement("div");return t.className="ace_line",t.style.height=this.config.lineHeight+"px",t},this.$renderWrappedLine=function(e,t,n){var r=0,i=0,o=n[0],u=0,a=this.$createLineElement();e.appendChild(a);for(var f=0;f<t.length;f++){var l=t[f],c=l.value;if(f==0&&this.displayIndentGuides){r=c.length,c=this.renderIndentGuide(a,c,o);if(!c)continue;r-=c.length}if(r+c.length<o)u=this.$renderToken(a,u,l,c),r+=c.length;else{while(r+c.length>=o)u=this.$renderToken(a,u,l,c.substring(0,o-r)),c=c.substring(o-r),r=o,a=this.$createLineElement(),e.appendChild(a),a.appendChild(this.dom.createTextNode(s.stringRepeat("\u00a0",n.indent),this.element)),i++,u=0,o=n[i]||Number.MAX_VALUE;c.length!=0&&(r+=c.length,u=this.$renderToken(a,u,l,c))}}n[n.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(a,u,null,"",!0)},this.$renderSimpleLine=function(e,t){var n=0,r=t[0],i=r.value;this.displayIndentGuides&&(i=this.renderIndentGuide(e,i)),i&&(n=this.$renderToken(e,n,r,i));for(var s=1;s<t.length;s++){r=t[s],i=r.value;if(n+i.length>this.MAX_LINE_LENGTH)return this.$renderOverflowMessage(e,n,r,i);n=this.$renderToken(e,n,r,i)}},this.$renderOverflowMessage=function(e,t,n,r,i){n&&this.$renderToken(e,t,n,r.slice(0,this.MAX_LINE_LENGTH-t));var s=this.dom.createElement("span");s.className="ace_inline_button ace_keyword ace_toggle_wrap",s.textContent=i?"<hide>":"<click to see more...>",e.appendChild(s)},this.$renderLine=function(e,t,n){!n&&n!=0&&(n=this.session.getFoldLine(t));
372if(n)var r=this.$getFoldLineTokens(t,n);else var r=this.session.getTokens(t);var i=e;if(r.length){var s=this.session.getRowSplitData(t);if(s&&s.length){this.$renderWrappedLine(e,r,s);var i=e.lastChild}else{var i=e;this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i)),this.$renderSimpleLine(i,r)}}else this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i));if(this.showEOL&&i){n&&(t=n.end.row);var o=this.dom.createElement("span");o.className="ace_invisible ace_invisible_eol",o.textContent=t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,i.appendChild(o)}},this.$getFoldLineTokens=function(e,t){function i(e,t,n){var i=0,s=0;while(s+e[i].value.length<t){s+=e[i].value.length,i++;if(i==e.length)return}if(s!=t){var o=e[i].value.substring(t-s);o.length>n-t&&(o=o.substring(0,n-t)),r.push({type:e[i].type,value:o}),s=t+o.length,i+=1}while(s<n&&i<e.length){var o=e[i].value;o.length+s>n?r.push({type:e[i].type,value:o.substring(0,n-s)}):r.push(e[i]),s+=o.length,i+=1}}var n=this.session,r=[],s=n.getTokens(e);return t.walk(function(e,t,o,u,a){e!=null?r.push({type:"fold",value:e}):(a&&(s=n.getTokens(t)),s.length&&i(s,u,o))},t.end.row,this.session.getLine(t.end.row).length),r},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){}}).call(a.prototype),t.Text=a}),define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)};(function(){this.$updateOpacity=function(e){var t=this.cursors;for(var n=t.length;n--;)r.setStyle(t[n].style,"opacity",e?"":"0")},this.$startCssAnimation=function(){var e=this.cursors;for(var t=e.length;t--;)e[t].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout(function(){this.$isAnimating&&r.addCssClass(this.element,"ace_animate-blinking")}.bind(this))},this.$stopCssAnimation=function(){this.$isAnimating=!1,r.removeCssClass(this.element,"ace_animate-blinking")},this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},this.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},this.setSmoothBlinking=function(e){e!=this.smoothBlinking&&(this.smoothBlinking=e,r.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.restartTimer())},this.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},this.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},this.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var e=this.$updateCursors;clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,r.removeCssClass(this.element,"ace_smooth-blinking")),e(!0);if(!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout(function(){this.$isSmoothBlinking&&r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this)));if(r.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},this.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0};e||(e=this.session.selection.getCursor());var n=this.session.documentToScreenPosition(e),r=this.$padding+(this.session.$bidiHandler.isBidiRow(n.row,e.row)?this.session.$bidiHandler.getPosLeft(n.column):n.column*this.config.characterWidth),i=(n.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:r,top:i}},this.isCursorInView=function(e,t){return e.top>
vendor: 8,720 bytes, line 372
372=0&&e.top<t.maxHeight},this.update=function(e){this.config=e;var t=this.session.$selectionMarkers,n=0,i=0;if(t===undefined||t.length===0)t=[{cursor:null}];for(var n=0,s=t.length;n<s;n++){var o=this.getPixelPosition(t[n].cursor,!0);if((o.top>e.height+e.offset||o.top<0)&&n>1)continue;var u=this.cursors[i++]||this.addCursor(),a=u.style;this.drawCursor?this.drawCursor(u,o,e,t[n],this.session):this.isCursorInView(o,e)?(r.setStyle(a,"display","block"),r.translate(u,o.left,o.top),r.setStyle(a,"width",Math.round(e.characterWidth)+"px"),r.setStyle(a,"height",e.lineHeight+"px")):r.setStyle(a,"display","none")}while(this.cursors.length>i)this.removeCursor();var f=this.session.getOverwrite();this.$setOverwrite(f),this.$pixelPos=o,this.restartTimer()},this.drawCursor=null,this.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(i.prototype),t.Cursor=i}),define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./lib/event"),o=e("./lib/event_emitter").EventEmitter,u=32768,a=function(e){this.element=i.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=i.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\u00a0",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,s.addListener(this.element,"scroll",this.onScroll.bind(this)),s.addListener(this.element,"mousedown",s.preventDefault)};(function(){r.implement(this,o),this.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1}}).call(a.prototype);var f=function(e,t){a.call(this,e),this.scrollTop=0,this.scrollHeight=0,t.$scrollbarWidth=this.width=i.scrollbarWidth(e.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px",this.$minWidth=0};r.inherits(f,a),function(){this.classSuffix="-v",this.onScroll=function(){if(!this.skipEvent){this.scrollTop=this.element.scrollTop;if(this.coeff!=1){var e=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-e)/(this.coeff-e)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},this.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},this.setHeight=function(e){this.element.style.height=e+"px"},this.setInnerHeight=this.setScrollHeight=function(e){this.scrollHeight=e,e>u?(this.coeff=u/e,e=u):this.coeff!=1&&(this.coeff=1),this.inner.style.height=e+"px"},this.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=e,this.element.scrollTop=e*this.coeff)}}.call(f.prototype);var l=function(e,t){a.call(this,e),this.scrollLeft=0,this.height=t.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};r.inherits(l,a),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(e){this.element.style.width=e+"px"},this.setInnerWidth=function(e){this.inner.style.width=e+"px"},this.setScrollWidth=function(e){this.inner.style.width=e+"px"},this.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)}}.call(l.prototype),t.ScrollBar=f,t.ScrollBarV=f,t.ScrollBarH=l,t.VScrollBar=f,t.HScrollBar=l}),define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,n){"use strict";var r=e("./lib/event"),i=function(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=t||window;var n=this;this._flush=function(e){n.pending=!1;var t=n.changes;t&&(r.blockIdle(100),n.changes=0,n.onRender(t));if(n.changes){if(n.$recursionLimit--<0)return;n.schedule()}else n.$recursionLimit=2}};(function(){this.schedule=function(e){this.changes=this.changes|e,this.changes&&!this.pending&&(r.nextFrame(this._flush),this.pending=!0)},this.clear=function(e){var t=this.changes;return this.changes=0,t}}).call(i.prototype),t.RenderLoop=i}),define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/dom"),s=e("../lib/lang"),o=e("../lib/event"),u=e("../lib/useragent"),a=e("../lib/event_emitter").EventEmitter,f=256,l=typeof ResizeObserver=="function",c=200,h=t.FontMetrics=function(e){this.el=i.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=i.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=i.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),this.$measureNode.textContent=s.stringRepeat("X",f),this.$characterSize={width:0,height:0},l?this.$addObserver():this.checkForSizeChanges()};(function(){r.implement(this,a),this.$characterSize={width:0,height:0},this.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="0px",e.visibility="hidden",e.position="absolute",e.whiteSpace="pre",u.isIE<8?e["font-family"]="inherit":e.font="inherit",e.overflow=t?"hidden":"visible"},this.checkForSizeChanges=function(e){e===undefined&&(e=this.$measureSizes());if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},this.$addObserver=function(){var e=this;this.$observer=new window.ResizeObserver(function(t){e.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=o.onIdle(function t(){e.checkForSizeChanges(),o.onIdle(t,500)},500)},this.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},this.$measureSizes=function(e){var t={height:(e||this.$measureNode).clientHeight,width:(e||this.$measureNode).clientWidth/f};return t.width===0||t.height===0?null:t},this.$measureCharWidth=function(e){this.$main.textContent=s.stringRepeat(e,f);var t=this.$main.getBoundingClientRect();return t.width/f},this.getCharacterWidth=function(e){var t=this.charSizes[e];return t===undefined&&(t=this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},this.$getZoom=function e(t){return!t||!t.parentElement?1:(window.getComputedStyle(t).zoom||1)*e(t.parentElement)},this.$initTransformMeasureNodes=function(){var e=function(e,t){return["div",{style:"position: absolute;top:"+e+"px;left:"+t+"px;"}]};this.els=i.buildDom([e(0,0),e(c,0),e(0,c),e(c,c)],this.el)},this.transformCoordinates=function(e,t){function r(e,t,n){var r=e[1]*t[0]-e[0]*t[1];return[(-t[1]*n[0]+t[0]*n[1])/r,(+e[1]*n[0]-e[0]*n[1])/r]}function i(e,t){return[e[0]-t[0],e[1]-t[1]]}function s(e,t){return[e[0]+t[0],e[1]+t[1]]}function o(e,t){return[e*t[0],e*t[1]]}function u(e){var t=e.getBoundingClientRect();return[t.left,t.top]}if(e){var n=this.$getZoom(this.el);e=o(1/n,e)}this.els||this.$initTransformMeasureNodes();var a=u(this.els[0]),f=u(this.els[1]),l=u(this.els[2]),h=u(this.els[3]),p=r(i(h,f),i(h,l),i(s(f,l),s(h,a))),d=o(1+p[0],i(f,a)),v=o(1+p[1],i(l,a));if(t){var m=t,g=p[0]*m[0]/c+p[1]*m[1]/c+1,y=s(o(m[0],d),o(m[1],v));return s(o(1/g/c,y),a)}var b=i(e,a),w=r(i(d,o(p[0],b)),i(v,o(p[1],b)),b);return o(c,w)}}).call(h.prototype)}),define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/lib/useragent"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./config"),o=e("./layer/gutter").Gutter,u=e("./layer/marker").Marker,a=e("./layer/text").Text,f
372=e("./layer/cursor").Cursor,l=e("./scrollbar").HScrollBar,c=e("./scrollbar").VScrollBar,h=e("./renderloop").RenderLoop,p=e("./layer/font_metrics").FontMetrics,d=e("./lib/event_emitter").EventEmitter,v='.ace_br1 {border-top-left-radius : 3px;}.ace_br2 {border-top-right-radius : 3px;}.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}.ace_br4 {border-bottom-right-radius: 3px;}.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}.ace_br8 {border-bottom-left-radius : 3px;}.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_editor {position: relative;overflow: hidden;padding: 0;font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;direction: ltr;text-align: left;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}.ace_scroller {position: absolute;overflow: hidden;top: 0;bottom: 0;background-color: inherit;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;cursor: text;}.ace_content {position: absolute;box-sizing: border-box;min-width: 100%;contain: style size layout;font-variant-ligatures: no-common-ligatures
vendor: 4,221 bytes, line 372
372;}.ace_dragging .ace_scroller:before{position: absolute;top: 0;left: 0;right: 0;bottom: 0;content: \'\';background: rgba(250, 250, 250, 0.01);z-index: 1000;}.ace_dragging.ace_dark .ace_scroller:before{background: rgba(0, 0, 0, 0.01);}.ace_selecting, .ace_selecting * {cursor: text !important;}.ace_gutter {position: absolute;overflow : hidden;width: auto;top: 0;bottom: 0;left: 0;cursor: default;z-index: 4;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;contain: style size layout;}.ace_gutter-active-line {position: absolute;left: 0;right: 0;}.ace_scroller.ace_scroll-left {box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;}.ace_gutter-cell {position: absolute;top: 0;left: 0;right: 0;padding-left: 19px;padding-right: 6px;background-repeat: no-repeat;}.ace_gutter-cell.ace_error {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: 2px center;}.ace_gutter-cell.ace_warning {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");background-position: 2px center;}.ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");background-position: 2px center;}.ace_dark .ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");}.ace_scrollbar {contain: strict;position: absolute;right: 0;bottom: 0;z-index: 6;}.ace_scrollbar-inner {position: absolute;cursor: text;left: 0;top: 0;}.ace_scrollbar-v{overflow-x: hidden;overflow-y: scroll;top: 0;}.ace_scrollbar-h {overflow-x: scroll;overflow-y: hidden;left: 0;}.ace_print-margin {position: absolute;height: 100%;}.ace_text-input {position: absolute;z-index: 0;width: 0.5em;height: 1em;opacity: 0;background: transparent;-moz-appearance: none;appearance: none;border: none;resize: none;outline: none;overflow: hidden;font: inherit;padding: 0 1px;margin: 0 -1px;contain: strict;-ms-user-select: text;-moz-user-select: text;-webkit-user-select: text;user-select: text;white-space: pre!important;}.ace_text-input.ace_composition {background: transparent;color: inherit;z-index: 1000;opacity: 1;}.ace_composition_placeholder { color: transparent }.ace_composition_marker { border-bottom: 1px solid;position: absolute;border-radius: 0;margin-top: 1px;}[ace_nocontext=true] {transform: none!important;filter: none!important;
372clip-path: none!important;mask : none!important;contain: none!important;perspective: none!important;mix-blend-mode: initial!important;z-index: auto;}.ace_layer {z-index: 1;position: absolute;overflow: hidden;word-wrap: normal;white-space: pre;height: 100%;width: 100%;box-sizing: border-box;pointer-events: none;}.ace_gutter-layer {position: relative;width: auto;text-align: right;pointer-events: auto;height: 1000000px;contain: style size layout;}.ace_text-layer {font: inherit !important;position: absolute;height: 1000000px;width: 1000000px;contain: style size layout;}.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {contain: style size layout;position: absolute;top: 0;left: 0;right: 0;}.ace_hidpi .ace_text-layer,.ace_hidpi .ace_gutter-layer,.ace_hidpi .ace_content,.ace_hidpi .ace_gutter {contain: strict;will-change: transform;}.ace_hidpi .ace_text-layer > .ace_line, .ace_hidpi .ace_text-layer > .ace_line_group {contain: strict;}.ace_cjk {display: inline-block;text-align: center;}.ace_cursor-layer {z-index: 4;}.ace_cursor {z-index: 4;position: absolute;box-sizing: border-box;border-left: 2px solid;transform: translatez(0);}.ace_multiselect .ace_cursor {border-left-width: 1px;}.ace_slim-cursors .ace_cursor {border-left-width: 1px;}.ace_overwrite-cursors .ace_cursor {border-left-width: 0;border-bottom: 1px solid;}.ace_hidden-cursors .ace_cursor {opacity: 0.2;}.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {opacity: 0;}.ace_smooth-blinking .ace_cursor {transition: opacity 0.18s;}.ace_animate-blinking .ace_cursor {animation-duration: 1000ms;animation-timing-function: step-end;animation-name: blink-ace-animate;animation-iteration-count: infinite;}.ace_animate-blinking.ace_smooth-blinking .ace_cursor {animation-duration: 1000ms;animation-timing-function: ease-in-out;animation-name: blink-ace-animate-smooth;}@keyframes blink-ace-animate {from, to { opacity: 1; }60% { opacity: 0; }}@keyframes blink-ace-animate-smooth {from, to { opacity: 1; }45% { opacity: 1; }60% { opacity: 0; }85% { opacity: 0; }}.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {position: absolute;z-index: 3;}.ace_marker-layer .ace_selection {position: absolute;z-index: 5;}.ace_marker-layer .ace_bracket {position: absolute;z-index: 6;}.ace_marker-layer .ace_error_bracket {position: absolute;border-bottom: 1px solid #DE5555;border-radius: 0;}.ace_marker-layer .ace_active-line {position: absolute;z-index: 2;}.ace_marker-layer .ace_selected-word {position: absolute;z-index: 4;box-sizing: border-box;}.ace_line .ace_fold {box-sizing: border-box;display: inline-block;height: 11px;margin-top: -2px;vertical-align: middle;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");background-repeat: no-repeat, repeat-x;background-position: center center, top left;color: transparent;border: 1px solid black;border-radius: 2px;cursor: pointer;pointer-events: auto;}.ace_dark .ace_fold {}.ace_fold:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");}.ace_tooltip {background-color: #FFF;background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));border: 1px solid gray;border-radius: 1px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);color: black;max-width: 100%;padding: 3px 4px;position: fixed;z-index: 999999;box-sizing: border-box;
372cursor: default;white-space: pre;word-wrap: break-word;line-height: normal;font-style: normal;font-weight: normal;letter-spacing: normal;pointer-events: none;}.ace_folding-enabled > .ace_gutter-cell {padding-right: 13px;}.ace_fold-widget {box-sizing: border-box;margin: 0 -12px 0 1px;display: none;width: 11px;vertical-align: top;background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: center;border-radius: 3px;border: 1px solid transparent;cursor: pointer;}.ace_folding-enabled .ace_fold-widget {display: inline-block; }.ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");}.ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");}.ace_fold-widget:hover {border: 1px solid rgba(0, 0, 0, 0.3);background-color: rgba(255, 255, 255, 0.2);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);}.ace_fold-widget:active {border: 1px solid rgba(0, 0, 0, 0.4);background-color: rgba(0, 0, 0, 0.05);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);}.ace_dark .ace_fold-widget {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");}.ace_dark .ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget:hover {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);background-color: rgba(255, 255, 255, 0.1);}.ace_dark .ace_fold-widget:active {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);}.ace_inline_button {border: 1px solid lightgray;display: inline-block;margin: -1px 8px;padding: 0 5px;pointer-events: auto;cursor: pointer;}.ace_inline_button:hover {border-color: gray;background: rgba(200,200,200,0.2);display: inline-block;pointer-events: auto;}.ace_fold-widget.ace_invalid {background-color: #FFB4B4;border-color: #DE5555;}.ace_fade-fold-widgets .ace_fold-widget {transition: opacity 0.4s ease 0.05s;opacity: 0;}.ace_fade-fold-widgets:hover .ace_fold-widget {transition: opacity 0.05s ease 0.05s;opacity:1;}.ace_underline {text-decoration: underline;}.ace_bold {font-weight: bold;}.ace_nobold .ace_bold {font-weight: normal;}.ace_italic {font-style: italic;}.ace_error-marker {background-color: rgba(255, 0, 0,0.2);position: absolute;z-index: 9;}.ace_highlight-marker {background-color: rgba(255, 255, 0,0.2);position: absolute;z-index: 8;}.ace_mobile-menu {position: absolute;line-height: 1.5;border-radius: 4px;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;background: white;box-shadow: 1px 3px 2px grey;border: 1px solid #dcdcdc;color: black;}.ace_dark > .ace_mobile-menu {background: #333;color: #ccc;box-shadow: 1px 3px 2px grey;border: 1px solid #444;}.ace_mobile-button {padding: 2px;cursor: pointer;overflow: hidden;}.ace_mobile-button:hover {background-color: #eee;opacity:1;}.ace_mobile-button:active {background-color: #ddd;}.ace_placeholder {font-family: arial;transform: scale(0.9);transform-origin: left;white-space: pre;opacity: 0.7;margin: 0 10px;}',m=e("./lib/useragent"),g=m.isIE;i.importCssString(v,"ace_editor.css",!1);var y=function(e,t){var n=this;this.container=e||i.createElement("div"),i.addCssClass(this.container,"ace_editor"),i.HI_DPI&&i.addCssClass(this.container,"ace_hidpi"),this.setTheme(t),s.get("useStrictCSP")==null&&s.set("useStrictCSP",!1),this.$gutter=i.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden",!0),this.scroller=i.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=i.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new o(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new u(this.content);var r=this.$textLayer=new a(this.content);this.canvas=r.element,this.$markerFront=new u(this.content),this.$curs
372orLayer=new f(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new c(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.on("scroll",function(e){n.$scrollAnimation||n.session.setScrollTop(e.data-n.scrollMargin.top)}),this.scrollBarH.on("scroll",function(e){n.$scrollAnimation||n.session.setScrollLeft(e.data-n.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new p(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(e){n.updateCharacterSize(),n.onResize(!0,n.gutterWidth,n.$size.width,n.$size.height),n._signal("changeCharacterSize",e)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!m.isIOS,this.$loop=new h(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),s.resetOptions(this),s._signal("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,r.implement(this,d),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin(),i.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},this.setSession=function(e){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=e,e&&this.scrollMargin.top&&e.getScrollTop()<=0&&e.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(e),this.$markerBack.setSession(e),this.$markerFront.setSession(e),this.$gutterLayer.setSession(e),this.$textLayer.setSession(e);if(!e)return;this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode)},this.updateLines=function(e,t,n){t===undefined&&(t=Infinity),this.$changedLines?(this.$changedLines.firstRow>e&&(this.$changedLines.firstRow=e),this.$changedLines.lastRow<t&&(this.$changedLines.lastRow=t)):this.$changedLines={firstRow:e,lastRow:t};if(this.$changedLines.lastRow<this.layerConfig.firstRow){if(!n)return;this.$changedLines.lastRow=this.layerConfig.lastRow}if(this.$changedLines.firstRow>this.layerConfig.lastRow)return;this.$loop.schedule(this.CHANGE_LINES)},this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(e,t,n,r){if(this.resizing>2)return;this.resizing>0?this.resizing++:this.resizing=e?1:0;var i=this.container;r||(r=i.clientHeight||i.scrollHeight),n||(n=i.clientWidth||i.scrollWidth);var s=this.$updateCachedSize(e,t,n,r);if(!this.$size.scrollerHeight||!n&&!r)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(s|this.$changes,!0):this.$loop.schedule(s|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null},this.$updateCachedSize=function(e,t,n,r){r-=this.$extraHeight||0;var s=0,o=this.$size,u={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};r&&(e||o.height!=r)&&(o.height=r,s|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",s|=this.CHANGE_SCROLL);if(n&&(e||o.width!=n)){s|=this.CHANGE_SIZE,o.width=n,t==null&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,i.setStyle(this.scrollBarH.element.style,"left",t+"px"),i.setStyle(this.scroller.style,"left",t+this.margin.left+"px"),o.scrollerWidth=Math.max(0,n-t-this.scrollBarV.getWidth()-this.margin.h),i.setStyle(this.$gutter.style,"left",this.margin.left+"px");var a=this.scrollBarV.getWidth()+"px";i.setStyle(this.scrollBarH.element.style,"right",a),i.setStyle(this.scroller.style,"right",a),i.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight());if(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)s|=this.CHANGE_FULL}return o.$dirty=!n||!r,s&&this._signal("resize",u),s},this.onGutterResize=function(e){var t=this.$showGutter?e:0;t!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,t,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},this.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-this.$padding*2,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(e){this.setOption("showInvisibles",e),this.session.$bidiHandler.setShowInvisibles(e)}
372,this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},this.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(e){return this.setOption("showGutter",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updatePrintMargin=function(){if(!this.$showPrintMargin&&!this.$printMarginEl)return;if(!this.$printMarginEl){var e=i.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=i.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.scroller},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$isMousePressed)return;var e=this.textarea.style,t=this.$composition;if(!this.$keepTextAreaAtCursor&&!t){i.translate(this.textarea,-100,0);return}var n=this.$cursorLayer.$pixelPos;if(!n)return;t&&t.markerRange&&(n=this.$cursorLayer.getPixelPosition(t.markerRange.start,!0));var r=this.layerConfig,s=n.top,o=n.left;s-=r.offset;var u=t&&t.useTextareaForIME?this.lineHeight:g?0:1;if(s<0||s>r.height-u){i.translate(this.textarea,0,0);return}var a=1,f=this.$size.height-u;if(!t)s+=this.lineHeight;else if(t.useTextareaForIME){var l=this.textarea.value;a=this.characterWidth*this.session.$getStringScreenWidth(l)[0]}else s+=this.lineHeight+2;o-=this.scrollLeft,o>this.$size.scrollerWidth-a&&(o=this.$size.scrollerWidth-a),o+=this.gutterWidth+this.margin.left,i.setStyle(e,"height",u+"px"),i.setStyle(e,"width",a+"px"),i.translate(this.textarea,Math.min(o,this.$size.scrollerWidth-a),Math.min(s,f))},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},this.getLastFullyVisibleRow=function(){var e=this.layerConfig,t=e.lastRow,n=this.session.documentToScreenRow(t,0)*e.lineHeight;return n-this.session.getScrollTop()>e.height-e.lineHeight?t-1:t},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(e,t,n,r){var i=this.scrollMargin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,i.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-i.top),this.updateFull()},this.setMargin=function(e,t,n,r){var i=this.margin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},this.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},this.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(e,t){this.$changes&&(e|=this.$changes,this.$changes=0);if(!this.session||!this.container.offsetWidth||this.$frozen||!e&&!t){this.$changes|=e;return}if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",e),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var n=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){e|=this.$computeLayerConfig()|this.$loop.clear();if(n.firstRow!=this.layerConfig.firstRow&&n.firstRowScreen==this.layerConfig.firstRowScreen){var r=this.scrollTop+(n.firstRow-this.layerConfig.firstRow)*this.lineHeight;r>0&&(this.scrollTop=r,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig()|this.$loop.clear())}n=this.layerConfig,this.$updateScrollBarV(),e&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),i.translate(this.content,-this.scrollLeft,-n.offset);var s=n.width+2*this.$padding+"px",o=n.minHeight+"px";i.setStyle(this.content.style,"width",s),i.setStyle(this.content.style,"height",o)}e&this.CHANGE_H_SCROLL&&(i.translate(this.content,-this.scrollLeft,-n.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left");if(e&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$curs
372orLayer.update(n),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}if(e&this.CHANGE_SCROLL){this.$changedLines=null,e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(n):this.$textLayer.scrollLines(n),this.$showGutter&&(e&this.CHANGE_GUTTER||e&this.CHANGE_LINES?this.$gutterLayer.update(n):this.$gutterLayer.scrollLines(n)),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}e&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n)):e&this.CHANGE_LINES?(this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(n):e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER?this.$showGutter&&this.$gutterLayer.update(n):e&this.CHANGE_CURSOR&&this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(n),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(n),this.$moveTextAreaToCursor()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(n),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(n),this._signal("afterRender",e)},this.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,n=Math.min(t,Math.max((this.$minLines||1)*this.lineHeight,e))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(n+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&n>this.$maxPixelHeight&&(n=this.$maxPixelHeight);var r=n<=2*this.lineHeight,i=!r&&e>t;if(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||i!=this.$vScroll){i!=this.$vScroll&&(this.$vScroll=i,this.scrollBarV.setVisible(i));var s=this.container.clientWidth;this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,s,n),this.desiredHeight=n,this._signal("autosize")}},this.$computeLayerConfig=function(){var e=this.session,t=this.$size,n=t.height<=2*this.lineHeight,r=this.session.getScreenLength(),i=r*this.lineHeight,s=this.$getLongestLine(),o=!n&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-s-2*this.$padding<0),u=this.$horizScroll!==o;u&&(this.$horizScroll=o,this.scrollBarH.setVisible(o));var a=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var f=t.scrollerHeight+this.lineHeight,l=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;i+=l;var c=this.scrollMargin;this.session.setScrollTop(Math.max(-c.top,Math.min(this.scrollTop,i-t.scrollerHeight+c.bottom))),this.session.setScrollLeft(Math.max(-c.left,Math.min(this.scrollLeft,s+2*this.$padding-t.scrollerWidth+c.right)));var h=!n&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-i+l<0||this.scrollTop>c.top),p=a!==h;p&&(this.$vScroll=h,this.scrollBarV.setVisible(h));var d=this.scrollTop%this.lineHeight,v=Math.ceil(f/this.lineHeight)-1,m=Math.max(0,Math.round((this.scrollTop-d)/this.lineHeight)),g=m+v,y,b,w=this.lineHeight;m=e.screenToDocumentRow(m,0);var E=e.getFoldLine(m);E&&(m=E.start.row),y=e.documentToScreenRow(m,0),b=e.getRowLength(m)*w,g=Math.min(e.screenToDocumentRow(g,0),e.getLength()-1),f=t.scrollerHeight+e.getRowLength(g)*w+b,d=this.scrollTop-y*w;var S=0;if(this.layerConfig.width!=s||u)S=this.CHANGE_H_SCROLL;if(u||p)S|=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),p&&(s=this.$getLongestLine());return this.layerConfig={width:s,padding:this.$padding,firstRow:m,firstRowScreen:y,lastRow:g,lineHeight:w,characterWidth:this.characterWidth,minHeight:f,maxHeight:i,offset:d,gutterOffset:w?Math.max(0,Math.ceil((d+t.height-t.scrollerHeight)/w)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(s-this.$padding),S},this.$updateLines=function(){if(!this.$changedLines)return;var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var n=this.layerConfig;if(e>n.lastRow+1)return;if(t<n.firstRow)return;if(t===Infinity){this.$showGutter&&this.$gutterLayer.update(n),this.$textLayer.update(n);return}return this.$textLayer.updateLines(n,e,t),!0},this.$getLongestLine=function(){var e=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(e+=1),this.$textLayer&&e>this.$textLayer.MAX_LINE_LENGTH&&(e=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},this.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},this.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},this.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},this.updateBreakpoints=function(e){this.$loop.schedule(this.CHANGE_GUTTER)},this.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},this.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)}
372,this.hideCursor=function(){this.$cursorLayer.hideCursor()},this.showCursor=function(){this.$cursorLayer.showCursor()},this.scrollSelectionIntoView=function(e,t,n){this.scrollCursorIntoView(e,n),this.scrollCursorIntoView(t,n)},this.scrollCursorIntoView=function(e,t,n){if(this.$size.scrollerHeight===0)return;var r=this.$cursorLayer.getPixelPosition(e),i=r.left,s=r.top,o=n&&n.top||0,u=n&&n.bottom||0,a=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;a+o>s?(t&&a+o>s+this.lineHeight&&(s-=t*this.$size.scrollerHeight),s===0&&(s=-this.scrollMargin.top),this.session.setScrollTop(s)):a+this.$size.scrollerHeight-u<s+this.lineHeight&&(t&&a+this.$size.scrollerHeight-u<s-this.lineHeight&&(s+=t*this.$size.scrollerHeight),this.session.setScrollTop(s+this.lineHeight+u-this.$size.scrollerHeight));var f=this.scrollLeft;f>i?(i<this.$padding+2*this.layerConfig.characterWidth&&(i=-this.scrollMargin.left),this.session.setScrollLeft(i)):f+this.$size.scrollerWidth<i+this.characterWidth?this.session.setScrollLeft(Math.round(i+this.characterWidth-this.$size.scrollerWidth)):f<=this.$padding&&i-f<this.characterWidth&&this.session.setScrollLeft(0)}
372,this.getScrollTop=function(){return this.session.getScrollTop()},this.getScrollLeft=function(){return this.session.getScrollLeft()},this.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},this.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},this.scrollToRow=function(e){this.session.setScrollTop(e*this.lineHeight)},this.alignCursor=function(e,t){typeof e=="number"&&(e={row:e,column:0});var n=this.$cursorLayer.getPixelPosition(e),r=this.$size.scrollerHeight-this.lineHeight,i=n.top-r*(t||0);return this.session.setScrollTop(i),i},this.STEPS=8,this.$calcSteps=function(e,t){var n=0,r=this.STEPS,i=[],s=function(e,t,n){return n*(Math.pow(e-1,3)+1)+t};for(n=0;n<r;++n)i.push(s(n/this.STEPS,e,t-e));return i},this.scrollToLine=function(e,t,n,r){var i=this.$cursorLayer.getPixelPosition({row:e,column:0}),s=i.top;t&&(s-=this.$size.scrollerHeight/2);var o=this.scrollTop;this.session.setScrollTop(s),n!==!1&&this.animateScrolling(o,r)},this.animateScrolling=function(e,t){var n=this.scrollTop;if(!this.$animatedScroll)return;var r=this;if(e==n)return;if(this.$scrollAnimation){var i=this.$scrollAnimation.steps;if(i.length){e=i[0];if(e==n)return}}var s=r.$calcSteps(e,n);this.$scrollAnimation={from:e,to:n,steps:s},clearInterval(this.$timer),r.session.setScrollTop(s.shift()),r.session.$scrollTop=n,this.$timer=setInterval(function(){if(!r.session)return clearInterval(r.$timer);s.length?(r.session.setScrollTop(s.shift()),r.session.$scrollTop=n):n!=null?(r.session.$scrollTop=-1,r.session.setScrollTop(n),n=null):(r.$timer=clearInterval(r.$timer),r.$scrollAnimation=null,t&&t())},10)},this.scrollToY=function(e){this.scrollTop!==e&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=e)},this.scrollToX=function(e){this.scrollLeft!==e&&(this.scrollLeft=e),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(e,t){this.session.setScrollTop(t),this.session.setScrollLeft(e)},this.scrollBy=function(e,t){t&&this.session.setScrollTop(this.session.getScrollTop()+t),e&&this.session.setScrollLeft(this.session.getScrollLeft()+e)},this.isScrollableBy=function(e,t){if(t<0&&this.session.getScrollTop()>=1-this.scrollMargin.top)return!0;if(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom)return!0;if(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left)return!0;if(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},this.pixelToScreenCoordinates=function(e,t){var n;if(this.$hasCssTransforms){n={top:0,left:0};var r=this.$fontMetrics.transformCoordinates([e,t]);e=r[1]-this.gutterWidth-this.margin.left,t=r[0]}else n=this.scroller.getBoundingClientRect();var i=e+this.scrollLeft-n.left-this.$padding,s=i/this.characterWidth,o=Math.floor((t+this.scrollTop-n.top)/this.lineHeight),u=this.$blockCursor?Math.floor(s):Math.round(s);return{row:o,column:u,side:s-u>0?1:-1,offsetX:i}},this.screenToTextCoordinates=function(e,t){var n;if(this.$hasCssTransforms){n={top:0,left:0};var r=this.$fontMetrics.transformCoordinates([e,t]);e=r[1]-this.gutterWidth-this.margin.left,t=r[0]}else n=this.scroller.getBoundingClientRect();var i=e+this.scrollLeft-n.left-this.$padding,s=i/this.characterWidth,o=this.$blockCursor?Math.floor(s):Math.round(s),u=Math.floor((t+this.scrollTop-n.top)/this.lineHeight);return this.session.screenToDocumentPosition(u,Math.max(o,0),i)},this.textToScreenCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),r=this.session.documentToScreenPosition(e,t),i=this.$padding+(this.session.$bidiHandler.isBidiRow(r.row,e)?this.session.$bidiHandler.getPosLeft(r.column):Math.round(r.column*this.characterWidth)),s=r.row*this.lineHeight;return{pageX:n.left+i-this.scrollLeft,pageY:n.top+s-this.scrollTop}},this.visualizeFocus=function(){i.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){i.removeCssClass(this.container,"ace_focus")},this.showComposition=function(e){this.$composition=e,e.cssText||(e.cssText=this.textarea.style.cssText),e.useTextareaForIME==undefined&&(e.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(i.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$curs
372orLayer.element.style.display="none"):e.markerId=this.session.addMarker(e.markerRange,"ace_composition_marker","text")},this.setCompositionText=function(e){var t=this.session.selection.cursor;this.addToken(e,"composition_placeholder",t.row,t.column),this.$moveTextAreaToCursor()},this.hideComposition=function(){if(!this.$composition)return;this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),i.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var e=this.session.selection.cursor;this.removeExtraToken(e.row,e.column),this.$composition=null,this.$cursorLayer.element.style.display=""},this.addToken=function(e,t,n,r){var i=this.session;i.bgTokenizer.lines[n]=null;var s={type:t,value:e},o=i.getTokens(n);if(r==null)o.push(s);else{var u=0;for(var a=0;a<o.length;a++){var f=o[a];u+=f.value.length;if(r<=u){var l=f.value.length-(u-r),c=f.value.slice(0,l),h=f.value.slice(l);o.splice(a,1,{type:f.type,value:c},s,{type:f.type,value:h});break}}}this.updateLines(n,n)},this.removeExtraToken=function(e,t){this.updateLines(e,e)},this.setTheme=function(e,t){function o(r){if(n.$themeId!=e)return t&&t();if(!r||!r.cssClass)throw new Error("couldn't load module "+e+" or it didn't call define");r.$id&&(n.$themeId=r.$id),i.importCssString(r.cssText,r.cssClass,n.container),n.theme&&i.removeCssClass(n.container,n.theme.cssClass);var s="padding"in r?r.padding:"padding"in(n.theme||{})?4:n.$padding;n.$padding&&s!=n.$padding&&n.setPadding(s),n.$theme=r.cssClass,n.theme=r,i.addCssClass(n.container,r.cssClass),i.setCssClass(n.container,"ace_dark",r.isDark),n.$size&&(n.$size.width=0,n.$updateSizeAsync()),n._dispatchEvent("themeLoaded",{theme:r}),t&&t()}var n=this;this.$themeId=e,n._dispatchEvent("themeChange",{theme:e});if(!e||typeof e=="string"){var r=e||this.$options.theme.initialValue;s.loadModule(["theme",r],o)}else o(e)},this.getTheme=function(){return this.$themeId},this.setStyle=function(e,t){i.setCssClass(this.container,e,t!==!1)},this.unsetStyle=function(e){i.removeCssClass(this.container,e)},this.setCursorStyle=function(e){i.setStyle(this.scroller.style,"cursor",e)},this.setMouseCursor=function(e){i.setStyle(this.scroller.style,"cursor",e)},this.attachToShadowRoot=function(){i.importCssString(v,"ace_editor.css",this.container)},this.destroy=function(){this.freeze(),this.$fontMetrics.destroy(),this.$cursorLayer.destroy(),this.removeAllListeners(),this.container.textContent=""}}).call(y.prototype),s.defineOptions(y.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){typeof e=="number"&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(e){i.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(e){this.$gutterLayer.setHighlightGutterLine(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(e){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){typeof e=="number"&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(e){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(e){e=+e||0;if(this.$scrollPastEnd==e)return;this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!m.isMobile&&!m.isIE}}),t.VirtualRenderer=y}
372),define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";function u(e){var t="importScripts('"+i.qualifyURL(e)+"');";try{return new Blob([t],{type:"application/javascript"})}catch(n){var r=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,s=new r;return s.append(t),s.getBlob("application/javascript")}}function a(e){if(typeof Worker=="undefined")return{postMessage:function(){},terminate:function(){}};if(o.get("loadWorkerFromBlob")){var t=u(e),n=window.URL||window.webkitURL,r=n.createObjectURL(t);return new Worker(r)}return new Worker(e)}var r=e("../lib/oop"),i=e("../lib/net"),s=e("../lib/event_emitter").EventEmitter,o=e("../config"),f=function(e){e.postMessage||(e=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=e,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){r.implement(this,s),this.$createWorkerFromOldConfig=function(t,n,r,i,s){e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl);if(o.get("packaged")||!e.toUrl)i=i||o.moduleUrl(n,"worker");else{var u=this.$normalizePath;i=i||u(e.toUrl("ace/worker/worker.js",null,"_"));var f={};t.forEach(function(t){f[t]=u(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=a(i),s&&this.send("importScripts",s),this.$worker.postMessage({init:!0,tlns:f,module:n,classname:r}),this.$worker},this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var n=this.callbacks[t.id];n&&(n(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return i.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,n){if(n){var r=this.callbackId++;this.callbacks[r]=n,t.push(r)}this.send(e,t)},this.emit=function(e,t){try{t.data&&t.data.err&&(t.data.err={message:t.data.err.message,stack:t.data.err.stack,code:t.data.err.code}),this.$worker.postMessage({event:e,data:{data:t.data}})}catch(n){console.error(n.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener)},this.changeListener=function(e){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),e.action=="insert"?this.deltaQueue.push(e.start,e.lines):this.deltaQueue.push(e.start,e.end)},this.$sendDeltaQueue=function(){var e=this.deltaQueue;if(!e)return;this.deltaQueue=null,e.length>50&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e})}}).call(f.prototype);var l=function(e,t,n){var r=null,i=!1,u=Object.create(s),a=[],l=new f({messageBuffer:a,terminate:function(){},postMessage:function(e){a.push(e);if(!r)return;i?setTimeout(c):c()}});l.setEmitSync=function(e){i=e};var c=function(){var e=a.shift();e.command?r[e.command].apply(r,e.args):e.event&&u._signal(e.event,e.data)};return u.postMessage=function(e){l.onMessage({data:e})},u.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},u.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},o.loadModule(["worker",t],function(e){r=new e[n](u);while(a.length)c()}),l};t.UIWorkerClient=l,t.WorkerClient=f,t.createWorker=a}),define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,n){"use strict";var r=e("./range").Range,i=e("./lib/event_emitter").EventEmitter,s=e("./lib/oop"),o=function(e,t,n,r,i,s){var o=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=i,this.othersClass=s,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){o.onCursorChange()})},this.$pos=n;var u=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=u.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)};(function(){s.implement(this,i),this.setup=function(){var e=this,t=this.doc,n=this.session;this.selectionBefore=n.selection.toJSON(),n.selection.inMultiSelectMode&&n.selection.toSingleRange(),this.pos=t.createAnchor(this.$pos.row,this.$pos.column);var i=this.pos;i.$insertRight=!0,i.detach(),i.markerId=n.addMarker(new r(i.row,i.column,i.row,i.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEac
372h(function(n){var r=t.createAnchor(n.row,n.column);r.$insertRight=!0,r.detach(),e.others.push(r)}),n.setUndoSelect(!1)},this.showOtherMarkers=function(){if(this.othersActive)return;var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=e.addMarker(new r(n.row,n.column,n.row,n.column+t.length),t.othersClass,null,!1)})},this.hideOtherMarkers=function(){if(!this.othersActive)return;this.othersActive=!1;for(var e=0;e<this.others.length;e++)this.session.removeMarker(this.others[e].markerId)},this.onUpdate=function(e){if(this.$updating)return this.updateAnchors(e);var t=e;if(t.start.row!==t.end.row)return;if(t.start.row!==this.pos.row)return;this.$updating=!0;var n=e.action==="insert"?t.end.column-t.start.column:t.start.column-t.end.column,i=t.start.column>=this.pos.column&&t.start.column<=this.pos.column+this.length+1,s=t.start.column-this.pos.column;this.updateAnchors(e),i&&(this.length+=n);if(i&&!this.session.$fromUndo)if(e.action==="insert")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.insertMergedLines(a,e.lines)}else if(e.action==="remove")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.remove(new r(a.row,a.column,a.row,a.column-n))}this.$updating=!1,this.updateMarkers()},this.updateAnchors=function(e){this.pos.onChange(e);for(var t=this.others.length;t--;)this.others[t].onChange(e);this.updateMarkers()},this.updateMarkers=function(){if(this.$updating)return;var e=this,t=this.session,n=function(n,i){t.removeMarker(n.markerId),n.markerId=t.addMarker(new r(n.row,n.column,n.row,n.column+e.length),i,null,!1)};n(this.pos,this.mainClass);for(var i=this.others.length;i--;)n(this.others[i],this.othersClass)},this.onCursorChange=function(e){if(this.$updating||!this.session)return;var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))},this.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},this.cancel=function(){if(this.$undoStackDepth===-1)return;var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth;for(var n=0;n<t;n++)e.undo(this.session,!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}}).call(o.prototype),t.PlaceHolder=o}),define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,n){function s(e,t){return e.row==t.row&&e.column==t.column}function o(e){var t=e.domEvent,n=t.altKey,o=t.shiftKey,u=t.ctrlKey,a=e.getAccelKey(),f=e.getButton();u&&i.isMac&&(f=t.button);if(e.editor.inMultiSelectMode&&f==2){e.editor.textInput.onContextMenu(e.domEvent);return}if(!u&&!n&&!a){f===0&&e.editor.inMultiSelectMode&&e.editor.exitMultiSelectMode();return}if(f!==0)return;var l=e.editor,c=l.selection,h=l.inMultiSelectMode,p=e.getDocumentPosition(),d=c.getCursor(),v=e.inSelection()||c.isEmpty()&&s(p,d),m=e.x,g=e.y,y=function(e){m=e.clientX,g=e.clientY},b=l.session,w=l.renderer.pixelToScreenCoordinates(m,g),E=w,S;if(l.$mouseHandler.$enableJumpToDef)u&&n||a&&n?S=o?"block":"add":n&&l.$blockSelectEnabled&&(S="block");else if(a&&!n){S="add";if(!h&&o)return}else n&&l.$blockSelectEnabled&&(S="block");S&&i.isMac&&t.ctrlKey&&l.$mouseHandler.cancelContextMenu();if(S=="add"){if(!h&&v)return;if(!h){var x=c.toOrientedRange();l.addSelectionMarker(x)}var T=c.rangeList.rangeAtPoint(p);l.inVirtualSelectionMode=!0,o&&(T=null,x=c.ranges[0]||x,l.removeSelectionMarker(x)),l.once("mouseup",function(){var e=c.toOrientedRange();T&&e.isEmpty()&&s(T.cursor,e.cursor)?c.substractPoint(e.cursor):(o?c.substractPoint(x.cursor):x&&(l.removeSelectionMarker(x),c.addRange(x)),c.addRange(e)),l.inVirtualSelectionMode=!1})}else if(S=="block"){e.stop(),l.inVirtualSelectionMode=!0;var N,C=[],k=function(){var e=l.renderer.pixelToScreenCoordinates(m,g),t=b.screenToDocumentPosition(e.row,e.column,e.offsetX);if(s(E,e)&&s(t,c.lead))return;E=e,l.selection.moveToPosition(t),l.renderer.scrollCursorIntoView(),l.removeSelectionMarkers(C),C=c.rectangularRangeBlock(E,w),l.$mouseHandler.$clickSelection&&C.length==1&&C[0].isEmpty()&&(C[0]=l.$mouseHandler.$clickSelection.clone()),C.forEac
372h(l.addSelectionMarker,l),l.updateSelectionMarkers()};h&&!a?c.toSingleRange():!h&&a&&(N=c.toOrientedRange(),l.addSelectionMarker(N)),o?w=b.documentToScreenPosition(c.lead):c.moveToPosition(p),E={row:-1,column:-1};var L=function(e){k(),clearInterval(O),l.removeSelectionMarkers(C),C.length||(C=[c.toOrientedRange()]),N&&(l.removeSelectionMarker(N),c.toSingleRange(N));for(var t=0;t<C.length;t++)c.addRange(C[t]);l.inVirtualSelectionMode=!1,l.$mouseHandler.$clickSelection=null},A=k;r.capture(l.container,y,L);var O=setInterval(function(){A()},20);return e.preventDefault()}}var r=e("../lib/event"),i=e("../lib/useragent");t.onMouseDown=o}),define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(e,t,n){t.defaultCommands=[{name:"addCursorAbove",description:"Add cursor above",exec:function(e){e.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",description:"Add cursor below",exec:function(e){e.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorAboveSkipCurrent",description:"Add cursor above (skip current)",exec:function(e){e.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelowSkipCurrent",description:"Add cursor below (skip current)",exec:function(e){e.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreBefore",description:"Select more before",exec:function(e){e.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",description:"Select more after",exec:function(e){e.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",description:"Select next before",exec:function(e){e.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextAfter",description:"Select next after",exec:function(e){e.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"toggleSplitSelectionIntoLines",description:"Split into lines",exec:function(e){e.multiSelect.rangeCount>1?e.multiSelect.joinSelections():e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(e){e.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(e){e.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],t.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var r=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new r(t.multiSelectCommands)}),define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,n){function h(e,t,n){return c.$options.wrap=!0,c.$options.needle=t,c.$options.backwards=n==-1,c.find(e)}function v(e,t){return e.row==t.row&&e.column==t.column}function m(e){if(e.$multiselectOnSessionChange)return;e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$checkMultiselectChange=e.$checkMultiselectChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",o),e.commands.addCommands(f.defaultCommands),g(e)}function g(e){function r(t){n&&(e.renderer.setMouseCursor(""),n=!1)}if(!e.textInput)return;var t=e.textInput.getElement(),n=!1;u.addListener(t,"keydown",function(t){var i=t.keyCode==18&&!(t.ctrlKey||t.shiftKey||t.metaKey);e.$blockSelectEnabled&&i?n||(e.renderer.setMouseCursor("crosshair"),n=!0):n&&r()},e),u.addListener(t,"keyup",r,e),u.addListener(t,"blur",r,e)}var r=e("./range_list").RangeList,i=e("./range").Range,s=e("./selection").Selection,o=e("./mouse/multi_select_handler").onMouseDown,u=e("./lib/event"),a=e("./lib/lang"),f=e("./commands/multi_select_commands");t.commands=f.defaultCommands.concat(f.multiSelectCommands);var l=e("./search").Search,c=new l,p=e("./edit_session").EditSession;
372(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(p.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(!e)return;if(!this.inMultiSelectMode&&this.rangeCount===0){var n=this.toOrientedRange();this.rangeList.add(n),this.rangeList.add(e);if(this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(n),this.$onAddRange(n)}e.cursor||(e.cursor=e.end);var r=this.rangeList.add(e);return this.$onAddRange(e),r.length&&this.$onRemoveRange(r),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length&&this.$onRemoveRange(e)},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){this.rangeCount=this.rangeList.ranges.length;if(this.rangeCount==1&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var n=e.length;n--;){var r=this.ranges.indexOf(e[n]);this.ranges.splice(r,1)}this._signal("removeRange",{ranges:e}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),t=t||this.ranges[0],t&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){if(this.rangeList)return;this.rangeList=new r,this.ranges=[],this.rangeCount=0},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){var e=this.ranges.length?this.ranges:[this.getRange()],t=[];for(var n=0;n<e.length;n++){var r=e[n],s=r.start.row,o=r.end.row;if(s===o)t.push(r.clone());else{t.push(new i(s,r.start.column,s,this.session.getLine(s).length));while(++s<o)t.push(this.getLineRange(s,!0));t.push(new i(o,0,o,r.end.column))}n==0&&!this.isBackwards()&&(t=t.reverse())}this.toSingleRange();for(var n=t.length;n--;)this.addRange(t[n])},this.joinSelections=function(){var e=this.rangeList.ranges,t=e[e.length-1],n=i.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)},this.toggleBlockSelection=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],n=i.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var r=this.session.documentToScreenPosition(this.cursor),s=this.session.documentToScreenPosition(this.anchor),o=this.rectangularRangeBlock(r,s);o.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,n){var r=[],s=e.column<t.column;if(s)var o=e.column,u=t.column,a=e.offsetX,f=t.offsetX;else var o=t.column,u=e.column,a=t.offsetX,f=e.offsetX;var l=e.row<t.row;if(l)var c=e.row,h=t.row;else var c=t.row,h=e.row;o<0&&(o=0),c<0&&(c=0),c==h&&(n=!0);var p;for(var d=c;d<=h;d++){var m=i.fromPoints(this.session.screenToDocumentPosition(d,o,a),this.session.screenToDocumentPosition(d,u,f));if(m.isEmpty()){if(p&&v(m.end,p))break;p=m.end}m.cursor=s?m.start:m.end,r.push(m)}l&&r.reverse();if(!n){var g=r.length-1;while(r[g].isEmpty()&&g>0)g--;if(g>0){var y=0;while(r[y].isEmpty())y++}for(var b=g;b>=y;b--)r[b].isEmpty()&&r.splice(b,1)}return r}}.call(s.prototype);var d=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(!e.marker)return;this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);t!=-1&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length},this.removeSelectionMarkers=function(e){var t=this.session.$selectionMarkers;for(var n=e.length;n--;){var r=e[n];if(!r.marker)continue;this.session.removeMarker(r.marker);var i=t.indexOf(r);i!=-1&&t.splice(i,1)}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(
372),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){if(this.inMultiSelectMode)return;this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(f.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onSingleSelect=function(e){if(this.session.multiSelect.inVirtualMode)return;this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(f.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection")},this.$onMultiSelectExec=function(e){var t=e.command,n=e.editor;if(!n.multiSelect)return;if(!t.multiSelectAction){var r=t.exec(n,e.args||{});n.multiSelect.addRange(n.multiSelect.toOrientedRange()),n.multiSelect.mergeOverlappingRanges()}else t.multiSelectAction=="forEach"?r=n.forEachSelection(t,e.args):t.multiSelectAction=="forEachLine"?r=n.forEachSelection(t,e.args,!0):t.multiSelectAction=="single"?(n.exitMultiSelectMode(),r=t.exec(n,e.args||{})):r=t.multiSelectAction(n,e.args||{});return r},this.forEachSelection=function(e,t,n){if(this.inVirtualSelectionMode)return;var r=n&&n.keepOrder,i=n==1||n&&n.$byLines,o=this.session,u=this.selection,a=u.rangeList,f=(r?u:a).ranges,l;if(!f.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var c=u._eventRegistry;u._eventRegistry={};var h=new s(o);this.inVirtualSelectionMode=!0;for(var p=f.length;p--;){if(i)while(p>0&&f[p].start.row==f[p-1].end.row)p--;h.fromOrientedRange(f[p]),h.index=p,this.selection=o.selection=h;var d=e.exec?e.exec(this,t||{}):e(this,t||{});!l&&d!==undefined&&(l=d),h.toOrientedRange(f[p])}h.detach(),this.selection=o.selection=u,this.inVirtualSelectionMode=!1,u._eventRegistry=c,u.mergeOverlappingRanges(),u.ranges[0]&&u.fromOrientedRange(u.ranges[0]);var v=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),v&&v.from==v.to&&this.renderer.animateScrolling(v.from),l},this.exitMultiSelectMode=function(){if(!this.inMultiSelectMode||this.inVirtualSelectionMode)return;this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var t=this.multiSelect.rangeList.ranges,n=[];for(var r=0;r<t.length;r++)n.push(this.session.getTextRange(t[r]));var i=this.session.getDocument().getNewLineCharacter();e=n.join(i),e.length==(n.length-1)*i.length&&(e="")}else this.selection.isEmpty()||(e=this.session.getTextRange(this.getSelectionRange()));return e},this.$checkMultiselectChange=function(e,t){if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var n=this.multiSelect.ranges[0];if(this.multiSelect.isEmpty()&&t==this.multiSelect.anchor)return;var r=t==this.multiSelect.anchor?n.cursor==n.start?n.end:n.start:n.cursor;r.row!=t.row||this.session.$clipPositionToDocument(r.row,r.column).column!=t.column?this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange()):this.multiSelect.mergeOverlappingRanges()}},this.findAll=function(e,t,n){t=t||{},t.needle=e||t.needle;if(t.needle==undefined){var r=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();t.needle=this.session.getTextRange(r)}this.$search.set(t);var i=this.$search.findAll(this.session);if(!i.length)return 0;var s=this.multiSelect;n||s.toSingleRange(i[0]);for(var o=i.length;o--;)s.addRange(i[o],!0);return r&&s.rangeList.rangeAtPoint(r.start)&&s.addRange(r,!0),i.length},this.selectMoreLines=function(e,t){var n=this.selection.toOrientedRange(),r=n.cursor==n.end,s=this.session.documentToScreenPosition(n.cursor);this.selection.$desiredColumn&&(s.column=this.selection.$desiredColumn);var o=this.session.screenToDocumentPosition(s.row+e,s.column);if(!n.isEmpty())var u=this.session.documentToScreenPosition(r?n.end:n.start),a=this.session.screenToDocumentPosition(u.row+e,u.column);else var a=o;if(r){var f=i.fromPoints(o,a);f.cursor=f.start}else{var f=i.fromPoints(a,o);f.cursor=f.end}f.desiredColumn=s.column;if(!this.selection.inMultiSelectMode)this.selection.addRange(n);else if(t)var l=n.cursor;this.selection.addRange(f),l&&this.selection.substractPoint(l)},this.transposeSelections=function(e){var t=this.session,n=t.multiSelect,r=n.ranges;for(var i=r.length;i--;){var s=r[i];if(s.isEmpty()){var o=t.getWordRange(s.start.row,s.start.column);s.start.row=o.start.row,s.start.column=o.start.column,s.end.row=o.end.row,s.end.column=o.end.column}}n.mergeOverlappingRanges();var u=[];for(var i=r.length;i--;){var s=r[i];u.unshift(t.getTextRange(s))}e<0?u.unshift(u.pop()):u.push(u.shift());for(var i=r.length;i--;){var s=r[i],o=s.clone();t.replace(s,u[i]),s.start.row=o.start.row,s.start.column=o.start.column}n.fromOrientedRange(n.ranges[0])},this.selectMore=function(e,t,n){var r=this.session,i=r.multiSelect,s=i.toOrientedRange();if(s.isEmpty()){s=r.getWordRange(s.start.row,s.start.column),s.cursor=e==-1?s.start:s.end,this.multiSelect.addRange(s);if(n)return}var o=r.getTextRange(s),u=h(r,o,e);u&&(u.cursor=e==-1?u.start:u.end,this.session.unfold(u),this.multiSelect.addRange(u),this.renderer.scrollCursorIntoView(null,.5)),t&&this.multiSelect.substractPoint(s.cursor)},this.alignCursors=function(){var e=this.session,t=e.multiSelect,n=t.ranges,r=-1,s=n.filter(function(e){if(e.cursor.row==r)return!0;r=e.cursor.row});if(!n.length||s.length==n.length-1){var o=this.selection.getRange(),u=o.start.row,f=o.end.row,l=u==f;if(l){var c=this.session.getLength(),h;do h=this.session.getLine(f);while(/[=:]/.test(h)&&++f<c);do h=this.session.getLine(u);while(/[=:]/.test(h)&&--u>0);u<0&&(u=0),f>=c&&(f=c-1)}var p=this.session.removeFullLines(u,f);p=this.$reAlignText(p,l),this.session.insert({row:u,column:0},p.join("\n")+"\n"),l||(o.start.column=0,o.end.column=p[p.length-1].length),this.selection.setRange(o)}
372else{s.forEach(function(e){t.substractPoint(e.cursor)});var d=0,v=Infinity,m=n.map(function(t){var n=t.cursor,r=e.getLine(n.row),i=r.substr(n.column).search(/\S/g);return i==-1&&(i=0),n.column>d&&(d=n.column),i<v&&(v=i),i});n.forEach(function(t,n){var r=t.cursor,s=d-r.column,o=m[n]-v;s>o?e.insert(r,a.stringRepeat(" ",s-o)):e.remove(new i(r.row,r.column,r.row,r.column-s+o)),t.start.column=t.end.column=d,t.start.row=t.end.row=r.row,t.cursor=t.end}),t.fromOrientedRange(n[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(e,t){function u(e){return a.stringRepeat(" ",e)}function f(e){return e[2]?u(i)+e[2]+u(s-e[2].length+o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function l(e){return e[2]?u(i+s-e[2].length)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function c(e){return e[2]?u(i)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}var n=!0,r=!0,i,s,o;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?i==null?(i=t[1].length,s=t[2].length,o=t[3].length,t):(i+s+o!=t[1].length+t[2].length+t[3].length&&(r=!1),i!=t[1].length&&(n=!1),i>t[1].length&&(i=t[1].length),s<t[2].length&&(s=t[2].length),o>t[3].length&&(o=t[3].length),t):[e]}).map(t?f:n?r?l:f:c)}}).call(d.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var n=e.oldSession;n&&(n.multiSelect.off("addRange",this.$onAddRange),n.multiSelect.off("removeRange",this.$onRemoveRange),n.multiSelect.off("multiSelect",this.$onMultiSelect),n.multiSelect.off("singleSelect",this.$onSingleSelect),n.multiSelect.lead.off("change",this.$checkMultiselectChange),n.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=m,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(e){m(this),e?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",o)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",o))},value:!0},enableBlockSelect:{set:function(e){this.$blockSelectEnabled=e},value:!0}})}),define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../../range").Range,i=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);return this.foldingStartMarker.test(r)?"start":t=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(r)?"end":""},this.getFoldWidgetRange=function(e,t,n){return null},this.indentationBlock=function(e,t,n){var i=/\S/,s=e.getLine(t),o=s.search(i);if(o==-1)return;var u=n||s.length,a=e.getLength(),f=t,l=t;while(++t<a){var c=e.getLine(t).search(i);if(c==-1)continue;if(c<=o){var h=e.getTokenAt(t,0);if(!h||h.type!=="string")break}l=t}if(l>f){var p=e.getLine(l).length;return new r(f,u,l,p)}},this.openingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i+1},u=e.$findClosingBracket(t,o,s);if(!u)return;var a=e.foldWidgets[u.row];return a==null&&(a=e.getFoldWidget(u.row)),a=="start"&&u.row>o.row&&(u.row--,u.column=e.getLine(u.row).length),r.fromPoints(o,u)},this.closingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i},u=e.$findOpeningBracket(t,o);if(!u)return;return u.column++,o.column--,r.fromPoints(u,o)}}).call(i.prototype)}),define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";t.isDark=!1,t.cssClass="ace-tm",t.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0
372);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}',t.$id="ace/theme/textmate";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass,!1)}),define("ace/line_widgets",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";function i(e){this.session=e,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeFold",this.updateOnFold),this.session.on("changeEditor",this.$onChangeEditor)}var r=e("./lib/dom");(function(){this.getRowLength=function(e){var t;return this.lineWidgets?t=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0:t=0,!this.$useWrapMode||!this.$wrapData[e]?1+t:this.$wrapData[e].length+1+t},this.$getWidgetScreenLength=function(){var e=0;return this.lineWidgets.forEach(function(t){t&&t.rowCount&&!t.hidden&&(e+=t.rowCount)}),e},this.$onChangeEditor=function(e){this.attach(e.editor)},this.attach=function(e){e&&e.widgetManager&&e.widgetManager!=this&&e.widgetManager.detach();if(this.editor==e)return;this.detach(),this.editor=e,e&&(e.widgetManager=this,e.renderer.on("beforeRender",this.measureWidgets),e.renderer.on("afterRender",this.renderWidgets))},this.detach=function(e){var t=this.editor;if(!t)return;this.editor=null,t.widgetManager=null,t.renderer.off("beforeRender",this.measureWidgets),t.renderer.off("afterRender",this.renderWidgets);var n=this.session.lineWidgets;n&&n.forEach(function(e){e&&e.el&&e.el.parentNode&&(e._inDocument=!1,e.el.parentNode.removeChild(e.el))})},this.updateOnFold=function(e,t){var n=t.lineWidgets;if(!n||!e.action)return;var r=e.data,i=r.start.row,s=r.end.row,o=e.action=="add";for(var u=i+1;u<s;u++)n[u]&&(n[u].hidden=o);n[s]&&(o?n[i]?n[s].hidden=o:n[i]=n[s]:(n[i]==n[s]&&(n[i]=undefined),n[s].hidden=o))},this.updateOnChange=function(e){var t=this.session.lineWidgets;if(!t)return;var n=e.start.row,r=e.end.row-n;if(r!==0)if(e.action=="remove"){var i=t.splice(n+1,r);
372!t[n]&&i[i.length-1]&&(t[n]=i.pop()),i.forEach(function(e){e&&this.removeLineWidget(e)},this),this.$updateRows()}else{var s=new Array(r);t[n]&&t[n].column!=null&&e.start.column>t[n].column&&n++,s.unshift(n,0),t.splice.apply(t,s),this.$updateRows()}},this.$updateRows=function(){var e=this.session.lineWidgets;if(!e)return;var t=!0;e.forEach(function(e,n){if(e){t=!1,e.row=n;while(e.$oldWidget)e.$oldWidget.row=n,e=e.$oldWidget}}),t&&(this.session.lineWidgets=null)},this.$registerLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var t=this.session.lineWidgets[e.row];return t&&(e.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[e.row]=e,e},this.addLineWidget=function(e){this.$registerLineWidget(e),e.session=this.session;if(!this.editor)return e;var t=this.editor.renderer;e.html&&!e.el&&(e.el=r.createElement("div"),e.el.innerHTML=e.html),e.el&&(r.addCssClass(e.el,"ace_lineWidgetContainer"),e.el.style.position="absolute",e.el.style.zIndex=5,t.container.appendChild(e.el),e._inDocument=!0,e.coverGutter||(e.el.style.zIndex=3),e.pixelHeight==null&&(e.pixelHeight=e.el.offsetHeight)),e.rowCount==null&&(e.rowCount=e.pixelHeight/t.layerConfig.lineHeight);var n=this.session.getFoldAt(e.row,0);e.$fold=n;if(n){var i=this.session.lineWidgets;e.row==n.end.row&&!i[n.start.row]?i[n.start.row]=e:e.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,t),this.onWidgetChanged(e),e},this.removeLineWidget=function(e){e._inDocument=!1,e.session=null,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el);if(e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(t){}if(this.session.lineWidgets){var n=this.session.lineWidgets[e.row];if(n==e)this.session.lineWidgets[e.row]=e.$oldWidget,e.$oldWidget&&this.onWidgetChanged(e.$oldWidget);else while(n){if(n.$oldWidget==e){n.$oldWidget=e.$oldWidget;break}n=n.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},this.getWidgetsAtRow=function(e){var t=this.session.lineWidgets,n=t&&t[e],r=[];while(n)r.push(n),n=n.$oldWidget;return r},this.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(e,t){var n=this.session._changedWidgets,r=t.layerConfig;if(!n||!n.length)return;var i=Infinity;for(var s=0;s<n.length;s++){var o=n[s];if(!o||!o.el)continue;if(o.session!=this.session)continue;if(!o._inDocument){if(this.session.lineWidgets[o.row]!=o)continue;o._inDocument=!0,t.container.appendChild(o.el)}o.h=o.el.offsetHeight,o.fixedWidth||(o.w=o.el.offsetWidth,o.screenWidth=Math.ceil(o.w/r.characterWidth));var u=o.h/r.lineHeight;o.coverLine&&(u-=this.session.getRowLineCount(o.row),u<0&&(u=0)),o.rowCount!=u&&(o.rowCount=u,o.row<i&&(i=o.row))}i!=Infinity&&(this.session._emit("changeFold",{data:{start:{row:i}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]},this.renderWidgets=function(e,t){var n=t.layerConfig,r=this.session.lineWidgets;if(!r)return;var i=Math.min(this.firstRow,n.firstRow),s=Math.max(this.lastRow,n.lastRow,r.length);while(i>0&&!r[i])i--;this.firstRow=n.firstRow,this.lastRow=n.lastRow,t.$cursorLayer.config=n;for(var o=i;o<=s;o++){var u=r[o];if(!u||!u.el)continue;if(u.hidden){u.el.style.top=-100-(u.pixelHeight||0)+"px";continue}u._inDocument||(u._inDocument=!0,t.container.appendChild(u.el));var a=t.$cursorLayer.getPixelPosition({row:o,column:0},!0).top;u.coverLine||(a+=n.lineHeight*this.session.getRowLineCount(u.row)),u.el.style.top=a-n.offset+"px";var f=u.coverGutter?0:t.gutterWidth;u.fixedWidth||(f-=t.scrollLeft),u.el.style.left=f+"px",u.fullWidth&&u.screenWidth&&(u.el.style.minWidth=n.width+2*n.padding+"px"),u.fixedWidth?u.el.style.right=t.scrollBar.getWidth()+"px":u.el.style.right=""}}}).call(i.prototype),t.LineWidgets=i}),define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(e,t,n){"use strict";function o(e,t,n){var r=0,i=e.length-1;while(r<=i){var s=r+i>>1,o=n(t,e[s]);if(o>0)r=s+1;else{if(!(o<0))return s;i=s-1}}return-(r+1)}function u(e,t,n){var r=e.getAnnotations().sort(s.comparePoints);if(!r.length)return;var i=o(r,{row:t,column:-1},s.comparePoints);i<0&&(i=-i-1),i>
372=r.length?i=n>0?0:r.length-1:i===0&&n<0&&(i=r.length-1);var u=r[i];if(!u||!n)return;if(u.row===t){do u=r[i+=n];while(u&&u.row===t);if(!u)return r.slice()}var a=[];t=u.row;do a[n<0?"unshift":"push"](u),u=r[i+=n];while(u&&u.row==t);return a.length&&a}var r=e("../line_widgets").LineWidgets,i=e("../lib/dom"),s=e("../range").Range;t.showErrorMarker=function(e,t){var n=e.session;n.widgetManager||(n.widgetManager=new r(n),n.widgetManager.attach(e));var s=e.getCursorPosition(),o=s.row,a=n.widgetManager.getWidgetsAtRow(o).filter(function(e){return e.type=="errorMarker"})[0];a?a.destroy():o-=t;var f=u(n,o,t),l;if(f){var c=f[0];s.column=(c.pos&&typeof c.column!="number"?c.pos.sc:c.column)||0,s.row=c.row,l=e.renderer.$gutterLayer.$annotations[s.row]}else{if(a)return;l={text:["Looks good!"],className:"ace_ok"}}e.session.unfold(s.row),e.selection.moveToPosition(s);var h={row:s.row,fixedWidth:!0,coverGutter:!0,el:i.createElement("div"),type:"errorMarker"},p=h.el.appendChild(i.createElement("div")),d=h.el.appendChild(i.createElement("div"));d.className="error_widget_arrow "+l.className;var v=e.renderer.$cursorLayer.getPixelPosition(s).left;d.style.left=v+e.renderer.gutterWidth-5+"px",h.el.className="error_widget_wrapper",p.className="error_widget "+l.className,p.innerHTML=l.text.join("<br>"),p.appendChild(i.createElement("div"));var m=function(e,t,n){if(t===0&&(n==="esc"||n==="return"))return h.destroy(),{command:"null"}};h.destroy=function(){if(e.$mouseHandler.isMousePressed)return;e.keyBinding.removeKeyboardHandler(m),n.widgetManager.removeLineWidget(h),e.off("changeSelection",h.destroy),e.off("changeSession",h.destroy),e.off("mouseup",h.destroy),e.off("change",h.destroy)},e.keyBinding.addKeyboardHandler(m),e.on("changeSelection",h.destroy),e.on("changeSession",h.destroy),e.on("mouseup",h.destroy),e.on("change",h.destroy),e.session.widgetManager.addLineWidget(h),h.el.onmousedown=e.focus.bind(e),e.renderer.scrollCursorIntoView(null,.5,{bottom:h.el.offsetHeight})},i.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; }","error_marker.css",!1)}),define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/range","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(e,t,n){"use strict";e("./lib/fixoldbrowsers");var r=e("./lib/dom"),i=e("./lib/event"),s=e("./range").Range,o=e("./editor").Editor,u=e("./edit_session").EditSession,a=e("./undomanager").UndoManager,f=e("./virtual_renderer").VirtualRenderer;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./multi_select"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),t.config=e("./config"),t.require=e,typeof define=="function"&&(t.define=define),t.edit=function(e,n){if(typeof e=="string"){var s=e;e=document.getElementById(s);if(!e)throw new Error("ace.edit can't find div #"+s)}if(e&&e.env&&e.env.editor instanceof o)return e.env.editor;var u="";if(e&&/input|textarea/i.test(e.tagName)){var a=e;u=a.value,e=r.createElement("pre"),a.parentNode.replaceChild(e,a)}else e&&(u=e.textContent,e.innerHTML="");var l=t.createEditSession(u),c=new o(new f(e),l,n),h={document:l,editor:c,onResize:c.resize.bind(c,null)};return a&&(h.textarea=a),i.addListener(window,"resize",h.onResize),c.on("destroy",function(){i.removeListener(window,"resize",h.onResize),h.editor.container.env=null}),c.container.env=c.env=h,c},t.createEditSession=function(e,t){var n=new u(e,t);return n.setUndoManager(new a),n},t.Range=s,t.Editor=o,t.EditSession=u,t.UndoManager=a,t.VirtualRenderer=f,t.version=t.config.version}); (function() { 373 window.require(["ace/ace"], function(a) { 374 if (a) { 375 a.config.init(true); 376 a.define = window.define; 377 } 378 if (!window.ace) 379 window.ace = a; 380 for (var key in a) if (a.hasOwnProperty(key)) 381 window.ace[key] = a[key]; 382 window.ace["default"] = window.ace; 383 if (typeof module == "object" && typeof exports == "object" && module) { 384 module.exports = window.ace; 385 } 386 }); 387 })(); 388 389define("ace/snippets",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/lib/lang","ace/range","ace/anchor","ace/keyboard/hash_handler","ace/tokenizer","ace/lib/dom","ace/editor"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./lib/lang"),o=e("./range").Range,u=e("./anchor").Anchor,a=e("./keyboard/hash_handler").HashHandler,f=e("./tokenizer").Tokenizer,l=o.comparePoints,c=function(){this.snippetMap={},this.snippetNameMap={}};(function(){r.implement(this,i),this.getTokenizer=function(){function e(e,t,n){return e=e.substr(1),/^\d+$/.test(e)&&!n.inFormatString?[{tabstopId:parseInt(e,10)}]:[{text:e}]}function t(e){return"(?:[^\\\\"+e+"]|\\\\.)"}return c.$tokenizer=new f({start:[{regex:/:/,onMatch:function(e,t,n){return n.length&&n[0].expectIf?(n[0].expectIf=!1,n[0].elseBranch=n[0],[n[0]]):":"}},{regex:/\\./,onMatch:function(e,t,n){var r=e[1];return r=="}"&&n.length?e=r:"`$\\".indexOf(r)!=-1?e=r:n.inFormatString&&(r=="n"?e="\n":r=="t"?e="\n":"ulULE".
389indexOf(r)!=-1&&(e={changeCase:r,local:r>"a"})),[e]}},{regex:/}/,onMatch:function(e,t,n){return[n.length?n.shift():e]}},{regex:/\$(?:\d+|\w+)/,onMatch:e},{regex:/\$\{[\dA-Z_a-z]+/,onMatch:function(t,n,r){var i=e(t.substr(1),n,r);return r.unshift(i[0]),i},next:"snippetVar"},{regex:/\n/,token:"newline",merge:!1}],snippetVar:[{regex:"\\|"+t("\\|")+"*\\|",onMatch:function(e,t,n){n[0].choices=e.slice(1,-1).split(",")},next:"start"},{regex:"/("+t("/")+"+)/(?:("+t("/")+"*)/)(\\w*):?",onMatch:function(e,t,n){var r=n[0];return r.fmtString=e,e=this.splitRegex.exec(e),r.guard=e[1],r.fmt=e[2],r.flag=e[3],""},next:"start"},{regex:"`"+t("`")+"*`",onMatch:function(e,t,n){return n[0].code=e.splice(1,-1),""},next:"start"},{regex:"\\?",onMatch:function(e,t,n){n[0]&&(n[0].expectIf=!0)},next:"start"},{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"start"}],formatString:[{regex:"/("+t("/")+"+)/",token:"regex"},{regex:"",onMatch:function(e,t,n){n.inFormatString=!0},next:"start"}]}),c.prototype.getTokenizer=function(){return c.$tokenizer},c.$tokenizer},this.tokenizeTmSnippet=function(e,t){return this.getTokenizer().getLineTokens(e,t).tokens.map(function(e){return e.value||e})},this.$getDefaultValue=function(e,t){if(/^[A-Z]\d+$/.test(t)){var n=t.substr(1);return(this.variables[t[0]+"__"]||{})[n]}if(/^\d+$/.test(t))return(this.variables.__||{})[t];t=t.replace(/^TM_/,"");if(!e)return;var r=e.session;switch(t){case"CURRENT_WORD":var i=r.getWordRange();case"SELECTION":case"SELECTED_TEXT":return r.getTextRange(i);case"CURRENT_LINE":return r.getLine(e.getCursorPosition().row);case"PREV_LINE":return r.getLine(e.getCursorPosition().row-1);case"LINE_INDEX":return e.getCursorPosition().column;case"LINE_NUMBER":return e.getCursorPosition().row+1;case"SOFT_TABS":return r.getUseSoftTabs()?"YES":"NO";case"TAB_SIZE":return r.getTabSize();case"FILENAME":case"FILEPATH":return"";case"FULLNAME":return"Ace"}},this.variables={},this.getVariableValue=function(e,t){return this.variables.hasOwnProperty(t)?this.variables[t](e,t)||"":this.$getDefaultValue(e,t)||""},this.tmStrFormat=function(e,t,n){var r=t.flag||"",i=t.guard;i=new RegExp(i,r.replace(/[^gi]/,""));var s=this.tokenizeTmSnippet(t.fmt,"formatString"),o=this,u=e.replace(i,function(){o.variables.__=arguments;var e=o.resolveVariables(s,n),t="E";for(var r=0;r<e.length;r++){var i=e[r];if(typeof i=="object"){e[r]="";if(i.changeCase&&i.local){var u=e[r+1];u&&typeof u=="string"&&(i.changeCase=="u"?e[r]=u[0].toUpperCase():e[r]=u[0].toLowerCase(),e[r+1]=u.substr(1))}else i.changeCase&&(t=i.changeCase)}else t=="U"?e[r]=i.toUpperCase():t=="L"&&(e[r]=i.toLowerCase())}return e.join("")});return this.variables.__=null,u},this.resolveVariables=function(e,t){function o(t){var n=e.indexOf(t,r+1);n!=-1&&(r=n)}var n=[];for(var r=0;r<e.length;r++){var i=e[r];if(typeof i=="string")n.push(i);else{if(typeof i!="object")continue;if(i.skip)o(i);else{if(i.processed<r)continue;if(i.text){var s=this.getVariableValue(t,i.text);s&&i.fmtString&&(s=this.tmStrFormat(s,i)),i.processed=r,i.expectIf==null?s&&(n.push(s),o(i)):s?i.skip=i.elseBranch:o(i)}else i.tabstopId!=null?n.push(i):i.changeCase!=null&&n.push(i)}}}return n},this.insertSnippetForSelection=function(e,t){function f(e){var t=[];for(var n=0;n<e.length;n++){var r=e[n];if(typeof r=="object"){if(a[r.tabstopId])continue;var i=e.lastIndexOf(r,n-1);r=t[i]||{tabstopId:r.tabstopId}}t[n]=r}return t}var n=e.getCursorPosition(),r=e.session.getLine(n.row),i=e.session.getTabString(),s=r.match(/^\s*/)[0];n.column<s.length&&(s=s.slice(0,n.column)),t=t.replace(/\r/g,"");var o=this.tokenizeTmSnippet(t);o=this.resolveVariables(o,e),o=o.map(function(e){return e=="\n"?e+s:typeof e=="string"?e.replace(/\t/g,i):e});var u=[];o.forEach(function(e,t){if(typeof e!="object")return;var n=e.tabstopId,r=u[n];r||(r=u[n]=[],r.index=n,r.value="");if(r.indexOf(e)!==-1)return;r.push(e);var i=o.indexOf(e,t+1);if(i===-1)return;var s=o.slice(t+1,i),a=s.some(function(e){return typeof e=="object"});a&&!r.value?r.value=s:s.length&&(!r.value||typeof r.value!="string")&&(r.value=s.join(""))}),u.forEach(function(e){e.length=0});var a={};for(var l=0;l<o.length;l++){var c=o[l];if(typeof c!="object")continue;var p=c.tabstopId,d=o.indexOf(c,l+1);
389if(a[p]){a[p]===c&&(a[p]=null);continue}var v=u[p],m=typeof v.value=="string"?[v.value]:f(v.value);m.unshift(l+1,Math.max(0,d-l)),m.push(c),a[p]=c,o.splice.apply(o,m),v.indexOf(c)===-1&&v.push(c)}var g=0,y=0,b="";o.forEach(function(e){if(typeof e=="string"){var t=e.split("\n");t.length>1?(y=t[t.length-1].length,g+=t.length-1):y+=e.length,b+=e}else e.start?e.end={row:g,column:y}:e.start={row:g,column:y}});var w=e.getSelectionRange(),E=e.session.replace(w,b),S=new h(e),x=e.inVirtualSelectionMode&&e.selection.index;S.addTabstops(u,w.start,E,x)},this.insertSnippet=function(e,t){var n=this;if(e.inVirtualSelectionMode)return n.insertSnippetForSelection(e,t);e.forEachSelection(function(){n.insertSnippetForSelection(e,t)},null,{keepOrder:!0}),e.tabstopManager&&e.tabstopManager.tabNext()},this.$getScope=function(e){var t=e.session.$mode.$id||"";t=t.split("/").pop();if(t==="html"||t==="php"){t==="php"&&!e.session.$mode.inlinePhp&&(t="html");var n=e.getCursorPosition(),r=e.session.getState(n.row);typeof r=="object"&&(r=r[0]),r.substring&&(r.substring(0,3)=="js-"?t="javascript":r.substring(0,4)=="css-"?t="css":r.substring(0,4)=="php-"&&(t="php"))}return t},this.getActiveScopes=function(e){var t=this.$getScope(e),n=[t],r=this.snippetMap;return r[t]&&r[t].includeScopes&&n.push.apply(n,r[t].includeScopes),n.push("_"),n},this.expandWithTab=function(e,t){var n=this,r=e.forEachSelection(function(){return n.expandSnippetForSelection(e,t)},null,{keepOrder:!0});return r&&e.tabstopManager&&e.tabstopManager.tabNext(),r},this.expandSnippetForSelection=function(e,t){var n=e.getCursorPosition(),r=e.session.getLine(n.row),i=r.substring(0,n.column),s=r.substr(n.column),o=this.snippetMap,u;return this.getActiveScopes(e).some(function(e){var t=o[e];return t&&(u=this.findMatchingSnippet(t,i,s)),!!u},this),u?t&&t.dryRun?!0:(e.session.doc.removeInLine(n.row,n.column-u.replaceBefore.length,n.column+u.replaceAfter.length),this.variables.M__=u.matchBefore,this.variables.T__=u.matchAfter,this.insertSnippetForSelection(e,u.content),this.variables.M__=this.variables.T__=null,!0):!1},this.findMatchingSnippet=function(e,t,n){for(var r=e.length;r--;){var i=e[r];if(i.startRe&&!i.startRe.test(t))continue;if(i.endRe&&!i.endRe.test(n))continue;if(!i.startRe&&!i.endRe)continue;return i.matchBefore=i.startRe?i.startRe.exec(t):[""],i.matchAfter=i.endRe?i.endRe.exec(n):[""],i.replaceBefore=i.triggerRe?i.triggerRe.exec(t)[0]:"",i.replaceAfter=i.endTriggerRe?i.endTriggerRe.exec(n)[0]:"",i}},this.snippetMap={},this.snippetNameMap={},this.register=function(e,t){function o(e){return e&&!/^\^?\(.*\)\$?$|^\\b$/.test(e)&&(e="(?:"+e+")"),e||""}function u(e,t,n){return e=o(e),t=o(t),n?(e=t+e,e&&e[e.length-1]!="$"&&(e+="$")):(e+=t,e&&e[0]!="^"&&(e="^"+e)),new RegExp(e)}function a(e){e.scope||(e.scope=t||"_"),t=e.scope,n[t]||(n[t]=[],r[t]={});var o=r[t];if(e.name){var a=o[e.name];a&&i.unregister(a),o[e.name]=e}n[t].push(e),e.tabTrigger&&!e.trigger&&(!e.guard&&/^\w/.test(e.tabTrigger)&&(e.guard="\\b"),e.trigger=s.escapeRegExp(e.tabTrigger));if(!e.trigger&&!e.guard&&!e.endTrigger&&!e.endGuard)return;e.startRe=u(e.trigger,e.guard,!0),e.triggerRe=new RegExp(e.trigger),e.endRe=u(e.endTrigger,e.endGuard,!0),e.endTriggerRe=new RegExp(e.endTrigger)}var n=this.snippetMap,r=this.snippetNameMap,i=this;e||(e=[]),e&&e.content?a(e):Array.isArray(e)&&e.forEach(a),this._signal("registerSnippets",{scope:t})},this.unregister=function(e,t){function i(e){var i=r[e.scope||t];if(i&&i[e.name]){delete i[e.name];var s=n[e.scope||t],o=s&&s.indexOf(e);o>=0&&s.splice(o,1)}}var n=this.snippetMap,r=this.snippetNameMap;e.content?i(e):Array.isArray(e)&&e.forEach(i)},this.parseSnippetFile=function(e){e=e.replace(/\r/g,"");var t=[],n={},r=/^#.*|^({[\s\S]*})\s*$|^(\S+) (.*)$|^((?:\n*\t.*)+)/gm,i;while(i=r.exec(e)){if(i[1])try{n=JSON.parse(i[1]),t.push(n)}catch(s){}if(i[4])n.content=i[4].replace(/^\t/gm,""),t.push(n),n={};else{var o=i[2],u=i[3];if(o=="regex"){var a=/\/((?:[^\/\\]|\\.)*)|$/g;n.guard=a.exec(u)[1],n.trigger=a.exec(u)[1],n.endTrigger=a.exec(u)[1],n.endGuard=a.exec(u)[1]}else o=="snippet"?(n.tabTrigger=u.match(/^\S*/)[0],n.name||(n.name=u)):n[o]=u}}return t}
389,this.getSnippetByName=function(e,t){var n=this.snippetNameMap,r;return this.getActiveScopes(t).some(function(t){var i=n[t];return i&&(r=i[e]),!!r},this),r}}).call(c.prototype);var h=function(e){if(e.tabstopManager)return e.tabstopManager;e.tabstopManager=this,this.$onChange=this.onChange.bind(this),this.$onChangeSelection=s.delayedCall(this.onChangeSelection.bind(this)).schedule,this.$onChangeSession=this.onChangeSession.bind(this),this.$onAfterExec=this.onAfterExec.bind(this),this.attach(e)};(function(){this.attach=function(e){this.index=0,this.ranges=[],this.tabstops=[],this.$openTabstops=null,this.selectedTabstop=null,this.editor=e,this.editor.on("change",this.$onChange),this.editor.on("changeSelection",this.$onChangeSelection),this.editor.on("changeSession",this.$onChangeSession),this.editor.commands.on("afterExec",this.$onAfterExec),this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},this.detach=function(){this.tabstops.forEach(this.removeTabstopMarkers,this),this.ranges=null,this.tabstops=null,this.selectedTabstop=null,this.editor.removeListener("change",this.$onChange),this.editor.removeListener("changeSelection",this.$onChangeSelection),this.editor.removeListener("changeSession",this.$onChangeSession),this.editor.commands.removeListener("afterExec",this.$onAfterExec),this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.tabstopManager=null,this.editor=null},this.onChange=function(e){var t=e,n=e.action[0]=="r",r=e.start,i=e.end,s=r.row,o=i.row,u=o-s,a=i.column-r.column;n&&(u=-u,a=-a);if(!this.$inChange&&n){var f=this.selectedTabstop,c=f&&!f.some(function(e){return l(e.start,r)<=0&&l(e.end,i)>=0});if(c)return this.detach()}var h=this.ranges;for(var p=0;p<h.length;p++){var d=h[p];if(d.end.row<r.row)continue;if(n&&l(r,d.start)<0&&l(i,d.end)>0){this.removeRange(d),p--;continue}d.start.row==s&&d.start.column>r.column&&(d.start.column+=a),d.end.row==s&&d.end.column>=r.column&&(d.end.column+=a),d.start.row>=s&&(d.start.row+=u),d.end.row>=s&&(d.end.row+=u),l(d.start,d.end)>0&&this.removeRange(d)}h.length||this.detach()},this.updateLinkedFields=function(){var e=this.selectedTabstop;if(!e||!e.hasLinkedRanges)return;this.$inChange=!0;var n=this.editor.session,r=n.getTextRange(e.firstNonLinked);for(var i=e.length;i--;){var s=e[i];if(!s.linked)continue;var o=t.snippetManager.tmStrFormat(r,s.original);n.replace(s,o)}this.$inChange=!1},this.onAfterExec=function(e){e.command&&!e.command.readOnly&&this.updateLinkedFields()},this.onChangeSelection=function(){if(!this.editor)return;var e=this.editor.selection.lead,t=this.editor.selection.anchor,
389n=this.editor.selection.isEmpty();for(var r=this.ranges.length;r--;){if(this.ranges[r].linked)continue;var i=this.ranges[r].contains(e.row,e.column),s=n||this.ranges[r].contains(t.row,t.column);if(i&&s)return}this.detach()},this.onChangeSession=function(){this.detach()},this.tabNext=function(e){var t=this.tabstops.length,n=this.index+(e||1);n=Math.min(Math.max(n,1),t),n==t&&(n=0),this.selectTabstop(n),n===0&&this.detach()},this.selectTabstop=function(e){this.$openTabstops=null;var t=this.tabstops[this.index];t&&this.addTabstopMarkers(t),this.index=e,t=this.tabstops[this.index];if(!t||!t.length)return;this.selectedTabstop=t;if(!this.editor.inVirtualSelectionMode){var n=this.editor.multiSelect;n.toSingleRange(t.firstNonLinked.clone());for(var r=t.length;r--;){if(t.hasLinkedRanges&&t[r].linked)continue;n.addRange(t[r].clone(),!0)}n.ranges[0]&&n.addRange(n.ranges[0].clone())}else this.editor.selection.setRange(t.firstNonLinked);this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},this.addTabstops=function(e,t,n){this.$openTabstops||(this.$openTabstops=[]);if(!e[0]){var r=o.fromPoints(n,n);v(r.start,t),v(r.end,t),e[0]=[r],e[0].index=0}var i=this.index,s=[i+1,0],u=this.ranges;e.forEach(function(e,n){var r=this.$openTabstops[n]||e;for(var i=e.length;i--;){var a=e[i],f=o.fromPoints(a.start,a.end||a.start);d(f.start,t),d(f.end,t),f.original=a,f.tabstop=r,u.push(f),r!=e?r.unshift(f):r[i]=f,a.fmtString?(f.linked=!0,r.hasLinkedRanges=!0):r.firstNonLinked||(r.firstNonLinked=f)}r.firstNonLinked||(r.hasLinkedRanges=!1),r===e&&(s.push(r),this.$openTabstops[n]=r),this.addTabstopMarkers(r)},this),s.length>2&&(this.tabstops.length&&s.push(s.splice(2,1)[0]),this.tabstops.splice.apply(this.tabstops,s))},this.addTabstopMarkers=function(e){var t=this.editor.session;e.forEach(function(e){e.markerId||(e.markerId=t.addMarker(e,"ace_snippet-marker","text"))})},this.removeTabstopMarkers=function(e){var t=this.editor.session;e.forEach(function(e){t.removeMarker(e.markerId),e.markerId=null})},this.removeRange=function(e){var t=e.tabstop.indexOf(e);e.tabstop.splice(t,1),t=this.ranges.indexOf(e),this.ranges.splice(t,1),this.editor.session.removeMarker(e.markerId),e.tabstop.length||(t=this.tabstops.indexOf(e.tabstop),t!=-1&&this.tabstops.splice(t,1),this.tabstops.length||this.detach())},this.keyboardHandler=new a,this.keyboardHandler.bindKeys({Tab:function(e){if(t.snippetManager&&t.snippetManager.expandWithTab(e))return;e.tabstopManager.tabNext(1)},"Shift-Tab":function(e){e.tabstopManager.tabNext(-1)},Esc:function(e){e.tabstopManager.detach()},Return:function(e){return!1}})}).call(h.prototype);var p={};p.onChange=u.prototype.onChange,p.setPosition=function(e,t){this.pos.row=e,this.pos.column=t},p.update=function(e,t,n){this.$insertRight=n,this.pos=e,this.onChange(t)};var d=function(e,t){e.row==0&&(e.column+=t.column),e.row+=t.row},v=function(e,t){e.row==t.row&&(e.column-=t.column),e.row-=t.row};e("./lib/dom").importCssString(".ace_snippet-marker { -moz-box-sizing: border-box; box-sizing: border-box; background: rgba(194, 193, 208, 0.09); border: 1px dotted rgba(211, 208, 235, 0.62); position: absolute;}"),t.snippetManager=new c;var m=e("./editor").Editor;(function(){this.insertSnippet=function(e,n){return t.snippetManager.insertSnippet(this,e,n)},this.expandSnippet=function(e){return t.snippetManager.expandWithTab(this,e)}}).call(m.prototype)}),define("ace/autocomplete/popup",["require","exports","module","ace/virtual_renderer","ace/editor","ace/range","ace/lib/event","ace/lib/lang","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../virtual_renderer").VirtualRenderer,i=e("../editor").Editor,s=e("../range").Range,o=e("../lib/event"),u=e("../lib/lang"),a=e("../lib/dom"),f=function(e){var t=new r(e);t.$maxLines=4;var n=new i(t);return n.setHighlightActiveLine(!1),n.setShowPrintMargin(!1),n.renderer.setShowGutter(!1),n.renderer.setHighlightGutterLine(!1),n.$mouseHandler.$focusTimeout=0,n.$highlightTagPending=!0,n},l=function(e){var t=a.createElement("div"),n=new f(t);e&&e.appendChild(t),t.style.display="none",n.renderer.content.style.cursor="default",n.renderer.setStyle("ace_autocomplete"),n.setOption("displayIndentGuides",!1),n.setOption("dragDelay",150);var r=function(){};n.focus=r,n.$isFocused=!0,n.renderer.$cursorLayer.restartTimer=r,n.renderer.$cursorLayer.element.style.opacity=0,n.renderer.$maxLines=8,n.renderer.$keepTextAreaAtCurs
389or=!1,n.setHighlightActiveLine(!1),n.session.highlight(""),n.session.$searchHighlight.clazz="ace_highlight-marker",n.on("mousedown",function(e){var t=e.getDocumentPosition();n.selection.moveToPosition(t),c.start.row=c.end.row=t.row,e.stop()});var i,l=new s(-1,0,-1,Infinity),c=new s(-1,0,-1,Infinity);c.id=n.session.addMarker(c,"ace_active-line","fullLine"),n.setSelectOnHover=function(e){e?l.id&&(n.session.removeMarker(l.id),l.id=null):l.id=n.session.addMarker(l,"ace_line-hover","fullLine")},n.setSelectOnHover(!1),n.on("mousemove",function(e){if(!i){i=e;return}if(i.x==e.x&&i.y==e.y)return;i=e,i.scrollTop=n.renderer.scrollTop;var t=i.getDocumentPosition().row;l.start.row!=t&&(l.id||n.setRow(t),p(t))}),n.renderer.on("beforeRender",function(){if(i&&l.start.row!=-1){i.$pos=null;var e=i.getDocumentPosition().row;l.id||n.setRow(e),p(e,!0)}}),n.renderer.on("afterRender",function(){var e=n.getRow(),t=n.renderer.$textLayer,r=t.element.childNodes[e-t.config.firstRow];r!==t.selectedNode&&t.selectedNode&&a.removeCssClass(t.selectedNode,"ace_selected"),t.selectedNode=r,r&&a.addCssClass(r,"ace_selected")});var h=function(){p(-1)},p=function(e,t){e!==l.start.row&&(l.start.row=l.end.row=e,t||n.session._emit("changeBackMarker"),n._emit("changeHoverMarker"))};n.getHoveredRow=function(){return l.start.row},o.addListener(n.container,"mouseout",h),n.on("hide",h),n.on("changeSelection",h),n.session.doc.getLength=function(){return n.data.length},n.session.doc.getLine=function(e){var t=n.data[e];return typeof t=="string"?t:t&&t.value||""};var d=n.session.bgTokenizer;return d.$tokenizeRow=function(e){function s(e,n){e&&r.push({type:(t.className||"")+(n||""),value:e})}var t=n.data[e],r=[];if(!t)return r;typeof t=="string"&&(t={value:t});var i=t.caption||t.value||t.name,o=i.toLowerCase(),u=(n.filterText||"").toLowerCase(),a=0,f=0;for(var l=0;l<=u.length;l++)if(l!=f&&(t.matchMask&1<<l||l==u.length)){var c=u.slice(f,l);f=l;var h=o.indexOf(c,a);if(h==-1)continue;s(i.slice(a,h),""),a=h+c.length,s(i.slice(h,a),"completion-highlight")}return s(i.slice(a,i.length),""),t.meta&&r.push({type:"completion-meta",value:t.meta}),r},d.$updateOnChange=r,d.start=r,n.session.$computeWidth=function(){return this.screenWidth=0},n.isOpen=!1,n.isTopdown=!1,n.autoSelect=!0,n.filterText="",n.data=[],n.setData=function(e,t){n.filterText=t||"",n.setValue(u.stringRepeat("\n",e.length),-1),n.data=e||[],n.setRow(0)},n.getData=function(e){return n.data[e]},n.getRow=function(){return c.start.row},n.setRow=function(e){e=Math.max(this.autoSelect?0:-1,Math.min(this.data.length,e)),c.start.row!=e&&(n.selection.clearSelection(),c.start.row=c.end.row=e||0,n.session._emit("changeBackMarker"),n.moveCursorTo(e||0,0),n.isOpen&&n._signal("select"))},n.on("changeSelection",function(){n.isOpen&&n.setRow(n.selection.lead.row),n.renderer.scrollCursorIntoView()}),n.hide=function(){this.container.style.display="none",this._signal("hide"),n.isOpen=!1},n.show=function(e,t,r){var s=this.container,o=window.innerHeight,u=window.innerWidth,a=this.renderer,f=a.$maxLines*t*1.4,l=e.top+this.$borderSize,c=l>o/2&&!r;c&&l+t+f>o?(a.$maxPixelHeight=l-2*this.$borderSize,s.style.top="",s.style.bottom=o-l+"px",n.isTopdown=!1):(l+=t,a.$maxPixelHeight=o-l-.2*t,s.style.top=l+"px",s.style.bottom="",n.isTopdown=!0),s.style.display="";var h=e.left;h+s.offsetWidth>u&&(h=u-s.offsetWidth),s.style.left=h+"px",this._signal("show"),i=null,n.isOpen=!0},n.getTextLeftOffset=function(){return this.$borderSize+this.renderer.$padding+this.$imageSize},n.$imageSize=0,n.$borderSize=1,n};a.importCssString(".ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line { background-color: #CAD6FA; z-index: 1;}.ace_dark.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line { background-color: #3a674e;}.ace_editor.ace_autocomplete .ace_line-hover { border: 1px solid #abbffe; margin-top: -1px; background: rgba(233,233,253,0.4); position: absolute; z-index: 2;}.ace_dark.ace_editor.ace_autocomplete .ace_line-hover { border: 1px solid rgba(109, 150, 13, 0.8); background: rgba(58, 103, 78, 0.62);}.ace_completion-meta { opacity: 0.5; margin: 0.9em;}
389.ace_editor.ace_autocomplete .ace_completion-highlight{ color: #2d69c7;}.ace_dark.ace_editor.ace_autocomplete .ace_completion-highlight{ color: #93ca12;}.ace_editor.ace_autocomplete { width: 300px; z-index: 200000; border: 1px lightgray solid; position: fixed; box-shadow: 2px 3px 5px rgba(0,0,0,.2); line-height: 1.4; background: #fefefe; color: #111;}.ace_dark.ace_editor.ace_autocomplete { border: 1px #484747 solid; box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.51); line-height: 1.4; background: #25282c; color: #c1c1c1;}","autocompletion.css"),t.AcePopup=l}),define("ace/autocomplete/util",["require","exports","module"],function(e,t,n){"use strict";t.parForEach=function(e,t,n){var r=0,i=e.length;i===0&&n();for(var s=0;s<i;s++)t(e[s],function(e,t){r++,r===i&&n(e,t)})};var r=/[a-zA-Z_0-9\.\$\-\u00A2-\uFFFF]/;t.retrievePrecedingIdentifier=function(e,t,n){n=n||r;var i=[];for(var s=t-1;s>=0;s--){if(!n.test(e[s]))break;i.push(e[s])}return i.reverse().join("")},t.retrieveFollowingIdentifier=function(e,t,n){n=n||r;var i=[];for(var s=t;s<e.length;s++){if(!n.test(e[s]))break;i.push(e[s])}return i},t.getCompletionPrefix=function(e){var t=e.getCursorPosition(),n=e.session.getLine(t.row),r;return e.completers.forEach(function(e){e.identifierRegexps&&e.identifierRegexps.forEach(function(e){!r&&e&&(r=this.retrievePrecedingIdentifier(n,t.column,e))}.bind(this))}.bind(this)),r||this.retrievePrecedingIdentifier(n,t.column)}}),define("ace/autocomplete",["require","exports","module","ace/keyboard/hash_handler","ace/autocomplete/popup","ace/autocomplete/util","ace/lib/event","ace/lib/lang","ace/lib/dom","ace/snippets"],function(e,t,n){"use strict";var r=e("./keyboard/hash_handler").HashHandler,i=e("./autocomplete/popup").AcePopup,s=e("./autocomplete/util"),o=e("./lib/event"),u=e("./lib/lang"),a=e("./lib/dom"),f=e("./snippets").snippetManager,l=function(){this.autoInsert=!1,this.autoSelect=!0,this.exactMatch=!1,this.gatherCompletionsId=0,this.keyboardHandler=new r,this.keyboardHandler.bindKeys(this.commands),this.blurListener=this.blurListener.bind(this),this.changeListener=this.changeListener.bind(this),this.mousedownListener=this.mousedownListener.bind(this),this.mousewheelListener=this.mousewheelListener.bind(this),this.changeTimer=u.delayedCall(function(){this.updateCompletions(!0)}.bind(this)),this.tooltipTimer=u.delayedCall(this.updateDocTooltip.bind(this),50)};(function(){this.$init=function(){return this.popup=new i(document.body||document.documentElement),this.popup.on("click",function(e){this.insertMatch(),e.stop()}.bind(this)),this.popup.focus=this.editor.focus.bind(this.editor),this.popup.on("show",this.tooltipTimer.bind(null,null)),this.popup.on("select",this.tooltipTimer.bind(null,null)),this.popup.on("changeHoverMarker",this.tooltipTimer.bind(null,null)),this.popup},this.getPopup=function(){return this.popup||this.$init()},this.openPopup=function(e,t,n){this.popup||this.$init(),this.popup.autoSelect=this.autoSelect,this.popup.setData(this.completions.filtered,this.completions.filterText),e.keyBinding.addKeyboardHandler(this.keyboardHandler);var r=e.renderer;this.popup.setRow(this.autoSelect?0:-1);if(!n){this.popup.setTheme(e.getTheme()),this.popup.setFontSize(e.getFontSize());var i=r.layerConfig.lineHeight,s=r.$cursorLayer.getPixelPosition(this.base,!0);s.left-=this.popup.getTextLeftOffset();var o=e.container.getBoundingClientRect();s.top+=o.top-r.layerConfig.offset,s.left+=o.left-e.renderer.scrollLeft,s.left+=r.gutterWidth,this.popup.show(s,i)}else n&&!t&&this.detach()},this.detach=function(){this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.off("changeSelection",this.changeListener),this.editor.off("blur",this.blurListener),this.editor.off("mousedown",this.mousedownListener),this.editor.off("mousewheel",this.mousewheelListener),this.changeTimer.cancel(),this.hideDocTooltip(),this.gatherCompletionsId+=1,this.popup&&this.popup.isOpen&&this.popup.hide(),this.base&&this.base.detach(),this.activated=!1,this.completions=this.base=null},this.changeListener=function(e){var t=this.editor.selection.lead;(t.row!=this.base.row||t.column<this.base.column)&&this.detach(),this.activated?this.changeTimer.schedule():this.detach()},this.blurListener=function(e){var t=document.activeElement,n=this.editor.textInput.getElement(),r=e.relatedTarget&&this.tooltipNode&&this.tooltipNode.contains(e.relatedTarget),i=this.popup&&this.popup.container;t!=n&&t.parentNode!=i&&!r&&t!=this.tooltipNode&&e.relatedTarget!=n&&this.detach()},this.mousedownListener=function(e){this.detach()},this.mousewheelListener=function(e){this.detach()},this.goTo=function(e){var t=this.popup.getRow(),n=this.popup.session.getLength()-1;switch(e){case"up":t=t<=0?n:t-1;break;case"down":t=t>=n?-1:t+1;break;case"start":t=0;break;case"end":t=n}this.popup.setRow(t)},this.insertMatch=function(e,t){e||(e=this.popup.getData(this.popup.getRow()));if(!e)return!1;if(e.completer&&e.completer.insertMatch)e.completer.insertMatch(this.editor,e);else{if(this.completions.filterText){var n=this.editor.selection.getAllRanges();for(var r=0,i;i=n[r];r++)i.start.column-=this.completions.filterText.length,this.editor.session.remove(i)}e.snippet?f.insertSnippet(this.editor,e.snippet):this.editor.execCommand("insertstring",e.value||e)}this.detach()},this.commands={Up:function(e){e.completer.goTo("up")},Down:function(e){e.completer.goTo("down")},"Ctrl-Up|Ctrl-Home":function(e){e.completer.goTo("start")},"Ctrl-Down|Ctrl-End":function(e){e.completer.goTo("end")},Esc:function(e){e.completer.detach()},Return:function(e){return e.completer.insertMatch()},"Shift-Return":function(e){e.completer.insertMatch(null,{deleteSuffix:!0})},Tab:function(e){var t=e.completer.insertMatch();if(!!t||!!e.tabstopManager)return t;e.completer.goTo("down")},PageUp:function(e){e.completer.popup.gotoPageUp()},PageDown:function(e){e.completer.popup.gotoPageDown()}},this.gatherCompletions=function(e,t){var n=e.getSession(),r=e.getCursorPosition(),i=s.getCompletionPrefix(e);this.base=n.doc.createAnchor(r.row,r.column-i.length),this.base.$insertRight=!0;var o=[],u=e.completers.length;
389return e.completers.forEach(function(a,f){a.getCompletions(e,n,r,i,function(n,r){!n&&r&&(o=o.concat(r)),t(null,{prefix:s.getCompletionPrefix(e),matches:o,finished:--u===0})})}),!0},this.showPopup=function(e){this.editor&&this.detach(),this.activated=!0,this.editor=e,e.completer!=this&&(e.completer&&e.completer.detach(),e.completer=this),e.on("changeSelection",this.changeListener),e.on("blur",this.blurListener),e.on("mousedown",this.mousedownListener),e.on("mousewheel",this.mousewheelListener),this.updateCompletions()},this.updateCompletions=function(e){if(e&&this.base&&this.completions){var t=this.editor.getCursorPosition(),n=this.editor.session.getTextRange({start:this.base,end:t});if(n==this.completions.filterText)return;this.completions.setFilter(n);if(!this.completions.filtered.length)return this.detach();if(this.completions.filtered.length==1&&this.completions.filtered[0].value==n&&!this.completions.filtered[0].snippet)return this.detach();this.openPopup(this.editor,n,e);return}var r=this.gatherCompletionsId;this.gatherCompletions(this.editor,function(t,n){var i=function(){if(!n.finished)return;return this.detach()}.bind(this),s=n.prefix,o=n&&n.matches;if(!o||!o.length)return i();if(s.indexOf(n.prefix)!==0||r!=this.gatherCompletionsId)return;this.completions=new c(o),this.exactMatch&&(this.completions.exactMatch=!0),this.completions.setFilter(s);var u=this.completions.filtered;if(!u.length)return i();if(u.length==1&&u[0].value==s&&!u[0].snippet)return i();if(this.autoInsert&&u.length==1&&n.finished)return this.insertMatch(u[0]);this.openPopup(this.editor,s,e)}.bind(this))},this.cancelContextMenu=function(){this.editor.$mouseHandler.cancelContextMenu()},this.updateDocTooltip=function(){var e=this.popup,t=e.data,n=t&&(t[e.getHoveredRow()]||t[e.getRow()]),r=null;if(!n||!this.editor||!this.popup.isOpen)return this.hideDocTooltip();this.editor.completers.some(function(e){return e.getDocTooltip&&(r=e.getDocTooltip(n)),r}),r||(r=n),typeof r=="string"&&(r={docText:r});if(!r||!r.docHTML&&!r.docText)return this.hideDocTooltip();this.showDocTooltip(r)},this.showDocTooltip=function(e){this.tooltipNode||(this.tooltipNode=a.createElement("div"),this.tooltipNode.className="ace_tooltip ace_doc-tooltip",this.tooltipNode.style.margin=0,this.tooltipNode.style.pointerEvents="auto",this.tooltipNode.tabIndex=-1,this.tooltipNode.onblur=this.blurListener.bind(this),this.tooltipNode.onclick=this.onTooltipClick.bind(this));var t=this.tooltipNode;e.docHTML?t.innerHTML=e.docHTML:e.docText&&(t.textContent=e.docText),t.parentNode||document.body.appendChild(t);var n=this.popup,r=n.container.getBoundingClientRect();t.style.top=n.container.style.top,t.style.bottom=n.container.style.bottom,t.style.display="block",window.innerWidth-r.right<320?r.left<320?n.isTopdown?(t.style.top=r.bottom+"px",t.style.left=r.left+"px",t.style.right="",t.style.bottom=""):(t.style.top=n.container.offsetTop-t.offsetHeight+"px",t.style.left=r.left+"px",t.style.right="",t.style.bottom=""):(t.style.right=window.innerWidth-r.left+"px",t.style.left=""):(t.style.left=r.right+1+"px",t.style.right="")},this.hideDocTooltip=function(){this.tooltipTimer.cancel();if(!this.tooltipNode)return;var e=this.tooltipNode;!this.editor.isFocused()&&document.activeElement==e&&this.editor.focus(),this.tooltipNode=null,e.parentNode&&e.parentNode.removeChild(e)},this.onTooltipClick=function(e){var t=e.target;while(t&&t!=this.tooltipNode){if(t.nodeName=="A"&&t.href){t.rel="noreferrer",t.target="_blank";break}t=t.parentNode}}}).call(l.prototype),l.startCommand={name:"startAutocomplete",exec:function(e){e.completer||(e.completer=new l),e.completer.autoInsert=!1,e.completer.autoSelect=!0,e.completer.showPopup(e),e.completer.cancelContextMenu()},bindKey:"Ctrl-Space|Ctrl-Shift-Space|Alt-Space"};var c=function(e,t){this.all=e,this.filtered=e,this.filterText=t||"",this.exactMatch=!1};(function(){this.setFilter=function(e){if(e.length>this.filterText&&e.lastIndexOf(this.filterText,0)===0)var t=this.filtered;else var t=this.all;this.filterText=e,t=this.filterCompletions(t,this.filterText),t=t.sort(function(e,t){return t.exactMatch-e.exactMatch||t.$score-e.$score||(e.caption||e.value)<(t.caption||t.value)});var n=null;t=t.filter(function(e){var t=e.snippet||e.caption||e.value;return t===n?!1:(n=t,!0)}),this.filtered=t},this.filterCompletions=function(e,t){var n=[],r=t.toUpperCase(),i=t.toLowerCase();e:for(var s=0,o;o=e[s];s++){var u=o.caption||o.value||o.snippet;if(!u)continue;var a=-1,f=0,l=0,c,h;if(this.exactMatch){if(t!==u.substr(0,t.length))continue e}else{var p=u.toLowerCase().indexOf(i);if(p>-1)l=p;else for(var d=0;d<t.length;d++){var v=u.indexOf(i[d],a+1),m=u.indexOf(r[d],a+1);c=v>=0?m<0||v<m?v:m:m;if(c<0)continue e;h=c-a-1,h>0&&(a===-1&&(l+=10),l+=h,f|=1<<d),a=c}}o.matchMask=f,o.exactMatch=l?0:1,o.$score=(o.score||0)-l,n.push(o)}return n}}).call(c.prototype),t.Autocomplete=l,t.FilteredList=c}),define("ace/autocomplete/text_completer",["require","exports","module","ace/range"],function(e,t,n){function s(e,t){var n=e.getTextRange(r.fromPoints({row:0,column:0},t));return n.split(i).length-1}function o(e,t){var n=s(e,t),r=e.getValue().split(i),o=Object.create(null),u=r[n];return r.forEach(function(e,t){if(!e||e===u)return;var i=Math.abs(n-t),s=r.length-i;o[e]?o[e]=Math.max(s,o[e]):o[e]=s}),o}var r=e("../range").Range,i=/[^a-zA-Z_0-9\$\-\u00C0-\u1FFF\u2C00-\uD7FF\w]+/;t.getCompletions=function(e,t,n,r,i){var s=o(t,n),u=Object.keys(s);i(null,u.map(function(e){return{caption:e,value:e,score:s[e],meta:"local"}}))}}),define("ace/ext/language_tools",["require","exports","module","ace/snippets","ace/autocomplete","ace/config","ace/lib/lang","ace/autocomplete/util","ace/autocomplete/text_completer","ace/editor","ace/config"],function(e,t,n){"use strict";var r=e("../snippets").snippetManager,i=e("../autocomplete").Autocomplete,s=e("../config"),o=e("../lib/lang"),u=e("../autocomplete/util"),a=e("../autocomplete/text_completer"),f={getCompletions:function(e,t,n,r,i){if(t.$mode.completer)return t.$mode.completer.getCompletions(e,t,n,r,i);var s=e.session.getState(n.row),o=t.$mode.getCompletions(s,t,n,r);i(null,o)}},l={getCompletions:function(e,t,n,i,s){var o=[],u=t.getTokenAt(n.row,n.column);u&&u.type.match(/(tag-name|tag-open|tag-whitespace|attribute-name|attribute-value)\.xml$/)?o.push("html-tag"):o=r.getActiveScopes(e);var a=r.snippetMap,f=[];o.forEach(function(e){var t=a[e]||[];for(var n=t.length;n--;){var r=t[n],i=r.name||r.tabTrigger;if(!i)continue;f.push({caption:i,snippet:r.content,meta:r.tabTrigger&&!r.name?r.tabTrigger+"\u21e5 ":"snippet",type:"snippet"})}},this),s(null,f)}
389,getDocTooltip:function(e){e.type=="snippet"&&!e.docHTML&&(e.docHTML=["<b>",o.escapeHTML(e.caption),"</b>","<hr></hr>",o.escapeHTML(e.snippet)].join(""))}},c=[l,a,f];t.setCompleters=function(e){c.length=0,e&&c.push.apply(c,e)},t.addCompleter=function(e){c.push(e)},t.textCompleter=a,t.keyWordCompleter=f,t.snippetCompleter=l;var h={name:"expandSnippet",exec:function(e){return r.expandWithTab(e)},bindKey:"Tab"},p=function(e,t){d(t.session.$mode)},d=function(e){var t=e.$id;r.files||(r.files={}),v(t),e.modes&&e.modes.forEach(d)},v=function(e){if(!e||r.files[e])return;var t=e.replace("mode","snippets");r.files[e]={},s.loadModule(t,function(t){t&&(r.files[e]=t,!t.snippets&&t.snippetText&&(t.snippets=r.parseSnippetFile(t.snippetText)),r.register(t.snippets||[],t.scope),t.includeScopes&&(r.snippetMap[t.scope].includeScopes=t.includeScopes,t.includeScopes.forEach(function(e){v("ace/mode/"+e)})))})},m=function(e){var t=e.editor,n=t.completer&&t.completer.activated;if(e.command.name==="backspace")n&&!u.getCompletionPrefix(t)&&t.completer.detach();else if(e.command.name==="insertstring"){var r=u.getCompletionPrefix(t);r&&!n&&(t.completer||(t.completer=new i),t.completer.autoInsert=!1,t.completer.showPopup(t))}},g=e("../editor").Editor;e("../config").defineOptions(g.prototype,"editor",{enableBasicAutocompletion:{set:function(e){e?(this.completers||(this.completers=Array.isArray(e)?e:c),this.commands.addCommand(i.startCommand)):this.commands.removeCommand(i.startCommand)},value:!1},enableLiveAutocompletion:{set:function(e){e?(this.completers||(this.completers=Array.isArray(e)?e:c),this.commands.on("afterExec",m)):this.commands.removeListener("afterExec",m)},value:!1},enableSnippets:{set:function(e){e?(this.commands.addCommand(h),this.on("changeMode",p),p(null,this)):(this.commands.removeCommand(h),this.off("changeMode",p))},value:!1}})}); (function() { 390 window.require(["ace/ext/language_tools"], function(m) { 391 if (typeof module == "object" && typeof exports == "object" && module) { 392 module.exports = m; 393 } 394 }); 395 })(); 396 397 398define("ace/ext/searchbox",["require","exports","module","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/keyboard/hash_handler","ace/lib/keys"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=e("../lib/lang"),s=e("../lib/event"),o='.ace_search {background-color: #ddd;color: #666;border: 1px solid #cbcbcb;border-top: 0 none;overflow: hidden;margin: 0;padding: 4px 6px 0 4px;position: absolute;top: 0;z-index: 99;white-space: normal;}.ace_search.left {border-left: 0 none;border-radius: 0px 0px 5px 0px;left: 0;}.ace_search.right {border-radius: 0px 0px 0px 5px;border-right: 0 none;right: 0;}.ace_search_form, .ace_replace_form {margin: 0 20px 4px 0;overflow: hidden;line-height: 1.9;}.ace_replace_form {margin-right: 0;}.ace_search_form.ace_nomatch {outline: 1px solid red;}.ace_search_field {border-radius: 3px 0 0 3px;background-color: white;color: black;border: 1px solid #cbcbcb;border-right: 0 none;outline: 0;padding: 0;font-size: inherit;margin: 0;line-height: inherit;padding: 0 6px;min-width: 17em;vertical-align: top;min-height: 1.8em;box-sizing: content-box;}.ace_searchbtn {border: 1px solid #cbcbcb;line-height: inherit;display: inline-block;padding: 0 6px;background: #fff;border-right: 0 none;border-left: 1px solid #dcdcdc;cursor: pointer;margin: 0;position: relative;color: #666;}.ace_searchbtn:last-child {border-radius: 0 3px 3px 0;border-right: 1px solid #cbcbcb;}.ace_searchbtn:disabled {background: none;cursor: default;}.ace_searchbtn:hover {background-color: #eef1f6;}.ace_searchbtn.prev, .ace_searchbtn.next {padding: 0px 0.7em}.ace_searchbtn.prev:after, .ace_searchbtn.next:after {content: "";border: solid 2px #888;width: 0.5em;height: 0.5em;border-width: 2px 0 0 2px;display:inline-block;transform: rotate(-45deg);}.ace_searchbtn.next:after {border-width: 0 2px 2px 0 ;}.ace_searchbtn_close {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0;border-radius: 50%;border: 0 none;color: #656565;cursor: pointer;font: 16px/16px Arial;padding: 0;height: 14px;width: 14px;top: 9px;right: 7px;position: absolute;}.ace_searchbtn_close:hover {background-color: #656565;background-position: 50% 100%;color: white;}.ace_button {margin-left: 2px;
398cursor: pointer;-webkit-user-select: none;-moz-user-select: none;-o-user-select: none;-ms-user-select: none;user-select: none;overflow: hidden;opacity: 0.7;border: 1px solid rgba(100,100,100,0.23);padding: 1px;box-sizing: border-box!important;color: black;}.ace_button:hover {background-color: #eee;opacity:1;}.ace_button:active {background-color: #ddd;}.ace_button.checked {border-color: #3399ff;opacity:1;}.ace_search_options{margin-bottom: 3px;text-align: right;-webkit-user-select: none;-moz-user-select: none;-o-user-select: none;-ms-user-select: none;user-select: none;clear: both;}.ace_search_counter {float: left;font-family: arial;padding: 0 8px;}',u=e("../keyboard/hash_handler").HashHandler,a=e("../lib/keys"),f=999;r.importCssString(o,"ace_searchbox");var l='<div class="ace_search right"> <span action="hide" class="ace_searchbtn_close"></span> <div class="ace_search_form"> <input class="ace_search_field" placeholder="Search for" spellcheck="false"></input> <span action="findPrev" class="ace_searchbtn prev"></span> <span action="findNext" class="ace_searchbtn next"></span> <span action="findAll" class="ace_searchbtn" title="Alt-Enter">All</span> </div> <div class="ace_replace_form"> <input class="ace_search_field" placeholder="Replace with" spellcheck="false"></input> <span action="replaceAndFindNext" class="ace_searchbtn">Replace</span> <span action="replaceAll" class="ace_searchbtn">All</span> </div> <div class="ace_search_options"> <span action="toggleReplace" class="ace_button" title="Toggle Replace mode" style="float:left;margin-top:-2px;padding:0 5px;">+</span> <span class="ace_search_counter"></span> <span action="toggleRegexpMode" class="ace_button" title="RegExp Search">.*</span> <span action="toggleCaseSensitive" class="ace_button" title="CaseSensitive Search">Aa</span> <span action="toggleWholeWords" class="ace_button" title="Whole Word Search">\\b</span> <span action="searchInSelection" class="ace_button" title="Search In Selection">S</span> </div></div>'.replace(/> +/g,">"),c=function(e,t,n){var i=r.createElement("div");i.innerHTML=l,this.element=i.firstChild,this.setSession=this.setSession.bind(this),this.$init(),this.setEditor(e),r.importCssString(o,"ace_searchbox",e.container)};(function(){this.setEditor=function(e){e.searchBox=this,e.renderer.scroller.appendChild(this.element),this.editor=e},this.setSession=function(e){this.searchRange=null,this.$syncOptions(!0)},this.$initElements=function(e){this.searchBox=e.querySelector(".ace_search_form"),this.replaceBox=e.querySelector(".ace_replace_form"),this.searchOption=e.querySelector("[action=searchInSelection]"),this.replaceOption=e.querySelector("[action=toggleReplace]"),this.regExpOption=e.querySelector("[action=toggleRegexpMode]"),this.caseSensitiveOption=e.querySelector("[action=toggleCaseSensitive]"),this.wholeWordOption=e.querySelector("[action=toggleWholeWords]"),this.searchInput=this.searchBox.querySelector(".ace_search_field"),this.replaceInput=this.replaceBox.querySelector(".ace_search_field"),this.searchCounter=e.querySelector(".ace_search_counter")},this.$init=function(){var e=this.element;this.$initElements(e);var t=this;s.addListener(e,"mousedown",function(e){setTimeout(function(){t.activeInput.focus()},0),s.stopPropagation(e)}),s.addListener(e,"click",function(e){var n=e.target||e.srcElement,r=n.getAttribute("action");r&&t[r]?t[r]():t.$searchBarKb.commands[r]&&t.$searchBarKb.commands[r].exec(t),s.stopPropagation(e)}),s.addCommandKeyListener(e,function(e,n,r){var i=a.keyCodeToString(r),o=t.$searchBarKb.findKeyCommand(n,i);o&&o.exec&&(o.exec(t),s.stopEvent(e))}),this.$onChange=i.delayedCall(function(){t.find(!1,!1)}),s.addListener(this.searchInput,"input",function(){t.$onChange.schedule(20)}),s.addListener(this.searchInput,"focus",function(){t.activeInput=t.searchInput,t.searchInput.value&&t.highlight()}),s.addListener(this.replaceInput,"focus",function(){t.activeInput=t.replaceInput,t.searchInput.value&&t.highlight()})},this.$closeSearchBarKb=new u([{bindKey:"Esc",name:"closeSearchBar",exec:function(e){e.searchBox.hide()}}]),this.$searchBarKb=new u,this.$searchBarKb.bindKeys({"Ctrl-f|Command-f":function(e){var t=e.isReplace=!e.isReplace;e.replaceBox.style.display=t?"":"none",e.replaceOption.checked=!1,e.$syncOptions(),e.searchInput.focus()},"Ctrl-H|Command-Option-F":function(e){if(e.editor.getReadOnly())return;e.replaceOption.checked=!0,e.$syncOptions(),e.replaceInput.focus()}
398,"Ctrl-G|Command-G":function(e){e.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(e){e.findPrev()},esc:function(e){setTimeout(function(){e.hide()})},Return:function(e){e.activeInput==e.replaceInput&&e.replace(),e.findNext()},"Shift-Return":function(e){e.activeInput==e.replaceInput&&e.replace(),e.findPrev()},"Alt-Return":function(e){e.activeInput==e.replaceInput&&e.replaceAll(),e.findAll()},Tab:function(e){(e.activeInput==e.replaceInput?e.searchInput:e.replaceInput).focus()}}),this.$searchBarKb.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(e){e.regExpOption.checked=!e.regExpOption.checked,e.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(e){e.caseSensitiveOption.checked=!e.caseSensitiveOption.checked,e.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(e){e.wholeWordOption.checked=!e.wholeWordOption.checked,e.$syncOptions()}},{name:"toggleReplace",exec:function(e){e.replaceOption.checked=!e.replaceOption.checked,e.$syncOptions()}},{name:"searchInSelection",exec:function(e){e.searchOption.checked=!e.searchRange,e.setSearchRange(e.searchOption.checked&&e.editor.getSelectionRange()),e.$syncOptions()}}]),this.setSearchRange=function(e){this.searchRange=e,e?this.searchRangeMarker=this.editor.session.addMarker(e,"ace_active-line"):this.searchRangeMarker&&(this.editor.session.removeMarker(this.searchRangeMarker),this.searchRangeMarker=null)},this.$syncOptions=function(e){r.setCssClass(this.replaceOption,"checked",this.searchRange),r.setCssClass(this.searchOption,"checked",this.searchOption.checked),this.replaceOption.textContent=this.replaceOption.checked?"-":"+",r.setCssClass(this.regExpOption,"checked",this.regExpOption.checked),r.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked),r.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked);var t=this.editor.getReadOnly();this.replaceOption.style.display=t?"none":"",this.replaceBox.style.display=this.replaceOption.checked&&!t?"":"none",this.find(!1,!1,e)},this.highlight=function(e){this.editor.session.highlight(e||this.editor.$search.$options.re),this.editor.renderer.updateBackMarkers()},this.find=function(e,t,n){var i=this.editor.find(this.searchInput.value,{skipCurrent:e,backwards:t,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked,preventScroll:n,range:this.searchRange}),s=!i&&this.searchInput.value;r.setCssClass(this.searchBox,"ace_nomatch",s),this.editor._emit("findSearchBox",{match:!s}),this.highlight(),this.updateCounter()},this.updateCounter=function(){var e=this.editor,t=e.$search.$options.re,n=0,r=0;if(t){var i=this.searchRange?e.session.getTextRange(this.searchRange):e.getValue(),s=e.session.doc.positionToIndex(e.selection.anchor);this.searchRange&&(s-=e.session.doc.positionToIndex(this.searchRange.start));var o=t.lastIndex=0,u;while(u=t.exec(i)){n++,o=u.index,o<=s&&r++;if(n>f)break;if(!u[0]){t.lastIndex=o+=1;if(o>=i.length)break}}}this.searchCounter.textContent=r+" of "+(n>f?f+"+":n)},this.findNext=function(){this.find(!0,!1)},this.findPrev=function(){this.find(!0,!0)},this.findAll=function(){var e=this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),t=!e&&this.searchInput.value;r.setCssClass(this.searchBox,"ace_nomatch",t),this.editor._emit("findSearchBox",{match:!t}),this.highlight(),this.hide()},this.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},this.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},this.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},this.hide=function(){this.active=!1,this.setSearchRange(null),this.editor.off("changeSession",this.setSession),this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},this.show=function(e,t){this.active=!0,this.editor.on("changeSession",this.setSession),this.element.style.display="",this.replaceOption.checked=t,e&&(this.searchInput.value=e),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb),this.$syncOptions(!0)},this.isFocused=function(){var e=document.activeElement;return e==this.searchInput||e==this.replaceInput}}
398).call(c.prototype),t.SearchBox=c,t.Search=function(e,t){var n=e.searchBox||new c(e);n.show(e.session.getTextRange(),t)}}); (function() { 399 window.require(["ace/ext/searchbox"], function(m) { 400 if (typeof module == "object" && typeof exports == "object" && module) { 401 module.exports = m; 402 } 403 }); 404 })(); 405 406 407define("ace/snippets/css",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet .\n ${1} {\n ${2}\n }\nsnippet !\n !important\nsnippet bdi:m+\n -moz-border-image: url(${1}) ${2:0} ${3:0} ${4:0} ${5:0} ${6:stretch} ${7:stretch};\nsnippet bdi:m\n -moz-border-image: ${1};\nsnippet bdrz:m\n -moz-border-radius: ${1};\nsnippet bxsh:m+\n -moz-box-shadow: ${1:0} ${2:0} ${3:0} #${4:000};\nsnippet bxsh:m\n -moz-box-shadow: ${1};\nsnippet bdi:w+\n -webkit-border-image: url(${1}) ${2:0} ${3:0} ${4:0} ${5:0} ${6:stretch} ${7:stretch};\nsnippet bdi:w\n -webkit-border-image: ${1};\nsnippet bdrz:w\n -webkit-border-radius: ${1};\nsnippet bxsh:w+\n -webkit-box-shadow: ${1:0} ${2:0} ${3:0} #${4:000};\nsnippet bxsh:w\n -webkit-box-shadow: ${1};\nsnippet @f\n @font-face {\n font-family: ${1};\n src: url(${2});\n }\nsnippet @i\n @import url(${1});\nsnippet @m\n @media ${1:print} {\n ${2}\n }\nsnippet bg+\n background: #${1:FFF} url(${2}) ${3:0} ${4:0} ${5:no-repeat};\nsnippet bga\n background-attachment: ${1};\nsnippet bga:f\n background-attachment: fixed;\nsnippet bga:s\n background-attachment: scroll;\nsnippet bgbk\n background-break: ${1};\nsnippet bgbk:bb\n background-break: bounding-box;\nsnippet bgbk:c\n background-break: continuous;\nsnippet bgbk:eb\n background-break: each-box;\nsnippet bgcp\n background-clip: ${1};\nsnippet bgcp:bb\n background-clip: border-box;\nsnippet bgcp:cb\n background-clip: content-box;\nsnippet bgcp:nc\n background-clip: no-clip;\nsnippet bgcp:pb\n background-clip: padding-box;\nsnippet bgc\n background-color: #${1:FFF};\nsnippet bgc:t\n background-color: transparent;\nsnippet bgi\n background-image: url(${1});\nsnippet bgi:n\n background-image: none;\nsnippet bgo\n background-origin: ${1};\nsnippet bgo:bb\n background-origin: border-box;\nsnippet bgo:cb\n background-origin: content-box;\nsnippet bgo:pb\n background-origin: padding-box;\nsnippet bgpx\n background-position-x: ${1};\nsnippet bgpy\n background-position-y: ${1};\nsnippet bgp\n background-position: ${1:0} ${2:0};\nsnippet bgr\n background-repeat: ${1};\nsnippet bgr:n\n background-repeat: no-repeat;\nsnippet bgr:x\n background-repeat: repeat-x;\nsnippet bgr:y\n background-repeat: repeat-y;\nsnippet bgr:r\n background-repeat: repeat;\nsnippet bgz\n background-size: ${1};\nsnippet bgz:a\n background-size: auto;\nsnippet bgz:ct\n background-size: contain;\nsnippet bgz:cv\n background-size: cover;\nsnippet bg\n background: ${1};\nsnippet bg:ie\n filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='${1}',sizingMethod='${2:crop}');\nsnippet bg:n\n background: none;\nsnippet bd+\n border: ${1:1px} ${2:solid} #${3:000};\nsnippet bdb+\n border-bottom: ${1:1px} ${2:solid} #${3:000};\nsnippet bdbc\n border-bottom-color: #${1:000};\nsnippet bdbi\n border-bottom-image: url(${1});\nsnippet bdbi:n\n border-bottom-image: none;\nsnippet bdbli\n border-bottom-left-image: url(${1});\nsnippet bdbli:c\n border-bottom-left-image: continue;\nsnippet bdbli:n\n border-bottom-left-image: none;\nsnippet bdblrz\n border-bottom-left-radius: ${1};\nsnippet bdbri\n border-bottom-right-image: url(${1});\nsnippet bdbri:c\n border-bottom-right-image: continue;\nsnippet bdbri:n\n border-bottom-right-image: none;\nsnippet bdbrrz\n border-bottom-right-radius: ${1};\nsnippet bdbs\n border-bottom-style: ${1};\nsnippet bdbs:n\n border-bottom-style: none;\nsnippet bdbw\n border-bottom-width: ${1};\nsnippet bdb\n border-bottom: ${1};\nsnippet bdb:n\n border-bottom: none;\nsnippet bdbk\n border-break: ${1};\nsnippet bdbk:c\n border-break: close;\nsnippet bdcl\n border-collapse: ${1};\nsnippet bdcl:c\n border-collapse: collapse;\nsnippet bdcl:s\n border-collapse: separate;\nsnippet bdc\n border-color: #${1:000};\nsnippet bdci\n border-corner-image: url(${1});\nsnippet bdci:c\n border-corner-image: continue;\nsnippet bdci:n\n border-corner-image: none;\nsnippet bdf\n border-fit: ${1};\nsnippet bdf:c\n border-fit: clip;\nsnippet bdf:of\n border-fit: overwrite;\nsnippet bdf:ow\n border-fit: overwrite;\nsnippet bdf:r\n border-fit: repeat;\nsnippet bdf:sc\n border-fit: scale;\nsnippet bdf:sp\n border-fit: space;\nsnippet bdf:st\n border-fit: stretch;\nsnippet bdi\n border-image: url(${1}) ${2:0} ${3:0} ${4:0} ${5:0} ${6:stretch} ${7:stretch};\nsnippet bdi:n\n border-image: none;\nsnippet bdl+\n border-left: ${1:1px} ${2:solid} #${3:000};\nsnippet bdlc\n border-left-color: #${1:000};\nsnippet bdli\n border-left-image: url(${1});\nsnippet bdli:n\n border-left-image: none;\nsnippet bdls\n border-left-style: ${1};\nsnippet bdls:n\n border-left-style: none;\nsnippet bdlw\n border-left-width: ${1};\nsnippet bdl\n border-left: ${1};\nsnippet bdl:n\n border-left: none;\nsnippet bdlt\n border-length: ${1};\nsnippet bdlt:a\n border-length: auto;\nsnippet bdrz\n border-radius: ${1};\nsnippet bdr+\n border-right: ${1:1px} ${2:solid} #${3:000};\nsnippet bdrc\n border-right-color: #${1:000};\nsnippet bdri\n border-right-image: url(${1});\nsnippet bdri:n\n border-right-image: none;\nsnippet bdrs\n border-right-style: ${1};\nsnippet bdrs:n\n border-right-style: none;\nsnippet bdrw\n border-right-width: ${1};\nsnippet bdr\n border-right: ${1};
407\nsnippet bdr:n\n border-right: none;\nsnippet bdsp\n border-spacing: ${1};\nsnippet bds\n border-style: ${1};\nsnippet bds:ds\n border-style: dashed;\nsnippet bds:dtds\n border-style: dot-dash;\nsnippet bds:dtdtds\n border-style: dot-dot-dash;\nsnippet bds:dt\n border-style: dotted;\nsnippet bds:db\n border-style: double;\nsnippet bds:g\n border-style: groove;\nsnippet bds:h\n border-style: hidden;\nsnippet bds:i\n border-style: inset;\nsnippet bds:n\n border-style: none;\nsnippet bds:o\n border-style: outset;\nsnippet bds:r\n border-style: ridge;\nsnippet bds:s\n border-style: solid;\nsnippet bds:w\n border-style: wave;\nsnippet bdt+\n border-top: ${1:1px} ${2:solid} #${3:000};\nsnippet bdtc\n border-top-color: #${1:000};\nsnippet bdti\n border-top-image: url(${1});\nsnippet bdti:n\n border-top-image: none;\nsnippet bdtli\n border-top-left-image: url(${1});\nsnippet bdtli:c\n border-corner-image: continue;\nsnippet bdtli:n\n border-corner-image: none;\nsnippet bdtlrz\n border-top-left-radius: ${1};\nsnippet bdtri\n border-top-right-image: url(${1});\nsnippet bdtri:c\n border-top-right-image: continue;\nsnippet bdtri:n\n border-top-right-image: none;\nsnippet bdtrrz\n border-top-right-radius: ${1};\nsnippet bdts\n border-top-style: ${1};\nsnippet bdts:n\n border-top-style: none;\nsnippet bdtw\n border-top-width: ${1};\nsnippet bdt\n border-top: ${1};\nsnippet bdt:n\n border-top: none;\nsnippet bdw\n border-width: ${1};\nsnippet bd\n border: ${1};\nsnippet bd:n\n border: none;\nsnippet b\n bottom: ${1};\nsnippet b:a\n bottom: auto;\nsnippet bxsh+\n box-shadow: ${1:0} ${2:0} ${3:0} #${4:000};\nsnippet bxsh\n box-shadow: ${1};\nsnippet bxsh:n\n box-shadow: none;\nsnippet bxz\n box-sizing: ${1};\nsnippet bxz:bb\n box-sizing: border-box;\nsnippet bxz:cb\n box-sizing: content-box;\nsnippet cps\n caption-side: ${1};\nsnippet cps:b\n caption-side: bottom;\nsnippet cps:t\n caption-side: top;\nsnippet cl\n clear: ${1};\nsnippet cl:b\n clear: both;\nsnippet cl:l\n clear: left;\nsnippet cl:n\n clear: none;\nsnippet cl:r\n clear: right;\nsnippet cp\n clip: ${1};\nsnippet cp:a\n clip: auto;\nsnippet cp:r\n clip: rect(${1:0} ${2:0} ${3:0} ${4:0});\nsnippet c\n color: #${1:000};\nsnippet ct\n content: ${1};\nsnippet ct:a\n content: attr(${1});\nsnippet ct:cq\n content: close-quote;\nsnippet ct:c\n content: counter(${1});\nsnippet ct:cs\n content: counters(${1});\nsnippet ct:ncq\n content: no-close-quote;\nsnippet ct:noq\n content: no-open-quote;\nsnippet ct:n\n content: normal;\nsnippet ct:oq\n content: open-quote;\nsnippet coi\n counter-increment: ${1};\nsnippet cor\n counter-reset: ${1};\nsnippet cur\n cursor: ${1};\nsnippet cur:a\n cursor: auto;\nsnippet cur:c\n cursor: crosshair;\nsnippet cur:d\n cursor: default;\nsnippet cur:ha\n cursor: hand;\nsnippet cur:he\n cursor: help;\nsnippet cur:m\n cursor: move;\nsnippet cur:p\n cursor: pointer;\nsnippet cur:t\n cursor: text;\nsnippet d\n display: ${1};\nsnippet d:mib\n display: -moz-inline-box;\nsnippet d:mis\n display: -moz-inline-stack;\nsnippet d:b\n display: block;\nsnippet d:cp\n display: compact;\nsnippet d:ib\n display: inline-block;\nsnippet d:itb\n display: inline-table;\nsnippet d:i\n display: inline;\nsnippet d:li\n display: list-item;\nsnippet d:n\n display: none;\nsnippet d:ri\n display: run-in;\nsnippet d:tbcp\n display: table-caption;\nsnippet d:tbc\n display: table-cell;\nsnippet d:tbclg\n display: table-column-group;\nsnippet d:tbcl\n display: table-column;\nsnippet d:tbfg\n display: table-footer-group;\nsnippet d:tbhg\n display: table-header-group;\nsnippet d:tbrg\n display: table-row-group;\nsnippet d:tbr\n display: table-row;\nsnippet d:tb\n display: table;\nsnippet ec\n empty-cells: ${1};\nsnippet ec:h\n empty-cells: hide;\nsnippet ec:s\n empty-cells: show;\nsnippet exp\n expression()\nsnippet fl\n float: ${1};\nsnippet fl:l\n float: left;\nsnippet fl:n\n float: none;\nsnippet fl:r\n float: right;\nsnippet f+\n font: ${1:1em} ${2:Arial},${3:sans-serif};\nsnippet fef\n font-effect: ${1};\nsnippet fef:eb\n font-effect: emboss;\nsnippet fef:eg\n font-effect: engrave;\nsnippet fef:n\n font-effect: none;\nsnippet fef:o\n font-effect: outline;\nsnippet femp\n font-emphasize-position: ${1};\nsnippet femp:a\n font-emphasize-position: after;\nsnippet femp:b\n font-emphasize-position: before;\nsnippet fems\n font-emphasize-style: ${1};\nsnippet fems:ac\n font-emphasize-style: accent;
407\nsnippet fems:c\n font-emphasize-style: circle;\nsnippet fems:ds\n font-emphasize-style: disc;\nsnippet fems:dt\n font-emphasize-style: dot;\nsnippet fems:n\n font-emphasize-style: none;\nsnippet fem\n font-emphasize: ${1};\nsnippet ff\n font-family: ${1};\nsnippet ff:c\n font-family: ${1:'Monotype Corsiva','Comic Sans MS'},cursive;\nsnippet ff:f\n font-family: ${1:Capitals,Impact},fantasy;\nsnippet ff:m\n font-family: ${1:Monaco,'Courier New'},monospace;\nsnippet ff:ss\n font-family: ${1:Helvetica,Arial},sans-serif;\nsnippet ff:s\n font-family: ${1:Georgia,'Times New Roman'},serif;\nsnippet fza\n font-size-adjust: ${1};\nsnippet fza:n\n font-size-adjust: none;\nsnippet fz\n font-size: ${1};\nsnippet fsm\n font-smooth: ${1};\nsnippet fsm:aw\n font-smooth: always;\nsnippet fsm:a\n font-smooth: auto;\nsnippet fsm:n\n font-smooth: never;\nsnippet fst\n font-stretch: ${1};\nsnippet fst:c\n font-stretch: condensed;\nsnippet fst:e\n font-stretch: expanded;\nsnippet fst:ec\n font-stretch: extra-condensed;\nsnippet fst:ee\n font-stretch: extra-expanded;\nsnippet fst:n\n font-stretch: normal;\nsnippet fst:sc\n font-stretch: semi-condensed;\nsnippet fst:se\n font-stretch: semi-expanded;\nsnippet fst:uc\n font-stretch: ultra-condensed;\nsnippet fst:ue\n font-stretch: ultra-expanded;\nsnippet fs\n font-style: ${1};\nsnippet fs:i\n font-style: italic;\nsnippet fs:n\n font-style: normal;\nsnippet fs:o\n font-style: oblique;\nsnippet fv\n font-variant: ${1};\nsnippet fv:n\n font-variant: normal;\nsnippet fv:sc\n font-variant: small-caps;\nsnippet fw\n font-weight: ${1};\nsnippet fw:b\n font-weight: bold;\nsnippet fw:br\n font-weight: bolder;\nsnippet fw:lr\n font-weight: lighter;\nsnippet fw:n\n font-weight: normal;\nsnippet f\n font: ${1};\nsnippet h\n height: ${1};\nsnippet h:a\n height: auto;\nsnippet l\n left: ${1};\nsnippet l:a\n left: auto;\nsnippet lts\n letter-spacing: ${1};\nsnippet lh\n line-height: ${1};\nsnippet lisi\n list-style-image: url(${1});\nsnippet lisi:n\n list-style-image: none;\nsnippet lisp\n list-style-position: ${1};\nsnippet lisp:i\n list-style-position: inside;\nsnippet lisp:o\n list-style-position: outside;\nsnippet list\n list-style-type: ${1};\nsnippet list:c\n list-style-type: circle;\nsnippet list:dclz\n list-style-type: decimal-leading-zero;\nsnippet list:dc\n list-style-type: decimal;\nsnippet list:d\n list-style-type: disc;\nsnippet list:lr\n list-style-type: lower-roman;\nsnippet list:n\n list-style-type: none;\nsnippet list:s\n list-style-type: square;\nsnippet list:ur\n list-style-type: upper-roman;\nsnippet lis\n list-style: ${1};\nsnippet lis:n\n list-style: none;\nsnippet mb\n margin-bottom: ${1};\nsnippet mb:a\n margin-bottom: auto;\nsnippet ml\n margin-left: ${1};\nsnippet ml:a\n margin-left: auto;\nsnippet mr\n margin-right: ${1};\nsnippet mr:a\n margin-right: auto;\nsnippet mt\n margin-top: ${1};\nsnippet mt:a\n margin-top: auto;\nsnippet m\n margin: ${1};\nsnippet m:4\n margin: ${1:0} ${2:0} ${3:0} ${4:0};\nsnippet m:3\n margin: ${1:0} ${2:0} ${3:0};\nsnippet m:2\n margin: ${1:0} ${2:0};\nsnippet m:0\n margin: 0;\nsnippet m:a\n margin: auto;\nsnippet mah\n max-height: ${1};\nsnippet mah:n\n max-height: none;\nsnippet maw\n max-width: ${1};\nsnippet maw:n\n max-width: none;\nsnippet mih\n min-height: ${1};\nsnippet miw\n min-width: ${1};\nsnippet op\n opacity: ${1};\nsnippet op:ie\n filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=${1:100});\nsnippet op:ms\n -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=${1:100})';\nsnippet orp\n orphans: ${1};\nsnippet o+\n outline: ${1:1px} ${2:solid} #${3:000};\nsnippet oc\n outline-color: ${1:#000};\nsnippet oc:i\n outline-color: invert;\nsnippet oo\n outline-offset: ${1};\nsnippet os\n outline-style: ${1};\nsnippet ow\n outline-width: ${1};\nsnippet o\n outline: ${1};\nsnippet o:n\n outline: none;\nsnippet ovs\n overflow-style: ${1};\nsnippet ovs:a\n overflow-style: auto;\nsnippet ovs:mq\n overflow-style: marquee;\nsnippet ovs:mv\n overflow-style: move;\nsnippet ovs:p\n overflow-style: panner;\nsnippet ovs:s\n overflow-style: scrollbar;\nsnippet ovx\n overflow-x: ${1};\nsnippet ovx:a\n overflow-x: auto;\nsnippet ovx:h\n overflow-x: hidden;\nsnippet ovx:s\n overflow-x: scroll;\nsnippet ovx:v\n overflow-x: visible;\nsnippet ovy\n overflow-y: ${1};\nsnippet ovy:a\n overflow-y: auto;\nsnippet ovy:h\n overflow-y: hidden;
407\nsnippet ovy:s\n overflow-y: scroll;\nsnippet ovy:v\n overflow-y: visible;\nsnippet ov\n overflow: ${1};\nsnippet ov:a\n overflow: auto;\nsnippet ov:h\n overflow: hidden;\nsnippet ov:s\n overflow: scroll;\nsnippet ov:v\n overflow: visible;\nsnippet pb\n padding-bottom: ${1};\nsnippet pl\n padding-left: ${1};\nsnippet pr\n padding-right: ${1};\nsnippet pt\n padding-top: ${1};\nsnippet p\n padding: ${1};\nsnippet p:4\n padding: ${1:0} ${2:0} ${3:0} ${4:0};\nsnippet p:3\n padding: ${1:0} ${2:0} ${3:0};\nsnippet p:2\n padding: ${1:0} ${2:0};\nsnippet p:0\n padding: 0;\nsnippet pgba\n page-break-after: ${1};\nsnippet pgba:aw\n page-break-after: always;\nsnippet pgba:a\n page-break-after: auto;\nsnippet pgba:l\n page-break-after: left;\nsnippet pgba:r\n page-break-after: right;\nsnippet pgbb\n page-break-before: ${1};\nsnippet pgbb:aw\n page-break-before: always;\nsnippet pgbb:a\n page-break-before: auto;\nsnippet pgbb:l\n page-break-before: left;\nsnippet pgbb:r\n page-break-before: right;\nsnippet pgbi\n page-break-inside: ${1};\nsnippet pgbi:a\n page-break-inside: auto;\nsnippet pgbi:av\n page-break-inside: avoid;\nsnippet pos\n position: ${1};\nsnippet pos:a\n position: absolute;\nsnippet pos:f\n position: fixed;\nsnippet pos:r\n position: relative;\nsnippet pos:s\n position: static;\nsnippet q\n quotes: ${1};\nsnippet q:en\n quotes: '\\201C' '\\201D' '\\2018' '\\2019';\nsnippet q:n\n quotes: none;\nsnippet q:ru\n quotes: '\\00AB' '\\00BB' '\\201E' '\\201C';\nsnippet rz\n resize: ${1};\nsnippet rz:b\n resize: both;\nsnippet rz:h\n resize: horizontal;\nsnippet rz:n\n resize: none;\nsnippet rz:v\n resize: vertical;\nsnippet r\n right: ${1};\nsnippet r:a\n right: auto;\nsnippet tbl\n table-layout: ${1};\nsnippet tbl:a\n table-layout: auto;\nsnippet tbl:f\n table-layout: fixed;\nsnippet tal\n text-align-last: ${1};\nsnippet tal:a\n text-align-last: auto;\nsnippet tal:c\n text-align-last: center;\nsnippet tal:l\n text-align-last: left;\nsnippet tal:r\n text-align-last: right;\nsnippet ta\n text-align: ${1};\nsnippet ta:c\n text-align: center;\nsnippet ta:l\n text-align: left;\nsnippet ta:r\n text-align: right;\nsnippet td\n text-decoration: ${1};\nsnippet td:l\n text-decoration: line-through;\nsnippet td:n\n text-decoration: none;\nsnippet td:o\n text-decoration: overline;\nsnippet td:u\n text-decoration: underline;\nsnippet te\n text-emphasis: ${1};\nsnippet te:ac\n text-emphasis: accent;
407\nsnippet te:a\n text-emphasis: after;\nsnippet te:b\n text-emphasis: before;\nsnippet te:c\n text-emphasis: circle;\nsnippet te:ds\n text-emphasis: disc;\nsnippet te:dt\n text-emphasis: dot;\nsnippet te:n\n text-emphasis: none;\nsnippet th\n text-height: ${1};\nsnippet th:a\n text-height: auto;\nsnippet th:f\n text-height: font-size;\nsnippet th:m\n text-height: max-size;\nsnippet th:t\n text-height: text-size;\nsnippet ti\n text-indent: ${1};\nsnippet ti:-\n text-indent: -9999px;\nsnippet tj\n text-justify: ${1};\nsnippet tj:a\n text-justify: auto;\nsnippet tj:d\n text-justify: distribute;\nsnippet tj:ic\n text-justify: inter-cluster;\nsnippet tj:ii\n text-justify: inter-ideograph;\nsnippet tj:iw\n text-justify: inter-word;\nsnippet tj:k\n text-justify: kashida;\nsnippet tj:t\n text-justify: tibetan;\nsnippet to+\n text-outline: ${1:0} ${2:0} #${3:000};\nsnippet to\n text-outline: ${1};\nsnippet to:n\n text-outline: none;\nsnippet tr\n text-replace: ${1};\nsnippet tr:n\n text-replace: none;\nsnippet tsh+\n text-shadow: ${1:0} ${2:0} ${3:0} #${4:000};\nsnippet tsh\n text-shadow: ${1};\nsnippet tsh:n\n text-shadow: none;\nsnippet tt\n text-transform: ${1};\nsnippet tt:c\n text-transform: capitalize;\nsnippet tt:l\n text-transform: lowercase;\nsnippet tt:n\n text-transform: none;\nsnippet tt:u\n text-transform: uppercase;\nsnippet tw\n text-wrap: ${1};\nsnippet tw:no\n text-wrap: none;\nsnippet tw:n\n text-wrap: normal;\nsnippet tw:s\n text-wrap: suppress;\nsnippet tw:u\n text-wrap: unrestricted;\nsnippet t\n top: ${1};\nsnippet t:a\n top: auto;\nsnippet va\n vertical-align: ${1};\nsnippet va:bl\n vertical-align: baseline;\nsnippet va:b\n vertical-align: bottom;\nsnippet va:m\n vertical-align: middle;\nsnippet va:sub\n vertical-align: sub;\nsnippet va:sup\n vertical-align: super;\nsnippet va:tb\n vertical-align: text-bottom;\nsnippet va:tt\n vertical-align: text-top;\nsnippet va:t\n vertical-align: top;\nsnippet v\n visibility: ${1};\nsnippet v:c\n visibility: collapse;\nsnippet v:h\n visibility: hidden;\nsnippet v:v\n visibility: visible;\nsnippet whsc\n white-space-collapse: ${1};\nsnippet whsc:ba\n white-space-collapse: break-all;\nsnippet whsc:bs\n white-space-collapse: break-strict;\nsnippet whsc:k\n white-space-collapse: keep-all;\nsnippet whsc:l\n white-space-collapse: loose;\nsnippet whsc:n\n white-space-collapse: normal;\nsnippet whs\n white-space: ${1};\nsnippet whs:n\n white-space: normal;\nsnippet whs:nw\n white-space: nowrap;\nsnippet whs:pl\n white-space: pre-line;\nsnippet whs:pw\n white-space: pre-wrap;\nsnippet whs:p\n white-space: pre;\nsnippet wid\n widows: ${1};\nsnippet w\n width: ${1};\nsnippet w:a\n width: auto;\nsnippet wob\n word-break: ${1};\nsnippet wob:ba\n word-break: break-all;\nsnippet wob:bs\n word-break: break-strict;\nsnippet wob:k\n word-break: keep-all;\nsnippet wob:l\n word-break: loose;\nsnippet wob:n\n word-break: normal;\nsnippet wos\n word-spacing: ${1};\nsnippet wow\n word-wrap: ${1};\nsnippet wow:no\n word-wrap: none;\nsnippet wow:n\n word-wrap: normal;\nsnippet wow:s\n word-wrap: suppress;\nsnippet wow:u\n word-wrap: unrestricted;\nsnippet z\n z-index: ${1};\nsnippet z:a\n z-index: auto;\nsnippet zoo\n zoom: 1;\n",t.scope="css"}); (function() { 408 window.require(["ace/snippets/css"], function(m) { 409 if (typeof module == "object" && typeof exports == "object" && module) { 410 module.exports = m; 411 } 412 }); 413 })(); 414 415 416define("ace/snippets/html",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Some useful Unicode entities\n# Non-Breaking Space\nsnippet nbs\n \n# \u2190\nsnippet left\n ←\n# \u2192\nsnippet right\n →\n# \u2191\nsnippet up\n ↑\n# \u2193\nsnippet down\n ↓\n# \u21a9\nsnippet return\n ↩\n# \u21e4\nsnippet backtab\n ⇤\n# \u21e5\nsnippet tab\n ⇥\n# \u21e7\nsnippet shift\n ⇧\n# \u2303\nsnippet ctrl\n ⌃\n# \u2305\nsnippet enter\n ⌅\n# \u2318\nsnippet cmd\n ⌘
416\n# \u2325\nsnippet option\n ⌥\n# \u2326\nsnippet delete\n ⌦\n# \u232b\nsnippet backspace\n ⌫\n# \u238b\nsnippet esc\n ⎋\n# Generic Doctype\nsnippet doctype HTML 4.01 Strict\n <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"\n "http://www.w3.org/TR/html4/strict.dtd">\nsnippet doctype HTML 4.01 Transitional\n <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"\n "http://www.w3.org/TR/html4/loose.dtd">\nsnippet doctype HTML 5\n <!DOCTYPE HTML>\nsnippet doctype XHTML 1.0 Frameset\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\n "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\nsnippet doctype XHTML 1.0 Strict\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\n "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\nsnippet doctype XHTML 1.0 Transitional\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"\n "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\nsnippet doctype XHTML 1.1\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\n "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\n# HTML Doctype 4.01 Strict\nsnippet docts\n <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"\n "http://www.w3.org/TR/html4/strict.dtd">\n# HTML Doctype 4.01 Transitional\nsnippet doct\n <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"\n "http://www.w3.org/TR/html4/loose.dtd">\n# HTML Doctype 5\nsnippet doct5\n <!DOCTYPE html>\n# XHTML Doctype 1.0 Frameset\nsnippet docxf\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"\n "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">\n# XHTML Doctype 1.0 Strict\nsnippet docxs\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\n "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\n# XHTML Doctype 1.0 Transitional\nsnippet docxt\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"\n "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n# XHTML Doctype 1.1\nsnippet docx\n <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\n "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\n# html5shiv\nsnippet html5shiv\n <!--[if lte IE 8]>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js"><\/script>\n <![endif]-->\nsnippet html5printshiv\n <!--[if lte IE 8]>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"><\/script>\n <![endif]-->\n# Attributes\nsnippet attr\n ${1:attribute}="${2:property}"\nsnippet attr+\n ${1:attribute}="${2:property}" attr+${3}\nsnippet .\n class="${1}"${2}\nsnippet #\n id="${1}"${2}\nsnippet alt\n alt="${1}"${2}\nsnippet charset\n charset="${1:utf-8}"${2}
416\nsnippet data\n data-${1}="${2:$1}"${3}\nsnippet for\n for="${1}"${2}\nsnippet height\n height="${1}"${2}\nsnippet href\n href="${1:#}"${2}\nsnippet lang\n lang="${1:en}"${2}\nsnippet media\n media="${1}"${2}\nsnippet name\n name="${1}"${2}\nsnippet rel\n rel="${1}"${2}\nsnippet scope\n scope="${1:row}"${2}\nsnippet src\n src="${1}"${2}\nsnippet title=\n title="${1}"${2}\nsnippet type\n type="${1}"${2}\nsnippet value\n value="${1}"${2}\nsnippet width\n width="${1}"${2}\n# Elements\nsnippet a\n <a href="${1:#}">${2:$1}</a>\nsnippet a.\n <a class="${1}" href="${2:#}">${3:$1}</a>\nsnippet a#\n <a id="${1}" href="${2:#}">${3:$1}</a>\nsnippet a:ext\n <a href="http://${1:example.com}">${2:$1}</a>\nsnippet a:mail\n <a href="mailto:${1:[email protected]}?subject=${2:feedback}">${3:email me}</a>\nsnippet abbr\n <abbr title="${1}">${2}</abbr>\nsnippet address\n <address>\n ${1}\n </address>\nsnippet area\n <area shape="${1:rect}" coords="${2}" href="${3}" alt="${4}" />\nsnippet area+\n <area shape="${1:rect}" coords="${2}" href="${3}" alt="${4}" />\n area+${5}\nsnippet area:c\n <area shape="circle" coords="${1}" href="${2}" alt="${3}" />\nsnippet area:d\n <area shape="default" coords="${1}" href="${2}" alt="${3}" />\nsnippet area:p\n <area shape="poly" coords="${1}" href="${2}" alt="${3}" />\nsnippet area:r\n <area shape="rect" coords="${1}" href="${2}" alt="${3}" />\nsnippet article\n <article>\n ${1}\n </article>\nsnippet article.\n <article class="${1}">\n ${2}\n </article>\nsnippet article#\n <article id="${1}">\n ${2}\n </article>\nsnippet aside\n <aside>\n ${1}\n </aside>\nsnippet aside.\n <aside class="${1}">\n ${2}\n </aside>\nsnippet aside#\n <aside id="${1}">\n ${2}\n </aside>\nsnippet audio\n <audio src="${1}>${2}</audio>\nsnippet b\n <b>${1}</b>\nsnippet base\n <base href="${1}" target="${2}" />\nsnippet bdi\n <bdi>${1}</bdo>\nsnippet bdo\n <bdo dir="${1}">${2}</bdo>\nsnippet bdo:l\n <bdo dir="ltr">${1}</bdo>\nsnippet bdo:r\n <bdo dir="rtl">${1}</bdo>\nsnippet blockquote\n <blockquote>\n ${1}\n </blockquote>\nsnippet body\n <body>\n ${1}\n </body>\nsnippet br\n <br />${1}\nsnippet button\n <button type="${1:submit}">${2}</button>\nsnippet button.\n <button class="${1:button}" type="${2:submit}">${3}</button>\nsnippet button#\n <button id="${1}" type="${2:submit}">${3}</button>\nsnippet button:s\n <button type="submit">${1}</button>\nsnippet button:r\n <button type="reset">${1}</button>\nsnippet canvas\n <canvas>\n ${1}\n </canvas>\nsnippet caption\n <caption>${1}</caption>\nsnippet cite\n <cite>${1}</cite>\nsnippet code\n <code>${1}</code>\nsnippet col\n <col />${1}\nsnippet col+\n <col />\n col+${1}\nsnippet colgroup\n <colgroup>\n ${1}\n </colgroup>\nsnippet colgroup+\n <colgroup>\n <col />\n col+${1}\n </colgroup>\nsnippet command\n <command type="command" label="${1}" icon="${2}" />\nsnippet command:c\n <command type="checkbox" label="${1}" icon="${2}" />\nsnippet command:r\n <command type="radio" radiogroup="${1}" label="${2}" icon="${3}" />\nsnippet datagrid\n <datagrid>\n ${1}\n </datagrid>\nsnippet datalist\n <datalist>\n ${1}\n </datalist>\nsnippet datatemplate\n <datatemplate>\n ${1}\n </datatemplate>\nsnippet dd\n <dd>${1}</dd>\nsnippet dd.\n <dd class="${1}">${2}</dd>\nsnippet dd#\n <dd id="${1}">${2}</dd>\nsnippet del\n <del>${1}</del>\nsnippet details\n <details>${1}</details>\nsnippet dfn\n <dfn>${1}</dfn>\nsnippet dialog\n <dialog>\n ${1}\n </dialog>\nsnippet div\n <div>\n ${1}\n </div>\nsnippet div.\n <div class="${1}">\n ${2}\n </div>\nsnippet div#\n <div id="${1}">\n ${2}\n </div>\nsnippet dl\n <dl>\n ${1}\n </dl>\nsnippet dl.\n <dl class="${1}">\n ${2}\n </dl>\nsnippet dl#\n <dl id="${1}">\n ${2}\n </dl>\nsnippet dl+\n <dl>\n <dt>${1}</dt>\n <dd>${2}</dd>\n dt+${3}\n </dl>\nsnippet dt\n <dt>${1}</dt>\nsnippet dt.\n <dt class="${1}">${2}</dt>\nsnippet dt#\n <dt id="${1}">${2}</dt>\nsnippet dt+\n <dt>${1}</dt>\n <dd>${2}</dd>\n dt+${3}\nsnippet em\n <em>${1}</em>\nsnippet embed\n <embed src=${1} type="${2} />\nsnippet fieldset\n <fieldset>\n ${1}\n </fieldset>\nsnippet fieldset.\n <fieldset class="${1}">\n ${2}\n </fieldset>
416\nsnippet fieldset#\n <fieldset id="${1}">\n ${2}\n </fieldset>\nsnippet fieldset+\n <fieldset>\n <legend><span>${1}</span></legend>\n ${2}\n </fieldset>\n fieldset+${3}\nsnippet figcaption\n <figcaption>${1}</figcaption>\nsnippet figure\n <figure>${1}</figure>\nsnippet footer\n <footer>\n ${1}\n </footer>\nsnippet footer.\n <footer class="${1}">\n ${2}\n </footer>\nsnippet footer#\n <footer id="${1}">\n ${2}\n </footer>\nsnippet form\n <form action="${1}" method="${2:get}" accept-charset="utf-8">\n ${3}\n </form>\nsnippet form.\n <form class="${1}" action="${2}" method="${3:get}" accept-charset="utf-8">\n ${4}\n </form>\nsnippet form#\n <form id="${1}" action="${2}" method="${3:get}" accept-charset="utf-8">\n ${4}\n </form>\nsnippet h1\n <h1>${1}</h1>\nsnippet h1.\n <h1 class="${1}">${2}</h1>\nsnippet h1#\n <h1 id="${1}">${2}</h1>\nsnippet h2\n <h2>${1}</h2>\nsnippet h2.\n <h2 class="${1}">${2}</h2>\nsnippet h2#\n <h2 id="${1}">${2}</h2>\nsnippet h3\n <h3>${1}</h3>\nsnippet h3.\n <h3 class="${1}">${2}</h3>\nsnippet h3#\n <h3 id="${1}">${2}</h3>\nsnippet h4\n <h4>${1}</h4>\nsnippet h4.\n <h4 class="${1}">${2}</h4>\nsnippet h4#\n <h4 id="${1}">${2}</h4>\nsnippet h5\n <h5>${1}</h5>\nsnippet h5.\n <h5 class="${1}">${2}</h5>\nsnippet h5#\n <h5 id="${1}">${2}</h5>\nsnippet h6\n <h6>${1}</h6>\nsnippet h6.\n <h6 class="${1}">${2}</h6>\nsnippet h6#\n <h6 id="${1}">${2}</h6>\nsnippet head\n <head>\n <meta http-equiv="content-type" content="text/html; charset=utf-8" />\n\n <title>${1:`substitute(Filename(\'\', \'Page Title\'), \'^.\', \'\\u&\', \'\')`}</title>\n ${2}\n </head>\nsnippet header\n <header>\n ${1}\n </header>\nsnippet header.\n <header class="${1}">\n ${2}\n </header>\nsnippet header#\n <header id="${1}">\n ${2}\n </header>\nsnippet hgroup\n <hgroup>\n ${1}\n </hgroup>\nsnippet hgroup.\n <hgroup class="${1}>\n ${2}\n </hgroup>\nsnippet hr\n <hr />${1}\nsnippet html\n <html>\n ${1}\n </html>\nsnippet xhtml\n <html xmlns="http://www.w3.org/1999/xhtml">\n ${1}\n </html>\nsnippet html5\n <!DOCTYPE html>\n <html>\n <head>\n <meta http-equiv="content-type" content="text/html; charset=utf-8" />\n <title>${1:`substitute(Filename(\'\', \'Page Title\'), \'^.\', \'\\u&\', \'\')`}</title>\n ${2:meta}\n </head>\n <body>\n ${3:body}\n </body>\n </html>\nsnippet xhtml5\n <!DOCTYPE html>\n <html xmlns="http://www.w3.org/1999/xhtml">\n <head>\n <meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" />\n <title>${1:`substitute(Filename(\'\', \'Page Title\'), \'^.\', \'\\u&\', \'\')`}</title>\n ${2:meta}\n </head>\n <body>\n ${3:body}\n </body>\n </html>\nsnippet i\n <i>${1}</i>\nsnippet iframe\n <iframe src="${1}" frameborder="0"></iframe>${2}\nsnippet iframe.\n <iframe class="${1}" src="${2}" frameborder="0"></iframe>${3}\nsnippet iframe#\n <iframe id="${1}" src="${2}" frameborder="0"></iframe>${3}\nsnippet img\n <img src="${1}" alt="${2}" />${3}\nsnippet img.\n <img class="${1}" src="${2}" alt="${3}" />${4}\nsnippet img#\n <img id="${1}" src="${2}" alt="${3}" />${4}\nsnippet input\n <input type="${1:text/submit/hidden/button/image}" name="${2}" id="${3:$2}" value="${4}" />${5}\nsnippet input.\n <input class="${1}" type="${2:text/submit/hidden/button/image}" name="${3}" id="${4:$3}" value="${5}" />${6}\nsnippet input:text\n <input type="text" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:submit\n <input type="submit" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:hidden\n <input type="hidden" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:button\n <input type="button" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:image\n <input type="image" name="${1}" id="${2:$1}" src="${3}" alt="${4}" />${5}\nsnippet input:checkbox\n <input type="checkbox" name="${1}" id="${2:$1}" />${3}\nsnippet input:radio\n <input type="radio" name="${1}" id="${2:$1}" />${3}\nsnippet input:color\n <input type="color" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:date\n <input type="date" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:datetime\n <input type="datetime" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:datetime-local\n <input type="datetime-local" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:email\n <input type="email" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:file\n <input type="file" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:month\n <input type="month" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:number\n <input type="number" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:password\n <input type="password" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:range\n <input type="range" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:reset\n <input type="reset" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:search\n <input type="search" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:time\n <input type="time" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:url\n <input type="url" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet input:week\n <input type="week" name="${1}" id="${2:$1}" value="${3}" />${4}\nsnippet ins\n <ins>${1}</ins>\nsnippet kbd\n <kbd>${1}</kbd>\nsnippet keygen\n <keygen>${1}</keygen>\nsnippet label\n <label for="${2:$1}">${1}</label>\nsnippet label:i\n <label for="${2:$1}">${1}</label>\n <input type="${3:text/submit/hidden/button}" name="${4:$2}" id="${5:$2}" value="${6}" />${7}\nsnippet label:s\n <label for="${2:$1}">${1}</label>\n <select name="${3:$2}" id="${4:$2}">\n <option value="${5}">${6:$5}</option>\n </select>\nsnippet legend\n <legend>${1}</legend>\nsnippet legend+\n <legend><span>${1}</span></legend>\nsnippet li\n <li>${1}</li>\nsnippet li.\n <li class="${1}">${2}</li>\nsnippet li+\n <li>${1}</li>\n li+${2}
416\nsnippet lia\n <li><a href="${2:#}">${1}</a></li>\nsnippet lia+\n <li><a href="${2:#}">${1}</a></li>\n lia+${3}\nsnippet link\n <link rel="${1}" href="${2}" title="${3}" type="${4}" />${5}\nsnippet link:atom\n <link rel="alternate" href="${1:atom.xml}" title="Atom" type="application/atom+xml" />${2}\nsnippet link:css\n <link rel="stylesheet" href="${2:style.css}" type="text/css" media="${3:all}" />${4}\nsnippet link:favicon\n <link rel="shortcut icon" href="${1:favicon.ico}" type="image/x-icon" />${2}\nsnippet link:rss\n <link rel="alternate" href="${1:rss.xml}" title="RSS" type="application/atom+xml" />${2}\nsnippet link:touch\n <link rel="apple-touch-icon" href="${1:favicon.png}" />${2}\nsnippet map\n <map name="${1}">\n ${2}\n </map>\nsnippet map.\n <map class="${1}" name="${2}">\n ${3}\n </map>\nsnippet map#\n <map name="${1}" id="${2:$1}>\n ${3}\n </map>\nsnippet map+\n <map name="${1}">\n <area shape="${2}" coords="${3}" href="${4}" alt="${5}" />${6}\n </map>${7}\nsnippet mark\n <mark>${1}</mark>\nsnippet menu\n <menu>\n ${1}\n </menu>\nsnippet menu:c\n <menu type="context">\n ${1}\n </menu>\nsnippet menu:t\n <menu type="toolbar">\n ${1}\n </menu>\nsnippet meta\n <meta http-equiv="${1}" content="${2}" />${3}\nsnippet meta:compat\n <meta http-equiv="X-UA-Compatible" content="IE=${1:7,8,edge}" />${3}\nsnippet meta:refresh\n <meta http-equiv="refresh" content="text/html;charset=UTF-8" />${3}\nsnippet meta:utf\n <meta http-equiv="content-type" content="text/html;charset=UTF-8" />${3}\nsnippet meter\n <meter>${1}</meter>\nsnippet nav\n <nav>\n ${1}\n </nav>\nsnippet nav.\n <nav class="${1}">\n ${2}\n </nav>\nsnippet nav#\n <nav id="${1}">\n ${2}\n </nav>\nsnippet noscript\n <noscript>\n ${1}\n </noscript>\nsnippet object\n <object data="${1}" type="${2}">\n ${3}\n </object>${4}\n# Embed QT Movie\nsnippet movie\n <object width="$2" height="$3" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"\n codebase="http://www.apple.com/qtactivex/qtplugin.cab">\n <param name="src" value="$1" />\n <param name="controller" value="$4" />\n <param name="autoplay" value="$5" />\n <embed src="${1:movie.mov}"\n width="${2:320}" height="${3:240}"\n controller="${4:true}" autoplay="${5:true}"\n scale="tofit" cache="true"\n pluginspage="http://www.apple.com/quicktime/download/" />\n </object>${6}\nsnippet ol\n <ol>\n ${1}\n </ol>\nsnippet ol.\n <ol class="${1}>\n ${2}\n </ol>\nsnippet ol#\n <ol id="${1}>\n ${2}\n </ol>\nsnippet ol+\n <ol>\n <li>${1}</li>\n li+${2}\n </ol>\nsnippet opt\n <option value="${1}">${2:$1}</option>\nsnippet opt+\n <option value="${1}">${2:$1}</option>\n opt+${3}\nsnippet optt\n <option>${1}</option>\nsnippet optgroup\n <optgroup>\n <option value="${1}">${2:$1}</option>\n opt+${3}\n </optgroup>\nsnippet output\n <output>${1}</output>\nsnippet p\n <p>${1}</p>\nsnippet param\n <param name="${1}" value="${2}" />${3}\nsnippet pre\n <pre>\n ${1}\n </pre>\nsnippet progress\n <progress>${1}</progress>\nsnippet q\n <q>${1}</q>\nsnippet rp\n <rp>${1}</rp>\nsnippet rt\n <rt>${1}</rt>\nsnippet ruby\n <ruby>\n <rp><rt>${1}</rt></rp>\n </ruby>\nsnippet s\n <s>${1}</s>\nsnippet samp\n <samp>\n ${1}\n </samp>\nsnippet script\n <script type="text/javascript" charset="utf-8">\n ${1}\n <\/script>\nsnippet scriptsrc\n <script src="${1}.js" type="text/javascript" charset="utf-8"><\/script>\nsnippet newscript\n <script type="application/javascript" charset="utf-8">\n ${1}\n <\/script>\nsnippet newscriptsrc\n <script src="${1}.js" type="application/javascript" charset="utf-8"><\/script>\nsnippet section\n <section>\n ${1}\n </section>\nsnippet section.\n <section class="${1}">\n ${2}\n </section>\nsnippet section#\n <section id="${1}">\n ${2}\n </section>\nsnippet select\n <select name="${1}" id="${2:$1}">\n ${3}\n </select>\nsnippet select.\n <select name="${1}" id="${2:$1}" class="${3}>\n ${4}\n </select>\nsnippet select+\n <select name="${1}" id="${2:$1}">\n <option value="${3}">${4:$3}</option>\n opt+${5}\n </select>\nsnippet small\n <small>${1}</small>\nsnippet source\n <source src="${1}" type="${2}" media="${3}" />\nsnippet span\n <span>${1}</span>\nsnippet strong\n <strong>${1}</strong>\nsnippet style\n <style type="text/css" media="${1:all}">\n ${2}\n </style>\nsnippet sub\n <sub>${1}</sub>
416\nsnippet summary\n <summary>\n ${1}\n </summary>\nsnippet sup\n <sup>${1}</sup>\nsnippet table\n <table border="${1:0}">\n ${2}\n </table>\nsnippet table.\n <table class="${1}" border="${2:0}">\n ${3}\n </table>\nsnippet table#\n <table id="${1}" border="${2:0}">\n ${3}\n </table>\nsnippet tbody\n <tbody>\n ${1}\n </tbody>\nsnippet td\n <td>${1}</td>\nsnippet td.\n <td class="${1}">${2}</td>\nsnippet td#\n <td id="${1}">${2}</td>\nsnippet td+\n <td>${1}</td>\n td+${2}\nsnippet textarea\n <textarea name="${1}" id=${2:$1} rows="${3:8}" cols="${4:40}">${5}</textarea>${6}\nsnippet tfoot\n <tfoot>\n ${1}\n </tfoot>\nsnippet th\n <th>${1}</th>\nsnippet th.\n <th class="${1}">${2}</th>\nsnippet th#\n <th id="${1}">${2}</th>\nsnippet th+\n <th>${1}</th>\n th+${2}\nsnippet thead\n <thead>\n ${1}\n </thead>\nsnippet time\n <time datetime="${1}" pubdate="${2:$1}>${3:$1}</time>\nsnippet title\n <title>${1:`substitute(Filename(\'\', \'Page Title\'), \'^.\', \'\\u&\', \'\')`}</title>\nsnippet tr\n <tr>\n ${1}\n </tr>\nsnippet tr+\n <tr>\n <td>${1}</td>\n td+${2}\n </tr>\nsnippet track\n <track src="${1}" srclang="${2}" label="${3}" default="${4:default}>${5}</track>${6}\nsnippet ul\n <ul>\n ${1}\n </ul>\nsnippet ul.\n <ul class="${1}">\n ${2}\n </ul>\nsnippet ul#\n <ul id="${1}">\n ${2}\n </ul>\nsnippet ul+\n <ul>\n <li>${1}</li>\n li+${2}\n </ul>\nsnippet var\n <var>${1}</var>\nsnippet video\n <video src="${1} height="${2}" width="${3}" preload="${5:none}" autoplay="${6:autoplay}>${7}</video>${8}\nsnippet wbr\n <wbr />${1}\n',t.scope="html"}); (function() { 417 window.require(["ace/snippets/html"], function(m) { 418 if (typeof module == "object" && typeof exports == "object" && module) { 419 module.exports = m; 420 } 421 }); 422 })(); 423 424 425define("ace/snippets/svg",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="svg"}); (function() { 426 window.require(["ace/snippets/svg"], function(m) { 427 if (typeof module == "object" && typeof exports == "object" && module) { 428 module.exports = m; 429 } 430 }); 431 })(); 432 433 434define("ace/snippets/hxl", ["require", "exports", "module"], function (e, t, n) { 435 "use strict"; 436 t.snippetText = '# scope: hxl\n\n# --- Binary commands ---\n\nsnippet bin.append\n bin.append(${1}, ${2})\n\nsnippet bin.base64decode\n bin.base64decode(${1})\n\nsnippet bin.base64encode\n bin.base64encode(${1})\n\nsnippet bin.fromHexString\n bin.fromHexString(${1})\n\nsnippet bin.toHexString\n bin.toHexString(${1})\n\nsnippet bin.hashSHA1\n bin.hashSHA1(${1})\n \nsnippet bin.length\n bin.length(${1})\n \nsnippet bin.random\n bin.random(${1})\n\nsnippet bin.subBinary\n bin.subBinary(${1}, ${2}, ${3})\n\nsnippet bin.byteAt\n bin.byteAt(${1}, ${2}, ${3})\n\nsnippet bin.wordAt\n bin.wordAt(${1}, ${2}, ${3})\n\nsnippet bin.intAt\n bin.intAt(${1}, ${2}, ${3})\n\nsnippet bin.longAt\n bin.longAt(${1}, ${2}, ${3})\n\nsnippet bin.macLongAt\n bin.macLongAt(${1}, ${2}, ${3})\n\nsnippet bin.macStringAt\n bin.macStringAt(${1}, ${2}, ${3})\n \n# --- Config commands ---\n\nsnippet config.addModule\n config.addModule(${1}, ${2})\n \nsnippet config.addModuleItems\n config.addModuleItems(${1}, ${2})\n\nsnippet config.cloneModule\n config.cloneModule(${1})\n\nsnippet config.createContainer\n config.createContainer()\n\nsnippet config.createModule\n config.createModule(${1})\n\nsnippet config.createModuleInherited\n config.createModuleInherited(${1})\n\nsnippet config.enableDataConfig\n config.enableDataConfig(${1})\n\nsnippet config.getAttributes\n config.getAttributes(${1})\n\nsnippet config.getContext\n config.getContext(${1})\n\nsnippet config.getParent\n config.getParent(${1})\n\nsnippet config.getIdeType\n config.getIdeType(${1})\n\n# --- Date commands ---\n\nsnippet date.add\n date.add{\n /datetime = ${1};\n /year = ${2};\n /month = ${3};\n /day = ${4};\n /hour = ${5};\n /minute = ${6};\n /second = ${7};\n };\n\nsnippet date.dateToStruct\n date.dateToStruct(${1})\n\nsnippet date.durationNice\n date.durationNice(${1})\n\nsnippet date.format\n date.format(${1}, ${2})\n\nsnippet date.getYear\n date.getYear(${1})\n\nsnippet date.getWeekDay\n date.getWeekDay(${1})\n\nsnippet date.millis\n date.millis()\n\nsnippet date.now\n date.now()\n\nsnippet date.parse\n date.parse(${1}, ${2})\n\nsnippet date.structToDate\n date.structToDate{\n /year = ${1};\n /month = ${2};\n /day = ${3};\n /noTimeZone = ${4};\n }; \n\nsnippet date.structToTime\n date.structToTime{\n /hour = ${1};\n /minute = ${2};\n /second = ${3};\n /millisecond = ${4};\n };
436\n\nsnippet date.datetimeToStruct3\n date.datetimeToStruct3(${1})\n\nsnippet date.structToDatetime3\n date.structToDatetime3{\n /year = ${1};\n /month = ${2};\n /day = ${3};\n /hour = ${4};\n /minute = ${5};\n /second = ${6};\n /millisecond = ${7};\n /noTimeZone = ${8};\n /era = ${8};\n };\n\n# --- DB dispatch ---\n\nsnippet db.dispatch\n db.dispatch{\n /dataSource = ${1};\n /dataType = ${2};\n /command = ${3};\n };\n\n# --- File commands ---\n\nsnippet file.excel2.import\n file.excel2.import{\n ${0}\n };\n\nsnippet file.excel2.export\n file.excel2.export{\n ${0}\n };\n\n# --- IDE commands ---\n\nsnippet ide.cleanDataNew\n ide.cleanDataNew(${1})\n\nsnippet ide.getModuleType\n ide.getModuleType(${1})\n\n# --- Is commands ---\n\nsnippet is.module\n is.module(${1})\n\nsnippet is.subNodes\n is.subNodes(${1})\n\nsnippet is.typeBoolean\n is.typeBoolean(${1})\n\nsnippet is.typeDate\n is.typeDate(${1})\n\nsnippet is.typeDatetime\n is.typeDatetime(${1})\n\nsnippet is.typeDecimal\n is.typeDecimal(${1})\n\nsnippet is.typeDouble\n is.typeDouble(${1})\n\nsnippet is.typeInt\n is.typeInt(${1})\n\nsnippet is.typeLong\n is.typeLong(${1})\n\nsnippet is.typeNode\n is.typeNode(${1})\n\nsnippet is.typeString\n is.typeString(${1})\n\nsnippet is.typeTime\n is.typeTime(${1})\n\nsnippet is.typeValueNN\n is.typeValueNN(${1})\n\nsnippet is.valueNE\n is.valueNE(${1})\n\nsnippet is.valueBinary\n is.valueBinary(${1})\n\nsnippet is.valueBinaryNE\n is.valueBinaryNE(${1})\n\nsnippet is.valueBoolean\n is.valueBoolean(${1})\n\nsnippet is.valueDate\n is.valueDate(${1})\n\nsnippet is.valueDatetime\n is.valueDatetime(${1})\n\nsnippet is.valueDecimal\n is.valueDecimal(${1})\n\nsnippet is.valueDecimalNZ\n is.valueDecimal(${1})\n\nsnippet is.valueDouble\n is.valueDouble(${1})\n\nsnippet is.valueDoubleNZ\n is.valueDoubleNZ(${1})\n\nsnippet is.valueInt\n is.valueInt(${1})\n\nsnippet is.valueIntNZ\n is.valueIntNZ(${1})\n\nsnippet is.valueLong\n is.valueLong(${1})\n\nsnippet is.valueLongNZ\n is.valueLongNZ(${1})\n\nsnippet is.valuePathNE\n is.valuePathNE(${1})\n\nsnippet is.valueString\n is.valueString(${1})\n\nsnippet is.valueStringNE\n is.valueStringNE(${1})\n\nsnippet is.valueTime\n is.valueTime(${1})\n\n# --- Lang commands (except keywords) ---\n\nsnippet java\n java{\n /class = "${1:sk.dandiway.hyperix.extension.}";\n /input{\n /parameter = ${2:"value"};\n };\n }\n\n# --- Math commands ---\n\nsnippet math.absInt\n math.absInt(${1:0})\n\nsnippet math.absLong\n math.absLong(${1:0})\n\nsnippet math.absDouble\n math.absDouble(${1:0})\n\nsnippet math.floorInt\n math.floorInt(${1:0})\n\nsnippet math.floorLong\n math.floorLong(${1:0})\n\nsnippet math.floorDouble\n math.floorDouble(${1:0})\n\nsnippet math.ceilInt\n math.ceilInt(${1:0})\n\nsnippet math.ceilLong\n math.ceilLong(${1:0})\n\nsnippet math.ceilDouble\n math.ceilLong(${1:0})\n\nsnippet math.maxInt\n math.maxInt(${1:0})\n\nsnippet math.maxLong\n math.maxLong(${1:0})\n\nsnippet math.maxDouble\n math.maxDouble(${1:0})\n\nsnippet math.minInt\n math.minInt(${1:0})\n\nsnippet math.minLong\n math.minLong(${1:0})\n\nsnippet math.minDouble\n math.minDouble(${1:0})\n\nsnippet math.roundInt\n math.roundInt(${1:0})\n\nsnippet math.roundLong\n math.roundLong(${1:0})\n\nsnippet math.roundDouble\n math.roundDouble(${1:0})\n\nsnippet math.randomInt\n math.randomInt()\n\nsnippet math.randomLong\n math.randomLong()\n\nsnippet math.randomDouble\n math.randomLong()\n\nsnippet math.fromBase36\n math.fromBase36(${1:0})\n \nsnippet math.toBase36\n math.toBase36(${1:0})\n\nsnippet math.sqrtInt\n math.sqrtInt(${1:0})\n\nsnippet math.sqrtLong\n math.sqrtLong(${1:0})\n\nsnippet math.log10\n math.log10(${1:0})\n\n# --- Net commands ---\n\nsnippet net.callHttp\n net.callHttp{\n /url = ${1};\n /method = ${2};\n /encoding = ${3};\n /contentType = ${4};\n /params = ${5}; // Query params //\n /header = ${6}; // HTTP header params //\n /cookie = ${7};\n /body = ${8};\n /response = ${9}; // Response HTTP header params //\n /flag{\n /sslNoCheck = ${10};\n /followRedirects = ${11};\n };\n };\n\nsnippet net.callHttpSoap11\n net.callHttpSoap11{\n /url = ${1};\n /request = ${2};\n /action = ${3};\n /auth = ${4};\n };\n\nsnippet net.callHttpSoap12\n net.callHttpSoap12{\n /url = ${1};\n /request = ${2};\n /action = ${3};\n /auth = ${4};\n };\n\nsnippet net.convertCSVToDataTree\n net.convertCSVToDataTree(${1}, ${2}
436)\n\nsnippet net.convertDataTreeToFlat\n net.convertDataTreeToFlat(${1})\n\nsnippet net.convertDataTreeToJson\n net.convertDataTreeToJson(${1})\n\nsnippet net.convertDataTreeToJsonPretty\n net.convertDataTreeToJsonPretty(${1})\n\nsnippet net.convertDataTreeToToon\n net.convertDataTreeToToon(${1}, ${2})\n\nsnippet net.convertJsonToDataTree\n net.convertJsonToDataTree(${1})\n\nsnippet net.convertParamTreeToDataTree\n net.convertParamTreeToDataTree(${1})\n\nsnippet net.decodeXml\n net.decodeXml{\n /xml = ${1};\n /encoding = ${2};\n };\n\nsnippet net.encodeXml2\n net.encodeXml2{\n /element = ${1};\n /xmlTree = ${2};\n /encoding = ${3};\n };\n\nsnippet net.getHeaderParam\n net.getHeaderParam(${1})\n\nsnippet net.setHeaderParam\n net.setHeaderParam(${1}, ${2})\n\nsnippet net.macLongToString\n net.macLongToString(${1})\n\nsnippet net.macStringToLong\n net.macStringToLong(${1})\n\nsnippet net.urlSplit\n net.urlSplit(${1})\n\n# --- Path commands ---\n\nsnippet path.key\n path.key(${1})\n\nsnippet path.keyAt\n path.keyAt(${1}, ${2})\n\nsnippet path.keyFind\n path.keyAt(${1}, ${2})\n\nsnippet path.keyLast\n path.keyLast(${1})\n\nsnippet path.keyDelete\n path.keyDelete(${1}, ${2})\n\nsnippet path.keysDelete\n path.keysDelete{\n /path = ${1};\n /keys = ${2};\n }\n\nsnippet path.length\n path.length(${1})\n\nsnippet path.items\n path.items(${1})\n\nsnippet path.join\n path.join{\n /item1 = ${1};\n };\n\nsnippet path.pathToTreeFocus\n path.pathToTreeFocus(${1})\n\nsnippet path.reverse\n path.reverse(${1})\n\nsnippet path.split\n path.split(${1}, ${2})\n\nsnippet path.stringWithDelimiter\n path.subpath(${1}, ${2})\n\nsnippet path.subpath\n path.subpath(${1}, ${2}, ${3})\n\nsnippet path.tail\n path.tail(${1})\n\nsnippet path.treeFocusToPath\n path.treeFocusToPath(${1})\n\nsnippet path.val\n path.val(${1})\n\n# --- Project commands ---\n\nsnippet project.config.get\n project.config.get()\n\nsnippet project.getInfo2\n project.getInfo2()\n\nsnippet project.getSecurityRing\n project.getSecurityRing()\n\nsnippet project.info.depends\n project.info.depends()\n\nsnippet project.isTimerRequest\n project.isTimerRequest()\n\nsnippet project.version.toInt\n project.version.toInt(${1})\n\nsnippet project.version.toString\n project.version.toString(${1})\n\n# --- Security commands ---\n\nsnippet security.aesDecrypt\n security.aesDecrypt(${1}, ${2})\n\nsnippet security.aesEncrypt\n security.aesEncrypt(${1}, ${2})\n\nsnippet security.aesDecryptTreeFromBinary\n security.aesDecryptTreeFromBinary(${1}, ${2})\n\nsnippet security.aesEncryptTreeToBinary\n security.aesEncryptTreeToBinary(${1}, ${2})\n\nsnippet security.aes256DecryptTreeFromBinary\n security.aes256DecryptTreeFromBinary(${1}, ${2})\n\nsnippet security.aes256EncryptTreeToBinary\n security.aes256EncryptTreeToBinary(${1}, ${2})\n\nsnippet security.hashPassword.get\n security.hashPassword.get(${1}, ${2}, ${3})\n\nsnippet security.hashPassword.check\n security.hashPassword.check(${1}, ${2}, ${3})\n\nsnippet security.hash\n security.hash(${1})\n\nsnippet security.hashMD5\n security.hashMD5(${1})\n\nsnippet security.hashSHA1\n security.hashSHA1(${1})\n\nsnippet security.hashSHA2\n security.hashSHA2(${1})\n\nsnippet security.hashSHA3\n security.hashSHA3(${1})\n\nsnippet security.hmacSHA1\n security.hmacSHA1(${1}, ${2})\n\nsnippet security.hmacSHA256\n security.hmacSHA256(${1}, ${2})\n\n# --- Server commands ---\n\nsnippet server.mail.check\n server.mail.check(${1})\n\nsnippet server.mail.send\n server.mail.send{\n /subject = ${1};\n /message = ${2};\n /contentType = ${3};\n /encoding = ${4};\n /header = ${5};\n /recipientAddress = ${6};\n /carbonCopyAddress = ${7};\n /blindCarbonCopyAddress = ${8};\n /senderAddress = ${9};\n };\n\nsnippet server.getParam\n server.getParam(${1})\n\nsnippet server.security.getInfo\n server.security.getInfo()\n\nsnippet server.session.read\n server.session.read{\n /context[${1:in/urlContext}] = empty;\n };\n\nsnippet server.session.write\n server.session.write{\n /context[${1:in/urlContext}] = empty;\n /tree = ${2:tmp/tree};\n };\n\nsnippet server.sleep\n server.sleep(${1})\n\nsnippet server.synchronize\n server.synchronize{\n /key = ${1};\n /config = ${2};\n /operation = ${3};\n /input = ${4};\n };\n\nsnippet server.thread\n server.thread{\n /name = ${1};\n /config = ${2};\n /operation = ${3};\n /input = ${4};\n };\n\nsnippet server.parallel\n server.parallel{\n /name = ${1};\n // /interval = ${2:100};\n // /timeout = ${3:1000};\n /list/1{\n /config = ${4}; \n // /operation = "${5:execute}";\n /input = ${6};\n };\n };\n\n# --- String commands ---\n\nsnippet str.base64decode\n str.base64decode(${1})\n\nsnippet str.base64encode\n str.base64encode(${1:""})\n\nsnippet str.contains\n str.contains(${1:""}, ${2:""})\n\nsnippet str.endsWith\n str.endsWith(${1:""}, ${2:""})\n\nsnippet str.extractDiacritics\n str.extractDiacritics(${1:""})\n\nsnippet str.format\n str.format{\n /string = ${1:"Hello %%name%%"};\n /params{\n ${2:/name = "World"}\n };\n }
436\n\nsnippet str.find\n str.find{ \n /string = ${1:"hello world"}; \n /regex = ${2:"[a-z]"}; \n }\n\nsnippet str.hashMD5\n str.hashMD5(${1:"Hello World"})\n\nsnippet str.hashSHA1\n str.hashSHA1(${1:"Hello World"})\n\nsnippet str.charAt\n str.charAt(${1}, ${2})\n\nsnippet str.htmlDecode\n str.htmlDecode(${1})\n\nsnippet str.htmlEncode\n str.htmlEncode(${1})\n\nsnippet str.idFormat\n str.idFormat(${1}, ${2}, ${3})\n\nsnippet str.indexOf\n str.indexOf(${1}, ${2})\n\nsnippet str.lastIndexOf\n str.lastIndexOf(${1}, ${2})\n\nsnippet str.initCap\n str.initCap(${1})\n\nsnippet str.join\n str.join{\n /strings = ${1};\n /delimiter = ${2};\n }\n\nsnippet str.jsonEncode\n str.jsonEncode(${1})\n\nsnippet str.length\n str.length(${1:"Hello World"})\n\nsnippet str.justify\n str.justify{\n /string = ${1};\n /length = ${2};\n /char = ${3};\n /type/center = ${4:true};\n }\n\nsnippet str.replace\n str.replace{\n /string = ${1:""};\n /regex = ${3:"World"};\n /replacement = ${2:""};\n }\n\nsnippet str.replaceParams\n str.replaceParams{\n /string = ${1:"%%param%%"};\n /params{\n /${2:key} = ${3:"value"};\n };\n }\n\nsnippet str.replaceString\n str.replaceString(${1:""}, ${2:""}, ${3:""})\n\nsnippet str.sortDecode\n str.sortDecode(${1})\n \nsnippet str.sortDecodeInteger\n str.sortDecodeInteger(${1})\n\nsnippet str.sortDecodeDecimal\n str.sortDecodeDecimal(${1})\n\nsnippet str.sortEncodeInteger\n str.sortEncodeInteger(${1})\n\nsnippet str.sortEncodeDecimal\n str.sortEncodeDecimal(${1})\n\nsnippet str.split\n str.split{\n /string = ${1:"Hello World"};\n /regex = ${2:" "};\n }\n\nsnippet str.startsWith\n str.startsWith(${1:""}, ${2:""})\n\nsnippet str.substring\n str.substring(${1:""}, ${2}, ${3})\n\nsnippet str.toLowerCase\n str.toLowerCase(${1:""})\n\nsnippet str.toLowerCaseFirst\n str.toLowerCaseFirst(${1:""})\n\nsnippet str.toUpperCase\n str.toUpperCase(${1:""})\n\nsnippet str.toUpperCaseFirst\n str.toUpperCaseFirst(${1:""})\n\nsnippet str.trim\n str.trim(${1:""})\n\nsnippet str.urlDecode\n str.urlDecode(${1:""})\n\nsnippet str.urlEncode\n str.urlEncode(${1:""})\n\nsnippet str.urlEncodeUri\n str.urlEncode(${1:""})\n\nsnippet str.zplEncode\n str.zplEncode(${1:""})\n\n# --- Tree commands ---\n\nsnippet tree.add\n tree.add(${1}, ${2})\n\nsnippet tree.compare\n tree.compare(${1}, ${2})\n\nsnippet tree.convertFromAutodetect\n tree.convertFromAutodetect(${1})\n\nsnippet tree.convertFromBinary\n tree.convertFromBinary(${1})\n\nsnippet tree.convertFromString\n tree.convertFromString(${1})\n\nsnippet tree.convertToBinary\n tree.convertToBinary(${1})\n\nsnippet tree.convertToString\n tree.convertToString(${1})\n\nsnippet tree.convertToXML\n tree.convertToXML(${1})\n\nsnippet tree.count\n tree.count(${1})\n\nsnippet tree.cut\n tree.cut(${1}, ${2})\n\nsnippet tree.dumpToHxl\n tree.dumpToHxl(${1})\n\nsnippet tree.dumpToString\n tree.dumpToString(${1})\n\nsnippet tree.existByPathValue\n tree.existByPathValue{\n /tree = ${1};\n /path = ${2};\n /value = ${3};\n }\n\nsnippet tree.filterByPathValue\n tree.findByPathValue{\n /tree = ${1};\n /path = ${2};\n /value = ${3};\n }\n\nsnippet tree.hashCode\n tree.hashCode(${1})\n\nsnippet tree.itemsCut\n tree.itemsCut(${1}, ${2})\n\nsnippet tree.keyAt\n tree.keyAt(${1}, ${2})\n\nsnippet tree.keyDelete\n tree.keyDelete(${1}, ${2})\n\nsnippet tree.keyFirst\n tree.keyFirst(${1})\n\nsnippet tree.keyInsert\n tree.keyInsert{\n /tree = ${1};\n /key = ${2};\n /addTree = ${2};\n /position = ${3};\n }\n\nsnippet tree.keyLast\n tree.keyLast(${1})\n\nsnippet tree.keyMoveDown\n tree.keyMoveDown{\n /tree = ${1};\n /key = ${2};\n /cycle = true;\n }\n\nsnippet tree.keyMoveUp\n tree.keyMoveUp{\n /tree = ${1};\n /key = ${2};\n /cycle = true;\n }\n\nsnippet tree.keyNext\n tree.keyNext{\n /tree = ${1};\n /key = ${2};\n /cycle = true;\n }\n\nsnippet tree.keyPos\n tree.keyPos(${1}, ${2})\n\nsnippet tree.keysDelete\n tree.keysDelete{\n /tree = ${1};\n /keys{\n ${2}\n };\n }\n\nsnippet tree.pathDelete\n tree.pathDelete{\n /tree = ${1};\n /path = ${2};\n }\n\nsnippet tree.reverse\n tree.reverse(${1});
436\n\nsnippet tree.search\n tree.search(${1}, ${2})\n\nsnippet tree.size\n tree.size(${1})\n\nsnippet tree.sort\n tree.sort{\n /tree = ${1};\n /flags = ${2};\n }\n\nsnippet tree.sortByKeyInt\n tree.sortByKeyInt{\n /tree = ${1};\n /flags = ${2};\n }\n\nsnippet tree.sortByValueInt\n tree.sortByValueInt{\n /tree = ${1};\n /flags = ${3};\n }\n\nsnippet tree.sortByPathInt\n tree.sortByPathInt{\n /tree = ${1};\n /path = ${2};\n /flags = ${3};\n }\n\nsnippet tree.subtree\n tree.subtree(${1}, ${2}, ${3})\n\nsnippet tree.toString\n tree.toString(${1})\n\nsnippet tree.valAt\n tree.valAt(${1}, ${2})\n\nsnippet tree.valLast\n tree.valLast(${1})\n\n# --- Structures ---\n\n# if else\nsnippet ifelse\n if (${1:true}) {\n ${2}\n } else {\n ${0}\n }\n\n# for\nsnippet for\n for (${1:in}) {\n ${2:out}[forkey] = forval;\n }\n\n# while\nsnippet while\n ${1:tmp/i} = 0;\n while (${1} < ${2:10}) {\n ${3:// code}\n ${1} = ${1} + 1;\n }\n\nsnippet throw2\n throw2 \\$cfg/items/exception.initialize{\n /message = "";\n /info{\n };\n };\n \nsnippet tryCatch\n try{\n throw2 \\$cfg/items/exception.initialize{\n /message = "Exception message";\n };\n } catch2 (cfg/items/exception) {\n log5(\\$loc.getMessageTree());\n }\n\nsnippet switch\n switch (${1:tmp/greeting}) {\n case "${2:hello}":\n ${3:// code}\n break;\n default:\n ${4:// code}\n break;\n }\n\n# Module operation call\nsnippet $\n \\$${1:module}.${2:operation}{\n ${3}\n };\n\nsnippet _formMessages\n /messages[]{\n /type/${1:warning} = empty;\n /message = ${2:"Message goes here."};\n /reasons[]{\n /message = ${3:"Optional reason goes here."}\n };\n }\n\nsnippet _dataConditions\n /conds[]{\n /name = ${1:"name"};\n /condType/${2:equal} = empty;\n /valueType/${3:string} = empty;\n /value = ${4:"hello world"};\n };\n\nsnippet _dataOrders\n /orders[]{\n /name = ${1:"name"};\n /orderType/desc = true;\n };\n\nsnippet _dataRange\n /range{\n /countAll = false;\n };\n\nguard tmp/listOutput\\s*\ntrigger =\\s*\nsnippet _lO\n = \\$${1:tmp/datatype}.list{\n ${2:_dataRange}\n ${3:_dataConditions}\n ${4:_dataOrders}\n };\n\n if (!tmp/listOutput/ok) {\n warning("Cannot perform \\"list\\" operation on datatype.");\n return;\n }\n\nguard tmp/addOutput\\s*\ntrigger =\\s*\nsnippet _aO\n = \\$${1:tmp/datatype}.add{\n /addID = ${2:23};\n /addData = ${3:tmp/data};\n /addOptions/canUpdateRecord = empty;\n };\n\n if (!tmp/addOutput/ok) {\n warning("Cannot perform \\"add\\" operation on datatype.");\n return;\n }\n\nguard tmp/updateOutput\\s*\ntrigger =\\s*\nsnippet _uO\n = \\$${1:tmp/datatype}.update{\n /updateID = ${2:23};\n /updateData = ${3:tmp/data};\n /updateOptions/canNotExist/canAddRecord = empty;\n ${4:_dataConditions}\n };\n\n if (!tmp/updateOutput/ok) {\n warning("Cannot perform \\"update\\" operation on datatype.");\n return;\n }\n\nguard tmp/deleteOutput\\s*\ntrigger =\\s*\nsnippet _dO\n = \\$${1:tmp/datatype}.delete{\n /deleteID = ${2:23};\n /deleteOptions/canNotExist = empty;\n ${4:_dataConditions}\n };\n\n if (!tmp/deleteOutput/ok) {\n warning("Cannot perform \\"delete\\" operation on datatype.");\n return;\n }\n\nguard tmp/readOutput\\s*\ntrigger =\\s*\nsnippet _rO\n = \\$${1:tmp/datatype}.read{\n /readID = ${2:23};\n /readOptions/canNotExist = empty;\n ${4:_dataConditions}\n };\n\n if (!tmp/readOutput/ok) {\n warning("Cannot perform \\"read\\" operation on datatype.");\n return;\n }\n' 437 , t.scope = "hxl" 438}) 439 440define("ace/snippets/java",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='## Access Modifiers\nsnippet po\n protected\nsnippet pu\n public\nsnippet pr\n private\n##\n## Annotations\nsnippet before\n @Before\n static void ${1:intercept}(${2:args}) { ${3} }\nsnippet mm\n @ManyToMany\n ${1}\nsnippet mo\n @ManyToOne\n ${1}\nsnippet om\n @OneToMany${1:(cascade=CascadeType.ALL)}\n ${2}\nsnippet oo\n @OneToOne\n ${1}\n##\n## Basic Java packages and import\nsnippet im\n import\nsnippet j.b\n java.beans.\nsnippet j.i\n java.io.\nsnippet j.m\n java.math.\nsnippet j.n\n java.net.\nsnippet j.u\n java.util.\n##\n## Class\nsnippet cl\n class ${1:`Filename("", "untitled")`} ${2}
440\nsnippet in\n interface ${1:`Filename("", "untitled")`} ${2:extends Parent}${3}\nsnippet tc\n public class ${1:`Filename()`} extends ${2:TestCase}\n##\n## Class Enhancements\nsnippet ext\n extends \nsnippet imp\n implements\n##\n## Comments\nsnippet /*\n /*\n * ${1}\n */\n##\n## Constants\nsnippet co\n static public final ${1:String} ${2:var} = ${3};${4}\nsnippet cos\n static public final String ${1:var} = "${2}";${3}\n##\n## Control Statements\nsnippet case\n case ${1}:\n ${2}\nsnippet def\n default:\n ${2}\nsnippet el\n else\nsnippet elif\n else if (${1}) ${2}\nsnippet if\n if (${1}) ${2}\nsnippet sw\n switch (${1}) {\n ${2}\n }\n##\n## Create a Method\nsnippet m\n ${1:void} ${2:method}(${3}) ${4:throws }${5}\n##\n## Create a Variable\nsnippet v\n ${1:String} ${2:var}${3: = null}${4};${5}\n##\n## Enhancements to Methods, variables, classes, etc.\nsnippet ab\n abstract\nsnippet fi\n final\nsnippet st\n static\nsnippet sy\n synchronized\n##\n## Error Methods\nsnippet err\n System.err.print("${1:Message}");\nsnippet errf\n System.err.printf("${1:Message}", ${2:exception});\nsnippet errln\n System.err.println("${1:Message}");\n##\n## Exception Handling\nsnippet as\n assert ${1:test} : "${2:Failure message}";${3}\nsnippet ca\n catch(${1:Exception} ${2:e}) ${3}\nsnippet thr\n throw\nsnippet ths\n throws\nsnippet try\n try {\n ${3}\n } catch(${1:Exception} ${2:e}) {\n }\nsnippet tryf\n try {\n ${3}\n } catch(${1:Exception} ${2:e}) {\n } finally {\n }\n##\n## Find Methods\nsnippet findall\n List<${1:listName}> ${2:items} = ${1}.findAll();${3}\nsnippet findbyid\n ${1:var} ${2:item} = ${1}.findById(${3});${4}\n##\n## Javadocs\nsnippet /**\n /**\n * ${1}\n */\nsnippet @au\n @author `system("grep \\`id -un\\` /etc/passwd | cut -d \\":\\" -f5 | cut -d \\",\\" -f1")`\nsnippet @br\n @brief ${1:Description}\nsnippet @fi\n @file ${1:`Filename()`}.java\nsnippet @pa\n @param ${1:param}\nsnippet @re\n @return ${1:param}\n##\n## Logger Methods\nsnippet debug\n Logger.debug(${1:param});${2}\nsnippet error\n Logger.error(${1:param});${2}\nsnippet info\n Logger.info(${1:param});${2}\nsnippet warn\n Logger.warn(${1:param});${2}\n##\n## Loops\nsnippet enfor\n for (${1} : ${2}) ${3}\nsnippet for\n for (${1}; ${2}; ${3}) ${4}\nsnippet wh\n while (${1}) ${2}\n##\n## Main method\nsnippet main\n public static void main (String[] args) {\n ${1:/* code */}\n }\n##\n## Print Methods\nsnippet print\n System.out.print("${1:Message}");\nsnippet printf\n System.out.printf("${1:Message}", ${2:args});\nsnippet println\n System.out.println(${1});\n##\n## Render Methods\nsnippet ren\n render(${1:param});${2}\nsnippet rena\n renderArgs.put("${1}", ${2});${3}\nsnippet renb\n renderBinary(${1:param});${2}\nsnippet renj\n renderJSON(${1:param});${2}\nsnippet renx\n renderXml(${1:param});${2}\n##\n## Setter and Getter Methods\nsnippet set\n ${1:public} void set${3:}(${2:String} ${4:}){\n this.$4 = $4;\n }\nsnippet get\n ${1:public} ${2:String} get${3:}(){\n return this.${4:};\n }\n##\n## Terminate Methods or Loops\nsnippet re\n return\nsnippet br\n break;\n##\n## Test Methods\nsnippet t\n public void test${1:Name}() throws Exception {\n ${2}\n }\nsnippet test\n @Test\n public void test${1:Name}() throws Exception {\n ${2}\n }\n##\n## Utils\nsnippet Sc\n Scanner\n##\n## Miscellaneous\nsnippet action\n public static void ${1:index}(${2:args}) { ${3} }\nsnippet rnf\n notFound(${1:param});${2}\nsnippet rnfin\n notFoundIfNull(${1:param});${2}\nsnippet rr\n redirect(${1:param});${2}\nsnippet ru\n unauthorized(${1:param});${2}\nsnippet unless\n (unless=${1:param});${2}\n',t.scope="java"}); (function() { 441 window.require(["ace/snippets/java"], function(m) { 442 if (typeof module == "object" && typeof exports == "object" && module) { 443 module.exports = m; 444 } 445 }); 446 })(); 447 448 449define("ace/snippets/javascript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Prototype\nsnippet proto\n ${1:class_name}.prototype.${2:method_name}
449 = function(${3:first_argument}) {\n ${4:// body...}\n };\n# Function\nsnippet fun\n function ${1?:function_name}(${2:argument}) {\n ${3:// body...}\n }\n# Anonymous Function\nregex /((=)\\s*|(:)\\s*|(\\()|\\b)/f/(\\))?/\nsnippet f\n function${M1?: ${1:functionName}}($2) {\n ${0:$TM_SELECTED_TEXT}\n }${M2?;}${M3?,}${M4?)}\n# Immediate function\ntrigger \\(?f\\(\nendTrigger \\)?\nsnippet f(\n (function(${1}) {\n ${0:${TM_SELECTED_TEXT:/* code */}}\n }(${1}));\n# if\nsnippet if\n if (${1:true}) {\n ${0}\n }\n# if ... else\nsnippet ife\n if (${1:true}) {\n ${2}\n } else {\n ${0}\n }\n# tertiary conditional\nsnippet ter\n ${1:/* condition */} ? ${2:a} : ${3:b}\n# switch\nsnippet switch\n switch (${1:expression}) {\n case \'${3:case}\':\n ${4:// code}\n break;\n ${5}\n default:\n ${2:// code}\n }\n# case\nsnippet case\n case \'${1:case}\':\n ${2:// code}\n break;\n ${3}\n\n# while (...) {...}\nsnippet wh\n while (${1:/* condition */}) {\n ${0:/* code */}\n }\n# try\nsnippet try\n try {\n ${0:/* code */}\n } catch (e) {}\n# do...while\nsnippet do\n do {\n ${2:/* code */}\n } while (${1:/* condition */});\n# Object Method\nsnippet :f\nregex /([,{[])|^\\s*/:f/\n ${1:method_name}: function(${2:attribute}) {\n ${0}\n }${3:,}\n# setTimeout function\nsnippet setTimeout\nregex /\\b/st|timeout|setTimeo?u?t?/\n setTimeout(function() {${3:$TM_SELECTED_TEXT}}, ${1:10});\n# Get Elements\nsnippet gett\n getElementsBy${1:TagName}(\'${2}\')${3}\n# Get Element\nsnippet get\n getElementBy${1:Id}(\'${2}\')${3}\n# console.log (Firebug)\nsnippet cl\n console.log(${1});\n# return\nsnippet ret\n return ${1:result}\n# for (property in object ) { ... }\nsnippet fori\n for (var ${1:prop} in ${2:Things}) {\n ${0:$2[$1]}\n }\n# hasOwnProperty\nsnippet has\n hasOwnProperty(${1})\n# docstring\nsnippet /**\n /**\n * ${1:description}\n *\n */\nsnippet @par\nregex /^\\s*\\*\\s*/@(para?m?)?/\n @param {${1:type}} ${2:name} ${3:description}\nsnippet @ret\n @return {${1:type}} ${2:description}\n# JSON.parse\nsnippet jsonp\n JSON.parse(${1:jstr});\n# JSON.stringify\nsnippet jsons\n JSON.stringify(${1:object});\n# self-defining function\nsnippet sdf\n var ${1:function_name} = function(${2:argument}) {\n ${3:// initial code ...}\n\n $1 = function($2) {\n ${4:// main code}\n };\n }\n# singleton\nsnippet sing\n function ${1:Singleton} (${2:argument}) {\n // the cached instance\n var instance;\n\n // rewrite the constructor\n $1 = function $1($2) {\n return instance;\n };\n \n // carry over the prototype properties\n $1.prototype = this;\n\n // the instance\n instance = new $1();\n\n // reset the constructor pointer\n instance.constructor = $1;\n\n ${3:// code ...}\n\n return instance;\n }\n# class\nsnippet class\nregex /^\\s*/clas{0,2}/\n var ${1:class} = function(${20}) {\n $40$0\n };\n \n (function() {\n ${60:this.prop = ""}\n }).call(${1:class}.prototype);\n \n exports.${1:class} = ${1:class};\n# \nsnippet for-\n for (var ${1:i} = ${2:Things}.length; ${1:i}--; ) {\n ${0:${2:Things}[${1:i}];}\n }\n# for (...) {...}\nsnippet for\n for (var ${1:i} = 0; $1 < ${2:Things}.length; $1++) {\n ${3:$2[$1]}$0\n }\n# for (...) {...} (Improved Native For-Loop)\nsnippet forr\n for (var ${1:i} = ${2:Things}.length - 1; $1 >= 0; $1--) {\n ${3:$2[$1]}$0\n }\n\n\n#modules\nsnippet def\n define(function(require, exports, module) {\n "use strict";\n var ${1/.*\\///} = require("${1}");\n \n $TM_SELECTED_TEXT\n });\nsnippet req\nguard ^\\s*\n var ${1/.*\\///} = require("${1}");\n $0\nsnippet requ\nguard ^\\s*\n var ${1/.*\\/(.)/\\u$1/} = require("${1}").${1/.*\\/(.)/\\u$1/};\n $0\n',t.scope="javascript"}); (function() { 450 window.require(["ace/snippets/javascript"], function(m) { 451 if (typeof module == "object" && typeof exports == "object" && module) { 452 module.exports = m; 453 } 454 }); 455 })(); 456 457 458define("ace/snippets/json",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="json"}); (function() { 459 window.require(["ace/snippets/json"], function(m) { 460 if (typeof module == "object" && typeof exports == "object" && module) { 461 module.exports = m; 462 } 463 }); 464 })(); 465 466 467define("ace/snippets/less",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="less"}); (function() { 468 window.require(["ace/snippets/less"], function(m) { 469 if (typeof module == "object" && typeof exports == "object" && module) { 470 module.exports = m; 471 } 472 }); 473 })(); 474 475 476define("ace/snippets/sass",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="sass"}); (function() { 477 window.require(["ace/snippets/sass"], function(m) { 478 if (typeof module == "object" && typeof exports == "object" && module) { 479 module.exports = m; 480 } 481 }); 482 })(); 483 484 485define("ace/snippets/scss",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="scss"}); (function() { 486 window.require(["ace/snippets/scss"], function(m) { 487 if (typeof module == "object" && typeof exports == "object" && module) { 488 module.exports = m; 489 } 490 }); 491 })(); 492 493 494define("ace/snippets/sql",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet tbl\n create table ${1:table} (\n ${2:columns}\n );\nsnippet col\n ${1:name} ${2:type} ${3:default ''} ${4:not null}\nsnippet ccol\n ${1:name} varchar2(${2:size}) ${3:default ''} ${4:not null}\nsnippet ncol\n ${1:name} number ${3:default 0} ${4:not null}\nsnippet dcol\n ${1:name} date ${3:default sysdate} ${4:not null}\nsnippet ind\n create index ${3:$1_$2} on ${1:table}(${2:column});\nsnippet uind\n create unique index ${1:name} on ${2:table}(${3:column});\nsnippet tblcom\n comment on table ${1:table} is '${2:comment}';\nsnippet colcom\n comment on column ${1:table}.${2:column} is '${3:comment}';\nsnippet addcol\n alter table ${1:table} add (${2:column} ${3:type});\nsnippet seq\n create sequence ${1:name} start with ${2:1} increment by ${3:1} minvalue ${4:1};\nsnippet s*\n select * from ${1:table}\n",t.scope="sql"}); (function() { 495 window.require(["ace/snippets/sql"], function(m) { 496 if (typeof module == "object" && typeof exports == "object" && module) { 497 module.exports = m; 498 } 499 }); 500 })(); 501 502 503define("ace/snippets/xml",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="xml"}); (function() { 504 window.require(["ace/snippets/xml"], function(m) { 505 if (typeof module == "object" && typeof exports == "object" && module) { 506 module.exports = m; 507 } 508 }); 509 })(); 510 511 512define("ace/snippets/plain_text",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="plain_text"}) 513 514define("ace/theme/hxl",["require","exports","module","ace/lib/dom"],function(e,t,n){ 515 t.cssClass="ace-hxl", 516 t.cssText=".ace-hxl .ace_gutter {background: #f0f0f0;border-right: 1px solid #eee;color: #8F908A;}.ace-hxl.ace_editor{border-radius: 4px;background-color: white;color: black;}.ace-hxl .ace_cursor {color: #676767;}.ace-hxl .ace_marker-layer .ace_selected-word {border: 1px solid #676767;border-radius: 1px;}.ace-hxl .ace_marker-layer .ace_active-line,.ace-hxl .ace_gutter-active-line {background: rgba(34, 170, 255, 0.10);}.ace-hxl .ace_marker-layer .ace_selection {background: rgba(0, 120, 205, 0.15);}.ace-hxl .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #676767;border-radius: 1px;}.ace-hxl .ace_invalid {color: #F8F8F0;background-color: #F92626;padding-left: 0.1em;padding-right: 0.1em;}.ace-hxl .ace_support.ace_function {color: #DD00DD;}.ace-hxl .ace_fold {background-color: #A6E22E;border-color: #F8F8F2}.ace-hxl .ace_variable {color: #879EFA;}.ace-hxl .ace_keyword,.ace-hxl .ace_keyword.ace_control,.ace-hxl .ace_constant.ace_language {color: #7F0055;}.ace_keyword.ace_operator {color: black;font-weight: normal;}.ace-hxl .ace_identifier.ace_tree{color: #FF7F00;}.ace-hxl .ace_variable.ace_parameter {font-style: italic;color: #009DFF;}.ace-hxl .ace_constant.ace_numeric,.ace-hxl .ace_constant.ace_character,.ace-hxl .ace_string,.ace-hxl .ace_constant.ace_other {color: blue;}.ace-hxl .ace_comment {color: #007F00;}.ace-hxl .ace_indent-guide {border-right: 1px solid lightgray;margin-right: -1px; }.ace_variable.ace_language.ace_invalid.ace_illegal {text-decoration: line-through;color: red;background-color: inherit;}.ace-hxl .ace_unknown {border-bottom: 1px solid red;}.ace-hxl .ace_comment.ace_documentation{color: #F92626;}.ace-hxl .ace_comment.ace_documentation.ace_alternative{color: #879EFA;}.ace-hxl .ace_comment.ace_documentation.ace_mention, .ace-hxl .ace_comment.ace_documentation.ace_issue{border: 1px solid #D0CFCF;border-radius: 6px;background-color: whitesmoke;color: black;padding: 0 2px;margin: 0 -4px;cursor: pointer !important;pointer-events: auto;}body.dark .ace-hxl .ace_gutter {background: #31373F;color: #8F908A;border-right: 1px solid #8c8c8c;}body.dark .ace-hxl .ace_print-margin {width: 1px;background: #555651}body.dark .ace-hxl {background-color: #272B30;color: #F8F8F2}body.dark .ace-hxl .ace_cursor {color: #F8F8F0}body.dark .ace-hxl .ace_marker-layer .ace_selection {background: #49483E}body.dark .ace-hxl.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #272822;}body.dark .ace-hxl .ace_marker-layer .ace_step {background: rgb(102, 82,
5160)}body.dark .ace-hxl .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #49483E}body.dark .ace-hxl .ace_marker-layer .ace_active-line {background: #202020}body.dark .ace-hxl .ace_gutter-active-line {background-color: #272727}body.dark .ace-hxl .ace_marker-layer .ace_selected-word {border: 1px solid #ffffff;background-color: rgba(73, 73, 73, 0.54);border-radius: 3px;transform: scale(1.1);}body.dark .ace-hxl .ace_invisible {color: #52524d}body.dark .ace-hxl .ace_entity.ace_name.ace_tag,body.dark .ace-hxl .ace_keyword,body.dark .ace-hxl .ace_meta.ace_tag,body.dark .ace-hxl .ace_storage {color: #F92672}body.dark .ace-hxl .ace_punctuation,body.dark .ace-hxl .ace_punctuation.ace_tag {color: #fff}body.dark .ace-hxl .ace_constant.ace_character,body.dark .ace-hxl .ace_constant.ace_language,body.dark .ace-hxl .ace_constant.ace_numeric,body.dark .ace-hxl .ace_constant.ace_other {color: #AE81FF}body.dark .ace-hxl .ace_invalid {color: #F8F8F0;background-color: #F92672}body.dark .ace-hxl .ace_invalid.ace_deprecated {color: #F8F8F0;background-color: #AE81FF}body.dark .ace-hxl .ace_support.ace_constant,body.dark .ace-hxl .ace_support.ace_function {color: #66D9EF}body.dark .ace-hxl .ace_fold {background-color: #A6E22E;border-color: #F8F8F2}body.dark .ace-hxl .ace_storage.ace_type,body.dark .ace-hxl .ace_support.ace_class,body.dark .ace-hxl .ace_support.ace_type {font-style: italic;color: #66D9EF}body.dark .ace-hxl .ace_entity.ace_name.ace_function,body.dark .ace-hxl .ace_entity.ace_other,body.dark .ace-hxl .ace_entity.ace_other.ace_attribute-name,body.dark .ace-hxl .ace_variable {color: #A6E22E}body.dark .ace-hxl .ace_variable.ace_parameter {font-style: italic;color: #FD971F}body.dark .ace-hxl .ace_string {color: #E6DB74}body.dark .ace-hxl .ace_comment {color: #75715E}body.dark .ace-hxl .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWPQ0FD0ZXBzd/wPAAjVAoxeSgNeAAAAAElFTkSuQmCC) right repeat-y}body.dark .ace-hxl .ace_identifier.ace_tree {color: #d6d6d6;}body.dark .ace-hxl .ace_autocomplete .ace_marker-layer .ace_active-line{background-color: #515256;}body.dark .ace-hxl .ace_editor.ace_autocomplete .ace_completion-highlight{color: #CEC107;}body.dark .ace-hxl .ace_indent-guide {border-right: none;margin-right: 0;}"; 517 var r=e("../lib/dom"); 518 r.importCssString(t.cssText,t.cssClass) 519}) 520 521define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-chrome",t.cssText='.ace-chrome .ace_gutter {background: #ebebeb;color: #333;overflow : hidden;}.ace-chrome .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-chrome {background-color: #FFFFFF;color: black;}.ace-chrome .ace_cursor {color: black;}.ace-chrome .ace_invisible {color: rgb(191, 191, 191);}.ace-chrome .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-chrome .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-chrome .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-chrome .ace_invalid {background-color: rgb(153, 0, 0);color: white;}.ace-chrome .ace_fold {}.ace-chrome .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-chrome .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-chrome .ace_support.ace_type,.ace-chrome .ace_support.ace_class.ace-chrome .ace_support.ace_other {color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter {font-style:italic;color:#FD971F;}.ace-chrome .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-chrome .ace_comment {color: #236e24;}.ace-chrome .ace_comment.ace_doc {color: #236e24;}.ace-chrome .ace_comment.ace_doc.ace_tag {color: #236e24;}.ace-chrome .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-chrome .ace_variable {color: rgb(49, 132, 149);}.ace-chrome .ace_xml-pe {color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-chrome .ace_heading {color: rgb(12, 7, 255);}.ace-chrome .ace_list {color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step {background: rgb(252, 255, 0
521);}.ace-chrome .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_gutter-active-line {background-color : #dcdcdc;}.ace-chrome .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_keyword,.ace-chrome .ace_meta.ace_tag {color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-chrome .ace_string {color: #1A1AA6;}.ace-chrome .ace_entity.ace_other.ace_attribute-name {color: #994409;}.ace-chrome .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)}); (function() { 522 window.require(["ace/theme/chrome"], function(m) { 523 if (typeof module == "object" && typeof exports == "object" && module) { 524 module.exports = m; 525 } 526 }); 527 })(); 528 529 530"no use strict"; 531!function (e) { 532 function t(e, t) { 533 var n = e, r = ""; 534 while (n) { 535 var i = t[n]; 536 if (typeof i == "string") return i + r; 537 if (i) return i.location.replace(/\/*$/, "/") + (r || i.main || i.name); 538 if (i === !1) return ""; 539 var s = n.lastIndexOf("/"); 540 if (s === -1) break; 541 r = n.substr(s) + r, n = n.slice(0, s) 542 } 543 return e 544 } 545 546 if (typeof e.window != "undefined" && e.document) return; 547 if (e.require && e.define) return; 548 e.console || (e.console = function () { 549 var e = Array.prototype.slice.call(arguments, 0); 550 postMessage({type: "log", data: e}) 551 }, e.console.error = e.console.warn = e.console.log = e.console.trace = e.console), e.window = e, e.ace = e, e.onerror = function (e, t, n, r, i) { 552 postMessage({type: "error", data: {message: e, data: i.data, file: t, line: n, col: r, stack: i.stack}}) 553 }, e.normalizeModule = function (t, n) { 554 if (n.indexOf("!") !== -1) { 555 var r = n.split("!"); 556 return e.normalizeModule(t, r[0]) + "!" + e.normalizeModule(t, r[1]) 557 } 558 if (n.charAt(0) == ".") { 559 var i = t.split("/").slice(0, -1).join("/"); 560 n = (i ? i + "/" : "") + n; 561 while (n.indexOf(".") !== -1 && s != n) { 562 var s = n; 563 n = n.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "") 564 } 565 } 566 return n 567 }, e.require = function (r, i) { 568 i || (i = r, r = null); 569 if (!i.charAt) throw new Error("worker.js require() accepts only (parentId, id) as arguments"); 570 i = e.normalizeModule(r, i); 571 var s = e.require.modules[i]; 572 if (s) return s.initialized || (s.initialized = !0, s.exports = s.factory().exports), s.exports; 573 if (!e.require.tlns) return console.log("unable to load " + i); 574 var o = t(i, e.require.tlns); 575 return o.slice(-3) != ".js" && (o += ".js"), e.require.id = i, e.require.modules[i] = {}, importScripts(o), e.require(r, i) 576 }, e.require.modules = {}, e.require.tlns = {}, e.define = function (t, n, r) { 577 arguments.length == 2 ? (r = n, typeof t != "string" && (n = t, t = e.require.id)) : arguments.length == 1 && (r = t, n = [], t = e.require.id); 578 if (typeof r != "function") { 579 e.require.modules[t] = {exports: r, initialized: !0}; 580 return 581 } 582 n.length || (n = ["require", "exports", "module"]); 583 var i = function (n) { 584 return e.require(t, n) 585 }; 586 e.require.modules[t] = { 587 exports: {}, factory: function () { 588 var e = this, t = r.apply(this, n.slice(0, r.length).map(function (t) { 589 switch (t) { 590 case"require": 591 return i; 592 case"exports": 593 return e.exports; 594 case"module": 595 return e; 596 default: 597 return i(t) 598 } 599 })); 600 return t && (e.exports = t), e 601 } 602 } 603 }, e.define.amd = {}, require.tlns = {}, e.initBaseUrls = function (t) { 604 for (var n in t) require.tlns[n] = t[n] 605 }, e.initSender = function () { 606 var n = e.require("ace/lib/event_emitter").EventEmitter, r = e.require("ace/lib/oop"), i = function () { 607 }; 608 return function () { 609 r.implement(this, n), this.callback = function (e, t) { 610 postMessage({type: "call", id: t, data: e}) 611 }, this.emit = function (e, t) { 612 postMessage({type: "event", name: e, data: t}) 613 } 614 }.call(i.prototype), new i 615 }; 616 var n = e.main = null, r = e.sender = null; 617 e.onmessage = function (t) { 618 var i = t.data; 619 if (i.event && r) r._signal(i.event, i.data); else if (i.command) if (n[i.command]) n[i.command].apply(n, i.args); else { 620 if (!e[i.command]) throw new Error("Unknown command:" + i.command); 621 e[i.command].apply(e, i.args) 622 } else if (i.init) { 623 e.initBaseUrls(i.tlns), require("ace/lib/es5-shim"), r = e.sender = e.initSender(); 624 var s = require(i.module)[i.classname]; 625 n = e.main = new s(r) 626 } 627 } 628}(this), define("ace/lib/oop", [], function (e, t, n) { 629 "use strict"; 630 t.inherits = function (e, t) { 631 e.super_ = t, e.prototype = Object.create(t.prototype, { 632 constructor: { 633 value: e, 634 enumerable: !1, 635 writable: !0, 636 configurable: !0 637 } 638 }) 639 }, t.mixin = function (e, t) { 640 for (var n in t) e[n] = t[n]; 641 return e 642 }, t.implement = function (e, n) { 643 t.mixin(e, n) 644 } 645}), define("ace/lib/lang", [], function (e, t, n) { 646 "use strict"; 647 t.last = function (e) { 648 return e[e.length - 1] 649 }
649, t.stringReverse = function (e) { 650 return e.split("").reverse().join("") 651 }, t.stringRepeat = function (e, t) { 652 var n = ""; 653 while (t > 0) { 654 t & 1 && (n += e); 655 if (t >>= 1) e += e 656 } 657 return n 658 }; 659 var r = /^\s\s*/, i = /\s\s*$/; 660 t.stringTrimLeft = function (e) { 661 return e.replace(r, "") 662 }, t.stringTrimRight = function (e) { 663 return e.replace(i, "") 664 }, t.copyObject = function (e) { 665 var t = {}; 666 for (var n in e) t[n] = e[n]; 667 return t 668 }, t.copyArray = function (e) { 669 var t = []; 670 for (var n = 0, r = e.length; n < r; n++) e[n] && typeof e[n] == "object" ? t[n] = this.copyObject(e[n]) : t[n] = e[n]; 671 return t 672 }, t.deepCopy = function s(e) { 673 if (typeof e != "object" || !e) return e; 674 var t; 675 if (Array.isArray(e)) { 676 t = []; 677 for (var n = 0; n < e.length; n++) t[n] = s(e[n]); 678 return t 679 } 680 if (Object.prototype.toString.call(e) !== "[object Object]") return e; 681 t = {}; 682 for (var n in e) t[n] = s(e[n]); 683 return t 684 }, t.arrayToMap = function (e) { 685 var t = {}; 686 for (var n = 0; n < e.length; n++) t[e[n]] = 1; 687 return t 688 }, t.createMap = function (e) { 689 var t = Object.create(null); 690 for (var n in e) t[n] = e[n]; 691 return t 692 }, t.arrayRemove = function (e, t) { 693 for (var n = 0; n <= e.length; n++) t === e[n] && e.splice(n, 1) 694 }, t.escapeRegExp = function (e) { 695 return e.replace(/([.*+?^${}()|[\]\/\\])/g, "\\$1") 696 }, t.escapeHTML = function (e) { 697 return ("" + e).replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<") 698 }, t.getMatchOffsets = function (e, t) { 699 var n = []; 700 return e.replace(t, function (e) { 701 n.push({offset: arguments[arguments.length - 2], length: e.length}) 702 }), n 703 }, t.deferredCall = function (e) { 704 var t = null, n = function () { 705 t = null, e() 706 }, r = function (e) { 707 return r.cancel(), t = setTimeout(n, e || 0), r 708 }; 709 return r.schedule = r, r.call = function () { 710 return this.cancel(), e(), r 711 }, r.cancel = function () { 712 return clearTimeout(t), t = null, r 713 }, r.isPending = function () { 714 return t 715 }, r 716 }, t.delayedCall = function (e, t) { 717 var n = null, r = function () { 718 n = null, e() 719 }, i = function (e) { 720 n == null && (n = setTimeout(r, e || t)) 721 }; 722 return i.delay = function (e) { 723 n && clearTimeout(n), n = setTimeout(r, e || t) 724 }, i.schedule = i, i.call = function () { 725 this.cancel(), e() 726 }, i.cancel = function () { 727 n && clearTimeout(n), n = null 728 }, i.isPending = function () { 729 return n 730 }, i 731 } 732}), define("ace/range", [], function (e, t, n) { 733 "use strict"; 734 var r = function (e, t) { 735 return e.row - t.row || e.column - t.column 736 }, i = function (e, t, n, r) { 737 this.start = {row: e, column: t}, this.end = {row: n, column: r} 738 }; 739 (function () { 740 this.isEqual = function (e) { 741 return this.start.row === e.start.row && this.end.row === e.end.row && this.start.column === e.start.column && this.end.column === e.end.column 742 }, this.toString = function () { 743 return "Range: [" + this.start.row + "/" + this.start.column + "] -> [" + this.end.row + "/" + this.end.column + "]" 744 }, this.contains = function (e, t) { 745 return this.compare(e, t) == 0 746 }, this.compareRange = function (e) { 747 var t, n = e.end, r = e.start; 748 return t = this.compare(n.row, n.column), t == 1 ? (t = this.compare(r.row, r.column), t == 1 ? 2 : t == 0 ? 1 : 0) : t == -1 ? -2 : (t = this.compare(r.row, r.column), t == -1 ? -1 : t == 1 ? 42 : 0) 749 }, this.comparePoint = function (e) { 750 return this.compare(e.row, e.column) 751 }, this.containsRange = function (e) { 752 return this.comparePoint(e.start) == 0 && this.comparePoint(e.end) == 0 753 }, this.intersects = function (e) { 754 var t = this.compareRange(e); 755 return t == -1 || t == 0 || t == 1 756 }, this.isEnd = function (e, t) {
757 return this.end.row == e && this.end.column == t 758 }, this.isStart = function (e, t) { 759 return this.start.row == e && this.start.column == t 760 }, this.setStart = function (e, t) { 761 typeof e == "object" ? (this.start.column = e.column, this.start.row = e.row) : (this.start.row = e, this.start.column = t) 762 }, this.setEnd = function (e, t) { 763 typeof e == "object" ? (this.end.column = e.column, this.end.row = e.row) : (this.end.row = e, this.end.column = t) 764 }, this.inside = function (e, t) { 765 return this.compare(e, t) == 0 ? this.isEnd(e, t) || this.isStart(e, t) ? !1 : !0 : !1 766 }, this.insideStart = function (e, t) { 767 return this.compare(e, t) == 0 ? this.isEnd(e, t) ? !1 : !0 : !1 768 }, this.insideEnd = function (e, t) { 769 return this.compare(e, t) == 0 ? this.isStart(e, t) ? !1 : !0 : !1 770 }, this.compare = function (e, t) { 771 return !this.isMultiLine() && e === this.start.row ? t < this.start.column ? -1 : t > this.end.column ? 1 : 0 : e < this.start.row ? -1 : e > this.end.row ? 1 : this.start.row === e ? t >= this.start.column ? 0 : -1 : this.end.row === e ? t <= this.end.column ? 0 : 1 : 0 772 }, this.compareStart = function (e, t) { 773 return this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 774 }, this.compareEnd = function (e, t) { 775 return this.end.row == e && this.end.column == t ? 1 : this.compare(e, t) 776 }, this.compareInside = function (e, t) { 777 return this.end.row == e && this.end.column == t ? 1 : this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 778 }, this.clipRows = function (e, t) { 779 if (this.end.row > t) var n = {row: t + 1, column: 0}; else if (this.end.row < e) var n = { 780 row: e, 781 column: 0 782 }; 783 if (this.start.row > t) var r = {row: t + 1, column: 0}; else if (this.start.row < e) var r = { 784 row: e, 785 column: 0 786 }; 787 return i.fromPoints(r || this.start, n || this.end) 788 }, this.extend = function (e, t) { 789 var n = this.compare(e, t); 790 if (n == 0) return this; 791 if (n == -1) var r = {row: e, column: t}; else var s = {row: e, column: t}; 792 return i.fromPoints(r || this.start, s || this.end) 793 }, this.isEmpty = function () { 794 return this.start.row === this.end.row && this.start.column === this.end.column 795 }, this.isMultiLine = function () { 796 return this.start.row !== this.end.row 797 }, this.clone = function () { 798 return i.fromPoints(this.start, this.end) 799 }, this.collapseRows = function () { 800 return this.end.column == 0 ? new i(this.start.row, 0, Math.max(this.start.row, this.end.row - 1), 0) : new i(this.start.row, 0, this.end.row, 0) 801 }, this.toScreenRange = function (e) { 802 var t = e.documentToScreenPosition(this.start), n = e.documentToScreenPosition(this.end); 803 return new i(t.row, t.column, n.row, n.column) 804 }, this.moveBy = function (e, t) { 805 this.start.row += e, this.start.column += t, this.end.row += e, this.end.column += t 806 } 807 }).call(i.prototype), i.fromPoints = function (e, t) { 808 return new i(e.row, e.column, t.row, t.column) 809 }, i.comparePoints = r, i.comparePoints = function (e, t) { 810 return e.row - t.row || e.column - t.column 811 }, t.Range = i 812}), define("ace/apply_delta", [], function (e, t, n) { 813 "use strict"; 814 815 function r(e, t) { 816 throw console.log("Invalid Delta:", e), "Invalid Delta: " + t 817 } 818 819 function i(e, t) { 820 return t.row >= 0 && t.row < e.length && t.column >= 0 && t.column <= e[t.row].length 821 } 822 823 function s(e, t) { 824 t.action != "insert" && t.action != "remove" && r(t, "delta.action must be 'insert' or 'remove'"), t.lines instanceof Array || r(t, "delta.lines must be an Array"), (!t.start || !t.end) && r(t, "delta.start/end must be an present"); 825 var n = t.start; 826 i(e, t.start) || r(t, "delta.start must be contained in document"); 827 var s = t.end; 828 t.action == "remove" && !i(e, s) && r(t, "delta.end must contained in document for 'remove' actions"); 829 var o = s.row - n.row, u = s.column - (o == 0 ? n.column : 0); 830 (o != t.lines.length - 1 || t.lines[o].length != u) && r(t, "delta.range must match delta lines") 831 } 832 833 t.applyDelta = function (e, t, n) { 834 var r = t.start.row, i = t.start.column, s = e[r] || ""; 835 switch (t.action) { 836 case"insert": 837 var o = t.lines; 838 if (o.length === 1) e[r] = s.substring(0, i) + t.lines[0] + s.substring(i); else {
839 var u = [r, 1].concat(t.lines); 840 e.splice.apply(e, u), e[r] = s.substring(0, i) + e[r], e[r + t.lines.length - 1] += s.substring(i) 841 } 842 break; 843 case"remove": 844 var a = t.end.column, f = t.end.row; 845 r === f ? e[r] = s.substring(0, i) + s.substring(a) : e.splice(r, f - r + 1, s.substring(0, i) + e[f].substring(a)) 846 } 847 } 848}), define("ace/lib/event_emitter", [], function (e, t, n) { 849 "use strict"; 850 var r = {}, i = function () { 851 this.propagationStopped = !0 852 }, s = function () { 853 this.defaultPrevented = !0 854 }; 855 r._emit = r._dispatchEvent = function (e, t) { 856 this._eventRegistry || (this._eventRegistry = {}), this._defaultHandlers || (this._defaultHandlers = {}); 857 var n = this._eventRegistry[e] || [], r = this._defaultHandlers[e]; 858 if (!n.length && !r) return; 859 if (typeof t != "object" || !t) t = {}; 860 t.type || (t.type = e), t.stopPropagation || (t.stopPropagation = i), t.preventDefault || (t.preventDefault = s), n = n.slice(); 861 for (var o = 0; o < n.length; o++) { 862 n[o](t, this); 863 if (t.propagationStopped) break 864 } 865 if (r && !t.defaultPrevented) return r(t, this) 866 }, r._signal = function (e, t) { 867 var n = (this._eventRegistry || {})[e]; 868 if (!n) return; 869 n = n.slice(); 870 for (var r = 0; r < n.length; r++) n[r](t, this) 871 }, r.once = function (e, t) { 872 var n = this; 873 this.addEventListener(e, function r() { 874 n.removeEventListener(e, r), t.apply(null, arguments) 875 }); 876 if (!t) return new Promise(function (e) { 877 t = e 878 }) 879 }, r.setDefaultHandler = function (e, t) { 880 var n = this._defaultHandlers; 881 n || (n = this._defaultHandlers = {_disabled_: {}}); 882 if (n[e]) { 883 var r = n[e], i = n._disabled_[e]; 884 i || (n._disabled_[e] = i = []), i.push(r); 885 var s = i.indexOf(t); 886 s != -1 && i.splice(s, 1) 887 } 888 n[e] = t 889 }, r.removeDefaultHandler = function (e, t) { 890 var n = this._defaultHandlers; 891 if (!n) return; 892 var r = n._disabled_[e]; 893 if (n[e] == t) r && this.setDefaultHandler(e, r.pop()); else if (r) { 894 var i = r.indexOf(t); 895 i != -1 && r.splice(i, 1) 896 } 897 }, r.on = r.addEventListener = function (e, t, n) { 898 this._eventRegistry = this._eventRegistry || {}; 899 var r = this._eventRegistry[e]; 900 return r || (r = this._eventRegistry[e] = []), r.indexOf(t) == -1 && r[n ? "unshift" : "push"](t), t 901 }, r.off = r.removeListener = r.removeEventListener = function (e, t) { 902 this._eventRegistry = this._eventRegistry || {}; 903 var n = this._eventRegistry[e]; 904 if (!n) return; 905 var r = n.indexOf(t); 906 r !== -1 && n.splice(r, 1) 907 }, r.removeAllListeners = function (e) { 908 this._eventRegistry && (this._eventRegistry[e] = []) 909 }, t.EventEmitter = r 910}), define("ace/anchor", [], function (e, t, n) { 911 "use strict"; 912 var r = e("./lib/oop"), i = e("./lib/event_emitter").EventEmitter, s = t.Anchor = function (e, t, n) { 913 this.$onChange = this.onChange.bind(this), this.attach(e), typeof n == "undefined" ? this.setPosition(t.row, t.column) : this.setPosition(t, n) 914 }; 915 (function () { 916 function e(e, t, n) { 917 var r = n ? e.column <= t.column : e.column < t.column; 918 return e.row < t.row || e.row == t.row && r 919 } 920 921 function t(t, n, r) { 922 var i = t.action == "insert", s = (i ? 1 : -1) * (t.end.row - t.start.row), 923 o = (i ? 1 : -1) * (t.end.column - t.start.column), u = t.start, a = i ? u : t.end; 924 return e(n, u, r) ? {row: n.row, column: n.column} : e(a, n, !r) ? { 925 row: n.row + s, 926 column: n.column + (n.row == a.row ? o : 0) 927 } : {row: u.row, column: u.column} 928 } 929 930 r.implement(this, i), this.getPosition = function () { 931 return this.$clipPositionToDocument(this.row, this.column) 932 }, this.getDocument = function () { 933 return this.document 934 }, this.$insertRight = !1, this.onChange = function (e) { 935 if (e.start.row == e.end.row && e.start.row != this.row) return; 936 if (e.start.row > this.row) return; 937 var n = t(e, {row: this.row, column: this.column}, this.$insertRight); 938 this.setPosition(n.row, n.column, !0) 939 }, this.setPosition = function (e, t, n) { 940 var r; 941 n ? r = {row: e, column: t} : r = this.$clipPositionToDocument(e, t); 942 if (this.row == r.row && this.column == r.column) return; 943 var i = {row: this.row, column: this.column}; 944 this.row = r.row, this.column = r.column, this._signal("change", {old: i, value: r}) 945 }, this.detach = function () { 946 this.document.removeEventListener("change", this.$onChange) 947 }, this.attach = function (e) { 948 this.document = e || this.document, this.document.on("change", this.$onChange) 949 }, this.$clipPositionToDocument = function (e, t) { 950 var n = {}; 951 return e >= this.document.getLength() ? (n.row = Math.max(0, this.document.getLength() - 1), n.column = this.document.getLine(n.row).length) : e < 0 ? (n.row = 0, n.column = 0) : (n.row = e, n.column = Math.min(this.document.getLine(n.row).length, Math.max(0, t))), t < 0 && (n.column = 0), n 952 } 953 }).call(s.prototype) 954}), define("ace/document", [], function (e, t, n) { 955 "use strict"; 956 var r = e("./lib/oop"), i = e("./apply_delta").applyDelta, s = e("./lib/event_emitter").EventEmitter, 957 o = e("./range").Range, u = e("./anchor").Anchor, a = function (e) { 958 this.$lines = [""], e.length === 0 ? this.$lines = [""] : Array.isArray(e) ? this.insertMergedLines({ 959 row: 0, 960 column: 0 961 }, e) : this.insert({row: 0, column: 0}, e) 962 }; 963 (function () { 964 r.implement(this, s), this.setValue = function (e) { 965 var t = this.getLength() - 1; 966 this.remove(new o(0, 0, t, this.getLine(t).length)), this.insert({row: 0, column: 0}, e) 967 }, this.getValue = function () { 968 return this.getAllLines().join(this.getNewLineCharacter()) 969 }, this.createAnchor = function (e, t) { 970 return new u(this, e, t) 971 }, "aaa".split(/a/).length === 0 ? this.$split = function (e) { 972 return e.replace(/\r\n|\r/g, "\n").split("\n") 973 } : this.$split = function (e) { 974 return e.split(/\r\n|\r|\n/) 975 }, this.$detectNewLine = function (e) { 976 var t = e.match(/^.*?(\r\n|\r|\n)/m); 977 this.$autoNewLine = t ? t[1] : "\n", this._signal("changeNewLineMode") 978 }, this.getNewLineCharacter = function () { 979 switch (this.$newLineMode) { 980 case"windows": 981 return "\r\n"; 982 case"unix": 983 return "\n"; 984 default: 985 return this.$autoNewLine || "\n" 986 } 987 }, this.$autoNewLine = "", this.$newLineMode = "auto", this.setNewLineMode = function (e) { 988 if (this.$newLineMode === e) return; 989 this.$newLineMode = e, this._signal("changeNewLineMode") 990 }, this.getNewLineMode = function () { 991 return this.$newLineMode 992 }, this.isNewLine = function (e) { 993 return e == "\r\n" || e == "\r" || e == "\n" 994 }, this.getLine = function (e) { 995 return this.$lines[e] || "" 996 }, this.getLines = function (e, t) { 997 return this.$lines.slice(e, t + 1) 998 }, this.getAllLines = function () { 999 return this.getLines(0, this.getLength()) 1000 }, this.getLength = function () { 1001 return this.$lines.length 1002 }, this.getTextRange = function (e) { 1003 return this.getLinesForRange(e).join(this.getNewLineCharacter()) 1004 }, this.getLinesForRange = function (e) { 1005 var t; 1006 if (e.start.row === e.end.row) t = [this.getLine(e.start.row).substring(e.start.column, e.end.column)]; else { 1007 t = this.getLines(e.start.row, e.end.row), t[0] = (t[0] || "").substring(e.start.column); 1008 var n = t.length - 1; 1009 e.end.row - e.start.row == n && (t[n] = t[n].substring(0, e.end.column)) 1010 } 1011 return t 1012 }, this.insertLines = function (e, t) { 1013 return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."), this.insertFullLines(e, t) 1014 }, this.removeLines = function (e, t) { 1015 return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."), this.removeFullLines(e, t) 1016 }, this.insertNewLine = function (e) { 1017 return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."), this.insertMergedLines(e, ["", ""]) 1018 }, this.insert = function (e, t) { 1019 return this.getLength() <= 1 && this.$detectNewLine(t), this.insertMergedLines(e, this.$split(t)) 1020 }, this.insertInLine = function (e, t) { 1021 var n = this.clippedPos(e.row, e.column), r = this.pos(e.row, e.column + t.length); 1022 return this.applyDelta({start: n, end: r, action: "insert", lines: [t]}, !0), this.clonePos(r) 1023 }, this.clippedPos = function (e, t) { 1024 var n = this.getLength(); 1025 e === undefined ? e = n : e < 0 ? e = 0 : e >= n && (e = n - 1, t = undefined); 1026 var r = this.getLine(e); 1027 return t == undefined && (t = r.length), t = Math.min(Math.max(t, 0), r.length), {row: e, column: t} 1028 }, this.clonePos = function (e) { 1029 return {row: e.row, column: e.column} 1030 }, this.pos = function (e, t) { 1031 return {row: e, column: t} 1032 }, this.$clipPosition = function (e) { 1033 var t = this.getLength(); 1034 return e.row >= t ? (e.row = Math.max(0, t - 1), e.column = this.getLine(t - 1).length) : (e.row = Math.max(0, e.row), e.column = Math.min(Math.max(e.column, 0), this.getLine(e.row).length)), e 1035 }, this.insertFullLines = function (e, t) { 1036 e = Math.min(Math.max(e, 0), this.getLength()); 1037 var n = 0; 1038 e < this.getLength() ? (t = t.concat([""]), n = 0) : (t = [""].concat(t), e--, n = this.$lines[e].length), this.insertMergedLines({ 1039 row: e, 1040 column: n 1041 }, t) 1042 }, this.insertMergedLines = function (e, t) { 1043 var n = this.clippedPos(e.row, e.column), 1044 r = {row: n.row + t.length - 1, column: (t.length == 1 ? n.column : 0) + t[t.length - 1].length}; 1045 return this.applyDelta({start: n, end: r, action: "insert", lines: t}), this.clonePos(r) 1046 }, this.remove = function (e) { 1047 var t = this.clippedPos(e.start.row, e.start.column), n = this.clippedPos(e.end.row, e.end.column); 1048 return this.applyDelta({ 1049 start: t, 1050 end: n, 1051 action: "remove", 1052 lines: this.getLinesForRange({start: t, end: n}) 1053 }), this.clonePos(t) 1054 }, this.removeInLine = function (e, t, n) { 1055 var r = this.clippedPos(e, t), i = this.clippedPos(e, n); 1056 return this.applyDelta({ 1057 start: r, 1058 end: i, 1059 action: "remove", 1060 lines: this.getLinesForRange({start: r, end: i}) 1061 }, !0), this.clonePos(r) 1062 }, this.removeFullLines = function (e, t) { 1063 e = Math.min(Math.max(0, e), this.getLength() - 1), t = Math.min(Math.max(0, t), this.getLength() - 1); 1064 var n = t == this.getLength() - 1 && e > 0, r = t < this.getLength() - 1, i = n ? e - 1 : e, 1065 s = n ? this.getLine(i).length : 0, u = r ? t + 1 : t, a = r ? 0 : this.getLine(u).length, 1066 f = new o(i, s, u, a), l = this.$lines.slice(e, t + 1); 1067 return this.applyDelta({start: f.start, end: f.end, action: "remove", lines: this.getLinesForRange(f)}), l 1068 }, this.removeNewLine = function (e) { 1069 e < this.getLength() - 1 && e >= 0 && this.applyDelta({ 1070 start: this.pos(e, this.getLine(e).length), 1071 end: this.pos(e + 1, 0), 1072 action: "remove", 1073 lines: ["", ""] 1074 }) 1075 }, this.replace = function (e, t) { 1076 e instanceof o || (e = o.fromPoints(e.start, e.end)); 1077 if (t.length === 0 && e.isEmpty()) return e.start; 1078 if (t == this.getTextRange(e)) return e.end; 1079 this.remove(e); 1080 var n; 1081 return t ? n = this.insert(e.start, t) : n = e.start, n 1082 }, this.applyDeltas = function (e) { 1083 for (var t = 0; t < e.length; t++) this.applyDelta(e[t]) 1084 }, this.revertDeltas = function (e) { 1085 for (var t = e.length - 1; t >= 0; t--) this.revertDelta(e[t]) 1086 }, this.applyDelta = function (e, t) { 1087 var n = e.action == "insert"; 1088 if (n ? e.lines.length <= 1 && !e.lines[0] : !o.comparePoints(e.start, e.end)) return; 1089 n && e.lines.length > 2e4 ? this.$splitAndapplyLargeDelta(e, 2e4) : (i(this.$lines, e, t), this._signal("change", e)) 1090 }, this.$splitAndapplyLargeDelta = function (e, t) { 1091 var n = e.lines, r = n.length - t + 1, i = e.start.row, s = e.start.column; 1092 for (var o = 0, u = 0; o < r; o = u) { 1093 u += t - 1; 1094 var a = n.slice(o, u); 1095 a.push(""), this.applyDelta({ 1096 start: this.pos(i + o, s), 1097 end: this.pos(i + u, s = 0), 1098 action: e.action, 1099 lines: a 1100 }, !0) 1101 } 1102 e.lines = n.slice(o), e.start.row = i + o, e.start.column = s, this.applyDelta(e, !0) 1103 }, this.revertDelta = function (e) { 1104 this.applyDelta({ 1105 start: this.clonePos(e.start), 1106 end: this.clonePos(e.end), 1107 action: e.action == "insert" ? "remove" : "insert", 1108 lines: e.lines.slice() 1109 }) 1110 }, this.indexToPosition = function (e, t) { 1111 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length; 1112 for (var i = t || 0, s = n.length; i < s; i++) { 1113 e -= n[i].length + r; 1114 if (e < 0) return {row: i, column: e + n[i].length + r} 1115 } 1116 return {row: s - 1, column: e + n[s - 1].length + r} 1117 }, this.positionToIndex = function (e, t) { 1118 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length, i = 0, 1119 s = Math.min(e.row, n.length); 1120 for (var o = t || 0; o < s; ++o) i += n[o].length + r; 1121 return i + e.column 1122 } 1123 }).call(a.prototype), t.Document = a 1124}), define("ace/worker/mirror", [], function (e, t, n) { 1125 "use strict"; 1126 var r = e("../range").Range, i = e("../document").Document, s = e("../lib/lang"), o = t.Mirror = function (e) { 1127 this.sender = e; 1128 var t = this.doc = new i(""), n = this.deferredUpdate = s.delayedCall(this.onUpdate.bind(this)), r = this; 1129 e.on("change", function (e) { 1130 var i = e.data; 1131 if (i[0].start) t.applyDeltas(i); else for (var s = 0; s < i.length; s += 2) {
1132 if (Array.isArray(i[s + 1])) var o = { 1133 action: "insert", 1134 start: i[s], 1135 lines: i[s + 1] 1136 }; else var o = {action: "remove", start: i[s], end: i[s + 1]}; 1137 t.applyDelta(o, !0) 1138 } 1139 if (r.$timeout) return n.schedule(r.$timeout); 1140 r.onUpdate() 1141 }) 1142 }; 1143 (function () { 1144 this.$timeout = 500, this.setTimeout = function (e) { 1145 this.$timeout = e 1146 }, this.setValue = function (e) { 1147 this.doc.setValue(e), this.deferredUpdate.schedule(this.$timeout) 1148 }, this.getValue = function (e) { 1149 this.sender.callback(this.doc.getValue(), e) 1150 }, this.onUpdate = function () { 1151 }, this.isPending = function () { 1152 return this.deferredUpdate.isPending() 1153 } 1154 }).call(o.prototype) 1155}), define("ace/mode/css/csslint", [], function (require, exports, module) { 1156 function objectToString(e) { 1157 return Object.prototype.toString.call(e) 1158 } 1159 1160 function clone(e, t, n, r) { 1161 function u(e, n) { 1162 if (e === null) return null; 1163 if (n == 0) return e; 1164 var a; 1165 if (typeof e != "object") return e; 1166 if (util.isArray(e)) a = []; else if (util.isRegExp(e)) a = new RegExp(e.source, util.getRegExpFlags(e)), e.lastIndex && (a.lastIndex = e.lastIndex); else if (util.isDate(e)) a = new Date(e.getTime()); else { 1167 if (o && Buffer.isBuffer(e)) return a = new Buffer(e.length), e.copy(a), a; 1168 typeof r == "undefined" ? a = Object.create(Object.getPrototypeOf(e)) : a = Object.create(r) 1169 } 1170 if (t) { 1171 var f = i.indexOf(e); 1172 if (f != -1) return s[f]; 1173 i.push(e), s.push(a) 1174 } 1175 for (var l in e) a[l] = u(e[l], n - 1); 1176 return a 1177 } 1178 1179 var i = [], s = [], o = typeof Buffer != "undefined"; 1180 return typeof t == "undefined" && (t = !0), typeof n == "undefined" && (n = Infinity), u(e, n) 1181 } 1182 1183 function Reporter(e, t) { 1184 this.messages = [], this.stats = [], this.lines = e, this.ruleset = t 1185 } 1186 1187 var parserlib = {}; 1188 (function () { 1189 function e() { 1190 this._listeners = {} 1191 } 1192 1193 function t(e) { 1194 this._input = e.replace(/\n\r?/g, "\n"), this._line = 1, this._col = 1, this._cursor = 0 1195 } 1196 1197 function n(e, t, n) { 1198 this.col = n, this.line = t, this.message = e 1199 } 1200 1201 function r(e, t, n, r) { 1202 this.col = n, this.line = t, this.text = e, this.type = r 1203 } 1204 1205 function i(e, n) { 1206 this._reader = e ? new t(e.toString()) : null, this._token = null, this._tokenData = n, this._lt = [], this._ltIndex = 0, this._ltIndexCache = [] 1207 } 1208 1209 e.prototype = { 1210 constructor: e, addListener: function (e, t) { 1211 this._listeners[e] || (this._listeners[e] = []), this._listeners[e].push(t) 1212 }, fire: function (e) { 1213 typeof e == "string" && (e = {type: e}), typeof e.target != "undefined" && (e.target = this); 1214 if (typeof e.type == "undefined") throw new Error("Event object missing 'type' property."); 1215 if (this._listeners[e.type]) { 1216 var t = this._listeners[e.type].concat(); 1217 for (var n = 0, r = t.length; n < r; n++) t[n].call(this, e) 1218 } 1219 }, removeListener: function (e, t) { 1220 if (this._listeners[e]) { 1221 var n = this._listeners[e]; 1222 for (var r = 0, i = n.length; r < i; r++) if (n[r] === t) { 1223 n.splice(r, 1); 1224 break 1225 } 1226 } 1227 } 1228 }, t.prototype = { 1229 constructor: t, getCol: function () { 1230 return this._col 1231 }, getLine: function () { 1232 return this._line 1233 }, eof: function () { 1234 return this._cursor == this._input.length 1235 }, peek: function (e) { 1236 var t = null; 1237 return e = typeof e == "undefined" ? 1 : e, this._cursor < this._input.length && (t = this._input.charAt(this._cursor + e - 1)), t 1238 }, read: function () { 1239 var e = null; 1240 return this._cursor < this._input.length && (this._input.charAt(this._cursor) == "\n" ? (this._line++, this._col = 1) : this._col++, e = this._input.charAt(this._cursor++)), e 1241 }, mark: function () { 1242 this._bookmark = {cursor: this._cursor, line: this._line, col: this._col} 1243 }, reset: function () { 1244 this._bookmark && (this._cursor = this._bookmark.cursor, this._line = this._bookmark.line, this._col = this._bookmark.col, delete this._bookmark) 1245 }, readTo: function (e) { 1246 var t = "", n; 1247 while (t.length < e.length || t.lastIndexOf(e) != t.length - e.length) { 1248 n = this.read(); 1249 if (!n) throw new Error('Expected "' + e + '" at line ' + this._line + ", col " + this._col + "."); 1250 t += n 1251 } 1252 return t 1253 }, readWhile: function (e) { 1254 var t = "", n = this.read(); 1255 while (n !== null && e(n)) t += n, n = this.read(); 1256 return t 1257 }, readMatch: function (e) { 1258 var t = this._input.substring(this._cursor), n = null; 1259 return typeof e == "string" ? t.indexOf(e) === 0 && (n = this.readCount(e.length)) : e instanceof RegExp && e.test(t) && (n = this.readCount(RegExp.lastMatch.length)), n 1260 }, readCount: function (e) { 1261 var t = ""; 1262 while (e--) t += this.read(); 1263 return t 1264 } 1265 }, n.prototype = new Error, r.fromToken = function (e) { 1266 return new r(e.value, e.startLine, e.startCol) 1267 }, r.prototype = {
1268 constructor: r, valueOf: function () { 1269 return this.text 1270 }, toString: function () { 1271 return this.text 1272 } 1273 }, i.createTokenData = function (e) { 1274 var t = [], n = {}, r = e.concat([]), i = 0, s = r.length + 1; 1275 r.UNKNOWN = -1, r.unshift({name: "EOF"}); 1276 for (; i < s; i++) t.push(r[i].name), r[r[i].name] = i, r[i].text && (n[r[i].text] = i); 1277 return r.name = function (e) { 1278 return t[e] 1279 }, r.type = function (e) { 1280 return n[e] 1281 }, r 1282 }, i.prototype = { 1283 constructor: i, match: function (e, t) { 1284 e instanceof Array || (e = [e]); 1285 var n = this.get(t), r = 0, i = e.length; 1286 while (r < i) if (n == e[r++]) return !0; 1287 return this.unget(), !1 1288 }, mustMatch: function (e, t) { 1289 var r; 1290 e instanceof Array || (e = [e]); 1291 if (!this.match.apply(this, arguments)) throw r = this.LT(1), new n("Expected " + this._tokenData[e[0]].name + " at line " + r.startLine + ", col " + r.startCol + ".", r.startLine, r.startCol) 1292 }, advance: function (e, t) { 1293 while (this.LA(0) !== 0 && !this.match(e, t)) this.get(); 1294 return this.LA(0) 1295 }, get: function (e) { 1296 var t = this._tokenData, n = this._reader, r, i = 0, s = t.length, o = !1, u, a; 1297 if (this._lt.length && this._ltIndex >= 0 && this._ltIndex < this._lt.length) { 1298 i++, this._token = this._lt[this._ltIndex++], a = t[this._token.type]; 1299 while (a.channel !== undefined && e !== a.channel && this._ltIndex < this._lt.length) this._token = this._lt[this._ltIndex++], a = t[this._token.type], i++; 1300 if ((a.channel === undefined || e === a.channel) && this._ltIndex <= this._lt.length) return this._ltIndexCache.push(i), this._token.type 1301 } 1302 return u = this._getToken(), u.type > -1 && !t[u.type].hide && (u.channel = t[u.type].channel, this._token = u, this._lt.push(u), this._ltIndexCache.push(this._lt.length - this._ltIndex + i), this._lt.length > 5 && this._lt.shift(), this._ltIndexCache.length > 5 && this._ltIndexCache.shift(), this._ltIndex = this._lt.length), a = t[u.type], a && (a.hide || a.channel !== undefined && e !== a.channel) ? this.get(e) : u.type 1303 }, LA: function (e) { 1304 var t = e, n; 1305 if (e > 0) { 1306 if (e > 5) throw new Error("Too much lookahead."); 1307 while (t) n = this.get(), t--; 1308 while (t < e) this.unget(), t++ 1309 } else if (e < 0) { 1310 if (!this._lt[this._ltIndex + e]) throw new Error("Too much lookbehind."); 1311 n = this._lt[this._ltIndex + e].type 1312 } else n = this._token.type; 1313 return n 1314 }, LT: function (e) { 1315 return this.LA(e), this._lt[this._ltIndex + e - 1] 1316 }, peek: function () { 1317 return this.LA(1) 1318 }, token: function () { 1319 return this._token 1320 }, tokenName: function (e) { 1321 return e < 0 || e > this._tokenData.length ? "UNKNOWN_TOKEN" : this._tokenData[e].name 1322 }, tokenType: function (e) { 1323 return this._tokenData[e] || -1 1324 }, unget: function () { 1325 if (!this._ltIndexCache.length) throw new Error("Too much lookahead."); 1326 this._ltIndex -= this._ltIndexCache.pop(), this._token = this._lt[this._ltIndex - 1] 1327 } 1328 }, parserlib.util = {StringReader: t, SyntaxError: n, SyntaxUnit: r, EventTarget: e, TokenStreamBase: i} 1329 })(), function () { 1330 function Combinator(e, t, n) { 1331 SyntaxUnit.call(this, e, t, n, Parser.COMBINATOR_TYPE), this.type = "unknown", /^\s+$/.test(e) ? this.type = "descendant" : e == ">" ? this.type = "child" : e == "+" ? this.type = "adjacent-sibling" : e == "~" && (this.t
1331ype = "sibling") 1332 } 1333 1334 function MediaFeature(e, t) { 1335 SyntaxUnit.call(this, "(" + e + (t !== null ? ":" + t : "") + ")", e.startLine, e.startCol, Parser.MEDIA_FEATURE_TYPE), this.name = e, this.value = t 1336 } 1337 1338 function MediaQuery(e, t, n, r, i) { 1339 SyntaxUnit.call(this, (e ? e + " " : "") + (t ? t : "") + (t && n.length > 0 ? " and " : "") + n.join(" and "), r, i, Parser.MEDIA_QUERY_TYPE), this.modifier = e, this.mediaType = t, this.features = n 1340 } 1341 1342 function Parser(e) { 1343 EventTarget.call(this), this.options = e || {}, this._tokenStream = null 1344 } 1345 1346 function PropertyName(e, t, n, r) { 1347 SyntaxUnit.call(this, e, n, r, Parser.PROPERTY_NAME_TYPE), this.hack = t 1348 } 1349 1350 function PropertyValue(e, t, n) { 1351 SyntaxUnit.call(this, e.join(" "), t, n, Parser.PROPERTY_VALUE_TYPE), this.parts = e 1352 } 1353 1354 function PropertyValueIterator(e) { 1355 this._i = 0, this._parts = e.parts, this._marks = [], this.value = e 1356 } 1357 1358 function PropertyValuePart(text, line, col) { 1359 SyntaxUnit.call(this, text, line, col, Parser.PROPERTY_VALUE_PART_TYPE), this.type = "unknown"; 1360 var temp; 1361 if (/^([+\-]?[\d\.]+)([a-z]+)$/i.test(text)) { 1362 this.type = "dimension", this.value = +RegExp.$1, this.units = RegExp.$2; 1363 switch (this.units.toLowerCase()) { 1364 case"em": 1365 case"rem": 1366 case"ex": 1367 case"px": 1368 case"cm": 1369 case"mm": 1370 case"in": 1371 case"pt": 1372 case"pc": 1373 case"ch": 1374 case"vh": 1375 case"vw": 1376 case"vmax": 1377 case"vmin": 1378 this.type = "length"; 1379 break; 1380 case"deg": 1381 case"rad": 1382 case"grad": 1383 this.type = "angle"; 1384 break; 1385 case"ms": 1386 case"s": 1387 this.type = "time"; 1388 break; 1389 case"hz": 1390 case"khz": 1391 this.type = "frequency"; 1392 break; 1393 case"dpi": 1394 case"dpcm": 1395 this.type = "resolution" 1396 } 1397 } else /^([+\-]?[\d\.]+)%$/i.test(text) ? (this.type = "percentage", this.value = +RegExp.$1) : /^([+\-]?\d+)$/i.test(text) ? (this.type = "integer", this.value = +RegExp.$1) : /^([+\-]?[\d\.]+)$/i.test(text) ? (this.type = "number", this.value = +RegExp.$1) : /^#([a-f0-9]{3,6})/i.test(text) ? (this.type = "color", temp = RegExp.$1, temp.length == 3 ? (this.red = parseInt(temp.charAt(0) + temp.charAt(0), 16), this.green = parseInt(temp.charAt(1) + temp.charAt(1), 16), this.blue = parseInt(temp.charAt(2) + temp.charAt(2), 16)) : (this.red = parseInt(temp.substring(0, 2), 16), this.green = parseInt(temp.substring(2, 4), 16), this.blue = parseInt(temp.substring(4, 6), 16))) : /^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/i.test(text) ? (this.type = "color", this.red = +RegExp.$1, this.green = +RegExp.$2, this.blue = +RegExp.$3) : /^rgb\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text) ? (this.type = "color", this.red = +RegExp.$1 * 255 / 100, this.green = +RegExp.$2 * 255 / 100, this.blue = +RegExp.$3 * 255 / 100) : /^rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\s*\)/i.test(text) ? (this.type = "color", this.red = +RegExp.$1, this.green = +RegExp.$2, this.blue = +RegExp.$3, this.alpha = +RegExp.$4) : /^rgba\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text) ? (this.type = "color", this.red = +RegExp.$1 * 255 / 100, this.green = +RegExp.$2 * 255 / 100, this.blue = +RegExp.$3 * 255 / 100, this.alpha = +RegExp.$4) : /^hsl\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text) ? (this.type = "color", this.hue = +RegExp.$1, this.saturation = +RegExp.$2 / 100, this.lightness = +RegExp.$3 / 100) : /^hsla\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text) ? (this.t
1397ype = "color", this.hue = +RegExp.$1, this.saturation = +RegExp.$2 / 100, this.lightness = +RegExp.$3 / 100, this.alpha = +RegExp.$4) : /^url\(["']?([^\)"']+)["']?\)/i.test(text) ? (this.type = "uri", this.uri = RegExp.$1) : /^([^\(]+)\(/i.test(text) ? (this.type = "function", this.name = RegExp.$1, this.value = text) : /^["'][^"']*["']/.test(text) ? (this.type = "string", this.value = eval(text)) : Colors[text.toLowerCase()] ? (this.type = "color", temp = Colors[text.toLowerCase()].substring(1), this.red = parseInt(temp.substring(0, 2), 16), this.green = parseInt(temp.substring(2, 4), 16), this.blue = parseInt(temp.substring(4, 6), 16)) : /^[\,\/]$/.test(text) ? (this.type = "operator", this.value = text) : /^[a-z\-_\u0080-\uFFFF][a-z0-9\-_\u0080-\uFFFF]*$/i.test(text) && (this.type = "identifier", this.value = text) 1398 } 1399 1400 function Selector(e, t, n) { 1401 SyntaxUnit.call(this, e.join(" "), t, n, Parser.SELECTOR_TYPE), this.parts = e, this.specificity = Specificity.calculate(this) 1402 } 1403 1404 function SelectorPart(e, t, n, r, i) { 1405 SyntaxUnit.call(this, n, r, i, Parser.SELECTOR_PART_TYPE), this.elementName = e, this.modifiers = t 1406 } 1407 1408 function SelectorSubPart(e, t, n, r) { 1409 SyntaxUnit.call(this, e, n, r, Parser.SELECTOR_SUB_PART_TYPE), this.type = t, this.args = [] 1410 } 1411 1412 function Specificity(e, t, n, r) { 1413 this.a = e, this.b = t, this.c = n, this.d = r 1414 } 1415 1416 function isHexDigit(e) { 1417 return e !== null && h.test(e) 1418 } 1419 1420 function isDigit(e) { 1421 return e !== null && /\d/.test(e) 1422 } 1423 1424 function isWhitespace(e) { 1425 return e !== null && /\s/.test(e) 1426 } 1427 1428 function isNewLine(e) { 1429 return e !== null && nl.test(e) 1430 } 1431 1432 function isNameStart(e) { 1433 return e !== null && /[a-z_\u0080-\uFFFF\\]/i.test(e) 1434 } 1435 1436 function isNameChar(e) { 1437 return e !== null && (isNameStart(e) || /[0-9\-\\]/.test(e)) 1438 } 1439 1440 function isIdentStart(e) { 1441 return e !== null && (isNameStart(e) || /\-\\/.test(e)) 1442 } 1443 1444 function mix(e, t) { 1445 for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]); 1446 return e 1447 } 1448 1449 function TokenStream(e) { 1450 TokenStreamBase.call(this, e, Tokens) 1451 } 1452 1453 function ValidationError(e, t, n) { 1454 this.col = n, this.line = t, this.message = e 1455 } 1456 1457 var EventTarget = parserlib.util.EventTarget, TokenStreamBase = parserlib.util.TokenStreamBase, 1458 StringReader = parserlib.util.StringReader, SyntaxError = parserlib.util.SyntaxError, 1459 SyntaxUnit = parserlib.util.SyntaxUnit, Colors = { 1460 aliceblue: "#f0f8ff", 1461 antiquewhite: "#faebd7", 1462 aqua: "#00ffff", 1463 aquamarine: "#7fffd4", 1464 azure: "#f0ffff", 1465 beige: "#f5f5dc", 1466 bisque: "#ffe4c4", 1467 black: "#000000", 1468 blanchedalmond: "#ffebcd", 1469 blue: "#0000ff", 1470 blueviolet: "#8a2be2", 1471 brown: "#a52a2a", 1472 burlywood: "#deb887", 1473 cadetblue: "#5f9ea0", 1474 chartreuse: "#7fff00", 1475 chocolate: "#d2691e", 1476 coral: "#ff7f50", 1477 cornflowerblue: "#6495ed", 1478 cornsilk: "#fff8dc", 1479 crimson: "#dc143c", 1480 cyan: "#00ffff", 1481 darkblue: "#00008b", 1482 darkcyan: "#008b8b", 1483 darkgoldenrod: "#b8860b", 1484 darkgray: "#a9a9a9", 1485 darkgrey: "#a9a9a9", 1486 darkgreen: "#006400", 1487 darkkhaki: "#bdb76b", 1488 darkmagenta: "#8b008b", 1489 darkolivegreen: "#556b2f", 1490 darkorange: "#ff8c00", 1491 darkorchid: "#9932cc", 1492 darkred: "#8b0000", 1493 darksalmon: "#e9967a", 1494 darkseagreen: "#8fbc8f", 1495 darkslateblue: "#483d8b", 1496 darkslategray: "#2f4f4f", 1497 darkslategrey: "#2f4f4f", 1498 darkturquoise: "#00ced1", 1499 darkviolet: "#9400d3", 1500 deeppink: "#ff1493", 1501 deepskyblue: "#00bfff", 1502 dimgray: "#696969", 1503 dimgrey: "#696969", 1504 dodgerblue: "#1e90ff", 1505 firebrick: "#b22222", 1506 floralwhite: "#fffaf0", 1507 forestgreen: "#228b22", 1508 fuchsia: "#ff00ff", 1509 gainsboro: "#dcdcdc", 1510 ghostwhite: "#f8f8ff", 1511 gold: "#ffd700", 1512 goldenrod: "#daa520", 1513 gray: "#808080", 1514 grey: "#808080", 1515 green: "#008000", 1516 greenyellow: "#adff2f", 1517 honeydew: "#f0fff0", 1518 hotpink: "#ff69b4", 1519 indianred: "#cd5c5c", 1520 indigo: "#4b0082", 1521 ivory: "#fffff0", 1522 khaki: "#f0e68c", 1523 lavender: "#e6e6fa", 1524 lavenderblush: "#fff0f5", 1525 lawngreen: "#7cfc00", 1526 lemonchiffon: "#fffacd", 1527 lightblue: "#add8e6", 1528 lightcoral: "#f08080", 1529 lightcyan: "#e0ffff", 1530 lightgoldenrodyellow: "#fafad2", 1531 lightgray: "#d3d3d3", 1532 lightgrey: "#d3d3d3", 1533 lightgreen: "#90ee90", 1534 lightpink: "#ffb6c1", 1535 lightsalmon: "#ffa07a", 1536 lightseagreen: "#20b2aa", 1537 lightskyblue: "#87cefa", 1538 lightslategray: "#778899", 1539 lightslategrey: "#778899", 1540 lightsteelblue: "#b0c4de", 1541 lightyellow: "#ffffe0", 1542 lime: "#00ff00", 1543 limegreen: "#32cd32", 1544 linen: "#faf0e6", 1545 magenta: "#ff00ff", 1546 maroon: "#800000", 1547 mediumaquamarine: "#66cdaa", 1548 mediumblue: "#0000cd", 1549 mediumorchid: "#ba55d3", 1550 mediumpurple: "#9370d8", 1551 mediumseagreen: "#3cb371", 1552 mediumslateblue: "#7b68ee", 1553 mediumspringgreen: "#00fa9a", 1554 mediumturquoise: "#48d1cc", 1555 mediumvioletred: "#c71585", 1556 midnightblue: "#191970", 1557 mintcream: "#f5fffa", 1558 mistyrose: "#ffe4e1", 1559 moccasin: "#ffe4b5", 1560 navajowhite: "#ffdead", 1561 navy: "#000080", 1562 oldlace: "#fdf5e6", 1563 olive: "#808000", 1564 olivedrab: "#6b8e23", 1565 orange: "#ffa500", 1566 orangered: "#ff4500", 1567 orchid: "#da70d6", 1568 palegoldenrod: "#eee8aa", 1569 palegreen: "#98fb98", 1570 paleturquoise: "#afeeee", 1571 palevioletred: "#d87093", 1572 papayawhip: "#ffefd5", 1573 peachpuff: "#ffdab9", 1574 peru: "#cd853f", 1575 pink: "#ffc0cb", 1576 plum: "#dda0dd", 1577 powderblue: "#b0e0e6", 1578 purple: "#800080", 1579 red: "#ff0000", 1580 rosybrown: "#bc8f8f", 1581 royalblue: "#4169e1", 1582 saddlebrown: "#8b4513", 1583 salmon: "#fa8072", 1584 sandybrown: "#f4a460", 1585 seagreen: "#2e8b57", 1586 seashell: "#fff5ee", 1587 sienna: "#a0522d", 1588 silver: "#c0c0c0", 1589 skyblue: "#87ceeb", 1590 slateblue: "#6a5acd", 1591 slategray: "#708090", 1592 slategrey: "#708090", 1593 snow: "#fffafa", 1594 springgreen: "#00ff7f", 1595 steelblue: "#4682b4", 1596 tan: "#d2b48c", 1597 teal: "#008080", 1598 thistle: "#d8bfd8", 1599 tomato: "#ff6347", 1600 turquoise: "#40e0d0", 1601 violet: "#ee82ee", 1602 wheat: "#f5deb3", 1603 white: "#ffffff", 1604 whitesmoke: "#f5f5f5", 1605 yellow: "#ffff00", 1606 yellowgreen: "#9acd32", 1607 activeBorder: "Active window border.", 1608 activecaption: "Active window caption.",
1609 appworkspace: "Background color of multiple document interface.", 1610 background: "Desktop background.", 1611 buttonface: "The face background color for 3-D elements that appear 3-D due to one layer of surrounding border.", 1612 buttonhighlight: "The color of the border facing the light source for 3-D elements that appear 3-D due to one layer of surrounding border.", 1613 buttonshadow: "The color of the border away from the light source for 3-D elements that appear 3-D due to one layer of surrounding border.", 1614 buttontext: "Text on push buttons.", 1615 captiontext: "Text in caption, size box, and scrollbar arrow box.", 1616 graytext: "Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.", 1617 greytext: "Greyed (disabled) text. This color is set to #000 if the current display driver does not support a solid grey color.", 1618 highlight: "Item(s) selected in a control.", 1619 highlighttext: "Text of item(s) selected in a control.", 1620 inactiveborder: "Inactive window border.", 1621 inactivecaption: "Inactive window caption.", 1622 inactivecaptiontext: "Color of text in an inactive caption.", 1623 infobackground: "Background color for tooltip controls.", 1624 infotext: "Text color for tooltip controls.", 1625 menu: "Menu background.", 1626 menutext: "Text in menus.", 1627 scrollbar: "Scroll bar gray area.", 1628 threeddarkshadow: "The color of the darker (generally outer) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", 1629 threedface: "The face background color for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", 1630 threedhighlight: "The color of the lighter (generally outer) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", 1631 threedlightshadow: "The color of the darker (generally inner) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", 1632 threedshadow: "The color of the lighter (generally inner) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", 1633 window: "Window background.", 1634 windowframe: "Window frame.", 1635 windowtext: "Text in windows." 1636 }; 1637 Combinator.prototype = new SyntaxUnit, Combinator.prototype.constructor = Combinator, MediaFeature.prototype = new SyntaxUnit, MediaFeature.prototype.constructor = MediaFeature, MediaQuery.prototype = new SyntaxUnit, MediaQuery.prototype.constructor = MediaQuery, Parser.DEFAULT_TYPE = 0, Parser.COMBINATOR_TYPE = 1, Parser.MEDIA_FEATURE_TYPE = 2, Parser.MEDIA_QUERY_TYPE = 3, Parser.PROPERTY_NAME_TYPE = 4, Parser.PROPERTY_VALUE_TYPE = 5, Parser.PROPERTY_VALUE_PART_TYPE = 6, Parser.SELECTOR_TYPE = 7, Parser.SELECTOR_PART_TYPE = 8, Parser.SELECTOR_SUB_PART_TYPE = 9, Parser.prototype = function () { 1638 var e = new EventTarget, t, n = { 1639 constructor: Parser, 1640 DEFAULT_TYPE: 0, 1641 COMBINATOR_TYPE: 1, 1642 MEDIA_FEATURE_TYPE: 2, 1643 MEDIA_QUERY_TYPE: 3, 1644 PROPERTY_NAME_TYPE: 4, 1645 PROPERTY_VALUE_TYPE: 5, 1646 PROPERTY_VALUE_PART_TYPE: 6, 1647 SELECTOR_TYPE: 7, 1648 SELECTOR_PART_TYPE: 8, 1649 SELECTOR_SUB_PART_TYPE: 9, 1650 _stylesheet: function () { 1651 var e = this._tokenStream, t = null, n, r, i; 1652 this.fire("startstylesheet"), this._charset(), this._skipCruft(); 1653 while (e.peek() == Tokens.IMPORT_SYM) this._import(), this._skipCruft(); 1654 while (e.peek() == Tokens.NAMESPACE_SYM) this._namespace(), this._skipCruft(); 1655 i = e.peek(); 1656 while (i > Tokens.EOF) { 1657 try { 1658 switch (i) { 1659 case Tokens.MEDIA_SYM: 1660 this._media(), this._skipCruft(); 1661 break; 1662 case Tokens.PAGE_SYM: 1663 this._page(), this._skipCruft(); 1664 break; 1665 case Tokens.FONT_FACE_SYM: 1666 this._font_face(), this._skipCruft(); 1667 break; 1668 case Tokens.KEYFRAMES_SYM: 1669 this._keyframes(), this._skipCruft(); 1670 break; 1671 case Tokens.VIEWPORT_SYM: 1672 this._viewport(), this._skipCruft(); 1673 break; 1674 case Tokens.UNKNOWN_SYM: 1675 e.get(); 1676 if (!!this.options.strict) throw new SyntaxError("Unknown @ rule.", e.LT(0).startLine, e.LT(0).startCol); 1677 this.fire({ 1678 type: "error", 1679 error: null, 1680 message: "Unknown @ rule: " + e.LT(0).value + ".", 1681 line: e.LT(0).startLine, 1682 col: e.LT(0).startCol 1683 }), n = 0; 1684 while (e.advance([Tokens.LBRACE, Tokens.RBRACE]) == Tokens.LBRACE) n++; 1685 while (n) e.advance([Tokens.RBRACE]), n--; 1686 break; 1687 case Tokens.S: 1688 this._readWhitespace(); 1689 break; 1690 default: 1691 if (!this._ruleset()) switch (i) { 1692 case Tokens.CHARSET_SYM: 1693 throw r = e.LT(1), this._charset(!1), new SyntaxError("@charset not allowed here.", r.startLine, r.startCol); 1694 case Tokens.IMPORT_SYM: 1695 throw r = e.LT(1), this._import(!1), new SyntaxError("@import not allowed here.", r.startLine, r.startCol); 1696 case Tokens.NAMESPACE_SYM: 1697 throw r = e.LT(1), this._namespace(!1), new SyntaxError("@namespace not allowed here.", r.startLine, r.startCol); 1698 default:
1699 e.get(), this._unexpectedToken(e.token()) 1700 } 1701 } 1702 } catch (s) { 1703 if (!(s instanceof SyntaxError && !this.options.strict)) throw s; 1704 this.fire({type: "error", error: s, message: s.message, line: s.line, col: s.col}) 1705 } 1706 i = e.peek() 1707 } 1708 i != Tokens.EOF && this._unexpectedToken(e.token()), this.fire("endstylesheet") 1709 }, 1710 _charset: function (e) { 1711 var t = this._tokenStream, n, r, i, s; 1712 t.match(Tokens.CHARSET_SYM) && (i = t.token().startLine, s = t.token().startCol, this._readWhitespace(), t.mustMatch(Tokens.STRING), r = t.token(), n = r.value, this._readWhitespace(), t.mustMatch(Tokens.SEMICOLON), e !== !1 && this.fire({ 1713 type: "charset", 1714 charset: n, 1715 line: i, 1716 col: s 1717 })) 1718 }, 1719 _import: function (e) { 1720 var t = this._tokenStream, n, r, i, s = []; 1721 t.mustMatch(Tokens.IMPORT_SYM), i = t.token(), this._readWhitespace(), t.mustMatch([Tokens.STRING, Tokens.URI]), r = t.token().value.replace(/^(?:url\()?["']?([^"']+?)["']?\)?$/, "$1"), this._readWhitespace(), s = this._media_query_list(), t.mustMatch(Tokens.SEMICOLON), this._readWhitespace(), e !== !1 && this.fire({ 1722 type: "import", 1723 uri: r, 1724 media: s, 1725 line: i.startLine, 1726 col: i.startCol 1727 }) 1728 }, 1729 _namespace: function (e) { 1730 var t = this._tokenStream, n, r, i, s; 1731 t.mustMatch(Tokens.NAMESPACE_SYM), n = t.token().startLine, r = t.token().startCol, this._readWhitespace(), t.match(Tokens.IDENT) && (i = t.token().value, this._readWhitespace()), t.mustMatch([Tokens.STRING, Tokens.URI]), s = t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/, "$1"), this._readWhitespace(), t.mustMatch(Tokens.SEMICOLON), this._readWhitespace(), e !== !1 && this.fire({ 1732 type: "namespace", 1733 prefix: i, 1734 uri: s, 1735 line: n, 1736 col: r 1737 }) 1738 }, 1739 _media: function () { 1740 var e = this._tokenStream, t, n, r; 1741 e.mustMatch(Tokens.MEDIA_SYM), t = e.token().startLine, n = e.token().startCol, this._readWhitespace(), r = this._media_query_list(), e.mustMatch(Tokens.LBRACE), this._readWhitespace(), this.fire({ 1742 type: "startmedia", 1743 media: r, 1744 line: t, 1745 col: n 1746 }); 1747 for (; ;) if (e.peek() == Tokens.PAGE_SYM) this._page(); else if (e.peek() == Tokens.FONT_FACE_SYM) this._font_face(); else if (e.peek() == Tokens.VIEWPORT_SYM) this._viewport(); else if (!this._ruleset()) break; 1748 e.mustMatch(Tokens.RBRACE), this._readWhitespace(), this.fire({ 1749 type: "endmedia", 1750 media: r, 1751 line: t, 1752 col: n 1753 }) 1754 }, 1755 _media_query_list: function () { 1756 var e = this._tokenStream, t = []; 1757 this._readWhitespace(), (e.peek() == Tokens.IDENT || e.peek() == Tokens.LPAREN) && t.push(this._media_query()); 1758 while (e.match(Tokens.COMMA)) this._readWhitespace(), t.push(this._media_query()); 1759 return t 1760 }, 1761 _media_query: function () { 1762 var e = this._tokenStream, t = null, n = null, r = null, i = []; 1763 e.match(Tokens.IDENT) && (n = e.token().value.toLowerCase(), n != "only" && n != "not" ? (e.unget(), n = null) : r = e.token()), this._readWhitespace(), e.peek() == Tokens.IDENT ? (t = this._media_type(), r === null && (r = e.token())) : e.peek() == Tokens.LPAREN && (r === null && (r = e.LT(1)), i.push(this._media_expression())); 1764 if (t === null && i.length === 0) return null; 1765 this._readWhitespace(); 1766 while (e.match(Tokens.IDENT)) e.token().value.toLowerCase() != "and" && this._unex
1766pectedToken(e.token()), this._readWhitespace(), i.push(this._media_expression()); 1767 return new MediaQuery(n, t, i, r.startLine, r.startCol) 1768 }, 1769 _media_type: function () { 1770 return this._media_feature() 1771 }, 1772 _media_expression: function () { 1773 var e = this._tokenStream, t = null, n, r = null; 1774 return e.mustMatch(Tokens.LPAREN), this._readWhitespace(), t = this._media_feature(), this._readWhitespace(), e.match(Tokens.COLON) && (this._readWhitespace(), n = e.LT(1), r = this._expression()), e.mustMatch(Tokens.RPAREN), this._readWhitespace(), new MediaFeature(t, r ? new SyntaxUnit(r, n.startLine, n.startCol) : null) 1775 }, 1776 _media_feature: function () { 1777 var e = this._tokenStream; 1778 return e.mustMatch(Tokens.IDENT), SyntaxUnit.fromToken(e.token()) 1779 }, 1780 _page: function () { 1781 var e = this._tokenStream, t, n, r = null, i = null; 1782 e.mustMatch(Tokens.PAGE_SYM), t = e.token().startLine, n = e.token().startCol, this._readWhitespace(), e.match(Tokens.IDENT) && (r = e.token().value, r.toLowerCase() === "auto" && this._unexpectedToken(e.token())), e.peek() == Tokens.COLON && (i = this._pseudo_page()), this._readWhitespace(), this.fire({ 1783 type: "startpage", 1784 id: r, 1785 pseudo: i, 1786 line: t, 1787 col: n 1788 }), this._readDeclarations(!0, !0), this.fire({type: "endpage", id: r, pseudo: i, line: t, col: n}) 1789 }, 1790 _margin: function () { 1791 var e = this._tokenStream, t, n, r = this._margin_sym(); 1792 return r ? (t = e.token().startLine, n = e.token().startCol, this.fire({ 1793 type: "startpagemargin", 1794 margin: r, 1795 line: t, 1796 col: n 1797 }), this._readDeclarations(!0), this.fire({ 1798 type: "endpagemargin", 1799 margin: r, 1800 line: t, 1801 col: n 1802 }), !0) : !1 1803 }, 1804 _margin_sym: function () { 1805 var e = this._tokenStream; 1806 return e.match([Tokens.TOPLEFTCORNER_SYM, Tokens.TOPLEFT_SYM, Tokens.TOPCENTER_SYM, Tokens.TOPRIGHT_SYM, Tokens.TOPRIGHTCORNER_SYM, Tokens.BOTTOMLEFTCORNER_SYM, Tokens.BOTTOMLEFT_SYM, Tokens.BOTTOMCENTER_SYM, Tokens.BOTTOMRIGHT_SYM, Tokens.BOTTOMRIGHTCORNER_SYM, Tokens.LEFTTOP_SYM, Tokens.LEFTMIDDLE_SYM, Tokens.LEFTBOTTOM_SYM, Tokens.RIGHTTOP_SYM, Tokens.RIGHTMIDDLE_SYM, Tokens.RIGHTBOTTOM_SYM]) ? SyntaxUnit.fromToken(e.token()) : null 1807 }, 1808 _pseudo_page: function () { 1809 var e = this._tokenStream; 1810 return e.mustMatch(Tokens.COLON), e.mustMatch(Tokens.IDENT), e.token().value 1811 }, 1812 _font_face: function () { 1813 var e = this._tokenStream, t, n; 1814 e.mustMatch(Tokens.FONT_FACE_SYM), t = e.token().startLine, n = e.token().startCol, this._readWhitespace(), this.fire({ 1815 type: "startfontface", 1816 line: t, 1817 col: n 1818 }), this._readDeclarations(!0), this.fire({type: "endfontface", line: t, col: n}) 1819 }, 1820 _viewport: function () { 1821 var e = this._tokenStream, t, n; 1822 e.mustMatch(Tokens.VIEWPORT_SYM), t = e.token().startLine, n = e.token().startCol, this._readWhitespace(), this.fire({ 1823 type: "startviewport", 1824 line: t, 1825 col: n 1826 }), this._readDeclarations(!0), this.fire({type: "endviewport", line: t, col: n}) 1827 }, 1828 _operator: function (e) { 1829 var t = this._tokenStream, n = null; 1830 if (t.match([Tokens.SLASH, Tokens.COMMA]) || e && t.match([Tokens.PLUS, Tokens.STAR, Tokens.MINUS])) n = t.token(), this._readWhitespace(); 1831 return n ? PropertyValuePart.fromToken(n) : null 1832 }, 1833 _combinator: function () { 1834 var e = this._tokenStream, t = null, n; 1835 return e.match([Tokens.PLUS, Tokens.GREATER, Tokens.TILDE]) && (n = e.token(), t = new Combinator(n.value, n.startLine, n.startCol), this._readWhitespace()), t 1836 }, 1837 _unary_operator: function () { 1838 var e = this._tokenStream; 1839 return e.match([Tokens.MINUS, Tokens.PLUS]) ? e.token().value : null 1840 }, 1841 _property: function () { 1842 var e = this._tokenStream, t = null, n = null, r, i, s, o; 1843 return e.peek() == Tokens.STAR && this.options.starHack && (e.get(), i = e.token(), n = i.value, s = i.startLine, o = i.startCol), e.match(Tokens.IDENT) && (i = e.token(), r = i.value, r.charAt(0) == "_" && this.options.underscoreHack && (n = "_", r = r.substring(1)), t = new PropertyName(r, n, s || i.startLine, o || i.startCol), this._readWhitespace()), t 1844 }, 1845 _ruleset: function () { 1846 var e = this._tokenStream, t, n; 1847 try { 1848 n = this._selectors_group() 1849 } catch (r) { 1850 if (r instanceof SyntaxError && !this.options.strict) { 1851 this.fire({ 1852 type: "error", 1853 error: r, 1854 message: r.message, 1855 line: r.line, 1856 col: r.col 1857 }), t = e.advance([Tokens.RBRACE]); 1858 if (t != Tokens.RBRACE) throw r; 1859 return !0 1860 } 1861 throw r 1862 } 1863 return n && (this.fire({ 1864 type: "startrule", 1865 selectors: n, 1866 line: n[0].line,
1867 col: n[0].col 1868 }), this._readDeclarations(!0), this.fire({ 1869 type: "endrule", 1870 selectors: n, 1871 line: n[0].line, 1872 col: n[0].col 1873 })), n 1874 }, 1875 _selectors_group: function () { 1876 var e = this._tokenStream, t = [], n; 1877 n = this._selector(); 1878 if (n !== null) { 1879 t.push(n); 1880 while (e.match(Tokens.COMMA)) this._readWhitespace(), n = this._selector(), n !== null ? t.push(n) : this._unexpectedToken(e.LT(1)) 1881 } 1882 return t.length ? t : null 1883 }, 1884 _selector: function () { 1885 var e = this._tokenStream, t = [], n = null, r = null, i = null; 1886 n = this._simple_selector_sequence(); 1887 if (n === null) return null; 1888 t.push(n); 1889 do { 1890 r = this._combinator(); 1891 if (r !== null) t.push(r), n = this._simple_selector_sequence(), n === null ? this._unexpectedToken(e.LT(1)) : t.push(n); else { 1892 if (!this._readWhitespace()) break; 1893 i = new Combinator(e.token().value, e.token().startLine, e.token().startCol), r = this._combinator(), n = this._simple_selector_sequence(), n === null ? r !== null && this._unexpectedToken(e.LT(1)) : (r !== null ? t.push(r) : t.push(i), t.push(n)) 1894 } 1895 } while (!0); 1896 return new Selector(t, t[0].line, t[0].col) 1897 }, 1898 _simple_selector_sequence: function () { 1899 var e = this._tokenStream, t = null, n = [], r = "", i = [function () { 1900 return e.match(Tokens.HASH) ? new SelectorSubPart(e.token().value, "id", e.token().startLine, e.token().startCol) : null 1901 }, this._class, this._attrib, this._pseudo, this._negation], s = 0, o = i.length, u = null, a = !1, 1902 f, l; 1903 f = e.LT(1).startLine, l = e.LT(1).startCol, t = this._type_selector(), t || (t = this._universal()), t !== null && (r += t); 1904 for (; ;) { 1905 if (e.peek() === Tokens.S) break; 1906 while (s < o && u === null) u = i[s++].call(this); 1907 if (u === null) { 1908 if (r === "") return null; 1909 break 1910 } 1911 s = 0, n.push(u), r += u.toString(), u = null 1912 } 1913 return r !== "" ? new SelectorPart(t, n, r, f, l) : null 1914 }, 1915 _type_selector: function () { 1916 var e = this._tokenStream, t = this._namespace_prefix(), n = this._element_name(); 1917 return n ? (t && (n.text = t + n.text, n.col -= t.length), n) : (t && (e.unget(), t.length > 1 && e.unget()), null) 1918 }, 1919 _class: function () { 1920 var e = this._tokenStream, t; 1921 return e.match(Tokens.DOT) ? (e.mustMatch(Tokens.IDENT), t = e.token(), new SelectorSubPart("." + t.value, "class", t.startLine, t.startCol - 1)) : null 1922 }, 1923 _element_name: function () { 1924 var e = this._tokenStream, t; 1925 return e.match(Tokens.IDENT) ? (t = e.token(), new SelectorSubPart(t.value, "elementName", t.startLine, t.startCol)) : null 1926 }, 1927 _namespace_prefix: function () { 1928 var e = this._tokenStream, t = ""; 1929 if (e.LA(1) === Tokens.PIPE || e.LA(2) === Tokens.PIPE) e.match([Tokens.IDENT, Tokens.STAR]) && (t += e.token().value), e.mustMatch(Tokens.PIPE), t += "|"; 1930 return t.length ? t : null 1931 }, 1932 _universal: function () { 1933 var e = this._tokenStream, t = "", n; 1934 return n = this._namespace_prefix(), n && (t += n), e.match(Tokens.STAR) && (t += "*"), t.length ? t : null 1935 }, 1936 _attrib: function () { 1937 var e = this._tokenStream, t = null, n, r; 1938 return e.match(Tokens.LBRACKET) ? (r = e.token(), t = r.value, t += this._readWhitespace(), n = this._namespace_prefix(), n && (t += n), e.mustMatch(Tokens.IDENT), t += e.token().value, t += this._readWhitespace(), e.match([Tokens.PREFIXMATCH, Tokens.SUFFIXMATCH, Tokens.SUBSTRINGMATCH, Tokens.EQUALS, Tokens.INCLUDES, Tokens.DASHMATCH]) && (t += e.token().value, t += this._readWhitespace(), e.mustMatch([Tokens.IDENT, Tokens.STRING]), t += e.token().value, t += this._readWhitespace()), e.mustMatch(Tokens.RBRACKET), new SelectorSubPart(t + "]", "attribute", r.startLine, r.startCol)) : null 1939 }, 1940 _pseudo: function () { 1941 var e = this._tokenStream, t = null, n = ":", r, i; 1942 return e.match(Tokens.COLON) && (e.match(Tokens.COLON) && (n += ":"), e.match(Tokens.IDENT) ? (t = e.token().value, r = e.token().startLine, i = e.token().startCol - n.length) : e.peek() == Tokens.FUNCTION && (r = e.LT(1).startLine, i = e.LT(1).startCol - n.length, t = this._functional_pseudo()), t && (t = new SelectorSubPart(n + t, "pseudo", r, i))), t 1943 }, 1944 _functional_pseudo: function () { 1945 var e = this._tokenStream, t = null; 1946 return e.match(Tokens.FUNCTION) && (t = e.token().value, t += this._readWhitespace(), t += this._expression(), e.mustMatch(Tokens.RPAREN), t += ")"), t 1947 }, 1948 _expression: function () { 1949 var e = this._tokenStream, t = ""; 1950 while (e.match([Tokens.PLUS, Tokens.MINUS, Tokens.DIMENSION, Tokens.NUMBER, Tokens.STRING, Tokens.IDENT, Tokens.LENGTH, Tokens.FREQ, Tokens.ANGLE, Tokens.TIME, Tokens.RESOLUTION, Tokens.SLASH])) t += e.token().value, t += this._readWhitespace(); 1951 return t.length ? t : null 1952 }, 1953 _negation: function () { 1954 var e = this._tokenStream, t, n, r = "", i, s = null; 1955 return e.match(Tokens.NOT) && (r = e.token().value, t = e.token().startLine, n = e.token().startCol, r += this._readWhitespace(), i = this._negation_arg(), r += i, r += this._readWhitespace(), e.match(Tokens.RPAREN), r += e.token().value, s = new SelectorSubPart(r, "not", t, n), s.args.push(i)), s 1956 }, 1957 _negation_arg: function () { 1958 var e = this._tokenStream, t = [this._type_selector, this._universal, function () { 1959 return e.match(Tokens.HASH) ? new SelectorSubPart(e.token().value, "id", e.token().startLine, e.token().startCol) : null 1960 }, this._class, this._attrib, this._pseudo], n = null, r = 0, i = t.length, s, o, u, a; 1961 o = e.LT(1).startLine, u = e.LT(1).startCol; 1962 while (r < i && n === null) n = t[r].call(this), r++;
1963 return n === null && this._unexpectedToken(e.LT(1)), n.type == "elementName" ? a = new SelectorPart(n, [], n.toString(), o, u) : a = new SelectorPart(null, [n], n.toString(), o, u), a 1964 }, 1965 _declaration: function () { 1966 var e = this._tokenStream, t = null, n = null, r = null, i = null, s = null, o = ""; 1967 t = this._property(); 1968 if (t !== null) { 1969 e.mustMatch(Tokens.COLON), this._readWhitespace(), n = this._expr(), (!n || n.length === 0) && this._unexpectedToken(e.LT(1)), r = this._prio(), o = t.toString(); 1970 if (this.options.starHack && t.hack == "*" || this.options.underscoreHack && t.hack == "_") o = t.text; 1971 try { 1972 this._validateProperty(o, n) 1973 } catch (u) { 1974 s = u 1975 } 1976 return this.fire({ 1977 type: "property", 1978 property: t, 1979 value: n, 1980 important: r, 1981 line: t.line, 1982 col: t.col, 1983 invalid: s 1984 }), !0 1985 } 1986 return !1 1987 }, 1988 _prio: function () { 1989 var e = this._tokenStream, t = e.match(Tokens.IMPORTANT_SYM); 1990 return this._readWhitespace(), t 1991 }, 1992 _expr: function (e) { 1993 var t = this._tokenStream, n = [], r = null, i = null; 1994 r = this._term(e); 1995 if (r !== null) { 1996 n.push(r); 1997 do { 1998 i = this._operator(e), i && n.push(i), r = this._term(e); 1999 if (r === null) break; 2000 n.push(r) 2001 } while (!0) 2002 } 2003 return n.length > 0 ? new PropertyValue(n, n[0].line, n[0].col) : null 2004 }, 2005 _term: function (e) { 2006 var t = this._tokenStream, n = null, r = null, i = null, s, o, u; 2007 return n = this._unary_operator(), n !== null && (o = t.token().startLine, u = t.token().startCol), t.peek() == Tokens.IE_FUNCTION && this.options.ieFilters ? (r = this._ie_function(), n === null && (o = t.token().startLine, u = t.token().startCol)) : e && t.match([Tokens.LPAREN, Tokens.LBRACE, Tokens.LBRACKET]) ? (s = t.token(), i = s.endChar, r = s.value + this._expr(e).text, n === null && (o = t.token().startLine, u = t.token().startCol), t.mustMatch(Tokens.type(i)), r += i, this._readWhitespace()) : t.match([Tokens.NUMBER, Tokens.PERCENTAGE, Tokens.LENGTH, Tokens.ANGLE, Tokens.TIME, Tokens.FREQ, Tokens.STRING, Tokens.IDENT, Tokens.URI, Tokens.UNICODE_RANGE]) ? (r = t.token().value, n === null && (o = t.token().startLine, u = t.token().startCol), this._readWhitespace()) : (s = this._hexcolor(), s === null ? (n === null && (o = t.LT(1).startLine, u = t.LT(1).startCol), r === null && (t.LA(3) == Tokens.EQUALS && this.options.ieFilters ? r = this._ie_function() : r = this._function())) : (r = s.value, n === null && (o = s.startLine, u = s.startCol))), r !== null ? new PropertyValuePart(n !== null ? n + r : r, o, u) : null 2008 }, 2009 _function: function () { 2010 var e = this._tokenStream, t = null, n = null, r; 2011 if (e.match(Tokens.FUNCTION)) { 2012 t = e.token().value, this._readWhitespace(), n = this._expr(!0), t += n; 2013 if (this.options.ieFilters && e.peek() == Tokens.EQUALS) do { 2014 this._readWhitespace() && (t += e.token().value), e.LA(0) == Tokens.COMMA && (t += e.token().value), e.match(Tokens.IDENT), t += e.token().value, e.match(Tokens.EQUALS), t += e.token().value, r = e.peek(); 2015 while (r != Tokens.COMMA && r != Tokens.S && r != Tokens.RPAREN) e.get(), t += e.token().value, r = e.peek() 2016 } while (e.match([Tokens.COMMA, Tokens.S])); 2017 e.match(Tokens.RPAREN), t += ")", this._readWhitespace() 2018 } 2019 return t 2020 }, 2021 _ie_function: function () { 2022 var e = this._tokenStream, t = null, n = null, r; 2023 if (e.match([Tokens.IE_FUNCTION, Tokens.FUNCTION])) { 2024 t = e.token().value; 2025 do { 2026 this._readWhitespace() && (t += e.token().value), e.LA(0) == Tokens.COMMA && (t += e.token().value), e.match(Tokens.IDENT), t += e.token().value, e.match(Tokens.EQUALS), t += e.token().value, r = e.peek(); 2027 while (r != Tokens.COMMA && r != Tokens.S && r != Tokens.RPAREN) e.get(), t += e.token().value, r = e.peek() 2028 } while (e.match([Tokens.COMMA, Tokens.S])); 2029 e.match(Tokens.RPAREN), t += ")", this._readWhitespace() 2030 } 2031 return t 2032 }, 2033 _hexcolor: function () { 2034 var e = this._tokenStream, t = null, n; 2035 if (e.match(Tokens.HASH)) { 2036 t = e.token(), n = t.value; 2037 if (!/#[a-f0-9]{3,6}/i.test(n)) throw new SyntaxError("Expected a hex color but found '" + n + "' at line " + t.startLine + ", col " + t.startCol + ".", t.startLine, t.startCol); 2038 this._readWhitespace() 2039 } 2040 return t 2041 }, 2042 _keyframes: function () { 2043 var e = this._tokenStream, t, n, r, i = ""; 2044 e.mustMatch(Tokens.KEYFRAMES_SYM), t = e.token(), /^@\-([^\-]+)\-/.test(t.value) && (i = RegExp.$1), this._readWhitespace(), r = this._keyframe_name(), this._readWhitespace(), e.mustMatch(Tokens.LBRACE), this.fire({ 2045 type: "startkeyframes", 2046 name: r, 2047 prefix: i, 2048 line: t.startLine, 2049 col: t.startCol 2050 }), this._readWhitespace(), n = e.peek(); 2051 while (n == Tokens.IDENT || n == Tokens.PERCENTAGE) this._keyframe_rule(), this._readWhitespace(), n = e.peek(); 2052 this.fire({ 2053 type: "endkeyframes", 2054 name: r, 2055 prefix: i, 2056 line: t.startLine, 2057 col: t.startCol 2058 }), this._readWhitespace(), e.mustMatch(Tokens.RBRACE) 2059 }, 2060 _keyframe_name: function () { 2061 var e = this._tokenStream, t; 2062 return e.mustMatch([Tokens.IDENT, Tokens.STRING]), SyntaxUnit.fromToken(e.token()) 2063 }, 2064 _keyframe_rule: function () { 2065 var e = this._tokenStream, t, n = this._key_list(); 2066 this.fire({ 2067 type: "startkeyframerule", 2068 keys: n, 2069 line: n[0].line,
2070 col: n[0].col 2071 }), this._readDeclarations(!0), this.fire({ 2072 type: "endkeyframerule", 2073 keys: n, 2074 line: n[0].line, 2075 col: n[0].col 2076 }) 2077 }, 2078 _key_list: function () { 2079 var e = this._tokenStream, t, n, r = []; 2080 r.push(this._key()), this._readWhitespace(); 2081 while (e.match(Tokens.COMMA)) this._readWhitespace(), r.push(this._key()), this._readWhitespace(); 2082 return r 2083 }, 2084 _key: function () { 2085 var e = this._tokenStream, t; 2086 if (e.match(Tokens.PERCENTAGE)) return SyntaxUnit.fromToken(e.token()); 2087 if (e.match(Tokens.IDENT)) { 2088 t = e.token(); 2089 if (/from|to/i.test(t.value)) return SyntaxUnit.fromToken(t); 2090 e.unget() 2091 } 2092 this._unexpectedToken(e.LT(1)) 2093 }, 2094 _skipCruft: function () { 2095 while (this._tokenStream.match([Tokens.S, Tokens.CDO, Tokens.CDC])) ; 2096 }, 2097 _readDeclarations: function (e, t) { 2098 var n = this._tokenStream, r; 2099 this._readWhitespace(), e && n.mustMatch(Tokens.LBRACE), this._readWhitespace(); 2100 try { 2101 for (; ;) { 2102 if (!(n.match(Tokens.SEMICOLON) || t && this._margin())) { 2103 if (!this._declaration()) break; 2104 if (!n.match(Tokens.SEMICOLON)) break 2105 } 2106 this._readWhitespace() 2107 } 2108 n.mustMatch(Tokens.RBRACE), this._readWhitespace() 2109 } catch (i) { 2110 if (!(i instanceof SyntaxError && !this.options.strict)) throw i; 2111 this.fire({ 2112 type: "error", 2113 error: i, 2114 message: i.message, 2115 line: i.line, 2116 col: i.col 2117 }), r = n.advance([Tokens.SEMICOLON, Tokens.RBRACE]); 2118 if (r == Tokens.SEMICOLON) this._readDeclarations(!1, t); else if (r != Tokens.RBRACE) throw i 2119 } 2120 }, 2121 _readWhitespace: function () { 2122 var e = this._tokenStream, t = ""; 2123 while (e.match(Tokens.S)) t += e.token().value; 2124 return t 2125 }, 2126 _unexpectedToken: function (e) { 2127 throw new SyntaxError("Unexpected token '" + e.value + "' at line " + e.startLine + ", col " + e.startCol + ".", e.startLine, e.startCol) 2128 }, 2129 _verifyEnd: function () { 2130 this._tokenStream.LA(1) != Tokens.EOF && this._unexpectedToken(this._tokenStream.LT(1)) 2131 }, 2132 _validateProperty: function (e, t) { 2133 Validation.validate(e, t) 2134 }, 2135 parse: function (e) { 2136 this._tokenStream = new TokenStream(e, Tokens), this._stylesheet() 2137 }, 2138 parseStyleSheet: function (e) { 2139 return this.parse(e) 2140 }, 2141 parseMediaQuery: function (e) { 2142 this._tokenStream = new TokenStream(e, Tokens); 2143 var t = this._media_query(); 2144 return this._verifyEnd(), t 2145 }, 2146 parsePropertyValue: function (e) { 2147 this._tokenStream = new TokenStream(e, Tokens), this._readWhitespace(); 2148 var t = this._expr(); 2149 return this._readWhitespace(), this._verifyEnd(), t 2150 }, 2151 parseRule: function (e) { 2152 this._tokenStream = new TokenStream(e, Tokens), this._readWhitespace(); 2153 var t = this._ruleset(); 2154 return this._readWhitespace(), this._verifyEnd(), t 2155 }, 2156 parseSelector: function (e) { 2157 this._tokenStream = new TokenStream(e, Tokens), this._readWhitespace(); 2158 var t = this._selector(); 2159 return this._readWhitespace(), this._verifyEnd(), t 2160 }, 2161 parseStyleAttribute: function (e) { 2162 e += "}", this._tokenStream = new TokenStream(e, Tokens), this._readDeclarations() 2163 } 2164 }; 2165 for (t in n) n.hasOwnProperty(t) && (e[t] = n[t]); 2166 return e 2167 }(); 2168 var Properties = { 2169 "align-items": "flex-start | flex-end | center | baseline | stretch", 2170 "align-content": "flex-start | flex-end | center | space-between | space-around | stretch", 2171 "align-self": "auto | flex-start | flex-end | center | baseline | stretch", 2172 "-webkit-align-items": "flex-start | flex-end | center | baseline | stretch", 2173 "-webkit-align-content": "flex-start | flex-end | center | space-between | space-around | stretch", 2174 "-webkit-align-self": "auto | flex-start | flex-end | center | baseline | stretch", 2175 "alignment-adjust": "auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical | <percentage> | <length>", 2176 "alignment-baseline": "baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical", 2177 animation: 1, 2178 "animation-delay": {multi: "<time>", comma: !0}, 2179 "animation-direction": {multi: "normal | reverse | alternate | alternate-reverse", comma: !0}, 2180 "animation-duration": {multi: "<time>", comma: !0}, 2181 "animation-fill-mode": {multi: "none | forwards | backwards | both", comma: !0}, 2182 "animation-iteration-count": {multi: "<number> | infinite", comma: !0}, 2183 "animation-name": {multi: "none | <ident>", comma: !0}, 2184 "animation-play-state": {multi: "running | paused", comma: !0}, 2185 "animation-timing-function": 1, 2186 "-moz-animation-delay": {multi: "<time>", comma: !0}, 2187 "-moz-animation-direction": {multi: "normal | reverse | alternate | alternate-reverse", comma: !0}, 2188 "-moz-animation-duration": {multi: "<time>", comma: !0}, 2189 "-moz-animation-iteration-count": {multi: "<number> | infinite", comma: !0}, 2190 "-moz-animation-name": {multi: "none | <ident>", comma: !0}, 2191 "-moz-animation-play-state": {multi: "running | paused", comma: !0}, 2192 "-ms-animation-delay": {multi: "<time>", comma: !0}, 2193 "-ms-animation-direction": {multi: "normal | reverse | alternate | alternate-reverse", comma: !0}, 2194 "-ms-animation-duration": {multi: "<time>", comma: !0}, 2195 "-ms-animation-iteration-count": {multi: "<number> | infinite", comma: !0}, 2196 "-ms-animation-name": {multi: "none | <ident>", comma: !0}, 2197 "-ms-animation-play-state": {multi: "running | paused", comma: !0}, 2198 "-webkit-animation-delay": {multi: "<time>", comma: !0}, 2199 "-webkit-animation-direction": {multi: "normal | reverse | alternate | alternate-reverse", comma: !0}, 2200 "-webkit-animation-duration": {multi: "<time>", comma: !0}, 2201 "-webkit-animation-fill-mode": {multi: "none | forwards | backwards | both", comma: !0}, 2202 "-webkit-animation-iteration-count": {multi: "<number> | infinite", comma: !0}, 2203 "-webkit-animation-name": {multi: "none | <ident>", comma: !0}, 2204 "-webkit-animation-play-state": {multi: "running | paused", comma: !0}, 2205 "-o-animation-delay": {multi: "<time>", comma: !0}, 2206 "-o-animation-direction": {multi: "normal | reverse | alternate | alternate-reverse", comma: !0}, 2207 "-o-animation-duration": {multi: "<time>", comma: !0}, 2208 "-o-animation-iteration-count": {multi: "<number> | infinite", comma: !0}, 2209 "-o-animation-name": {multi: "none | <ident>", comma: !0}, 2210 "-o-animation-play-state": {multi: "running | paused", comma: !0}, 2211 appearance: "icon | window | desktop | workspace | document | tooltip | dialog | button | push-button | hyperlink | radio-button | checkbox | menu-item | tab | menu | menubar | pull-down-menu | pop-up-menu | list-menu | radio-group | checkbox-group | outline-tree | range | field | combo-box | signature | password | normal | none | inherit", 2212 azimuth: function (e) { 2213 var t = "<angle> | leftwards | rightwards | inherit", 2214 n = "left-side | far-left | left | center-left | center | center-right | right | far-right | right-side", 2215 r = !1, i = !1, s; 2216 ValidationTypes.isAny(e, t) || (ValidationTypes.isAny(e, "behind") && (r = !0, i = !0), ValidationTypes.isAny(e, n) && (i = !0, r || ValidationTypes.isAny(e, "behind"))); 2217 if (e.hasNext()) throw s = e.next(), i ? new ValidationError("Expected end of value but found '" + s + "'.", s.line, s.c
2217ol) : new ValidationError("Expected (<'azimuth'>) but found '" + s + "'.", s.line, s.col) 2218 }, 2219 "backface-visibility": "visible | hidden", 2220 background: 1, 2221 "background-attachment": {multi: "<attachment>", comma: !0}, 2222 "background-clip": {multi: "<box>", comma: !0}, 2223 "background-color": "<color> | inherit", 2224 "background-image": {multi: "<bg-image>", comma: !0}, 2225 "background-origin": {multi: "<box>", comma: !0}, 2226 "background-position": {multi: "<bg-position>", comma: !0}, 2227 "background-repeat": {multi: "<repeat-style>"}, 2228 "background-size": {multi: "<bg-size>", comma: !0}, 2229 "baseline-shift": "baseline | sub | super | <percentage> | <length>", 2230 behavior: 1, 2231 binding: 1, 2232 bleed: "<length>", 2233 "bookmark-label": "<content> | <attr> | <string>", 2234 "bookmark-level": "none | <integer>", 2235 "bookmark-state": "open | closed", 2236 "bookmark-target": "none | <uri> | <attr>", 2237 border: "<border-width> || <border-style> || <color>", 2238 "border-bottom": "<border-width> || <border-style> || <color>", 2239 "border-bottom-color": "<color> | inherit", 2240 "border-bottom-left-radius": "<x-one-radius>", 2241 "border-bottom-right-radius": "<x-one-radius>", 2242 "border-bottom-style": "<border-style>", 2243 "border-bottom-width": "<border-width>", 2244 "border-collapse": "collapse | separate | inherit", 2245 "border-color": {multi: "<color> | inherit", max: 4}, 2246 "border-image": 1, 2247 "border-image-outset": {multi: "<length> | <number>", max: 4}, 2248 "border-image-repeat": {multi: "stretch | repeat | round", max: 2}, 2249 "border-image-slice": function (e) { 2250 var t = !1, n = "<number> | <percentage>", r = !1, i = 0, s = 4, o; 2251 ValidationTypes.isAny(e, "fill") && (r = !0, t = !0); 2252 while (e.hasNext() && i < s) { 2253 t = ValidationTypes.isAny(e, n); 2254 if (!t) break; 2255 i++ 2256 } 2257 r ? t = !0 : ValidationTypes.isAny(e, "fill"); 2258 if (e.hasNext()) throw o = e.next(), t ? new ValidationError("Expected end of value but found '" + o + "'.", o.line, o.col) : new ValidationError("Expected ([<number> | <percentage>]{1,4} && fill?) but found '" + o + "'.", o.line, o.col) 2259 }, 2260 "border-image-source": "<image> | none", 2261 "border-image-width": {multi: "<length> | <percentage> | <number> | auto", max: 4}, 2262 "border-left": "<border-width> || <border-style> || <color>", 2263 "border-left-color": "<color> | inherit", 2264 "border-left-style": "<border-style>", 2265 "border-left-width": "<border-width>", 2266 "border-radius": function (e) { 2267 var t = !1, n = "<length> | <percentage> | inherit", r = !1, i = !1, s = 0, o = 8, u; 2268 while (e.hasNext() && s < o) { 2269 t = ValidationTypes.isAny(e, n); 2270 if (!t) { 2271 if (!(e.peek() == "/" && s > 0 && !r)) break; 2272 r = !0, o = s + 5, e.next() 2273 } 2274 s++ 2275 } 2276 if (e.hasNext()) throw u = e.next(), t ? new ValidationError("Expected end of value but found '" + u + "'.", u.line, u.col) : new ValidationError("Expected (<'border-radius'>) but found '" + u + "'.", u.line, u.col) 2277 }, 2278 "border-right": "<border-width> || <border-style> || <color>", 2279 "border-right-color": "<color> | inherit", 2280 "border-right-style": "<border-style>", 2281 "border-right-width": "<border-width>", 2282 "border-spacing": {multi: "<length> | inherit", max: 2}, 2283 "border-style": {multi: "<border-style>", max: 4}, 2284 "border-top": "<border-width> || <border-style> || <color>", 2285 "border-top-color": "<color> | inherit", 2286 "border-top-left-radius": "<x-one-radius>", 2287 "border-top-right-radius": "<x-one-radius>", 2288 "border-top-style": "<border-style>", 2289 "border-top-width": "<border-width>", 2290 "border-width": {multi: "<border-width>", max: 4}, 2291 bottom: "<margin-width> | inherit", 2292 "-moz-box-align": "start | end | center | baseline | stretch", 2293 "-moz-box-decoration-break": "slice |clone", 2294 "-moz-box-direction": "normal | reverse | inherit", 2295 "-moz-box-flex": "<number>", 2296 "-moz-box-flex-group": "<integer>", 2297 "-moz-box-lines": "single | multiple", 2298 "-moz-box-ordinal-group": "<integer>", 2299 "-moz-box-orient": "horizontal | vertical | inline-axis | block-axis | inherit", 2300 "-moz-box-pack": "start | end | center | justify", 2301 "-webkit-box-align": "start | end | center | baseline | stretch", 2302 "-webkit-box-decoration-break": "slice |clone", 2303 "-webkit-box-direction": "normal | reverse | inherit", 2304 "-webkit-box-flex": "<number>", 2305 "-webkit-box-flex-group": "<integer>", 2306 "-webkit-box-lines": "single | multiple", 2307 "-webkit-box-ordinal-group": "<integer>", 2308 "-webkit-box-orient": "horizontal | vertical | inline-axis | block-axis | inherit", 2309 "-webkit-box-pack": "start | end | center | justify", 2310 "box-shadow": function (e) { 2311 var t = !1, n; 2312 if (!ValidationTypes.isAny(e, "none")) Validation.multiProperty("<shadow>", e, !0, Infinity); else if (e.hasNext()) throw n = e.next(), new ValidationError("Expected end of value but found '" + n + "'.", n.line, n.col) 2313 }, 2314 "box-sizing": "content-box | border-box | inherit", 2315 "break-after": "auto | always | avoid | left | right | page | column | avoid-p
2315age | avoid-column", 2316 "break-before": "auto | always | avoid | left | right | page | column | avoid-page | avoid-column", 2317 "break-inside": "auto | avoid | avoid-page | avoid-column", 2318 "caption-side": "top | bottom | inherit", 2319 clear: "none | right | left | both | inherit", 2320 clip: 1, 2321 color: "<color> | inherit", 2322 "color-profile": 1, 2323 "column-count": "<integer> | auto", 2324 "column-fill": "auto | balance", 2325 "column-gap": "<length> | normal", 2326 "column-rule": "<border-width> || <border-style> || <color>", 2327 "column-rule-color": "<color>", 2328 "column-rule-style": "<border-style>", 2329 "column-rule-width": "<border-width>", 2330 "column-span": "none | all", 2331 "column-width": "<length> | auto", 2332 columns: 1, 2333 content: 1, 2334 "counter-increment": 1, 2335 "counter-reset": 1, 2336 crop: "<shape> | auto", 2337 cue: "cue-after | cue-before | inherit", 2338 "cue-after": 1, 2339 "cue-before": 1, 2340 cursor: 1, 2341 direction: "ltr | rtl | inherit", 2342 display: "inline | block | list-item | inline-block | table | inline-table | table-row-group | table-header-group | table-footer-group | table-row | table-column-group | table-column | table-cell | table-caption | grid | inline-grid | none | inherit | -moz-box | -moz-inline-block | -moz-inline-box | -moz-inline-grid | -moz-inline-stack | -moz-inline-table | -moz-grid | -moz-grid-group | -moz-grid-line | -moz-groupbox | -moz-deck | -moz-popup | -moz-stack | -moz-marker | -webkit-box | -webkit-inline-box | -ms-flexbox | -ms-inline-flexbox | flex | -webkit-flex | inline-flex | -webkit-inline-flex", 2343 "dominant-baseline": 1, 2344 "drop-initial-after-adjust": "central | middle | after-edge | text-after-edge | ideographic | alphabetic | mathematical | <percentage> | <length>", 2345 "drop-initial-after-align": "baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical", 2346 "drop-initial-before-adjust": "before-edge | text-before-edge | central | middle | hanging | mathematical | <percentage> | <length>", 2347 "drop-initial-before-align": "caps-height | baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical", 2348 "drop-initial-size": "auto | line | <length> | <percentage>", 2349 "drop-initial-value": "initial | <integer>", 2350 elevation: "<angle> | below | level | above | higher | lower | inherit", 2351 "empty-cells": "show | hide | inherit", 2352 filter: 1, 2353 fit: "fill | hidden | meet | slice", 2354 "fit-position": 1, 2355 flex: "<flex>", 2356 "flex-basis": "<width>", 2357 "flex-direction": "row | row-reverse | column | column-reverse", 2358 "flex-flow": "<flex-direction> || <flex-wrap>", 2359 "flex-grow": "<number>", 2360 "flex-shrink": "<number>", 2361 "flex-wrap": "nowrap | wrap | wrap-reverse", 2362 "-webkit-flex": "<flex>", 2363 "-webkit-flex-basis": "<width>", 2364 "-webkit-flex-direction": "row | row-reverse | column | column-reverse", 2365 "-webkit-flex-flow": "<flex-direction> || <flex-wrap>", 2366 "-webkit-flex-grow": "<number>", 2367 "-webkit-flex-shrink": "<number>", 2368 "-webkit-flex-wrap": "nowrap | wrap | wrap-reverse", 2369 "-ms-flex": "<flex>", 2370 "-ms-flex-align": "start | end | center | stretch | baseline", 2371 "-ms-flex-direction": "row | row-reverse | column | column-reverse | inherit", 2372 "-ms-flex-order": "<number>", 2373 "-ms-flex-pack": "start | end | center | justify", 2374 "-ms-flex-wrap": "nowrap | wrap | wrap-reverse", 2375 "float": "left | right | none | inherit", 2376 "float-offset": 1, 2377 font: 1, 2378 "font-family": 1, 2379 "font-size": "<absolute-size> | <relative-size> | <length> | <percentage> | inherit", 2380 "font-size-adjust": "<number> | none | inherit", 2381 "font-stretch": "normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | inherit", 2382 "font-style": "normal | italic | oblique | inherit", 2383 "font-variant": "normal | small-caps | inherit", 2384 "font-weight": "normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | inherit", 2385 "grid-cell-stacking": "columns | rows | layer", 2386 "grid-column": 1, 2387 "grid-columns": 1, 2388 "grid-column-align": "start | end | center | stretch", 2389 "grid-column-sizing": 1, 2390 "grid-column-span": "<integer>", 2391 "grid-flow": "none | rows | columns", 2392 "grid-layer": "<integer>", 2393 "grid-row": 1, 2394 "grid-rows": 1, 2395 "grid-row-align": "start | end | center | stretch", 2396 "grid-row-span": "<integer>", 2397 "grid-row-sizing": 1, 2398 "hanging-punctuation": 1, 2399 height: "<margin-width> | <content-sizing> | inherit", 2400 "hyphenate-after": "<integer> | auto", 2401 "hyphenate-before": "<integer> | auto", 2402 "hyphenate-character": "<string> | auto", 2403 "hyphenate-lines": "no-limit | <integer>", 2404 "hyphenate-resource": 1,
2405 hyphens: "none | manual | auto", 2406 icon: 1, 2407 "image-orientation": "angle | auto", 2408 "image-rendering": 1, 2409 "image-resolution": 1, 2410 "inline-box-align": "initial | last | <integer>", 2411 "justify-content": "flex-start | flex-end | center | space-between | space-around", 2412 "-webkit-justify-content": "flex-start | flex-end | center | space-between | space-around", 2413 left: "<margin-width> | inherit", 2414 "letter-spacing": "<length> | normal | inherit", 2415 "line-height": "<number> | <length> | <percentage> | normal | inherit", 2416 "line-break": "auto | loose | normal | strict", 2417 "line-stacking": 1, 2418 "line-stacking-ruby": "exclude-ruby | include-ruby", 2419 "line-stacking-shift": "consider-shifts | disregard-shifts", 2420 "line-stacking-strategy": "inline-line-height | block-line-height | max-height | grid-height", 2421 "list-style": 1, 2422 "list-style-image": "<uri> | none | inherit", 2423 "list-style-position": "inside | outside | inherit", 2424 "list-style-type": "disc | circle | square | decimal | decimal-leading-zero | lower-roman | upper-roman | lower-greek | lower-latin | upper-latin | armenian | georgian | lower-alpha | upper-alpha | none | inherit", 2425 margin: {multi: "<margin-width> | inherit", max: 4}, 2426 "margin-bottom": "<margin-width> | inherit", 2427 "margin-left": "<margin-width> | inherit", 2428 "margin-right": "<margin-width> | inherit", 2429 "margin-top": "<margin-width> | inherit", 2430 mark: 1, 2431 "mark-after": 1, 2432 "mark-before": 1, 2433 marks: 1, 2434 "marquee-direction": 1, 2435 "marquee-play-count": 1, 2436 "marquee-speed": 1, 2437 "marquee-style": 1, 2438 "max-height": "<length> | <percentage> | <content-sizing> | none | inherit", 2439 "max-width": "<length> | <percentage> | <content-sizing> | none | inherit", 2440 "max-zoom": "<number> | <percentage> | auto", 2441 "min-height": "<length> | <percentage> | <content-sizing> | contain-floats | -moz-contain-floats | -webkit-contain-floats | inherit", 2442 "min-width": "<length> | <percentage> | <content-sizing> | contain-floats | -moz-contain-floats | -webkit-contain-floats | inherit", 2443 "min-zoom": "<number> | <percentage> | auto", 2444 "move-to": 1, 2445 "nav-down": 1, 2446 "nav-index": 1, 2447 "nav-left": 1, 2448 "nav-right": 1, 2449 "nav-up": 1, 2450 opacity: "<number> | inherit", 2451 order: "<integer>", 2452 "-webkit-order": "<integer>", 2453 orphans: "<integer> | inherit", 2454 outline: 1, 2455 "outline-color": "<color> | invert | inherit", 2456 "outline-offset": 1, 2457 "outline-style": "<border-style> | inherit", 2458 "outline-width": "<border-width> | inherit", 2459 overflow: "visible | hidden | scroll | auto | inherit", 2460 "overflow-style": 1, 2461 "overflow-wrap": "normal | break-word", 2462 "overflow-x": 1, 2463 "overflow-y": 1, 2464 padding: {multi: "<padding-width> | inherit", max: 4}, 2465 "padding-bottom": "<padding-width> | inherit", 2466 "padding-left": "<padding-width> | inherit", 2467 "padding-right": "<padding-width> | inherit", 2468 "padding-top": "<padding-width> | inherit", 2469 page: 1, 2470 "page-break-after": "auto | always | avoid | left | right | inherit", 2471 "page-break-before": "auto | always | avoid | left | right | inherit", 2472 "page-break-inside": "auto | avoid | inherit", 2473 "page-policy": 1, 2474 pause: 1, 2475 "pause-after": 1, 2476 "pause-before": 1, 2477 perspective: 1, 2478 "perspective-origin": 1, 2479 phonemes: 1, 2480 pitch: 1, 2481 "pitch-range": 1, 2482 "play-during": 1, 2483 "pointer-events": "auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit", 2484 position: "static | relative | absolute | fixed | inherit", 2485 "presentation-level": 1, 2486 "punctuation-trim": 1, 2487 quotes: 1, 2488 "rendering-intent": 1, 2489 resize: 1, 2490 rest: 1, 2491 "rest-after": 1, 2492 "rest-before": 1, 2493 richness: 1, 2494 right: "<margin-width> | inherit", 2495 rotation: 1, 2496 "rotation-point": 1, 2497 "ruby-align": 1, 2498 "ruby-overhang": 1, 2499 "ruby-position": 1, 2500 "ruby-span": 1, 2501 size: 1,
2502 speak: "normal | none | spell-out | inherit", 2503 "speak-header": "once | always | inherit", 2504 "speak-numeral": "digits | continuous | inherit", 2505 "speak-punctuation": "code | none | inherit", 2506 "speech-rate": 1, 2507 src: 1, 2508 stress: 1, 2509 "string-set": 1, 2510 "table-layout": "auto | fixed | inherit", 2511 "tab-size": "<integer> | <length>", 2512 target: 1, 2513 "target-name": 1, 2514 "target-new": 1, 2515 "target-position": 1, 2516 "text-align": "left | right | center | justify | inherit", 2517 "text-align-last": 1, 2518 "text-decoration": 1, 2519 "text-emphasis": 1, 2520 "text-height": 1, 2521 "text-indent": "<length> | <percentage> | inherit", 2522 "text-justify": "auto | none | inter-word | inter-ideograph | inter-cluster | distribute | kashida", 2523 "text-outline": 1, 2524 "text-overflow": 1, 2525 "text-rendering": "auto | optimizeSpeed | optimizeLegibility | geometricPrecision | inherit", 2526 "text-shadow": 1, 2527 "text-transform": "capitalize | uppercase | lowercase | none | inherit", 2528 "text-wrap": "normal | none | avoid", 2529 top: "<margin-width> | inherit", 2530 "-ms-touch-action": "auto | none | pan-x | pan-y", 2531 "touch-action": "auto | none | pan-x | pan-y", 2532 transform: 1, 2533 "transform-origin": 1, 2534 "transform-style": 1, 2535 transition: 1, 2536 "transition-delay": 1, 2537 "transition-duration": 1, 2538 "transition-property": 1, 2539 "transition-timing-function": 1, 2540 "unicode-bidi": "normal | embed | isolate | bidi-override | isolate-override | plaintext | inherit", 2541 "user-modify": "read-only | read-write | write-only | inherit", 2542 "user-select": "none | text | toggle | element | elements | all | inherit", 2543 "user-zoom": "zoom | fixed", 2544 "vertical-align": "auto | use-script | baseline | sub | super | top | text-top | central | middle | bottom | text-bottom | <percentage> | <length>", 2545 visibility: "visible | hidden | collapse | inherit", 2546 "voice-balance": 1, 2547 "voice-duration": 1, 2548 "voice-family": 1, 2549 "voice-pitch": 1, 2550 "voice-pitch-range": 1, 2551 "voice-rate": 1, 2552 "voice-stress": 1, 2553 "voice-volume": 1, 2554 volume: 1, 2555 "white-space": "normal | pre | nowrap | pre-wrap | pre-line | inherit | -pre-wrap | -o-pre-wrap | -moz-pre-wrap | -hp-pre-wrap", 2556 "white-space-collapse": 1, 2557 widows: "<integer> | inherit", 2558 width: "<length> | <percentage> | <content-sizing> | auto | inherit", 2559 "word-break": "normal | keep-all | break-all", 2560 "word-spacing": "<length> | normal | inherit", 2561 "word-wrap": "normal | break-word", 2562 "writing-mode": "horizontal-tb | vertical-rl | vertical-lr | lr-tb | rl-tb | tb-rl | bt-rl | tb-lr | bt-lr | lr-bt | rl-bt | lr | rl | tb | inherit", 2563 "z-index": "<integer> | auto | inherit", 2564 zoom: "<number> | <percentage> | normal" 2565 }; 2566 PropertyName.prototype = new SyntaxUnit, PropertyName.prototype.constructor = PropertyName, PropertyName.prototype.toString = function () { 2567 return (this.hack ? this.hack : "") + this.text 2568 }, PropertyValue.prototype = new SyntaxUnit, PropertyValue.prototype.constructor = PropertyValue, PropertyValueIterator.prototype.count = function () { 2569 return this._parts.length 2570 }, PropertyValueIterator.prototype.isFirst = function () { 2571 return this._i === 0 2572 }, PropertyValueIterator.prototype.hasNext = function () { 2573 return this._i < this._parts.length 2574 }, PropertyValueIterator.prototype.mark = function () { 2575 this._marks.push(this._i) 2576 }, PropertyValueIterator.prototype.peek = function (e) { 2577 return this.hasNext() ? this._parts[this._i + (e || 0)] : null 2578 }, PropertyValueIterator.prototype.next = function () { 2579 return this.hasNext() ? this._parts[this._i++] : null 2580 }, PropertyValueIterator.prototype.previous = function () { 2581 return this._i > 0 ? this._parts[--this._i] : null 2582 }, PropertyValueIterator.prototype.restore = function () { 2583 this._marks.length && (this._i = this._marks.pop()) 2584 }, PropertyValuePart.prototype = new SyntaxUnit, PropertyValuePart.prototype.constructor = PropertyValuePart, PropertyValuePart.fromToken = function (e) { 2585 return new PropertyValuePart(e.value, e.startLine, e.startCol) 2586 }; 2587 var Pseudos = {":first-letter": 1, ":first-line": 1, ":before": 1, ":after": 1}; 2588 Pseudos.ELEMENT = 1, Pseudos.CLASS = 2, Pseudos.isElement = function (e) { 2589 return e.indexOf("::") === 0 || Pseudos[e.toLowerCase()] == Pseudos.ELEMENT 2590 }, Selector.prototype = new SyntaxUnit, Selector.prototype.constructor = Selector, SelectorPart.prototype = new SyntaxUnit, SelectorPart.prototype.constructor = SelectorPart, SelectorSubPart.prototype = new SyntaxUnit, SelectorSubPart.prototype.constructor = SelectorSubPart, Specificity.prototype = { 2591 constructor: Specificity, 2592 compare: function (e) { 2593 var t = ["a", "b", "c", "d"], n, r; 2594 for (n = 0, r = t.length; n < r; n++) { 2595 if (this[t[n]] < e[t[n]]) return -1; 2596 if (this[t[n]] > e[t[n]]) return 1 2597 } 2598 return 0 2599 },
2600 valueOf: function () { 2601 return this.a * 1e3 + this.b * 100 + this.c * 10 + this.d 2602 }, 2603 toString: function () { 2604 return this.a + "," + this.b + "," + this.c + "," + this.d 2605 } 2606 }, Specificity.calculate = function (e) { 2607 function u(e) { 2608 var t, n, r, a, f = e.elementName ? e.elementName.text : "", l; 2609 f && f.charAt(f.length - 1) != "*" && o++; 2610 for (t = 0, r = e.modifiers.length; t < r; t++) { 2611 l = e.modifiers[t]; 2612 switch (l.type) { 2613 case"class": 2614 case"attribute": 2615 s++; 2616 break; 2617 case"id": 2618 i++; 2619 break; 2620 case"pseudo": 2621 Pseudos.isElement(l.text) ? o++ : s++; 2622 break; 2623 case"not": 2624 for (n = 0, a = l.args.length; n < a; n++) u(l.args[n]) 2625 } 2626 } 2627 } 2628 2629 var t, n, r, i = 0, s = 0, o = 0; 2630 for (t = 0, n = e.parts.length; t < n; t++) r = e.parts[t], r instanceof SelectorPart && u(r); 2631 return new Specificity(0, i, s, o) 2632 }; 2633 var h = /^[0-9a-fA-F]$/, nonascii = /^[\u0080-\uFFFF]$/, nl = /\n|\r\n|\r|\f/; 2634 TokenStream.prototype = mix(new TokenStreamBase, { 2635 _getToken: function (e) { 2636 var t, n = this._reader, r = null, i = n.getLine(), s = n.getCol(); 2637 t = n.read(); 2638 while (t) { 2639 switch (t) { 2640 case"/": 2641 n.peek() == "*" ? r = this.commentToken(t, i, s) : r = this.charToken(t, i, s); 2642 break; 2643 case"|": 2644 case"~": 2645 case"^": 2646 case"$": 2647 case"*": 2648 n.peek() == "=" ? r = this.comparisonToken(t, i, s) : r = this.charToken(t, i, s); 2649 break; 2650 case'"': 2651 case"'": 2652 r = this.stringToken(t, i, s); 2653 break; 2654 case"#": 2655 isNameChar(n.peek()) ? r = this.hashToken(t, i, s) : r = this.charToken(t, i, s); 2656 break; 2657 case".": 2658 isDigit(n.peek()) ? r = this.numberToken(t, i, s) : r = this.charToken(t, i, s); 2659 break; 2660 case"-": 2661 n.peek() == "-" ? r = this.htmlCommentEndToken(t, i, s) : isNameStart(n.peek()) ? r = this.identOrFunctionToken(t, i, s) : r = this.charToken(t, i, s); 2662 break; 2663 case"!": 2664 r = this.importantToken(t, i, s); 2665 break; 2666 case"@": 2667 r = this.atRuleToken(t, i, s); 2668 break; 2669 case":": 2670 r = this.notToken(t, i, s); 2671 break; 2672 case"<": 2673 r = this.htmlCommentStartToken(t, i, s); 2674 break; 2675 case"U": 2676 case"u": 2677 if (n.peek() == "+") { 2678 r = this.unicodeRangeToken(t, i, s); 2679 break 2680 } 2681 ; 2682 default: 2683 isDigit(t) ? r = this.numberToken(t, i, s) : isWhitespace(t) ? r = this.whitespaceToken(t, i, s) : isIdentStart(t) ? r = this.identOrFunctionToken(t, i, s) : r = this.charToken(t, i, s) 2684 } 2685 break 2686 } 2687 return !r && t === null && (r = this.createToken(Tokens.EOF, null, i, s)), r 2688 }, createToken: function (e, t, n, r, i) { 2689 var s = this._reader; 2690 return i = i || {}, { 2691 value: t, 2692 type: e, 2693 channel: i.channel, 2694 endChar: i.endChar, 2695 hide: i.hide || !1, 2696 startLine: n, 2697 startCol: r, 2698 endLine: s.getLine(), 2699 endCol: s.getCol() 2700 } 2701 }, atRuleToken: function (e, t, n) { 2702 var r = e, i = this._reader, s = Tokens.CHAR, o = !1, u, a; 2703 i.mark(), u = this.readName(), r = e + u, s = Tokens.type(r.toLowerCase()); 2704 if (s == Tokens.CHAR || s == Tokens.UNKNOWN) r.length > 1 ? s = Tokens.UNKNOWN_SYM : (s = Tokens.CHAR, r = e, i.reset()); 2705 return this.createToken(s, r, t, n) 2706 }, charToken: function (e, t, n) { 2707 var r = Tokens.type(e), i = {}; 2708 return r == -1 ? r = Tokens.CHAR : i.endChar = Tokens[r].endChar, this.createToken(r, e, t, n, i) 2709 }, commentToken: function (e, t, n) { 2710 var r = this._reader, i = this.readComment(e); 2711 return this.createToken(Tokens.COMMENT, i, t, n) 2712 }, comparisonToken: function (e, t, n) { 2713 var r = this._reader, i = e + r.read(), s = Tokens.type(i) || Tokens.CHAR; 2714 return this.createToken(s, i, t, n) 2715 }, hashToken: function (e, t, n) { 2716 var r = this._reader, i = this.readName(e); 2717 return this.createToken(Tokens.HASH, i, t, n) 2718 }, htmlCommentStartToken: function (e, t, n) { 2719 var r = this._reader, i = e; 2720 return r.mark(), i += r.readCount(3), i == "<!--" ? this.createToken(Tokens.CDO, i, t, n) : (r.reset(), this.charToken(e, t, n)) 2721 }, htmlCommentEndToken: function (e, t, n) { 2722 var r = this._reader, i = e; 2723 return r.mark(), i += r.readCount(2), i == "-->" ? this.createToken(Tokens.CDC, i, t, n) : (r.reset(), this.charToken(e, t, n)) 2724 }, identOrFunctionToken: function (e, t, n) { 2725 var r = this._reader, i = this.readName(e), s = Tokens.IDENT; 2726 return r.peek() == "(" ? (i += r.read(), i.toLowerCase() == "url(" ? (s = Tokens.URI, i = this.readURI(i), i.toLowerCase() == "url(" && (s = Tokens.FUNCTION)) : s = Tokens.FUNCTION) : r.peek() == ":" && i.toLowerCase() == "progid" && (i += r.readTo("("), s = Tokens.IE_FUNCTION), this.createToken(s, i, t, n) 2727 }, importantToken: function (e, t, n) { 2728 var r = this._reader, i = e, s = Tokens.CHAR, o, u; 2729 r.mark(), u = r.read(); 2730 while (u) { 2731 if (u == "/") { 2732 if (r.peek() != "*") break; 2733 o = this.readComment(u); 2734 if (o === "") break 2735 } else { 2736 if (!isWhitespace(u)) { 2737 if (/i/i.test(u)) { 2738 o = r.readCount(8), /mportant/i.test(o) && (i += u + o, s = Tokens.IMPORTANT_SYM); 2739 break 2740 } 2741 break 2742 } 2743 i += u + this.readWhitespace() 2744 } 2745 u = r.read() 2746 } 2747 return s == Tokens.CHAR ? (r.reset(), this.charToken(e, t, n)) : this.createToken(s, i, t, n) 2748 }, notToken: function (e, t, n) { 2749 var r = this._reader, i = e; 2750 return r.mark(), i += r.readCount(4), i.toLowerCase() == ":not(" ? this.createToken(Tokens.NOT, i, t, n) : (r.reset(), this.charToken(e, t, n)) 2751 }, numberToken: function (e, t, n) { 2752 var r = this._reader, i = this.readNumber(e), s, o = Tokens.NUMBER, u = r.peek(); 2753 return isIdentStart(u) ? (s = this.readName(r.read()), i += s, /^em$|^ex$|^px$|^gd$|^rem$|^vw$|^vh$|^vmax$|^vmin$|^ch$|^cm$|^mm$|^in$|^pt$|^pc$/i.test(s) ? o = Tokens.LENGTH : /^deg|^rad$|^grad$/i.test(s) ? o = Tokens.ANGLE : /^ms$|^s$/i.test(s) ? o = Tokens.TIME : /^hz$|^khz$/i.test(s) ? o = Tokens.FREQ : /^dpi$|^dpcm$/i.test(s) ? o = Tokens.RESOLUTION : o = Tokens.DIMENSION) : u == "%" && (i += r.read(), o = Tokens.PERCENTAGE), this.createToken(o, i, t, n) 2754 }, stringToken: function (e, t, n) { 2755 var r = e, i = e, s = this._reader, o = e, u = Tokens.STRING, a = s.read(); 2756 while (a) { 2757 i += a; 2758 if (a == r && o != "\\") break; 2759 if (isNewLine(s.peek()) && a != "\\") { 2760 u = Tokens.INVALID; 2761 break 2762 } 2763 o = a, a = s.read() 2764 } 2765 return a === null && (u = Tokens.INVALID), this.createToken(u, i, t, n) 2766 }, unicodeRangeToken: function (e, t, n) { 2767 var r = this._reader, i = e, s, o = Tokens.CHAR; 2768 return r.peek() == "+" && (r.mark(), i += r.read(), i += this.readUnicodeRangePart(!0), i.length == 2 ? r.reset() : (o = Tokens.UNICODE_RANGE, i.indexOf("?") == -1 && r.peek() == "-" && (r.mark(), s = r.read(), s += this.readUnicodeRangePart(!1), s.length == 1 ? r.reset() : i += s))), this.createToken(o, i, t, n) 2769 }, whitespaceToken: function (e, t, n) { 2770 var r = this._reader, i = e + this.readWhitespace(); 2771 return this.createToken(Tokens.S, i, t, n) 2772 }, readUnicodeRangePart: function (e) { 2773 var t = this._reader, n = "", r = t.peek(); 2774 while (isHexDigit(r) && n.length < 6) t.read(), n += r, r = t.peek(); 2775 if (e) while (r == "?" && n.length < 6) t.read(), n += r, r = t.peek(); 2776 return n 2777 }, readWhitespace: function () { 2778 var e = this._reader, t = "", n = e.peek(); 2779 while (isWhitespace(n)) e.read(), t += n, n = e.peek(); 2780 return t 2781 }, readNumber: function (e) { 2782 var t = this._reader, n = e, r = e == ".", i = t.peek(); 2783 while (i) { 2784 if (isDigit(i)) n += t.read(); else { 2785 if (i != ".") break; 2786 if (r) break; 2787 r = !0, n += t.read() 2788 } 2789 i = t.peek() 2790 } 2791 return n 2792 }, readString: function () { 2793 var e = this._reader, t = e.read(), n = t, r = t, i = e.peek(); 2794 while (i) { 2795 i = e.read(), n += i; 2796 if (i == t && r != "\\") break; 2797 if (isNewLine(e.peek()) && i != "\\") { 2798 n = ""; 2799 break 2800 } 2801 r = i, i = e.peek() 2802 } 2803 return i === null && (n = ""), n 2804 }, readURI: function (e) { 2805 var t = this._reader, n = e, r = "", i = t.peek(); 2806 t.mark(); 2807 while (i && isWhitespace(i)) t.read(), i = t.peek(); 2808 i == "'" || i == '"' ? r = this.readString() : r = this.readURL(), i = t.peek(); 2809 while (i && isWhitespace(i)) t.read(), i = t.peek(); 2810 return r === "" || i != ")" ? (n = e, t.reset()) : n += r + t.read(), n 2811 }, readURL: function () { 2812 var e = this._reader, t = "", n = e.peek(); 2813 while (/^[!#$%&\\*-~]$/.test(n)) t += e.read(), n = e.peek(); 2814 return t 2815 }, readName: function (e) { 2816 var t = this._reader, n = e || "", r = t.peek(); 2817 for (; ;) if (r == "\\") n += this.readEscape(t.read()), r = t.peek(); else { 2818 if (!r || !isNameChar(r)) break; 2819 n += t.read(), r = t.peek() 2820 } 2821 return n 2822 }, readEscape: function (e) { 2823 var t = this._reader, n = e || "", r = 0, i = t.peek(); 2824 if (isHexDigit(i)) do n += t.read(), i = t.peek(); while (i && isHexDigit(i) && ++r < 6); 2825 return n.length == 3 && /\s/.test(i) || n.length == 7 || n.length == 1 ? t.read() : i = "", n + i 2826 }, readComment: function (e) { 2827 var t = this._reader, n = e || "", r = t.read(); 2828 if (r == "*") { 2829 while (r) { 2830 n += r; 2831 if (n.length > 2 && r == "*" && t.peek() == "/") { 2832 n += t.read(); 2833 break 2834 } 2835 r = t.read() 2836 } 2837 return n 2838 } 2839 return "" 2840 } 2841 }); 2842 var Tokens = [{name: "CDO"}, {name: "CDC"}, {name: "S", whitespace: !0}, { 2843 name: "COMMENT", 2844 comment: !0, 2845 hide: !0, 2846 channel: "comment" 2847 }, {name: "INCLUDES", text: "~="}, {name: "DASHMATCH", text: "|="}, { 2848 name: "PREFIXMATCH", 2849 text: "^=" 2850 }, {name: "SUFFIXMATCH", text: "$="}, { 2851 name: "SUBSTRINGMATCH", 2852 text: "*=" 2853 }, {name: "STRING"}, {name: "IDENT"}, {name: "HASH"}, {name: "IMPORT_SYM", text: "@import"}, { 2854 name: "PAGE_SYM", 2855 text: "@page" 2856 }, {name: "MEDIA_SYM", text: "@media"}, {name: "FONT_FACE_SYM", text: "@font-face"}, { 2857 name: "CHARSET_SYM", 2858 text: "@charset" 2859 }, {name: "NAMESPACE_SYM", text: "@namespace"}, {
2860 name: "VIEWPORT_SYM", 2861 text: ["@viewport", "@-ms-viewport"] 2862 }, {name: "UNKNOWN_SYM"}, { 2863 name: "KEYFRAMES_SYM", 2864 text: ["@keyframes", "@-webkit-keyframes", "@-moz-keyframes", "@-o-keyframes"] 2865 }, {name: "IMPORTANT_SYM"}, {name: "LENGTH"}, {name: "ANGLE"}, {name: "TIME"}, {name: "FREQ"}, {name: "DIMENSION"}, {name: "PERCENTAGE"}, {name: "NUMBER"}, {name: "URI"}, {name: "FUNCTION"}, {name: "UNICODE_RANGE"}, {name: "INVALID"}, { 2866 name: "PLUS", 2867 text: "+" 2868 }, {name: "GREATER", text: ">"}, {name: "COMMA", text: ","}, { 2869 name: "TILDE", 2870 text: "~" 2871 }, {name: "NOT"}, {name: "TOPLEFTCORNER_SYM", text: "@top-left-corner"}, { 2872 name: "TOPLEFT_SYM", 2873 text: "@top-left" 2874 }, {name: "TOPCENTER_SYM", text: "@top-center"}, { 2875 name: "TOPRIGHT_SYM", 2876 text: "@top-right" 2877 }, {name: "TOPRIGHTCORNER_SYM", text: "@top-right-corner"}, { 2878 name: "BOTTOMLEFTCORNER_SYM", 2879 text: "@bottom-left-corner" 2880 }, {name: "BOTTOMLEFT_SYM", text: "@bottom-left"}, { 2881 name: "BOTTOMCENTER_SYM", 2882 text: "@bottom-center" 2883 }, {name: "BOTTOMRIGHT_SYM", text: "@bottom-right"}, { 2884 name: "BOTTOMRIGHTCORNER_SYM", 2885 text: "@bottom-right-corner" 2886 }, {name: "LEFTTOP_SYM", text: "@left-top"}, { 2887 name: "LEFTMIDDLE_SYM", 2888 text: "@left-middle" 2889 }, {name: "LEFTBOTTOM_SYM", text: "@left-bottom"}, { 2890 name: "RIGHTTOP_SYM", 2891 text: "@right-top" 2892 }, {name: "RIGHTMIDDLE_SYM", text: "@right-middle"}, { 2893 name: "RIGHTBOTTOM_SYM", 2894 text: "@right-bottom" 2895 }, {name: "RESOLUTION", state: "media"}, {name: "IE_FUNCTION"}, {name: "CHAR"}, { 2896 name: "PIPE", 2897 text: "|" 2898 }, {name: "SLASH", text: "/"}, {name: "MINUS", text: "-"}, {name: "STAR", text: "*"}, { 2899 name: "LBRACE", 2900 endChar: "}", 2901 text: "{" 2902 }, {name: "RBRACE", text: "}"}, {name: "LBRACKET", endChar: "]", text: "["}, { 2903 name: "RBRACKET", 2904 text: "]" 2905 }, {name: "EQUALS", text: "="}, {name: "COLON", text: ":"}, {name: "SEMICOLON", text: ";"}, { 2906 name: "LPAREN", 2907 endChar: ")", 2908 text: "(" 2909 }, {name: "RPAREN", text: ")"}, {name: "DOT", text: "."}]; 2910 (function () { 2911 var e = [], t = {}; 2912 Tokens.UNKNOWN = -1, Tokens.unshift({name: "EOF"}); 2913 for (var n = 0, r = Tokens.length; n < r; n++) { 2914 e.push(Tokens[n].name), Tokens[Tokens[n].name] = n; 2915 if (Tokens[n].text) if (Tokens[n].text instanceof Array) for (var i = 0; i < Tokens[n].text.length; i++) t[Tokens[n].text[i]] = n; else t[Tokens[n].text] = n 2916 } 2917 Tokens.name = function (t) { 2918 return e[t] 2919 }, Tokens.type = function (e) { 2920 return t[e] || -1 2921 } 2922 })(); 2923 var Validation = { 2924 validate: function (e, t) { 2925 var n = e.toString().toLowerCase(), r = t.parts, i = new PropertyValueIterator(t), s = Properties[n], o, 2926 u, a, f, l, c, h, p, d, v, m; 2927 if (!s) { 2928 if (n.indexOf("-") !== 0) throw new ValidationError("Unknown property '" + e + "'.", e.line, e.col) 2929 } else typeof s != "number" && (typeof s == "string" ? s.indexOf("||") > -1 ? this.groupProperty(s, i) : this.singleProperty(s, i, 1) : s.multi ? this.multiProperty(s.multi, i, s.comma, s.max || Infinity) : typeof s == "function" && s(i)) 2930 }, singleProperty: function (e, t, n, r) { 2931 var i = !1, s = t.value, o = 0, u; 2932 while (t.hasNext() && o < n) { 2933 i = ValidationTypes.isAny(t, e); 2934 if (!i) break; 2935 o++ 2936 } 2937 if (!i) throw t.hasNext() && !t.isFirst() ? (u = t.peek(), new ValidationError("Expected end of value but found '" + u + "'.", u.line, u.col)) : new ValidationError("Expected (" + e + ") but found '" + s + "'.", s.line, s.c
2937ol); 2938 if (t.hasNext()) throw u = t.next(), new ValidationError("Expected end of value but found '" + u + "'.", u.line, u.col) 2939 }, multiProperty: function (e, t, n, r) { 2940 var i = !1, s = t.value, o = 0, u = !1, a; 2941 while (t.hasNext() && !i && o < r) { 2942 if (!ValidationTypes.isAny(t, e)) break; 2943 o++; 2944 if (!t.hasNext()) i = !0; else if (n) { 2945 if (t.peek() != ",") break; 2946 a = t.next() 2947 } 2948 } 2949 if (!i) throw t.hasNext() && !t.isFirst() ? (a = t.peek(), new ValidationError("Expected end of value but found '" + a + "'.", a.line, a.col)) : (a = t.previous(), n && a == "," ? new ValidationError("Expected end of value but found '" + a + "'.", a.line, a.col) : new ValidationError("Expected (" + e + ") but found '" + s + "'.", s.line, s.col)); 2950 if (t.hasNext()) throw a = t.next(), new ValidationError("Expected end of value but found '" + a + "'.", a.line, a.col) 2951 }, groupProperty: function (e, t, n) { 2952 var r = !1, i = t.value, s = e.split("||").length, o = {count: 0}, u = !1, a, f; 2953 while (t.hasNext() && !r) { 2954 a = ValidationTypes.isAnyOfGroup(t, e); 2955 if (!a) break; 2956 if (o[a]) break; 2957 o[a] = 1, o.count++, u = !0; 2958 if (o.count == s || !t.hasNext()) r = !0 2959 } 2960 if (!r) throw u && t.hasNext() ? (f = t.peek(), new ValidationError("Expected end of value but found '" + f + "'.", f.line, f.col)) : new ValidationError("Expected (" + e + ") but found '" + i + "'.", i.line, i.col); 2961 if (t.hasNext()) throw f = t.next(), new ValidationError("Expected end of value but found '" + f + "'.", f.line, f.col) 2962 } 2963 }; 2964 ValidationError.prototype = new Error; 2965 var ValidationTypes = { 2966 isLiteral: function (e, t) { 2967 var n = e.text.toString().toLowerCase(), r = t.split(" | "), i, s, o = !1; 2968 for (i = 0, s = r.length; i < s && !o; i++) n == r[i].toLowerCase() && (o = !0); 2969 return o 2970 }, isSimple: function (e) { 2971 return !!this.simple[e] 2972 }, isComplex: function (e) { 2973 return !!this.complex[e] 2974 }, isAny: function (e, t) { 2975 var n = t.split(" | "), r, i, s = !1; 2976 for (r = 0, i = n.length; r < i && !s && e.hasNext(); r++) s = this.isType(e, n[r]); 2977 return s 2978 }, isAnyOfGroup: function (e, t) { 2979 var n = t.split(" || "), r, i, s = !1; 2980 for (r = 0, i = n.length; r < i && !s; r++) s = this.isType(e, n[r]); 2981 return s ? n[r - 1] : !1 2982 }, isType: function (e, t) { 2983 var n = e.peek(), r = !1; 2984 return t.charAt(0) != "<" ? (r = this.isLiteral(n, t), r && e.next()) : this.simple[t] ? (r = this.simple[t](n), r && e.next()) : r = this.complex[t](e), r 2985 }, simple: { 2986 "<absolute-size>": function (e) { 2987 return ValidationTypes.isLiteral(e, "xx-small | x-small | small | medium | large | x-large | xx-large") 2988 }, "<attachment>": function (e) { 2989 return ValidationTypes.isLiteral(e, "scroll | fixed | local") 2990 }, "<attr>": function (e) { 2991 return e.type == "function" && e.name == "attr" 2992 }, "<bg-image>": function (e) { 2993 return this["<image>"](e) || this["<gradient>"](e) || e == "none" 2994 }, "<gradient>": function (e) { 2995 return e.type == "function" && /^(?:\-(?:ms|moz|o|webkit)\-)?(?:repeating\-)?(?:radial\-|linear\-)?gradient/i.test(e) 2996 }, "<box>": function (e) { 2997 return ValidationTypes.isLiteral(e, "padding-box | border-box | content-box") 2998 }, "<content>": function (e) { 2999 return e.type == "function" && e.name == "content" 3000 }, "<relative-size>": function (e) { 3001 return ValidationTypes.isLiteral(e, "smaller | larger") 3002 }, "<ident>": function (e) { 3003 return e.type == "identifier" 3004 }, "<length>": function (e) { 3005 return e.type == "function" && /^(?:\-(?:ms|moz|o|webkit)\-)?calc/i.test(e) ? !0 : e.type == "length" || e.type == "number" || e.type == "integer" || e == "0" 3006 }, "<color>": function (e) { 3007 return e.type == "color" || e == "transparent" 3008 }, "<number>": function (e) { 3009 return e.type == "number" || this["<integer>"](e) 3010 }, "<integer>": function (e) { 3011 return e.type == "integer" 3012 }, "<line>": function (e) { 3013 return e.type == "integer" 3014 }, "<angle>": function (e) { 3015 return e.type == "angle" 3016 }, "<uri>": function (e) { 3017 return e.type == "uri" 3018 }, "<image>": function (e) { 3019 return this["<uri>"](e) 3020 }, "<percentage>": function (e) { 3021 return e.type == "percentage" || e == "0" 3022 }, "<border-width>": function (e) { 3023 return this["<length>"](e) || ValidationTypes.isLiteral(e, "thin | medium | thick") 3024 }, "<border-style>": function (e) { 3025 return ValidationTypes.isLiteral(e, "none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset") 3026 }, "<content-sizing>": function (e) { 3027 return ValidationTypes.isLiteral(e, "fill-available | -moz-available | -webkit-fill-available | max-content | -moz-max-content | -webkit-max-content | min-content | -moz-min-content | -webkit-min-content | fit-content | -moz-fit-content | -webkit-fit-content") 3028 }, "<margin-width>": function (e) { 3029 return this["<length>"](e) || this["<percentage>"](e) || ValidationTypes.isLiteral(e, "auto") 3030 }, "<padding-width>": function (e) { 3031 return this["<length>"](e) || this["<percentage>"](e) 3032 }, "<shape>": function (e) { 3033 return e.type == "function" && (e.name == "rect" || e.name == "inset-rect") 3034 }, "<time>": function (e) { 3035 return e.type == "time" 3036 }, "<flex-grow>": function (e) { 3037 return this["<number>"](e) 3038 }, "<flex-shrink>": function (e) { 3039 return this["<number>"](e) 3040 }, "<width>": function (e) { 3041 return this["<margin-width>"](e) 3042 }, "<flex-basis>": function (e) { 3043 return this["<width>"](e) 3044 }, "<flex-direction>": function (e) { 3045 return ValidationTypes.isLiteral(e, "row | row-reverse | column | column-reverse") 3046 }, "<flex-wrap>": function (e) { 3047 return ValidationTypes.isLiteral(e, "nowrap | wrap | wrap-reverse") 3048 } 3049 }, complex: { 3050 "<bg-position>": function (e) { 3051 var t = this, n = !1, r = "<percentage> | <length>", i = "left | right", s = "top | bottom", o = 0, 3052 u = function () { 3053 return e.hasNext() && e.peek() != "," 3054 }; 3055 while (e.peek(o) && e.peek(o) != ",") o++; 3056 return o < 3 ? ValidationTypes.isAny(e, i + " | center | " + r) ? (n = !0, ValidationTypes.isAny(e, s + " | center | " + r)) : ValidationTypes.isAny(e, s) && (n = !0, ValidationTypes.isAny(e, i + " | center")) : ValidationTypes.isAny(e, i) ? ValidationTypes.isAny(e, s) ? (n = !0, ValidationTypes.isAny(e, r)) : ValidationTypes.isAny(e, r) && (ValidationTypes.isAny(e, s) ? (n = !0, ValidationTypes.isAny(e, r)) : ValidationTypes.isAny(e, "center") && (n = !0)) : ValidationTypes.isAny(e, s) ? ValidationTypes.isAny(e, i) ? (n = !0, ValidationTypes.isAny(e, r)) : ValidationTypes.isAny(e, r) && (ValidationTypes.isAny(e, i) ? (n = !0, ValidationTypes.isAny(e, r)) : ValidationTypes.isAny(e, "center") && (n = !0)) : ValidationTypes.isAny(e, "center") && ValidationTypes.isAny(e, i + " | " + s) && (n = !0, ValidationTypes.isAny(e, r)), n 3057 }
3057, "<bg-size>": function (e) { 3058 var t = this, n = !1, r = "<percentage> | <length> | auto", i, s, o; 3059 return ValidationTypes.isAny(e, "cover | contain") ? n = !0 : ValidationTypes.isAny(e, r) && (n = !0, ValidationTypes.isAny(e, r)), n 3060 }, "<repeat-style>": function (e) { 3061 var t = !1, n = "repeat | space | round | no-repeat", r; 3062 return e.hasNext() && (r = e.next(), ValidationTypes.isLiteral(r, "repeat-x | repeat-y") ? t = !0 : ValidationTypes.isLiteral(r, n) && (t = !0, e.hasNext() && ValidationTypes.isLiteral(e.peek(), n) && e.next())), t 3063 }, "<shadow>": function (e) { 3064 var t = !1, n = 0, r = !1, i = !1, s; 3065 if (e.hasNext()) { 3066 ValidationTypes.isAny(e, "inset") && (r = !0), ValidationTypes.isAny(e, "<color>") && (i = !0); 3067 while (ValidationTypes.isAny(e, "<length>") && n < 4) n++; 3068 e.hasNext() && (i || ValidationTypes.isAny(e, "<color>"), r || ValidationTypes.isAny(e, "inset")), t = n >= 2 && n <= 4 3069 } 3070 return t 3071 }, "<x-one-radius>": function (e) { 3072 var t = !1, n = "<length> | <percentage> | inherit"; 3073 return ValidationTypes.isAny(e, n) && (t = !0, ValidationTypes.isAny(e, n)), t 3074 }, "<flex>": function (e) { 3075 var t, n = !1; 3076 ValidationTypes.isAny(e, "none | inherit") ? n = !0 : ValidationTypes.isType(e, "<flex-grow>") ? e.peek() ? ValidationTypes.isType(e, "<flex-shrink>") ? e.peek() ? n = ValidationTypes.isType(e, "<flex-basis>") : n = !0 : ValidationTypes.isType(e, "<flex-basis>") && (n = e.peek() === null) : n = !0 : ValidationTypes.isType(e, "<flex-basis>") && (n = !0); 3077 if (!n) throw t = e.peek(), new ValidationError("Expected (none | [ <flex-grow> <flex-shrink>? || <flex-basis> ]) but found '" + e.value.text + "'.", t.line, t.col); 3078 return n 3079 } 3080 } 3081 }; 3082 parserlib.css = { 3083 Colors: Colors, 3084 Combinator: Combinator, 3085 Parser: Parser, 3086 PropertyName: PropertyName, 3087 PropertyValue: PropertyValue, 3088 PropertyValuePart: PropertyValuePart, 3089 MediaFeature: MediaFeature, 3090 MediaQuery: MediaQuery, 3091 Selector: Selector, 3092 SelectorPart: SelectorPart, 3093 SelectorSubPart: SelectorSubPart, 3094 Specificity: Specificity, 3095 TokenStream: TokenStream, 3096 Tokens: Tokens, 3097 ValidationError: ValidationError 3098 } 3099 }(), function () { 3100 for (var e in parserlib) exports[e] = parserlib[e] 3101 }(); 3102 var util = { 3103 isArray: function (e) { 3104 return Array.isArray(e) || typeof e == "object" && objectToString(e) === "[object Array]" 3105 }, isDate: function (e) { 3106 return typeof e == "object" && objectToString(e) === "[object Date]" 3107 }, isRegExp: function (e) { 3108 return typeof e == "object" && objectToString(e) === "[object RegExp]" 3109 }, getRegExpFlags: function (e) { 3110 var t = ""; 3111 return e.global && (t += "g"), e.ignoreCase && (t += "i"), e.multiline && (t += "m"), t 3112 } 3113 }; 3114 typeof module == "object" && (module.exports = clone), clone.clonePrototype = function (e) { 3115 if (e === null) return null; 3116 var t = function () { 3117 }; 3118 return t.prototype = e, new t 3119 }; 3120 var CSSLint = function () { 3121 function i(e, t) { 3122 var r, i = e && e.match(n), s = i && i[1]; 3123 return s && (r = { 3124 "true": 2, 3125 "": 1, 3126 "false": 0, 3127 2: 2, 3128 1: 1, 3129 0: 0 3130 }, s.toLowerCase().split(",").forEach(function (e) { 3131 var n = e.split(":"), i = n[0] || "", s = n[1] || ""; 3132 t[i.trim()] = r[s.trim()] 3133 })), t 3134 } 3135 3136 var e = [], t = [], n = /\/\*csslint([^\*]*)\*\//, r = new parserlib.util.EventTarget; 3137 return r.version = "@VERSION@", r.addRule = function (t) { 3138 e.push(t), e[t.id] = t 3139 }, r.clearRules = function () { 3140 e = [] 3141 }, r.getRules = function () { 3142 return [].concat(e).sort(function (e, t) { 3143 return e.id > t.id ? 1 : 0 3144 }) 3145 }, r.getRuleset = function () { 3146 var t = {}, n = 0, r = e.length; 3147 while (n < r) t[e[n++].id] = 1; 3148 return t 3149 }, r.addFormatter = function (e) { 3150 t[e.id] = e 3151 }, r.getFormatter = function (e) { 3152 return t[e] 3153 }, r.format = function (e, t, n, r) { 3154 var i = this.getFormatter(n), s = null; 3155 return i && (s = i.startFormat(), s += i.formatResults(e, t, r || {}), s += i.endFormat()), s 3156 }, r.hasFormat = function (e) { 3157 return t.hasOwnProperty(e) 3158 }, r.verify = function (t, r) { 3159 var s = 0, o, u, a, 3160 f = new parserlib.css.Parser({starHack: !0, ieFilters: !0, underscoreHack: !0, strict: !1}
3160); 3161 u = t.replace(/\n\r?/g, "$split$").split("$split$"), r || (r = this.getRuleset()), n.test(t) && (r = clone(r), r = i(t, r)), o = new Reporter(u, r), r.errors = 2; 3162 for (s in r) r.hasOwnProperty(s) && r[s] && e[s] && e[s].init(f, o); 3163 try { 3164 f.parse(t) 3165 } catch (l) { 3166 o.error("Fatal error, cannot continue: " + l.message, l.line, l.col, {}) 3167 } 3168 return a = {messages: o.messages, stats: o.stats, ruleset: o.ruleset}, a.messages.sort(function (e, t) { 3169 return e.rollup && !t.rollup ? 1 : !e.rollup && t.rollup ? -1 : e.line - t.line 3170 }), a 3171 }, r 3172 }(); 3173 Reporter.prototype = { 3174 constructor: Reporter, error: function (e, t, n, r) { 3175 this.messages.push({type: "error", line: t, col: n, message: e, evidence: this.lines[t - 1], rule: r || {}}) 3176 }, warn: function (e, t, n, r) { 3177 this.report(e, t, n, r) 3178 }, report: function (e, t, n, r) { 3179 this.messages.push({ 3180 type: this.ruleset[r.id] === 2 ? "error" : "warning", 3181 line: t, 3182 col: n, 3183 message: e, 3184 evidence: this.lines[t - 1], 3185 rule: r 3186 }) 3187 }, info: function (e, t, n, r) { 3188 this.messages.push({type: "info", line: t, col: n, message: e, evidence: this.lines[t - 1], rule: r}) 3189 }, rollupError: function (e, t) { 3190 this.messages.push({type: "error", rollup: !0, message: e, rule: t}) 3191 }, rollupWarn: function (e, t) { 3192 this.messages.push({type: "warning", rollup: !0, message: e, rule: t}) 3193 }, stat: function (e, t) { 3194 this.stats[e] = t 3195 } 3196 }, CSSLint._Reporter = Reporter, CSSLint.Util = { 3197 mix: function (e, t) { 3198 var n; 3199 for (n in t) t.hasOwnProperty(n) && (e[n] = t[n]); 3200 return n 3201 }, indexOf: function (e, t) { 3202 if (e.indexOf) return e.indexOf(t); 3203 for (var n = 0, r = e.length; n < r; n++) if (e[n] === t) return n; 3204 return -1 3205 }, forEach: function (e, t) { 3206 if (e.forEach) return e.forEach(t); 3207 for (var n = 0, r = e.length; n < r; n++) t(e[n], n, e) 3208 } 3209 }, CSSLint.addRule({ 3210 id: "adjoining-classes", 3211 name: "Disallow adjoining classes", 3212 desc: "Don't use adjoining classes.", 3213 browsers: "IE6", 3214 init: function (e, t) { 3215 var n = this; 3216 e.addListener("startrule", function (r) { 3217 var i = r.selectors, s, o, u, a, f, l, c; 3218 for (f = 0; f < i.length; f++) { 3219 s = i[f]; 3220 for (l = 0; l < s.parts.length; l++) { 3221 o = s.parts[l]; 3222 if (o.type === e.SELECTOR_PART_TYPE) { 3223 a = 0; 3224 for (c = 0; c < o.modifiers.length; c++) u = o.modifiers[c], u.type === "class" && a++, a > 1 && t.report("Don't use adjoining classes.", o.line, o.col, n) 3225 } 3226 } 3227 } 3228 }) 3229 } 3230 }), CSSLint.addRule({ 3231 id: "box-model", 3232 name: "Beware of broken box size", 3233 desc: "Don't use width or height when using padding or border.", 3234 browsers: "All", 3235 init: function (e, t) { 3236 function u() { 3237 s = {}, o = !1 3238 } 3239 3240 function a() { 3241 var e, u; 3242 if (!o) { 3243 if (s.height) for (e in i) i.hasOwnProperty(e) && s[e] && (u = s[e].value, (e !== "padding" || u.parts.length !== 2 || u.parts[0].value !== 0) && t.report("Using height with " + e + " can sometimes make elements larger than you expect.", s[e].line, s[e].col, n)); 3244 if (s.width) for (e in r) r.hasOwnProperty(e) && s[e] && (u = s[e].value, (e !== "padding" || u.parts.length !== 2 || u.parts[1].value !== 0) && t.report("Using width with " + e + " can sometimes make elements larger than you expect.", s[e].line, s[e].col, n)) 3245 } 3246 } 3247 3248 var n = this, 3249 r = {border: 1, "border-left": 1, "border-right": 1, padding: 1, "padding-left": 1, "padding-right": 1}, 3250 i = {border: 1, "border-bottom": 1, "border-top": 1, padding: 1, "padding-bottom": 1, "padding-top": 1}, 3251 s, o = !1; 3252 e.addListener("startrule", u), e.addListener("startfontface", u), e.addListener("startpage", u), e.addListener("startpagemargin", u), e.addListener("startkeyframerule", u), e.addListener("property", function (e) { 3253 var t = e.property.text.toLowerCase(); 3254 i[t] || r[t] ? !/^0\S*$/.test(e.value) && (t !== "border" || e.value.toString() !== "none") && (s[t] = { 3255 line: e.property.line, 3256 col: e.property.col, 3257 value: e.value 3258 }) : /^(width|height)/i.test(t) && /^(length|percentage)/.test(e.value.parts[0].type) ? s[t] = 1 : t === "box-sizing" && (o = !0) 3259 }), e.addListener("endrule", a), e.addListener("endfontface", a), e.addListener("endpage", a), e.addListener("endpagemargin", a), e.addListener("endkeyframerule", a) 3260 } 3261 }), CSSLint.addRule({ 3262 id: "box-sizing", 3263 name: "Disallow use of box-sizing", 3264 desc: "The box-sizing properties isn't supported in IE6 and IE7.", 3265 browsers: "IE6, IE7", 3266 tags: ["Compatibility"], 3267 init: function (e, t) { 3268 var n = this; 3269 e.addListener("property", function (e) { 3270 var r = e.property.text.toLowerCase(); 3271 r === "box-sizing" && t.report("The box-sizing property isn't supported in IE6 and IE7.", e.line, e.col, n) 3272 }) 3273 } 3274 }), CSSLint.addRule({ 3275 id: "bulletproof-font-face", 3276 name: "Use the bulletproof @font-face syntax", 3277 desc: "Use the bulletproof @font-face syntax to avoid 404's in old IE (http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax).", 3278 browsers: "All", 3279 init: function (e, t) { 3280 var n = this, r = !1, i = !0, s = !1, o, u; 3281 e.addListener("startfontface", function () { 3282 r = !0 3283 }), e.addListener("property", function (e) { 3284 if (!r) return; 3285 var t = e.property.toString().toLowerCase(), n = e.value.toString(); 3286 o = e.line, u = e.col; 3287 if (t === "src") { 3288 var a = /^\s?url\(['"].+\.eot\?.*['"]\)\s*format\(['"]embedded-opentype['"]\).*$/i; 3289 !n.match(a) && i ? (s = !0, i = !1) : n.match(a) && !i && (s = !1) 3290 } 3291 }), e.addListener("endfontface", function () { 3292 r = !1, s && t.report("@font-face declaration doesn't follow the fontspring bulletproof syntax.", o, u, n) 3293 }) 3294 } 3295 }), CSSLint.addRule({ 3296 id: "compatible-vendor-prefixes", 3297 name: "Require compatible vendor prefixes", 3298 desc: "Include all compatible vendor prefixes to reach a wider range of users.", 3299 browsers: "All", 3300 init: function (e, t) { 3301 var n = this, r, i, s, o, u, a, f, l = !1, c = Array.prototype.push, h = []; 3302 r = { 3303 animation: "webkit moz", 3304 "animation-delay": "webkit moz", 3305 "animation-direction": "webkit moz", 3306 "animation-duration": "webkit moz", 3307 "animation-fill-mode": "webkit moz", 3308 "animation-iteration-count": "webkit moz", 3309 "animation-name": "webkit moz", 3310 "animation-play-state": "webkit moz", 3311 "animation-timing-function": "webkit moz", 3312 appearance: "webkit moz", 3313 "border-end": "webkit moz", 3314 "border-end-color": "webkit moz", 3315 "border-end-style": "webkit moz", 3316 "border-end-width": "webkit moz", 3317 "border-image": "webkit moz o", 3318 "border-radius": "webkit", 3319 "border-start": "webkit moz", 3320 "border-start-color": "webkit moz", 3321 "border-start-style": "webkit moz", 3322 "border-start-width": "webkit moz", 3323 "box-align": "webkit moz ms", 3324 "box-direction": "webkit moz ms", 3325 "box-flex": "webkit moz ms", 3326 "box-lines": "webkit ms", 3327 "box-ordinal-group": "webkit moz ms", 3328 "box-orient": "webkit moz ms", 3329 "box-pack": "webkit moz ms", 3330 "box-sizing": "webkit moz", 3331 "box-shadow": "webkit moz", 3332 "column-count": "webkit moz ms", 3333 "column-gap": "webkit moz ms", 3334 "column-rule": "webkit moz ms", 3335 "column-rule-color": "webkit moz ms", 3336 "column-rule-style": "webkit moz ms", 3337 "column-rule-width": "webkit moz ms", 3338 "column-width": "webkit moz ms", 3339 hyphens: "epub moz", 3340 "line-break": "webkit ms", 3341 "margin-end": "webkit moz", 3342 "margin-start": "webkit moz", 3343 "marquee-speed": "webkit wap", 3344 "marquee-style": "webkit wap", 3345 "padding-end": "webkit moz", 3346 "padding-start": "webkit moz", 3347 "tab-size": "moz o", 3348 "text-size-adjust": "webkit ms", 3349 transform: "webkit moz ms o", 3350 "transform-origin": "webkit moz ms o", 3351 transition: "webkit moz o", 3352 "transition-delay": "webkit moz o", 3353 "transition-duration": "webkit moz o", 3354 "transition-property": "webkit moz o", 3355 "transition-timing-function": "webkit moz o", 3356 "user-modify": "webkit moz", 3357 "user-select": "webkit moz ms", 3358 "word-break": "epub ms", 3359 "writing-mode": "epub ms" 3360 }; 3361 for (s in r) if (r.hasOwnProperty(s)) { 3362 o = [], u = r[s].split(" "); 3363 for (a = 0, f = u.length; a < f; a++) o.push("-" + u[a] + "-" + s); 3364 r[s] = o, c.apply(h, o) 3365 } 3366 e.addListener("startrule", function () { 3367 i = [] 3368 }), e.addListener("startkeyframes", function (e) { 3369 l = e.prefix || !0 3370 }), e.addListener("endkeyframes", function () { 3371 l = !1 3372 }), e.addListener("property", function (e) { 3373 var t = e.property; 3374 CSSLint.Util.indexOf(h, t.text) > -1 && (!l || typeof l != "string" || t.text.indexOf("-" + l + "-") !== 0) && i.push(t) 3375 }), e.addListener("endrule", function () { 3376 if (!i.length) return; 3377 var e = {}, s, o, u, a, f, l, c, h, p, d; 3378 for (s = 0, o = i.length; s < o; s++) { 3379 u = i[s]; 3380 for (a in r) r.hasOwnProperty(a) && (f = r[a], CSSLint.Util.indexOf(f, u.text) > -1 && (e[a] || (e[a] = { 3381 full: f.slice(0), 3382 actual: [], 3383 actualNodes: [] 3384 }), CSSLint.Util.indexOf(e[a].actual, u.text) === -1 && (e[a].actual.push(u.text), e[a].actualNodes.push(u)))) 3385 } 3386 for (a in e) if (e.hasOwnProperty(a)) { 3387 l = e[a], c = l.full, h = l.actual; 3388 if (c.length > h.length) for (s = 0, o = c.length; s < o; s++) p = c[s], CSSLint.Util.indexOf(h, p) === -1 && (d = h.length === 1 ? h[0] : h.length === 2 ? h.join(" and ") : h.join(", "), t.report("The property " + p + " is compatible with " + d + " and should be included as well.", l.actualNodes[0].line, l.actualNodes[0].c
3388ol, n)) 3389 } 3390 }) 3391 } 3392 }), CSSLint.addRule({ 3393 id: "display-property-grouping", 3394 name: "Require properties appropriate for display", 3395 desc: "Certain properties shouldn't be used with certain display property values.", 3396 browsers: "All", 3397 init: function (e, t) { 3398 function s(e, s, o) { 3399 i[e] && (typeof r[e] != "string" || i[e].value.toLowerCase() !== r[e]) && t.report(o || e + " can't be used with display: " + s + ".", i[e].line, i[e].col, n) 3400 } 3401 3402 function o() { 3403 i = {} 3404 } 3405 3406 function u() { 3407 var e = i.display ? i.display.value : null; 3408 if (e) switch (e) { 3409 case"inline": 3410 s("height", e), s("width", e), s("margin", e), s("margin-top", e), s("margin-bottom", e), s("float", e, "display:inline has no effect on floated elements (but may be used to fix the IE6 double-margin bug)."); 3411 break; 3412 case"block": 3413 s("vertical-align", e); 3414 break; 3415 case"inline-block": 3416 s("float", e); 3417 break; 3418 default: 3419 e.indexOf("table-") === 0 && (s("margin", e), s("margin-left", e), s("margin-right", e), s("margin-top", e), s("margin-bottom", e), s("float", e)) 3420 } 3421 } 3422 3423 var n = this, r = { 3424 display: 1, 3425 "float": "none", 3426 height: 1, 3427 width: 1, 3428 margin: 1, 3429 "margin-left": 1, 3430 "margin-right": 1, 3431 "margin-bottom": 1, 3432 "margin-top": 1, 3433 padding: 1, 3434 "padding-left": 1, 3435 "padding-right": 1, 3436 "padding-bottom": 1, 3437 "padding-top": 1, 3438 "vertical-align": 1 3439 }, i; 3440 e.addListener("startrule", o), e.addListener("startfontface", o), e.addListener("startkeyframerule", o), e.addListener("startpagemargin", o), e.addListener("startpage", o), e.addListener("property", function (e) { 3441 var t = e.property.text.toLowerCase(); 3442 r[t] && (i[t] = {value: e.value.text, line: e.property.line, col: e.property.col}) 3443 }), e.addListener("endrule", u), e.addListener("endfontface", u), e.addListener("endkeyframerule", u), e.addListener("endpagemargin", u), e.addListener("endpage", u) 3444 } 3445 }), CSSLint.addRule({ 3446 id: "duplicate-background-images", 3447 name: "Disallow duplicate background images", 3448 desc: "Every background-image should be unique. Use a common class for e.g. sprites.", 3449 browsers: "All", 3450 init: function (e, t) { 3451 var n = this, r = {}; 3452 e.addListener("property", function (e) { 3453 var i = e.property.text, s = e.value, o, u; 3454 if (i.match(/background/i)) for (o = 0, u = s.parts.length; o < u; o++) s.parts[o].type === "uri" && (typeof r[s.parts[o].uri] == "undefined" ? r[s.parts[o].uri] = e : t.report("Background image '" + s.parts[o].uri + "' was used multiple times, first declared at line " + r[s.parts[o].uri].line + ", col " + r[s.parts[o].uri].col + ".", e.line, e.col, n)) 3455 }) 3456 } 3457 }), CSSLint.addRule({ 3458 id: "duplicate-properties", 3459 name: "Disallow duplicate properties", 3460 desc: "Duplicate properties must appear one after the other.", 3461 browsers: "All", 3462 init: function (e, t) { 3463 function s() { 3464 r = {} 3465 } 3466 3467 var n = this, r, i; 3468 e.addListener("startrule", s), e.addListener("startfontface", s), e.addListener("startpage", s), e.addListener("startpagemargin", s), e.addListener("startkeyframerule", s), e.addListener("property", function (e) { 3469 var s = e.property, o = s.text.toLowerCase(); 3470 r[o] && (i !== o || r[o] === e.value.text) && t.report("Duplicate property '" + e.property + "' found.", e.line, e.col, n), r[o] = e.value.text, i = o 3471 }) 3472 } 3473 }), CSSLint.addRule({ 3474 id: "empty-rules", 3475 name: "Disallow empty rules", 3476 desc: "Rules without any properties specified should be removed.", 3477 browsers: "All", 3478 init: function (e, t) { 3479 var n = this, r = 0; 3480 e.addListener("startrule", function () { 3481 r = 0 3482 }), e.addListener("property", function () { 3483 r++ 3484 }), e.addListener("endrule", function (e) { 3485 var i = e.selectors; 3486 r === 0 && t.report("Rule is empty.", i[0].line, i[0].col, n) 3487 }) 3488 } 3489 }), CSSLint.addRule({ 3490 id: "errors", 3491 name: "Parsing Errors", 3492 desc: "This rule looks for recoverable syntax errors.", 3493 browsers: "All", 3494 init: function (e, t) { 3495 var n = this; 3496 e.addListener("error", function (e) { 3497 t.error(e.message, e.line, e.col, n) 3498 }) 3499 } 3500 }), CSSLint.addRule({ 3501 id: "fallback-colors", 3502 name: "Require fallback colors", 3503 desc: "For older browsers that don't support RGBA, HSL, or HSLA, provide a fallback color.", 3504 browsers: "IE6,IE7,IE8", 3505 init: function (e, t) { 3506 function o() { 3507 s = {}, r = null 3508 } 3509 3510 var n = this, r, i = { 3511 color: 1, 3512 background: 1, 3513 "border-color": 1, 3514 "border-top-color": 1, 3515 "border-right-color": 1, 3516 "border-bottom-color": 1, 3517 "border-left-color": 1, 3518 border: 1, 3519 "border-top": 1, 3520 "border-right": 1, 3521 "border-bottom": 1, 3522 "border-left": 1, 3523 "background-color": 1 3524 }, s; 3525 e.addListener("startrule", o), e.addListener("startfontface", o), e.addListener("startpage", o), e.addListener("startpagemargin", o), e.addListener("startkeyframerule", o), e.addListener("property", function (e) { 3526 var s = e.property, o = s.text.toLowerCase(), u = e.value.parts, a = 0, f = "", l = u.length; 3527 if (i[o]) while (a < l) u[a].type === "color" && ("alpha" in u[a] || "hue" in u[a] ? (/([^\)]+)\(/.test(u[a]) && (f = RegExp.$1.toUpperCase()), (!r || r.property.text.toLowerCase() !== o || r.colorType !== "compat") && t.report("Fallback " + o + " (hex or RGB) should precede " + f + " " + o + ".", e.line, e.col, n)) : e.colorType = "compat"), a++; 3528 r = e 3529 }) 3530 } 3531 }), CSSLint.addRule({ 3532 id: "floats", 3533 name: "Disallow too many floats", 3534 desc: "This rule tests if the float property is used too many times", 3535 browsers: "All", 3536 init: function (e, t) { 3537 var n = this, r = 0; 3538 e.addListener("property", function (e) { 3539 e.property.text.toLowerCase() === "float" && e.value.text.toLowerCase() !== "none" && r++ 3540 }), e.addListener("endstylesheet", function () { 3541 t.stat("floats", r), r >= 10 && t.rollupWarn("Too many floats (" + r + "), you're probably using them for layout. Consider using a grid system instead.", n) 3542 }) 3543 } 3544 }), CSSLint.addRule({ 3545 id: "font-faces", 3546 name: "Don't use too many web fonts", 3547 desc: "Too many different web fonts in the same stylesheet.", 3548 browsers: "All", 3549 init: function (e, t) { 3550 var n = this, r = 0; 3551 e.addListener("startfontface", function () { 3552 r++ 3553 }), e.addListener("endstylesheet", function () { 3554 r > 5 && t.rollupWarn("Too many @font-face declarations (" + r + ").", n) 3555 }) 3556 } 3557 }), CSSLint.addRule({ 3558 id: "font-sizes", 3559 name: "Disallow too many font sizes", 3560 desc: "Checks the number of font-size declarations.", 3561 browsers: "All", 3562 init: function (e, t) { 3563 var n = this, r = 0; 3564 e.addListener("property", function (e) { 3565 e.property.toString() === "font-size" && r++ 3566 }), e.addListener("endstylesheet", function () { 3567 t.stat("font-sizes", r), r >= 10 && t.rollupWarn("Too many font-size declarations (" + r + "), abstraction needed.", n) 3568 }) 3569 } 3570 }), CSSLint.addRule({ 3571 id: "gradients", 3572 name: "Require all gradient definitions", 3573 desc: "When using a vendor-prefixed gradient, make sure to use them all.", 3574 browsers: "All", 3575 init: function (e, t) { 3576 var n = this, r; 3577 e.addListener("startrule", function () { 3578 r = {moz: 0, webkit: 0, oldWebkit: 0, o: 0} 3579 }), e.addListener("property", function (e) { 3580 /\-(moz|o|webkit)(?:\-(?:linear|radial))\-gradient/i.test(e.value) ? r[RegExp.$1] = 1 : /\-webkit\-gradient/i.test(e.value) && (r.oldWebkit = 1) 3581 }), e.addListener("endrule", function (e) { 3582 var i = []; 3583 r.moz || i.push("Firefox 3.6+"), r.webkit || i.push("Webkit (Safari 5+, Chrome)"), r.oldWebkit || i.push("Old Webkit (Safari 4+, Chrome)"), r.o || i.push("Opera 11.1+"), i.length && i.length < 4 && t.report("Missing vendor-prefixed CSS gradients for " + i.join(", ") + ".", e.selectors[0].line, e.selectors[0].col, n) 3584 }) 3585 } 3586 }), CSSLint.addRule({ 3587 id: "ids", 3588 name: "Disallow IDs in selectors", 3589 desc: "Selectors should not contain IDs.", 3590 browsers: "All", 3591 init: function (e, t) { 3592 var n = this; 3593 e.addListener("startrule", function (r) { 3594 var i = r.selectors, s, o, u, a, f, l, c; 3595 for (f = 0; f < i.length; f++) { 3596 s = i[f], a = 0; 3597 for (l = 0; l < s.parts.length; l++) { 3598 o = s.parts[l]; 3599 if (o.type === e.SELECTOR_PART_TYPE) for (c = 0; c < o.modifiers.length; c++) u = o.modifiers[c], u.type === "id" && a++ 3600 } 3601 a === 1 ? t.report("Don't use IDs in selectors.", s.line, s.c
3601ol, n) : a > 1 && t.report(a + " IDs in the selector, really?", s.line, s.col, n) 3602 } 3603 }) 3604 } 3605 }), CSSLint.addRule({ 3606 id: "import", 3607 name: "Disallow @import", 3608 desc: "Don't use @import, use <link> instead.", 3609 browsers: "All", 3610 init: function (e, t) { 3611 var n = this; 3612 e.addListener("import", function (e) { 3613 t.report("@import prevents parallel downloads, use <link> instead.", e.line, e.col, n) 3614 }) 3615 } 3616 }), CSSLint.addRule({ 3617 id: "important", 3618 name: "Disallow !important", 3619 desc: "Be careful when using !important declaration", 3620 browsers: "All", 3621 init: function (e, t) { 3622 var n = this, r = 0; 3623 e.addListener("property", function (e) { 3624 e.important === !0 && (r++, t.report("Use of !important", e.line, e.col, n)) 3625 }), e.addListener("endstylesheet", function () { 3626 t.stat("important", r), r >= 10 && t.rollupWarn("Too many !important declarations (" + r + "), try to use less than 10 to avoid specificity issues.", n) 3627 }) 3628 } 3629 }), CSSLint.addRule({ 3630 id: "known-properties", 3631 name: "Require use of known properties", 3632 desc: "Properties should be known (listed in CSS3 specification) or be a vendor-prefixed property.", 3633 browsers: "All", 3634 init: function (e, t) { 3635 var n = this; 3636 e.addListener("property", function (e) { 3637 e.invalid && t.report(e.invalid.message, e.line, e.col, n) 3638 }) 3639 } 3640 }), CSSLint.addRule({ 3641 id: "order-alphabetical", 3642 name: "Alphabetical order", 3643 desc: "Assure properties are in alphabetical order", 3644 browsers: "All", 3645 init: function (e, t) { 3646 var n = this, r, i = function () { 3647 r = [] 3648 }; 3649 e.addListener("startrule", i), e.addListener("startfontface", i), e.addListener("startpage", i), e.addListener("startpagemargin", i), e.addListener("startkeyframerule", i), e.addListener("property", function (e) { 3650 var t = e.property.text, n = t.toLowerCase().replace(/^-.*?-/, ""); 3651 r.push(n) 3652 }), e.addListener("endrule", function (e) { 3653 var i = r.join(","), s = r.sort().join(","); 3654 i !== s && t.report("Rule doesn't have all its properties in alphabetical ordered.", e.line, e.col, n) 3655 }) 3656 } 3657 }), CSSLint.addRule({ 3658 id: "outline-none", 3659 name: "Disallow outline: none", 3660 desc: "Use of outline: none or outline: 0 should be limited to :focus rules.", 3661 browsers: "All", 3662 tags: ["Accessibility"], 3663 init: function (e, t) { 3664 function i(e) { 3665 e.selectors ? r = { 3666 line: e.line, 3667 col: e.col, 3668 selectors: e.selectors, 3669 propCount: 0, 3670 outline: !1 3671 } : r = null 3672 } 3673 3674 function s() { 3675 r && r.outline && (r.selectors.toString().toLowerCase().indexOf(":focus") === -1 ? t.report("Outlines should only be modified using :focus.", r.line, r.col, n) : r.propCount === 1 && t.report("Outlines shouldn't be hidden unless other visual changes are made.", r.line, r.col, n)) 3676 } 3677 3678 var n = this, r; 3679 e.addListener("startrule", i), e.addListener("startfontface", i), e.addListener("startpage", i), e.addListener("startpagemargin", i), e.addListener("startkeyframerule", i), e.addListener("property", function (e) { 3680 var t = e.property.text.toLowerCase(), n = e.value; 3681 r && (r.propCount++, t === "outline" && (n.toString() === "none" || n.toString() === "0") && (r.outline = !0)) 3682 }), e.addListener("endrule", s), e.addListener("endfontface", s), e.addListener("endpage", s), e.addListener("endpagemargin", s), e.addListener("endkeyframerule", s) 3683 } 3684 }), CSSLint.addRule({ 3685 id: "overqualified-elements", 3686 name: "Disallow overqualified elements", 3687 desc: "Don't use classes or IDs with elements (a.foo or a#foo).", 3688 browsers: "All", 3689 init: function (e, t) { 3690 var n = this, r = {}; 3691 e.addListener("startrule", function (i) { 3692 var s = i.selectors, o, u, a, f, l, c; 3693 for (f = 0; f < s.length; f++) { 3694 o = s[f]; 3695 for (l = 0; l < o.parts.length; l++) { 3696 u = o.parts[l]; 3697 if (u.type === e.SELECTOR_PART_TYPE) for (c = 0; c < u.modifiers.length; c++) a = u.modifiers[c], u.elementName && a.type === "id" ? t.report("Element (" + u + ") is overqualified, just use " + a + " without element name.", u.line, u.col, n) : a.type === "class" && (r[a] || (r[a
3697] = []), r[a].push({ 3698 modifier: a, 3699 part: u 3700 })) 3701 } 3702 } 3703 }), e.addListener("endstylesheet", function () { 3704 var e; 3705 for (e in r) r.hasOwnProperty(e) && r[e].length === 1 && r[e][0].part.elementName && t.report("Element (" + r[e][0].part + ") is overqualified, just use " + r[e][0].modifier + " without element name.", r[e][0].part.line, r[e][0].part.col, n) 3706 }) 3707 } 3708 }), CSSLint.addRule({ 3709 id: "qualified-headings", 3710 name: "Disallow qualified headings", 3711 desc: "Headings should not be qualified (namespaced).", 3712 browsers: "All", 3713 init: function (e, t) { 3714 var n = this; 3715 e.addListener("startrule", function (r) { 3716 var i = r.selectors, s, o, u, a; 3717 for (u = 0; u < i.length; u++) { 3718 s = i[u]; 3719 for (a = 0; a < s.parts.length; a++) o = s.parts[a], o.type === e.SELECTOR_PART_TYPE && o.elementName && /h[1-6]/.test(o.elementName.toString()) && a > 0 && t.report("Heading (" + o.elementName + ") should not be qualified.", o.line, o.col, n) 3720 } 3721 }) 3722 } 3723 }), CSSLint.addRule({ 3724 id: "regex-selectors", 3725 name: "Disallow selectors that look like regexs", 3726 desc: "Selectors that look like regular expressions are slow and should be avoided.", 3727 browsers: "All", 3728 init: function (e, t) { 3729 var n = this; 3730 e.addListener("startrule", function (r) { 3731 var i = r.selectors, s, o, u, a, f, l; 3732 for (a = 0; a < i.length; a++) { 3733 s = i[a]; 3734 for (f = 0; f < s.parts.length; f++) { 3735 o = s.parts[f]; 3736 if (o.type === e.SELECTOR_PART_TYPE) for (l = 0; l < o.modifiers.length; l++) u = o.modifiers[l], u.type === "attribute" && /([\~\|\^\$\*]=)/.test(u) && t.report("Attribute selectors with " + RegExp.$1 + " are slow!", u.line, u.col, n) 3737 } 3738 } 3739 }) 3740 } 3741 }), CSSLint.addRule({ 3742 id: "rules-count", 3743 name: "Rules Count", 3744 desc: "Track how many rules there are.", 3745 browsers: "All", 3746 init: function (e, t) { 3747 var n = 0; 3748 e.addListener("startrule", function () { 3749 n++ 3750 }), e.addListener("endstylesheet", function () { 3751 t.stat("rule-count", n) 3752 }) 3753 } 3754 }), CSSLint.addRule({ 3755 id: "selector-max-approaching", 3756 name: "Warn when approaching the 4095 selector limit for IE", 3757 desc: "Will warn when selector count is >= 3800 selectors.", 3758 browsers: "IE", 3759 init: function (e, t) { 3760 var n = this, r = 0; 3761 e.addListener("startrule", function (e) { 3762 r += e.selectors.length 3763 }), e.addListener("endstylesheet", function () { 3764 r >= 3800 && t.report("You have " + r + " selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.", 0, 0, n) 3765 }) 3766 } 3767 }), CSSLint.addRule({ 3768 id: "selector-max", 3769 name: "Error when past the 4095 selector limit for IE", 3770 desc: "Will error when selector count is > 4095.", 3771 browsers: "IE", 3772 init: function (e, t) { 3773 var n = this, r = 0; 3774 e.addListener("startrule", function (e) { 3775 r += e.selectors.length 3776 }), e.addListener("endstylesheet", function () { 3777 r > 4095 && t.report("You have " + r + " selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.", 0, 0, n) 3778 }) 3779 } 3780 }), CSSLint.addRule({ 3781 id: "selector-newline", 3782 name: "Disallow new-line characters in selectors", 3783 desc: "New-line characters in selectors are usually a forgotten comma and not a descendant combinator.", 3784 browsers: "All", 3785 init: function (e, t) { 3786 function r(e) { 3787 var r, i, s, o, u, a, f, l, c, h, p, d = e.selectors; 3788 for (r = 0, i = d.length; r < i; r++) { 3789 s = d[r]; 3790 for (o = 0, a = s.parts.length; o < a; o++) for (u = o + 1; u < a; u++) f = s.parts[o], l = s.parts[u], c = f.type, h = f.line, p = l.line, c === "descendant" && p > h && t.report("newline character found in selector (forgot a comma?)", h, d[r].parts[0].c
3790ol, n) 3791 } 3792 } 3793 3794 var n = this; 3795 e.addListener("startrule", r) 3796 } 3797 }), CSSLint.addRule({ 3798 id: "shorthand", 3799 name: "Require shorthand properties", 3800 desc: "Use shorthand properties where possible.", 3801 browsers: "All", 3802 init: function (e, t) { 3803 function f() { 3804 u = {} 3805 } 3806 3807 function l(e) { 3808 var r, i, s, o; 3809 for (r in a) if (a.hasOwnProperty(r)) { 3810 o = 0; 3811 for (i = 0, s = a[r].length; i < s; i++) o += u[a[r][i]] ? 1 : 0; 3812 o === a[r].length && t.report("The properties " + a[r].join(", ") + " can be replaced by " + r + ".", e.line, e.col, n) 3813 } 3814 } 3815 3816 var n = this, r, i, s, o = {}, u, a = { 3817 margin: ["margin-top", "margin-bottom", "margin-left", "margin-right"], 3818 padding: ["padding-top", "padding-bottom", "padding-left", "padding-right"] 3819 }; 3820 for (r in a) if (a.hasOwnProperty(r)) for (i = 0, s = a[r].length; i < s; i++) o[a[r][i]] = r; 3821 e.addListener("startrule", f), e.addListener("startfontface", f), e.addListener("property", function (e) { 3822 var t = e.property.toString().toLowerCase(); 3823 o[t] && (u[t] = 1) 3824 }), e.addListener("endrule", l), e.addListener("endfontface", l) 3825 } 3826 }), CSSLint.addRule({ 3827 id: "star-property-hack", 3828 name: "Disallow properties with a star prefix", 3829 desc: "Checks for the star property hack (targets IE6/7)", 3830 browsers: "All", 3831 init: function (e, t) { 3832 var n = this; 3833 e.addListener("property", function (e) { 3834 var r = e.property; 3835 r.hack === "*" && t.report("Property with star prefix found.", e.property.line, e.property.col, n) 3836 }) 3837 } 3838 }), CSSLint.addRule({ 3839 id: "text-indent", 3840 name: "Disallow negative text-indent", 3841 desc: "Checks for text indent less than -99px", 3842 browsers: "All", 3843 init: function (e, t) { 3844 function s() { 3845 r = !1, i = "inherit" 3846 } 3847 3848 function o() { 3849 r && i !== "ltr" && t.report("Negative text-indent doesn't work well with RTL. If you use text-indent for image replacement explicitly set direction for that item to ltr.", r.line, r.col, n) 3850 } 3851 3852 var n = this, r, i; 3853 e.addListener("startrule", s), e.addListener("startfontface", s), e.addListener("property", function (e) { 3854 var t = e.property.toString().toLowerCase(), n = e.value; 3855 t === "text-indent" && n.parts[0].value < -99 ? r = e.property : t === "direction" && n.toString() === "ltr" && (i = "ltr") 3856 }), e.addListener("endrule", o), e.addListener("endfontface", o) 3857 } 3858 }), CSSLint.addRule({ 3859 id: "underscore-property-hack", 3860 name: "Disallow properties with an underscore prefix", 3861 desc: "Checks for the underscore property hack (targets IE6)", 3862 browsers: "All", 3863 init: function (e, t) { 3864 var n = this; 3865 e.addListener("property", function (e) { 3866 var r = e.property; 3867 r.hack === "_" && t.report("Property with underscore prefix found.", e.property.line, e.property.col, n) 3868 }) 3869 } 3870 }), CSSLint.addRule({ 3871 id: "unique-headings", 3872 name: "Headings should only be defined once", 3873 desc: "Headings should be defined only once.", 3874 browsers: "All", 3875 init: function (e, t) { 3876 var n = this, r = {h1: 0, h2: 0, h3: 0, h4: 0, h5: 0, h6: 0}; 3877 e.addListener("startrule", function (e) { 3878 var i = e.selectors, s, o, u, a, f; 3879 for (a = 0; a < i.length; a++) { 3880 s = i[a], o = s.parts[s.parts.length - 1]; 3881 if (o.elementName && /(h[1-6])/i.test(o.elementName.toString())) { 3882 for (f = 0; f < o.modifiers.length; f++) if (o.modifiers[f].type === "pseudo") { 3883 u = !0; 3884 break 3885 } 3886 u || (r[RegExp.$1]++, r[RegExp.$1] > 1 && t.report("Heading (" + o.elementName + ") has already been defined.", o.line, o.col, n)) 3887 } 3888 } 3889 }), e.addListener("endstylesheet", function () { 3890 var e, i = []; 3891 for (e in r) r.hasOwnProperty(e) && r[e] > 1 && i.push(r[e] + " " + e + "s"); 3892 i.length && t.rollupWarn("You have " + i.join(", ") + " defined in this stylesheet.", n) 3893 }) 3894 } 3895 }), CSSLint.addRule({ 3896 id: "universal-selector", 3897 name: "Disallow universal selector", 3898 desc: "The universal selector (*) is known to be slow.", 3899 browsers: "All", 3900 init: function (e, t) { 3901 var n = this; 3902 e.addListener("startrule", function (e) { 3903 var r = e.selectors, i, s, o; 3904 for (o = 0; o < r.length; o++) i = r[o], s = i.parts[i.parts.length - 1], s.elementName === "*" && t.report(n.desc, s.line, s.c
3904ol, n) 3905 }) 3906 } 3907 }), CSSLint.addRule({ 3908 id: "unqualified-attributes", 3909 name: "Disallow unqualified attribute selectors", 3910 desc: "Unqualified attribute selectors are known to be slow.", 3911 browsers: "All", 3912 init: function (e, t) { 3913 var n = this; 3914 e.addListener("startrule", function (r) { 3915 var i = r.selectors, s, o, u, a, f; 3916 for (a = 0; a < i.length; a++) { 3917 s = i[a], o = s.parts[s.parts.length - 1]; 3918 if (o.type === e.SELECTOR_PART_TYPE) for (f = 0; f < o.modifiers.length; f++) u = o.modifiers[f], u.type === "attribute" && (!o.elementName || o.elementName === "*") && t.report(n.desc, o.line, o.col, n) 3919 } 3920 }) 3921 } 3922 }), CSSLint.addRule({ 3923 id: "vendor-prefix", 3924 name: "Require standard property with vendor prefix", 3925 desc: "When using a vendor-prefixed property, make sure to include the standard one.", 3926 browsers: "All", 3927 init: function (e, t) { 3928 function o() { 3929 r = {}, i = 1 3930 } 3931 3932 function u() { 3933 var e, i, o, u, a, f = []; 3934 for (e in r) s[e] && f.push({actual: e, needed: s[e]}); 3935 for (i = 0, o = f.length; i < o; i++) u = f[i].needed, a = f[i].actual, r[u] ? r[u][0].pos < r[a][0].pos && t.report("Standard property '" + u + "' should come after vendor-prefixed property '" + a + "'.", r[a][0].name.line, r[a][0].name.col, n) : t.report("Missing standard property '" + u + "' to go along with '" + a + "'.", r[a][0].name.line, r[a][0].name.col, n) 3936 } 3937 3938 var n = this, r, i, s = { 3939 "-webkit-border-radius": "border-radius", 3940 "-webkit-border-top-left-radius": "border-top-left-radius", 3941 "-webkit-border-top-right-radius": "border-top-right-radius", 3942 "-webkit-border-bottom-left-radius": "border-bottom-left-radius", 3943 "-webkit-border-bottom-right-radius": "border-bottom-right-radius", 3944 "-o-border-radius": "border-radius", 3945 "-o-border-top-left-radius": "border-top-left-radius", 3946 "-o-border-top-right-radius": "border-top-right-radius", 3947 "-o-border-bottom-left-radius": "border-bottom-left-radius", 3948 "-o-border-bottom-right-radius": "border-bottom-right-radius", 3949 "-moz-border-radius": "border-radius", 3950 "-moz-border-radius-topleft": "border-top-left-radius", 3951 "-moz-border-radius-topright": "border-top-right-radius", 3952 "-moz-border-radius-bottomleft": "border-bottom-left-radius", 3953 "-moz-border-radius-bottomright": "border-bottom-right-radius", 3954 "-moz-column-count": "column-count", 3955 "-webkit-column-count": "column-count", 3956 "-moz-column-gap": "column-gap", 3957 "-webkit-column-gap": "column-gap", 3958 "-moz-column-rule": "column-rule", 3959 "-webkit-column-rule": "column-rule", 3960 "-moz-column-rule-style": "column-rule-style", 3961 "-webkit-column-rule-style": "column-rule-style", 3962 "-moz-column-rule-color": "column-rule-color", 3963 "-webkit-column-rule-color": "column-rule-color", 3964 "-moz-column-rule-width": "column-rule-width", 3965 "-webkit-column-rule-width": "column-rule-width", 3966 "-moz-column-width": "column-width", 3967 "-webkit-column-width": "column-width", 3968 "-webkit-column-span": "column-span", 3969 "-webkit-columns": "columns", 3970 "-moz-box-shadow": "box-shadow", 3971 "-webkit-box-shadow": "box-shadow", 3972 "-moz-transform": "transform", 3973 "-webkit-transform": "transform", 3974 "-o-transform": "transform", 3975 "-ms-transform": "transform", 3976 "-moz-transform-origin": "transform-origin", 3977 "-webkit-transform-origin": "transform-origin", 3978 "-o-transform-origin": "transform-origin", 3979 "-ms-transform-origin": "transform-origin", 3980 "-moz-box-sizing": "box-sizing", 3981 "-webkit-box-sizing": "box-sizing" 3982 }; 3983 e.addListener("startrule", o), e.addListener("startfontface", o), e.addListener("startpage", o), e.addListener("startpagemargin", o), e.addListener("startkeyframerule", o), e.addListener("property", function (e) { 3984 var t = e.property.text.toLowerCase(); 3985 r[t] || (r[t] = []), r[t].push({name: e.property, value: e.value, pos: i++}) 3986 }), e.addListener("endrule", u), e.addListener("endfontface", u), e.addListener("endpage", u), e.addListener("endpagemargin", u), e.addListener("endkeyframerule", u) 3987 } 3988 }), CSSLint.addRule({ 3989 id: "zero-units", 3990 name: "Disallow units for 0 values", 3991 desc: "You don't need to specify units when a value is 0.", 3992 browsers: "All", 3993 init: function (e, t) { 3994 var n = this; 3995 e.addListener("property", function (e) { 3996 var r = e.value.parts, i = 0, s = r.length; 3997 while (i < s) (r[i].units || r[i].type === "percentage") && r[i].value === 0 && r[i].type !== "time" && t.report("Values of 0 shouldn't have units specified.", r[i].line, r[i].c
3997ol, n), i++ 3998 }) 3999 } 4000 }), function () { 4001 var e = function (e) { 4002 return !e || e.constructor !== String ? "" : e.replace(/[\"&><]/g, function (e) { 4003 switch (e) { 4004 case'"': 4005 return """; 4006 case"&": 4007 return "&"; 4008 case"<": 4009 return "<"; 4010 case">": 4011 return ">" 4012 } 4013 }) 4014 }; 4015 CSSLint.addFormatter({ 4016 id: "checkstyle-xml", name: "Checkstyle XML format", startFormat: function () { 4017 return '<?xml version="1.0" encoding="utf-8"?><checkstyle>' 4018 }, endFormat: function () { 4019 return "</checkstyle>" 4020 }, readError: function (t, n) { 4021 return '<file name="' + e(t) + '"><error line="0" column="0" severty="error" message="' + e(n) + '"></error></file>' 4022 }, formatResults: function (t, n) { 4023 var r = t.messages, i = [], s = function (e) { 4024 return !!e && "name" in e ? "net.csslint." + e.name.replace(/\s/g, "") : "" 4025 }; 4026 return r.length > 0 && (i.push('<file name="' + n + '">'), CSSLint.Util.forEach(r, function (t) { 4027 t.rollup || i.push('<error line="' + t.line + '" column="' + t.col + '" severity="' + t.type + '"' + ' message="' + e(t.message) + '" source="' + s(t.rule) + '"/>') 4028 }), i.push("</file>")), i.join("") 4029 } 4030 }) 4031 }(), CSSLint.addFormatter({ 4032 id: "compact", name: "Compact, 'porcelain' format", startFormat: function () { 4033 return "" 4034 }, endFormat: function () { 4035 return "" 4036 }, formatResults: function (e, t, n) { 4037 var r = e.messages, i = ""; 4038 n = n || {}; 4039 var s = function (e) { 4040 return e.charAt(0).toUpperCase() + e.slice(1) 4041 }; 4042 return r.length === 0 ? n.quiet ? "" : t + ": Lint Free!" : (CSSLint.Util.forEach(r, function (e) { 4043 e.rollup ? i += t + ": " + s(e.type) + " - " + e.message + "\n" : i += t + ": " + "line " + e.line + ", col " + e.col + ", " + s(e.type) + " - " + e.message + " (" + e.rule.id + ")\n" 4044 }), i) 4045 } 4046 }), CSSLint.addFormatter({ 4047 id: "csslint-xml", name: "CSSLint XML format", startFormat: function () { 4048 return '<?xml version="1.0" encoding="utf-8"?><csslint>' 4049 }, endFormat: function () { 4050 return "</csslint>" 4051 }, formatResults: function (e, t) { 4052 var n = e.messages, r = [], i = function (e) { 4053 return !e || e.constructor !== String ? "" : e.replace(/\"/g, "'").replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">") 4054 }; 4055 return n.length > 0 && (r.push('<file name="' + t + '">'), CSSLint.Util.forEach(n, function (e) { 4056 e.rollup ? r.push('<issue severity="' + e.type + '" reason="' + i(e.message) + '" evidence="' + i(e.evidence) + '"/>') : r.push('<issue line="' + e.line + '" char="' + e.col + '" severity="' + e.type + '"' + ' reason="' + i(e.message) + '" evidence="' + i(e.evidence) + '"/>') 4057 }), r.push("</file>")), r.join("") 4058 } 4059 }), CSSLint.addFormatter({ 4060 id: "junit-xml", name: "JUNIT XML format", startFormat: function () { 4061 return '<?xml version="1.0" encoding="utf-8"?><testsuites>' 4062 }, endFormat: function () { 4063 return "</testsuites>" 4064 }, formatResults: function (e, t) { 4065 var n = e.messages, r = [], i = {error: 0, failure: 0}, s = function (e) { 4066 return !!e && "name" in e ? "net.csslint." + e.name.replace(/\s/g, "") : "" 4067 }, o = function (e) { 4068 return !e || e.constructor !== String ? "" : e.replace(/\"/g, "'").replace(/</g, "<").replace(/>/g, ">") 4069 }; 4070 return n.length > 0 && (n.forEach(function (e) { 4071 var t = e.type === "warning" ? "error" : e.type; 4072 e.rollup || (r.push('<testcase time="0" name="' + s(e.rule) + '">'), r.push("<" + t + ' message="' + o(e.message) + '"><![CDATA[' + e.line + ":" + e.col + ":" + o(e.evidence) + "]]></" + t + ">"), r.push("</testcase>"), i[t] += 1) 4073 }), r.unshift('<testsuite time="0" tests="' + n.length + '" skipped="0" errors="' + i.error + '" failures="' + i.failure + '" package="net.csslint" name="' + t + '">'), r.push("</testsuite>
4073")), r.join("") 4074 } 4075 }), CSSLint.addFormatter({ 4076 id: "lint-xml", name: "Lint XML format", startFormat: function () { 4077 return '<?xml version="1.0" encoding="utf-8"?><lint>' 4078 }, endFormat: function () { 4079 return "</lint>" 4080 }, formatResults: function (e, t) { 4081 var n = e.messages, r = [], i = function (e) { 4082 return !e || e.constructor !== String ? "" : e.replace(/\"/g, "'").replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">") 4083 }; 4084 return n.length > 0 && (r.push('<file name="' + t + '">'), CSSLint.Util.forEach(n, function (e) { 4085 e.rollup ? r.push('<issue severity="' + e.type + '" reason="' + i(e.message) + '" evidence="' + i(e.evidence) + '"/>') : r.push('<issue line="' + e.line + '" char="' + e.col + '" severity="' + e.type + '"' + ' reason="' + i(e.message) + '" evidence="' + i(e.evidence) + '"/>') 4086 }), r.push("</file>")), r.join("") 4087 } 4088 }), CSSLint.addFormatter({ 4089 id: "text", name: "Plain Text", startFormat: function () { 4090 return "" 4091 }, endFormat: function () { 4092 return "" 4093 }, formatResults: function (e, t, n) { 4094 var r = e.messages, i = ""; 4095 n = n || {}; 4096 if (r.length === 0) return n.quiet ? "" : "\n\ncsslint: No errors in " + t + "."; 4097 i = "\n\ncsslint: There ", r.length === 1 ? i += "is 1 problem" : i += "are " + r.length + " problems", i += " in " + t + "."; 4098 var s = t.lastIndexOf("/"), o = t; 4099 return s === -1 && (s = t.lastIndexOf("\\")), s > -1 && (o = t.substring(s + 1)), CSSLint.Util.forEach(r, function (e, t) { 4100 i = i + "\n\n" + o, e.rollup ? (i += "\n" + (t + 1) + ": " + e.type, i += "\n" + e.message) : (i += "\n" + (t + 1) + ": " + e.type + " at line " + e.line + ", col " + e.col, i += "\n" + e.message, i += "\n" + e.evidence) 4101 }), i 4102 } 4103 }), module.exports.CSSLint = CSSLint 4104}), define("ace/mode/css_worker", [], function (e, t, n) { 4105 "use strict"; 4106 var r = e("../lib/oop"), i = e("../lib/lang"), s = e("../worker/mirror").Mirror, o = e("./css/csslint").CSSLint, 4107 u = t.Worker = function (e) { 4108 s.call(this, e), this.setTimeout(400), this.ruleset = null, this.setDisabledRules("ids|order-alphabetical"), this.setInfoRules("adjoining-classes|qualified-headings|zero-units|gradients|import|outline-none|vendor-prefix") 4109 }; 4110 r.inherits(u, s), function () { 4111 this.setInfoRules = function (e) { 4112 typeof e == "string" && (e = e.split("|")), this.infoRules = i.arrayToMap(e), this.doc.getValue() && this.deferredUpdate.schedule(100) 4113 }, this.setDisabledRules = function (e) { 4114 if (!e) this.ruleset = null; else { 4115 typeof e == "string" && (e = e.split("|")); 4116 var t = {};
4117 o.getRules().forEach(function (e) { 4118 t[e.id] = !0 4119 }), e.forEach(function (e) { 4120 delete t[e] 4121 }), this.ruleset = t 4122 } 4123 this.doc.getValue() && this.deferredUpdate.schedule(100) 4124 }, this.onUpdate = function () { 4125 var e = this.doc.getValue(); 4126 if (!e) return this.sender.emit("annotate", []); 4127 var t = this.infoRules, n = o.verify(e, this.ruleset); 4128 this.sender.emit("annotate", n.messages.map(function (e) { 4129 return { 4130 row: e.line - 1, 4131 column: e.col - 1, 4132 text: e.message, 4133 type: t[e.rule.id] ? "info" : e.type, 4134 rule: e.rule.name 4135 } 4136 })) 4137 } 4138 }.call(u.prototype) 4139}), define("ace/lib/es5-shim", [], function (e, t, n) { 4140 function r() { 4141 } 4142 4143 function w(e) { 4144 try { 4145 return Object.defineProperty(e, "sentinel", {}), "sentinel" in e 4146 } catch (t) { 4147 } 4148 } 4149 4150 function H(e) { 4151 return e = +e, e !== e ? e = 0 : e !== 0 && e !== 1 / 0 && e !== -1 / 0 && (e = (e > 0 || -1) * Math.floor(Math.abs(e))), e 4152 } 4153 4154 function B(e) { 4155 var t = typeof e; 4156 return e === null || t === "undefined" || t === "boolean" || t === "number" || t === "string" 4157 } 4158 4159 function j(e) { 4160 var t, n, r; 4161 if (B(e)) return e; 4162 n = e.valueOf; 4163 if (typeof n == "function") { 4164 t = n.call(e); 4165 if (B(t)) return t 4166 } 4167 r = e.toString; 4168 if (typeof r == "function") { 4169 t = r.call(e); 4170 if (B(t)) return t 4171 } 4172 throw new TypeError 4173 } 4174 4175 Function.prototype.bind || (Function.prototype.bind = function (t) { 4176 var n = this; 4177 if (typeof n != "function") throw new TypeError("Function.prototype.bind called on incompatible " + n); 4178 var i = u.call(arguments, 1), s = function () { 4179 if (this instanceof s) { 4180 var e = n.apply(this, i.concat(u.call(arguments))); 4181 return Object(e) === e ? e : this 4182 } 4183 return n.apply(t, i.concat(u.call(arguments))) 4184 }; 4185 return n.prototype && (r.prototype = n.prototype, s.prototype = new r, r.prototype = null), s 4186 }); 4187 var i = Function.prototype.call, s = Array.prototype, o = Object.prototype, u = s.slice, a = i.bind(o.toString), 4188 f = i.bind(o.hasOwnProperty), l, c, h, p, d; 4189 if (d = f(o, "__defineGetter__")) l = i.bind(o.__defineGetter__), c = i.bind(o.__defineSetter__), h = i.bind(o.__lookupGetter__), p = i.bind(o.__lookupSetter__); 4190 if ([1, 2].splice(0).length != 2) if (!function () { 4191 function e(e) { 4192 var t = new Array(e + 2); 4193 return t[0] = t[1] = 0, t 4194 } 4195 4196 var t = [], n; 4197 t.splice.apply(t, e(20)), t.splice.apply(t, e(26)), n = t.length, t.splice(5, 0, "XXX"), n + 1 == t.length; 4198 if (n + 1 == t.length) return !0 4199 }()) Array.prototype.splice = function (e, t) { 4200 var n = this.length; 4201 e > 0 ? e > n && (e = n) : e == void 0 ? e = 0 : e < 0 && (e = Math.max(n + e, 0)), e + t < n || (t = n - e); 4202 var r = this.slice(e, e + t), i = u.call(arguments, 2), s = i.length; 4203 if (e === n) s && this.push.apply(this, i); else { 4204 var o = Math.min(t, n - e), a = e + o, f = a + s - o, l = n - a, c = n - o; 4205 if (f < a) for (var h = 0; h < l; ++h) this[f + h] = this[a + h]; else if (f > a) for (h = l; h--;) this[f + h] = this[a + h]; 4206 if (s && e === c) this.length = c, this.push.apply(this, i); else { 4207 this.length = c + s; 4208 for (h = 0; h < s; ++h) this[e + h] = i[h] 4209 } 4210 } 4211 return r 4212 }; else { 4213 var v = Array.prototype.splice; 4214 Array.prototype.splice = function (e, t) { 4215 return arguments.length ? v.apply(this, [e === void 0 ? 0 : e, t === void 0 ? this.length - e : t].concat(u.call(arguments, 2))) : [] 4216 } 4217 } 4218 Array.isArray || (Array.isArray = function (t) { 4219 return a(t) == "[object Array]" 4220 }); 4221 var m = Object("a"), g = m[0] != "a" || !(0 in m); 4222 Array.prototype.forEach || (Array.prototype.forEach = function (t) { 4223 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = arguments[1], s = -1, 4224 o = r.length >>> 0; 4225 if (a(t) != "[object Function]") throw new TypeError; 4226 while (++s < o) s in r && t.call(i, r[s], s, n) 4227 }), Array.prototype.map || (Array.prototype.map = function (t) { 4228 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = Array(i), 4229 o = arguments[1]; 4230 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 4231 for (var u = 0; u < i; u++) u in r && (s[u] = t.call(o, r[u], u, n)); 4232 return s 4233 }), Array.prototype.filter || (Array.prototype.filter = function (t) { 4234 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = [], o, 4235 u = arguments[1]; 4236 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 4237 for (var f = 0; f < i; f++) f in r && (o = r[f], t.call(u, o, f, n) && s.push(o)); 4238 return s 4239 }), Array.prototype.every || (Array.prototype.every = function (t) { 4240 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 4241 s = arguments[1]; 4242 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 4243 for (var o = 0; o < i; o++) if (o in r && !t.call(s, r[o], o, n)) return !1; 4244 return !0 4245 }), Array.prototype.some || (Array.prototype.some = function (t) { 4246 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 4247 s = arguments[1]; 4248 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 4249 for (var o = 0; o < i; o++) if (o in r && t.call(s, r[o], o, n)) return !0; 4250 return !1 4251 }), Array.prototype.reduce || (Array.prototype.reduce = function (t) { 4252 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 4253 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 4254 if (!i && arguments.length == 1) throw new TypeError("reduce of empty array with
4254no initial value"); 4255 var s = 0, o; 4256 if (arguments.length >= 2) o = arguments[1]; else do { 4257 if (s in r) { 4258 o = r[s++]; 4259 break 4260 } 4261 if (++s >= i) throw new TypeError("reduce of empty array with no initial value") 4262 } while (!0); 4263 for (; s < i; s++) s in r && (o = t.call(void 0, o, r[s], s, n)); 4264 return o 4265 }), Array.prototype.reduceRight || (Array.prototype.reduceRight = function (t) { 4266 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 4267 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 4268 if (!i && arguments.length == 1) throw new TypeError("reduceRight of empty array with no initial value"); 4269 var s, o = i - 1; 4270 if (arguments.length >= 2) s = arguments[1]; else do { 4271 if (o in r) { 4272 s = r[o--]; 4273 break 4274 } 4275 if (--o < 0) throw new TypeError("reduceRight of empty array with no initial value") 4276 } while (!0); 4277 do o in this && (s = t.call(void 0, s, r[o], o, n)); while (o--); 4278 return s 4279 }); 4280 if (!Array.prototype.indexOf || [0, 1].indexOf(1, 2) != -1) Array.prototype.indexOf = function (t) { 4281 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 4282 if (!r) return -1; 4283 var i = 0; 4284 arguments.length > 1 && (i = H(arguments[1])), i = i >= 0 ? i : Math.max(0, r + i); 4285 for (; i < r; i++) if (i in n && n[i] === t) return i; 4286 return -1 4287 }; 4288 if (!Array.prototype.lastIndexOf || [0, 1].lastIndexOf(0, -3) != -1) Array.prototype.lastIndexOf = function (t) { 4289 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 4290 if (!r) return -1; 4291 var i = r - 1; 4292 arguments.length > 1 && (i = Math.min(i, H(arguments[1]))), i = i >= 0 ? i : r - Math.abs(i); 4293 for (; i >= 0; i--) if (i in n && t === n[i]) return i; 4294 return -1 4295 }; 4296 Object.getPrototypeOf || (Object.getPrototypeOf = function (t) { 4297 return t.__proto__ || (t.constructor ? t.constructor.prototype : o) 4298 }); 4299 if (!Object.getOwnPropertyDescriptor) { 4300 var y = "Object.getOwnPropertyDescriptor called on a non-object: "; 4301 Object.getOwnPropertyDescriptor = function (t, n) { 4302 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(y + t); 4303 if (!f(t, n)) return; 4304 var r, i, s; 4305 r = {enumerable: !0, configurable: !0}; 4306 if (d) { 4307 var u = t.__proto__; 4308 t.__proto__ = o; 4309 var i = h(t, n), s = p(t, n); 4310 t.__proto__ = u; 4311 if (i || s) return i && (r.get = i), s && (r.set = s), r 4312 } 4313 return r.value = t[n], r 4314 } 4315 } 4316 Object.getOwnPropertyNames || (Object.getOwnPropertyNames = function (t) { 4317 return Object.keys(t) 4318 }); 4319 if (!Object.create) { 4320 var b; 4321 Object.prototype.__proto__ === null ? b = function () { 4322 return {__proto__: null} 4323 } : b = function () { 4324 var e = {}; 4325 for (var t in e) e[t] = null; 4326 return e.constructor = e.hasOwnProperty = e.propertyIsEnumerable = e.isPrototypeOf = e.toLocaleString = e.toString = e.valueOf = e.__proto__ = null, e 4327 }, Object.create = function (t, n) { 4328 var r; 4329 if (t === null) r = b(); else { 4330 if (typeof t != "object") throw new TypeError("typeof prototype[" + typeof t + "] != 'object'"); 4331 var i = function () { 4332 }; 4333 i.prototype = t, r = new i, r.__proto__ = t 4334 } 4335 return n !== void 0 && Object.defineProperties(r, n), r 4336 } 4337 } 4338 if (Object.defineProperty) { 4339 var E = w({}), S = typeof document == "undefined" || w(document.createElement("div")); 4340 if (!E || !S) var x = Object.defineProperty 4341 } 4342 if (!Object.defineProperty || x) { 4343 var T = "Property description must be an object: ", N = "Object.defineProperty called on non-object: ", 4344 C = "getters & setters can not be defined on this javascript engine"; 4345 Object.defineProperty = function (t, n, r) { 4346 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(N + t); 4347 if (typeof r != "object" && typeof r != "function" || r === null) throw new TypeError(T + r); 4348 if (x) try { 4349 return x.call(Object, t, n, r) 4350 } catch (i) { 4351 } 4352 if (f(r, "value")) if (d && (h(t, n) || p(t, n))) { 4353 var s = t.__proto__; 4354 t.__proto__ = o, delete t[n], t[n] = r.value, t.__proto__ = s 4355 } else t[n] = r.value; else { 4356 if (!d) throw new TypeError(C); 4357 f(r, "get") && l(t, n, r.get), f(r, "set") && c(t, n, r.set) 4358 } 4359 return t 4360 } 4361 } 4362 Object.defineProperties || (Object.defineProperties = function (t, n) { 4363 for (var r in n) f(n, r) && Object.defineProperty(t, r, n[r]); 4364 return t 4365 }), Object.seal || (Object.seal = function (t) { 4366 return t 4367 }), Object.freeze || (Object.freeze = function (t) { 4368 return t 4369 }); 4370 try { 4371 Object.freeze(function () { 4372 }) 4373 } catch (k) { 4374 Object.freeze = function (t) { 4375 return function (n) { 4376 return typeof n == "function" ? n : t(n) 4377 } 4378 }(Object.freeze) 4379 } 4380 Object.preventExtensions || (Object.preventExtensions = function (t) { 4381 return t 4382 }), Object.isSealed || (Object.isSealed = function (t) { 4383 return !1 4384 }), Object.isFrozen || (Object.isFrozen = function (t) { 4385 return !1 4386 }), Object.isExtensible || (Object.isExtensible = function (t) { 4387 if (Object(t) === t) throw new TypeError; 4388 var n = ""; 4389 while (f(t, n)) n += "?"; 4390 t[n] = !0; 4391 var r = f(t, n); 4392 return delete t[n], r 4393 }); 4394 if (!Object.keys) { 4395 var L = !0,
4396 A = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], 4397 O = A.length; 4398 for (var M in {toString: null}) L = !1; 4399 Object.keys = function I(e) { 4400 if (typeof e != "object" && typeof e != "function" || e === null) throw new TypeError("Object.keys called on a non-object"); 4401 var I = []; 4402 for (var t in e) f(e, t) && I.push(t); 4403 if (L) for (var n = 0, r = O; n < r; n++) { 4404 var i = A[n]; 4405 f(e, i) && I.push(i) 4406 } 4407 return I 4408 } 4409 } 4410 Date.now || (Date.now = function () { 4411 return (new Date).getTime() 4412 }); 4413 var _ = " \n\x0b\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"; 4414 if (!String.prototype.trim || _.trim()) { 4415 _ = "[" + _ + "]"; 4416 var D = new RegExp("^" + _ + _ + "*"), P = new RegExp(_ + _ + "*$"); 4417 String.prototype.trim = function () { 4418 return String(this).replace(D, "").replace(P, "") 4419 } 4420 } 4421 var F = function (e) { 4422 if (e == null) throw new TypeError("can't convert " + e + " to object"); 4423 return Object(e) 4424 } 4425}) 4426 4427"no use strict"; 4428!function (e) { 4429 function t(e, t) { 4430 var n = e, r = ""; 4431 while (n) { 4432 var i = t[n]; 4433 if (typeof i == "string") return i + r; 4434 if (i) return i.location.replace(/\/*$/, "/") + (r || i.main || i.name); 4435 if (i === !1) return ""; 4436 var s = n.lastIndexOf("/"); 4437 if (s === -1) break; 4438 r = n.substr(s) + r, n = n.slice(0, s) 4439 } 4440 return e 4441 } 4442 4443 if (typeof e.window != "undefined" && e.document) return; 4444 if (e.require && e.define) return; 4445 e.console || (e.console = function () { 4446 var e = Array.prototype.slice.call(arguments, 0); 4447 postMessage({type: "log", data: e}) 4448 }, e.console.error = e.console.warn = e.console.log = e.console.trace = e.console), e.window = e, e.ace = e, e.onerror = function (e, t, n, r, i) { 4449 postMessage({type: "error", data: {message: e, data: i.data, file: t, line: n, col: r, stack: i.stack}}) 4450 }, e.normalizeModule = function (t, n) { 4451 if (n.indexOf("!") !== -1) { 4452 var r = n.split("!"); 4453 return e.normalizeModule(t, r[0]) + "!" + e.normalizeModule(t, r[1]) 4454 } 4455 if (n.charAt(0) == ".") { 4456 var i = t.split("/").slice(0, -1).join("/"); 4457 n = (i ? i + "/" : "") + n; 4458 while (n.indexOf(".") !== -1 && s != n) { 4459 var s = n; 4460 n = n.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "") 4461 } 4462 } 4463 return n 4464 }, e.require = function (r, i) { 4465 i || (i = r, r = null); 4466 if (!i.charAt) throw new Error("worker.js require() accepts only (parentId, id) as arguments"); 4467 i = e.normalizeModule(r, i); 4468 var s = e.require.modules[i]; 4469 if (s) return s.initialized || (s.initialized = !0, s.exports = s.factory().exports), s.exports; 4470 if (!e.require.tlns) return console.log("unable to load " + i); 4471 var o = t(i, e.require.tlns); 4472 return o.slice(-3) != ".js" && (o += ".js"), e.require.id = i, e.require.modules[i] = {}, importScripts(o), e.require(r, i) 4473 }, e.require.modules = {}, e.require.tlns = {}, e.define = function (t, n, r) { 4474 arguments.length == 2 ? (r = n, typeof t != "string" && (n = t, t = e.require.id)) : arguments.length == 1 && (r = t, n = [], t = e.require.id); 4475 if (typeof r != "function") { 4476 e.require.modules[t] = {exports: r, initialized: !0}; 4477 return 4478 } 4479 n.length || (n = ["require", "exports", "module"]); 4480 var i = function (n) { 4481 return e.require(t, n) 4482 }; 4483 e.require.modules[t] = { 4484 exports: {}, factory: function () { 4485 var e = this, t = r.apply(this, n.slice(0, r.length).map(function (t) { 4486 switch (t) { 4487 case"require": 4488 return i; 4489 case"exports": 4490 return e.exports; 4491 case"module": 4492 return e; 4493 default: 4494 return i(t) 4495 } 4496 })); 4497 return t && (e.exports = t), e 4498 } 4499 } 4500 }, e.define.amd = {}, require.tlns = {}, e.initBaseUrls = function (t) { 4501 for (var n in t) require.tlns[n] = t[n] 4502 }, e.initSender = function () { 4503 var n = e.require("ace/lib/event_emitter").EventEmitter, r = e.require("ace/lib/oop"), i = function () { 4504 }; 4505 return function () { 4506 r.implement(this, n), this.callback = function (e, t) { 4507 postMessage({type: "call", id: t, data: e}) 4508 }, this.emit = function (e, t) { 4509 postMessage({type: "event", name: e, data: t}) 4510 } 4511 }.call(i.prototype), new i 4512 }; 4513 var n = e.main = null, r = e.sender = null; 4514 e.onmessage = function (t) { 4515 var i = t.data; 4516 if (i.event && r) r._signal(i.event, i.data); else if (i.command) if (n[i.command]) n[i.command].apply(n, i.args); else { 4517 if (!e[i.command]) throw new Error("Unknown command:" + i.command); 4518 e[i.command].apply(e, i.args) 4519 } else if (i.init) { 4520 e.initBaseUrls(i.tlns), require("ace/lib/es5-shim"), r = e.sender = e.initSender(); 4521 var s = require(i.module)[i.classname]; 4522 n = e.main = new s(r) 4523 } 4524 } 4525}(this), define("ace/lib/oop", [], function (e, t, n) { 4526 "use strict"; 4527 t.inherits = function (e, t) { 4528 e.super_ = t, e.prototype = Object.create(t.prototype, { 4529 constructor: { 4530 value: e, 4531 enumerable: !1, 4532 writable: !0, 4533 configurable: !0 4534 } 4535 }) 4536 }, t.mixin = function (e, t) { 4537 for (var n in t) e[n] = t[n]; 4538 return e 4539 }, t.implement = function (e, n) { 4540 t.mixin(e, n) 4541 } 4542}), define("ace/lib/lang", [], function (e, t, n) { 4543 "use strict"; 4544 t.last = function (e) { 4545 return e[e.length - 1] 4546 }
4546, t.stringReverse = function (e) { 4547 return e.split("").reverse().join("") 4548 }, t.stringRepeat = function (e, t) { 4549 var n = ""; 4550 while (t > 0) { 4551 t & 1 && (n += e); 4552 if (t >>= 1) e += e 4553 } 4554 return n 4555 }; 4556 var r = /^\s\s*/, i = /\s\s*$/; 4557 t.stringTrimLeft = function (e) { 4558 return e.replace(r, "") 4559 }, t.stringTrimRight = function (e) { 4560 return e.replace(i, "") 4561 }, t.copyObject = function (e) { 4562 var t = {}; 4563 for (var n in e) t[n] = e[n]; 4564 return t 4565 }, t.copyArray = function (e) { 4566 var t = []; 4567 for (var n = 0, r = e.length; n < r; n++) e[n] && typeof e[n] == "object" ? t[n] = this.copyObject(e[n]) : t[n] = e[n]; 4568 return t 4569 }, t.deepCopy = function s(e) { 4570 if (typeof e != "object" || !e) return e; 4571 var t; 4572 if (Array.isArray(e)) { 4573 t = []; 4574 for (var n = 0; n < e.length; n++) t[n] = s(e[n]); 4575 return t 4576 } 4577 if (Object.prototype.toString.call(e) !== "[object Object]") return e; 4578 t = {}; 4579 for (var n in e) t[n] = s(e[n]); 4580 return t 4581 }, t.arrayToMap = function (e) { 4582 var t = {}; 4583 for (var n = 0; n < e.length; n++) t[e[n]] = 1; 4584 return t 4585 }, t.createMap = function (e) { 4586 var t = Object.create(null); 4587 for (var n in e) t[n] = e[n]; 4588 return t 4589 }, t.arrayRemove = function (e, t) { 4590 for (var n = 0; n <= e.length; n++) t === e[n] && e.splice(n, 1) 4591 }, t.escapeRegExp = function (e) { 4592 return e.replace(/([.*+?^${}()|[\]\/\\])/g, "\\$1") 4593 }, t.escapeHTML = function (e) { 4594 return ("" + e).replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<") 4595 }, t.getMatchOffsets = function (e, t) { 4596 var n = []; 4597 return e.replace(t, function (e) { 4598 n.push({offset: arguments[arguments.length - 2], length: e.length}) 4599 }), n 4600 }, t.deferredCall = function (e) { 4601 var t = null, n = function () { 4602 t = null, e() 4603 }, r = function (e) { 4604 return r.cancel(), t = setTimeout(n, e || 0), r 4605 }; 4606 return r.schedule = r, r.call = function () { 4607 return this.cancel(), e(), r 4608 }, r.cancel = function () { 4609 return clearTimeout(t), t = null, r 4610 }, r.isPending = function () { 4611 return t 4612 }, r 4613 }, t.delayedCall = function (e, t) { 4614 var n = null, r = function () { 4615 n = null, e() 4616 }, i = function (e) { 4617 n == null && (n = setTimeout(r, e || t)) 4618 }; 4619 return i.delay = function (e) { 4620 n && clearTimeout(n), n = setTimeout(r, e || t) 4621 }, i.schedule = i, i.call = function () { 4622 this.cancel(), e() 4623 }, i.cancel = function () { 4624 n && clearTimeout(n), n = null 4625 }, i.isPending = function () { 4626 return n 4627 }, i 4628 } 4629}), define("ace/range", [], function (e, t, n) { 4630 "use strict"; 4631 var r = function (e, t) { 4632 return e.row - t.row || e.column - t.column 4633 }, i = function (e, t, n, r) { 4634 this.start = {row: e, column: t}, this.end = {row: n, column: r} 4635 }; 4636 (function () { 4637 this.isEqual = function (e) { 4638 return this.start.row === e.start.row && this.end.row === e.end.row && this.start.column === e.start.column && this.end.column === e.end.column 4639 }, this.toString = function () { 4640 return "Range: [" + this.start.row + "/" + this.start.column + "] -> [" + this.end.row + "/" + this.end.column + "]" 4641 }, this.contains = function (e, t) { 4642 return this.compare(e, t) == 0 4643 }, this.compareRange = function (e) { 4644 var t, n = e.end, r = e.start; 4645 return t = this.compare(n.row, n.column), t == 1 ? (t = this.compare(r.row, r.column), t == 1 ? 2 : t == 0 ? 1 : 0) : t == -1 ? -2 : (t = this.compare(r.row, r.column), t == -1 ? -1 : t == 1 ? 42 : 0) 4646 }, this.comparePoint = function (e) { 4647 return this.compare(e.row, e.column) 4648 }, this.containsRange = function (e) { 4649 return this.comparePoint(e.start) == 0 && this.comparePoint(e.end) == 0 4650 }, this.intersects = function (e) { 4651 var t = this.compareRange(e); 4652 return t == -1 || t == 0 || t == 1 4653 }, this.isEnd = function (e, t) {
4654 return this.end.row == e && this.end.column == t 4655 }, this.isStart = function (e, t) { 4656 return this.start.row == e && this.start.column == t 4657 }, this.setStart = function (e, t) { 4658 typeof e == "object" ? (this.start.column = e.column, this.start.row = e.row) : (this.start.row = e, this.start.column = t) 4659 }, this.setEnd = function (e, t) { 4660 typeof e == "object" ? (this.end.column = e.column, this.end.row = e.row) : (this.end.row = e, this.end.column = t) 4661 }, this.inside = function (e, t) { 4662 return this.compare(e, t) == 0 ? this.isEnd(e, t) || this.isStart(e, t) ? !1 : !0 : !1 4663 }, this.insideStart = function (e, t) { 4664 return this.compare(e, t) == 0 ? this.isEnd(e, t) ? !1 : !0 : !1 4665 }, this.insideEnd = function (e, t) { 4666 return this.compare(e, t) == 0 ? this.isStart(e, t) ? !1 : !0 : !1 4667 }, this.compare = function (e, t) { 4668 return !this.isMultiLine() && e === this.start.row ? t < this.start.column ? -1 : t > this.end.column ? 1 : 0 : e < this.start.row ? -1 : e > this.end.row ? 1 : this.start.row === e ? t >= this.start.column ? 0 : -1 : this.end.row === e ? t <= this.end.column ? 0 : 1 : 0 4669 }, this.compareStart = function (e, t) { 4670 return this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 4671 }, this.compareEnd = function (e, t) { 4672 return this.end.row == e && this.end.column == t ? 1 : this.compare(e, t) 4673 }, this.compareInside = function (e, t) { 4674 return this.end.row == e && this.end.column == t ? 1 : this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 4675 }, this.clipRows = function (e, t) { 4676 if (this.end.row > t) var n = {row: t + 1, column: 0}; else if (this.end.row < e) var n = { 4677 row: e, 4678 column: 0 4679 }; 4680 if (this.start.row > t) var r = {row: t + 1, column: 0}; else if (this.start.row < e) var r = { 4681 row: e, 4682 column: 0 4683 }; 4684 return i.fromPoints(r || this.start, n || this.end) 4685 }, this.extend = function (e, t) { 4686 var n = this.compare(e, t); 4687 if (n == 0) return this; 4688 if (n == -1) var r = {row: e, column: t}; else var s = {row: e, column: t}; 4689 return i.fromPoints(r || this.start, s || this.end) 4690 }, this.isEmpty = function () { 4691 return this.start.row === this.end.row && this.start.column === this.end.column 4692 }, this.isMultiLine = function () { 4693 return this.start.row !== this.end.row 4694 }, this.clone = function () { 4695 return i.fromPoints(this.start, this.end) 4696 }, this.collapseRows = function () { 4697 return this.end.column == 0 ? new i(this.start.row, 0, Math.max(this.start.row, this.end.row - 1), 0) : new i(this.start.row, 0, this.end.row, 0) 4698 }, this.toScreenRange = function (e) { 4699 var t = e.documentToScreenPosition(this.start), n = e.documentToScreenPosition(this.end); 4700 return new i(t.row, t.column, n.row, n.column) 4701 }, this.moveBy = function (e, t) { 4702 this.start.row += e, this.start.column += t, this.end.row += e, this.end.column += t 4703 } 4704 }).call(i.prototype), i.fromPoints = function (e, t) { 4705 return new i(e.row, e.column, t.row, t.column) 4706 }, i.comparePoints = r, i.comparePoints = function (e, t) { 4707 return e.row - t.row || e.column - t.column 4708 }, t.Range = i 4709}), define("ace/apply_delta", [], function (e, t, n) { 4710 "use strict"; 4711 4712 function r(e, t) { 4713 throw console.log("Invalid Delta:", e), "Invalid Delta: " + t 4714 } 4715 4716 function i(e, t) { 4717 return t.row >= 0 && t.row < e.length && t.column >= 0 && t.column <= e[t.row].length 4718 } 4719 4720 function s(e, t) { 4721 t.action != "insert" && t.action != "remove" && r(t, "delta.action must be 'insert' or 'remove'"), t.lines instanceof Array || r(t, "delta.lines must be an Array"), (!t.start || !t.end) && r(t, "delta.start/end must be an present"); 4722 var n = t.start; 4723 i(e, t.start) || r(t, "delta.start must be contained in document"); 4724 var s = t.end; 4725 t.action == "remove" && !i(e, s) && r(t, "delta.end must contained in document for 'remove' actions"); 4726 var o = s.row - n.row, u = s.column - (o == 0 ? n.column : 0); 4727 (o != t.lines.length - 1 || t.lines[o].length != u) && r(t, "delta.range must match delta lines") 4728 } 4729 4730 t.applyDelta = function (e, t, n) { 4731 var r = t.start.row, i = t.start.column, s = e[r] || ""; 4732 switch (t.action) { 4733 case"insert": 4734 var o = t.lines; 4735 if (o.length === 1) e[r] = s.substring(0, i) + t.lines[0] + s.substring(i); else {
4736 var u = [r, 1].concat(t.lines); 4737 e.splice.apply(e, u), e[r] = s.substring(0, i) + e[r], e[r + t.lines.length - 1] += s.substring(i) 4738 } 4739 break; 4740 case"remove": 4741 var a = t.end.column, f = t.end.row; 4742 r === f ? e[r] = s.substring(0, i) + s.substring(a) : e.splice(r, f - r + 1, s.substring(0, i) + e[f].substring(a)) 4743 } 4744 } 4745}), define("ace/lib/event_emitter", [], function (e, t, n) { 4746 "use strict"; 4747 var r = {}, i = function () { 4748 this.propagationStopped = !0 4749 }, s = function () { 4750 this.defaultPrevented = !0 4751 }; 4752 r._emit = r._dispatchEvent = function (e, t) { 4753 this._eventRegistry || (this._eventRegistry = {}), this._defaultHandlers || (this._defaultHandlers = {}); 4754 var n = this._eventRegistry[e] || [], r = this._defaultHandlers[e]; 4755 if (!n.length && !r) return; 4756 if (typeof t != "object" || !t) t = {}; 4757 t.type || (t.type = e), t.stopPropagation || (t.stopPropagation = i), t.preventDefault || (t.preventDefault = s), n = n.slice(); 4758 for (var o = 0; o < n.length; o++) { 4759 n[o](t, this); 4760 if (t.propagationStopped) break 4761 } 4762 if (r && !t.defaultPrevented) return r(t, this) 4763 }, r._signal = function (e, t) { 4764 var n = (this._eventRegistry || {})[e]; 4765 if (!n) return; 4766 n = n.slice(); 4767 for (var r = 0; r < n.length; r++) n[r](t, this) 4768 }, r.once = function (e, t) { 4769 var n = this; 4770 this.addEventListener(e, function r() { 4771 n.removeEventListener(e, r), t.apply(null, arguments) 4772 }); 4773 if (!t) return new Promise(function (e) { 4774 t = e 4775 }) 4776 }, r.setDefaultHandler = function (e, t) { 4777 var n = this._defaultHandlers; 4778 n || (n = this._defaultHandlers = {_disabled_: {}}); 4779 if (n[e]) { 4780 var r = n[e], i = n._disabled_[e]; 4781 i || (n._disabled_[e] = i = []), i.push(r); 4782 var s = i.indexOf(t); 4783 s != -1 && i.splice(s, 1) 4784 } 4785 n[e] = t 4786 }, r.removeDefaultHandler = function (e, t) { 4787 var n = this._defaultHandlers; 4788 if (!n) return; 4789 var r = n._disabled_[e]; 4790 if (n[e] == t) r && this.setDefaultHandler(e, r.pop()); else if (r) { 4791 var i = r.indexOf(t); 4792 i != -1 && r.splice(i, 1) 4793 } 4794 }, r.on = r.addEventListener = function (e, t, n) { 4795 this._eventRegistry = this._eventRegistry || {}; 4796 var r = this._eventRegistry[e]; 4797 return r || (r = this._eventRegistry[e] = []), r.indexOf(t) == -1 && r[n ? "unshift" : "push"](t), t 4798 }, r.off = r.removeListener = r.removeEventListener = function (e, t) { 4799 this._eventRegistry = this._eventRegistry || {}; 4800 var n = this._eventRegistry[e]; 4801 if (!n) return; 4802 var r = n.indexOf(t); 4803 r !== -1 && n.splice(r, 1) 4804 }, r.removeAllListeners = function (e) { 4805 this._eventRegistry && (this._eventRegistry[e] = []) 4806 }, t.EventEmitter = r 4807}), define("ace/anchor", [], function (e, t, n) { 4808 "use strict"; 4809 var r = e("./lib/oop"), i = e("./lib/event_emitter").EventEmitter, s = t.Anchor = function (e, t, n) { 4810 this.$onChange = this.onChange.bind(this), this.attach(e), typeof n == "undefined" ? this.setPosition(t.row, t.column) : this.setPosition(t, n) 4811 }; 4812 (function () { 4813 function e(e, t, n) { 4814 var r = n ? e.column <= t.column : e.column < t.column; 4815 return e.row < t.row || e.row == t.row && r 4816 } 4817 4818 function t(t, n, r) { 4819 var i = t.action == "insert", s = (i ? 1 : -1) * (t.end.row - t.start.row), 4820 o = (i ? 1 : -1) * (t.end.column - t.start.column), u = t.start, a = i ? u : t.end; 4821 return e(n, u, r) ? {row: n.row, column: n.column} : e(a, n, !r) ? { 4822 row: n.row + s, 4823 column: n.column + (n.row == a.row ? o : 0) 4824 } : {row: u.row, column: u.column} 4825 } 4826 4827 r.implement(this, i), this.getPosition = function () { 4828 return this.$clipPositionToDocument(this.row, this.column) 4829 }, this.getDocument = function () { 4830 return this.document 4831 }, this.$insertRight = !1, this.onChange = function (e) { 4832 if (e.start.row == e.end.row && e.start.row != this.row) return; 4833 if (e.start.row > this.row) return; 4834 var n = t(e, {row: this.row, column: this.column}, this.$insertRight); 4835 this.setPosition(n.row, n.column, !0) 4836 }, this.setPosition = function (e, t, n) { 4837 var r; 4838 n ? r = {row: e, column: t} : r = this.$clipPositionToDocument(e, t); 4839 if (this.row == r.row && this.column == r.column) return; 4840 var i = {row: this.row, column: this.column}; 4841 this.row = r.row, this.column = r.column, this._signal("change", {old: i, value: r}) 4842 }, this.detach = function () { 4843 this.document.removeEventListener("change", this.$onChange) 4844 }, this.attach = function (e) { 4845 this.document = e || this.document, this.document.on("change", this.$onChange) 4846 }, this.$clipPositionToDocument = function (e, t) { 4847 var n = {}; 4848 return e >= this.document.getLength() ? (n.row = Math.max(0, this.document.getLength() - 1), n.column = this.document.getLine(n.row).length) : e < 0 ? (n.row = 0, n.column = 0) : (n.row = e, n.column = Math.min(this.document.getLine(n.row).length, Math.max(0, t))), t < 0 && (n.column = 0), n 4849 } 4850 }).call(s.prototype) 4851}), define("ace/document", [], function (e, t, n) { 4852 "use strict"; 4853 var r = e("./lib/oop"), i = e("./apply_delta").applyDelta, s = e("./lib/event_emitter").EventEmitter, 4854 o = e("./range").Range, u = e("./anchor").Anchor, a = function (e) { 4855 this.$lines = [""], e.length === 0 ? this.$lines = [""] : Array.isArray(e) ? this.insertMergedLines({ 4856 row: 0, 4857 column: 0 4858 }, e) : this.insert({row: 0, column: 0}, e) 4859 }; 4860 (function () { 4861 r.implement(this, s), this.setValue = function (e) { 4862 var t = this.getLength() - 1; 4863 this.remove(new o(0, 0, t, this.getLine(t).length)), this.insert({row: 0, column: 0}, e) 4864 }, this.getValue = function () { 4865 return this.getAllLines().join(this.getNewLineCharacter()) 4866 }, this.createAnchor = function (e, t) { 4867 return new u(this, e, t) 4868 }, "aaa".split(/a/).length === 0 ? this.$split = function (e) { 4869 return e.replace(/\r\n|\r/g, "\n").split("\n") 4870 } : this.$split = function (e) { 4871 return e.split(/\r\n|\r|\n/) 4872 }, this.$detectNewLine = function (e) { 4873 var t = e.match(/^.*?(\r\n|\r|\n)/m); 4874 this.$autoNewLine = t ? t[1] : "\n", this._signal("changeNewLineMode") 4875 }, this.getNewLineCharacter = function () { 4876 switch (this.$newLineMode) { 4877 case"windows": 4878 return "\r\n"; 4879 case"unix": 4880 return "\n"; 4881 default: 4882 return this.$autoNewLine || "\n" 4883 } 4884 }, this.$autoNewLine = "", this.$newLineMode = "auto", this.setNewLineMode = function (e) { 4885 if (this.$newLineMode === e) return; 4886 this.$newLineMode = e, this._signal("changeNewLineMode") 4887 }, this.getNewLineMode = function () { 4888 return this.$newLineMode 4889 }, this.isNewLine = function (e) { 4890 return e == "\r\n" || e == "\r" || e == "\n" 4891 }, this.getLine = function (e) { 4892 return this.$lines[e] || "" 4893 }, this.getLines = function (e, t) { 4894 return this.$lines.slice(e, t + 1) 4895 }, this.getAllLines = function () { 4896 return this.getLines(0, this.getLength()) 4897 }, this.getLength = function () { 4898 return this.$lines.length 4899 }, this.getTextRange = function (e) { 4900 return this.getLinesForRange(e).join(this.getNewLineCharacter()) 4901 }, this.getLinesForRange = function (e) { 4902 var t; 4903 if (e.start.row === e.end.row) t = [this.getLine(e.start.row).substring(e.start.column, e.end.column)]; else { 4904 t = this.getLines(e.start.row, e.end.row), t[0] = (t[0] || "").substring(e.start.column); 4905 var n = t.length - 1; 4906 e.end.row - e.start.row == n && (t[n] = t[n].substring(0, e.end.column)) 4907 } 4908 return t 4909 }, this.insertLines = function (e, t) { 4910 return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."), this.insertFullLines(e, t) 4911 }, this.removeLines = function (e, t) { 4912 return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."), this.removeFullLines(e, t) 4913 }, this.insertNewLine = function (e) { 4914 return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."), this.insertMergedLines(e, ["", ""]) 4915 }, this.insert = function (e, t) { 4916 return this.getLength() <= 1 && this.$detectNewLine(t), this.insertMergedLines(e, this.$split(t)) 4917 }, this.insertInLine = function (e, t) { 4918 var n = this.clippedPos(e.row, e.column), r = this.pos(e.row, e.column + t.length); 4919 return this.applyDelta({start: n, end: r, action: "insert", lines: [t]}, !0), this.clonePos(r) 4920 }, this.clippedPos = function (e, t) { 4921 var n = this.getLength(); 4922 e === undefined ? e = n : e < 0 ? e = 0 : e >= n && (e = n - 1, t = undefined); 4923 var r = this.getLine(e); 4924 return t == undefined && (t = r.length), t = Math.min(Math.max(t, 0), r.length), {row: e, column: t} 4925 }, this.clonePos = function (e) { 4926 return {row: e.row, column: e.column} 4927 }, this.pos = function (e, t) { 4928 return {row: e, column: t} 4929 }, this.$clipPosition = function (e) { 4930 var t = this.getLength(); 4931 return e.row >= t ? (e.row = Math.max(0, t - 1), e.column = this.getLine(t - 1).length) : (e.row = Math.max(0, e.row), e.column = Math.min(Math.max(e.column, 0), this.getLine(e.row).length)), e 4932 }, this.insertFullLines = function (e, t) { 4933 e = Math.min(Math.max(e, 0), this.getLength()); 4934 var n = 0; 4935 e < this.getLength() ? (t = t.concat([""]), n = 0) : (t = [""].concat(t), e--, n = this.$lines[e].length), this.insertMergedLines({ 4936 row: e, 4937 column: n 4938 }, t) 4939 }, this.insertMergedLines = function (e, t) { 4940 var n = this.clippedPos(e.row, e.column), 4941 r = {row: n.row + t.length - 1, column: (t.length == 1 ? n.column : 0) + t[t.length - 1].length}; 4942 return this.applyDelta({start: n, end: r, action: "insert", lines: t}), this.clonePos(r) 4943 }, this.remove = function (e) { 4944 var t = this.clippedPos(e.start.row, e.start.column), n = this.clippedPos(e.end.row, e.end.column); 4945 return this.applyDelta({ 4946 start: t, 4947 end: n, 4948 action: "remove", 4949 lines: this.getLinesForRange({start: t, end: n}) 4950 }), this.clonePos(t) 4951 }, this.removeInLine = function (e, t, n) { 4952 var r = this.clippedPos(e, t), i = this.clippedPos(e, n); 4953 return this.applyDelta({ 4954 start: r, 4955 end: i, 4956 action: "remove", 4957 lines: this.getLinesForRange({start: r, end: i}) 4958 }, !0), this.clonePos(r) 4959 }, this.removeFullLines = function (e, t) { 4960 e = Math.min(Math.max(0, e), this.getLength() - 1), t = Math.min(Math.max(0, t), this.getLength() - 1); 4961 var n = t == this.getLength() - 1 && e > 0, r = t < this.getLength() - 1, i = n ? e - 1 : e, 4962 s = n ? this.getLine(i).length : 0, u = r ? t + 1 : t, a = r ? 0 : this.getLine(u).length, 4963 f = new o(i, s, u, a), l = this.$lines.slice(e, t + 1); 4964 return this.applyDelta({start: f.start, end: f.end, action: "remove", lines: this.getLinesForRange(f)}), l 4965 }, this.removeNewLine = function (e) { 4966 e < this.getLength() - 1 && e >= 0 && this.applyDelta({ 4967 start: this.pos(e, this.getLine(e).length), 4968 end: this.pos(e + 1, 0), 4969 action: "remove", 4970 lines: ["", ""] 4971 }) 4972 }, this.replace = function (e, t) { 4973 e instanceof o || (e = o.fromPoints(e.start, e.end)); 4974 if (t.length === 0 && e.isEmpty()) return e.start; 4975 if (t == this.getTextRange(e)) return e.end; 4976 this.remove(e); 4977 var n; 4978 return t ? n = this.insert(e.start, t) : n = e.start, n 4979 }, this.applyDeltas = function (e) { 4980 for (var t = 0; t < e.length; t++) this.applyDelta(e[t]) 4981 }, this.revertDeltas = function (e) { 4982 for (var t = e.length - 1; t >= 0; t--) this.revertDelta(e[t]) 4983 }, this.applyDelta = function (e, t) { 4984 var n = e.action == "insert"; 4985 if (n ? e.lines.length <= 1 && !e.lines[0] : !o.comparePoints(e.start, e.end)) return; 4986 n && e.lines.length > 2e4 ? this.$splitAndapplyLargeDelta(e, 2e4) : (i(this.$lines, e, t), this._signal("change", e)) 4987 }, this.$splitAndapplyLargeDelta = function (e, t) { 4988 var n = e.lines, r = n.length - t + 1, i = e.start.row, s = e.start.column; 4989 for (var o = 0, u = 0; o < r; o = u) { 4990 u += t - 1; 4991 var a = n.slice(o, u); 4992 a.push(""), this.applyDelta({ 4993 start: this.pos(i + o, s), 4994 end: this.pos(i + u, s = 0), 4995 action: e.action, 4996 lines: a 4997 }, !0) 4998 } 4999 e.lines = n.slice(o), e.start.row = i + o, e.start.column = s, this.applyDelta(e, !0) 5000 }, this.revertDelta = function (e) { 5001 this.applyDelta({ 5002 start: this.clonePos(e.start), 5003 end: this.clonePos(e.end), 5004 action: e.action == "insert" ? "remove" : "insert", 5005 lines: e.lines.slice() 5006 }) 5007 }, this.indexToPosition = function (e, t) { 5008 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length; 5009 for (var i = t || 0, s = n.length; i < s; i++) { 5010 e -= n[i].length + r; 5011 if (e < 0) return {row: i, column: e + n[i].length + r} 5012 } 5013 return {row: s - 1, column: e + n[s - 1].length + r} 5014 }, this.positionToIndex = function (e, t) { 5015 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length, i = 0, 5016 s = Math.min(e.row, n.length); 5017 for (var o = t || 0; o < s; ++o) i += n[o].length + r; 5018 return i + e.column 5019 } 5020 }).call(a.prototype), t.Document = a 5021}), define("ace/worker/mirror", [], function (e, t, n) { 5022 "use strict"; 5023 var r = e("../range").Range, i = e("../document").Document, s = e("../lib/lang"), o = t.Mirror = function (e) { 5024 this.sender = e; 5025 var t = this.doc = new i(""), n = this.deferredUpdate = s.delayedCall(this.onUpdate.bind(this)), r = this; 5026 e.on("change", function (e) { 5027 var i = e.data; 5028 if (i[0].start) t.applyDeltas(i); else for (var s = 0; s < i.length; s += 2) {
5029 if (Array.isArray(i[s + 1])) var o = { 5030 action: "insert", 5031 start: i[s], 5032 lines: i[s + 1] 5033 }; else var o = {action: "remove", start: i[s], end: i[s + 1]}; 5034 t.applyDelta(o, !0) 5035 } 5036 if (r.$timeout) return n.schedule(r.$timeout); 5037 r.onUpdate() 5038 }) 5039 }; 5040 (function () { 5041 this.$timeout = 500, this.setTimeout = function (e) { 5042 this.$timeout = e 5043 }, this.setValue = function (e) { 5044 this.doc.setValue(e), this.deferredUpdate.schedule(this.$timeout) 5045 }, this.getValue = function (e) { 5046 this.sender.callback(this.doc.getValue(), e) 5047 }, this.onUpdate = function () { 5048 }, this.isPending = function () { 5049 return this.deferredUpdate.isPending() 5050 } 5051 }).call(o.prototype) 5052}), define("ace/mode/html/saxparser", [], function (e, t, n) { 5053 n.exports = function r(t, n, i) { 5054 function s(u, a) { 5055 if (!n[u]) { 5056 if (!t[u]) { 5057 var f = typeof e == "function" && e; 5058 if (!a && f) return f(u, !0); 5059 if (o) return o(u, !0); 5060 throw new Error("Cannot find module '" + u + "'") 5061 } 5062 var l = n[u] = {exports: {}}; 5063 t[u][0].call(l.exports, function (e) { 5064 var n = t[u][1][e]; 5065 return s(n ? n : e) 5066 }, l, l.exports, r, t, n, i) 5067 } 5068 return n[u].exports 5069 } 5070 5071 var o = typeof e == "function" && e; 5072 for (var u = 0; u < i.length; u++) s(i[u]); 5073 return s 5074 }({ 5075 1: [function (e, t, n) { 5076 function r(e) { 5077 if (e.namespaceURI === "http://www.w3.org/1999/xhtml") return e.localName === "applet" || e.localName === "caption" || e.localName === "marquee" || e.localName === "object" || e.localName === "table" || e.localName === "td" || e.localName === "th"; 5078 if (e.namespaceURI === "http://www.w3.org/1998/Math/MathML") return e.localName === "mi" || e.localName === "mo" || e.localName === "mn" || e.localName === "ms" || e.localName === "mtext" || e.localName === "annotation-xml"; 5079 if (e.namespaceURI === "http://www.w3.org/2000/svg") return e.localName === "foreignObject" || e.localName === "desc" || e.localName === "title" 5080 } 5081 5082 function i(e) { 5083 return r(e) || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "ol" || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "ul" 5084 } 5085 5086 function s(e) { 5087 return e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "table" || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "html" 5088 } 5089 5090 function o(e) { 5091 return e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "tbody" || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "tfoot" || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "thead" || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "html" 5092 } 5093 5094 function u(e) { 5095 return e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "tr" || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "html" 5096 } 5097 5098 function a(e) { 5099 return r(e) || e.namespaceURI === "http://www.w3.org/1999/xhtml" && e.localName === "button" 5100 } 5101 5102 function f(e) { 5103 return (e.namespaceURI !== "http://www.w3.org/1999/xhtml" || e.localName !== "optgroup") && (e.namespaceURI !== "http://www.w3.org/1999/xhtml" || e.localName !== "option") 5104 } 5105 5106 function l() { 5107 this.elements = [], this.rootNode = null, this.headElement = null, this.bodyElement = null 5108 } 5109 5110 l.prototype._inScope = function (e, t) { 5111 for (var n = this.elements.length - 1; n >= 0; n--) { 5112 var r = this.elements[n]; 5113 if (r.localName === e) return !0; 5114 if (t(r)) return !1 5115 } 5116 }, l.prototype.push = function (e) { 5117 this.elements.push(e) 5118 }, l.prototype.pushHtmlElement = function (e) { 5119 this.rootNode = e.node, this.push(e) 5120 }, l.prototype.pushHeadElement = function (e) { 5121 this.headElement = e.node, this.push(e) 5122 }, l.prototype.pushBodyElement = function (e) { 5123 this.bodyElement = e.node, this.push(e) 5124 }, l.prototype.pop = function () { 5125 return this.elements.pop() 5126 }, l.prototype.remove = function (e) { 5127 this.elements.splice(this.elements.indexOf(e), 1) 5128 }, l.prototype.popUntilPopped = function (e) { 5129 var t; 5130 do t = this.pop(); while (t.localName != e) 5131 }, l.prototype.popUntilTableScopeMarker = function () { 5132 while (!s(this.top)) this.pop() 5133 }, l.prototype.popUntilTableBodyScopeMarker = function () { 5134 while (!o(this.top)) this.pop() 5135 }, l.prototype.popUntilTableRowScopeMarker = function () { 5136 while (!u(this.top)) this.pop() 5137 }, l.prototype.item = function (e) { 5138 return this.elements[e] 5139 }, l.prototype.contains = function (e) { 5140 return this.elements.indexOf(e) !== -1 5141 }, l.prototype.inScope = function (e) { 5142 return this._inScope(e, r) 5143 }, l.prototype.inListItemScope = function (e) { 5144 return this._inScope(e, i) 5145 }, l.prototype.inTableScope = function (e) { 5146 return this._inScope(e, s) 5147 }, l.prototype.inButtonScope = function (e) { 5148 return this._inScope(e, a) 5149 }, l.prototype.inSelectScope = function (e) { 5150 return this._inScope(e, f) 5151 }, l.prototype.hasNumberedHeaderElementInScope = function () { 5152 for (var e = this.elements.length - 1; e >= 0; e--) { 5153 var t = this.elements[e]; 5154 if (t.isNumberedHeader()) return !0; 5155 if (r(t)) return !1 5156 } 5157 }, l.prototype.furthestBlockForFormattingElement = function (e) { 5158 var t = null; 5159 for (var n = this.elements.length - 1; n >= 0; n--) { 5160 var r = this.elements[n]; 5161 if (r.node === e) break; 5162 r.isSpecial() && (t = r) 5163 } 5164 return t 5165 }, l.prototype.findIndex = function (e) { 5166 for (var t = this.elements.length - 1; t >= 0; t--) if (this.elements[t].localName == e) return t; 5167 return -1 5168 }, l.prototype.remove_openElements_until = function (e) { 5169 var t = !1, n; 5170 while (!t) n = this.elements.pop(), t = e(n); 5171 return n 5172 }, Object.defineProperty(l.prototype, "top", { 5173 get: function () { 5174 return this.elements[this.elements.length - 1] 5175 } 5176 }), Object.defineProperty(l.prototype, "length", { 5177 get: function () { 5178 return this.elements.length 5179 } 5180 }), n.ElementStack = l
5181 }, {}], 2: [function (e, t, n) { 5182 function o(e) { 5183 return e >= "0" && e <= "9" || e >= "a" && e <= "z" || e >= "A" && e <= "Z" 5184 } 5185 5186 function u(e) { 5187 return e >= "0" && e <= "9" || e >= "a" && e <= "f" || e >= "A" && e <= "F" 5188 } 5189 5190 function a(e) { 5191 return e >= "0" && e <= "9" 5192 } 5193 5194 var r = e("html5-entities"), i = e("./InputStream").InputStream, s = {}; 5195 Object.keys(r).forEach(function (e) { 5196 for (var t = 0; t < e.length; t++) s[e.substring(0, t + 1)] = !0 5197 }); 5198 var f = {}; 5199 f.consumeEntity = function (e, t, n) { 5200 var f = "", l = "", c = e.char(); 5201 if (c === i.EOF) return !1; 5202 l += c; 5203 if (c == " " || c == "\n" || c == "\x0b" || c == " " || c == "<" || c == "&") return e.unget(l), !1; 5204 if (n === c) return e.unget(l), !1; 5205 if (c == "#") { 5206 c = e.shift(1); 5207 if (c === i.EOF) return t._parseError("expected-numeric-entity-but-got-eof"), e.unget(l), !1; 5208 l += c; 5209 var h = 10, p = a; 5210 if (c == "x" || c == "X") { 5211 h = 16, p = u, c = e.shift(1); 5212 if (c === i.EOF) return t._parseError("expected-numeric-entity-but-got-eof"), e.unget(l), !1; 5213 l += c 5214 } 5215 if (p(c)) { 5216 var d = ""; 5217 while (c !== i.EOF && p(c)) d += c, c = e.char(); 5218 d = parseInt(d, h); 5219 var v = this.replaceEntityNumbers(d); 5220 v && (t._parseError("invalid-numeric-entity-replaced"), d = v); 5221 if (d > 65535 && d <= 1114111) { 5222 d -= 65536; 5223 var m = ((1047552 & d) >> 10) + 55296, g = (1023 & d) + 56320; 5224 f = String.fromCharCode(m, g) 5225 } else f = String.fromCharCode(d); 5226 return c !== ";" && (t._parseError("numeric-entity-without-semicolon"), e.unget(c)), f 5227 } 5228 return e.unget(l), t._parseError("expected-numeric-entity"), !1 5229 } 5230 if (c >= "a" && c <= "z" || c >= "A" && c <= "Z") { 5231 var y = ""; 5232 while (s[l]) { 5233 r[l] && (y = l); 5234 if (c == ";") break; 5235 c = e.char(); 5236 if (c === i.EOF) break; 5237 l += c 5238 } 5239 return y ? (f = r[y], c === ";" || !n || !o(c) && c !== "=" ? (l.length > y.length && e.unget(l.substring(y.length)), c !== ";" && t._parseError("named-entity-without-semicolon"), f) : (e.unget(l), !1)) : (t._parseError("expected-named-entity"), e.unget(l), !1) 5240 } 5241 }, f.replaceEntityNumbers = function (e) { 5242 switch (e) { 5243 case 0: 5244 return 65533; 5245 case 19: 5246 return 16; 5247 case 128: 5248 return 8364; 5249 case 129: 5250 return 129; 5251 case 130: 5252 return 8218; 5253 case 131: 5254 return 402; 5255 case 132: 5256 return 8222; 5257 case 133: 5258 return 8230; 5259 case 134: 5260 return 8224; 5261 case 135: 5262 return 8225; 5263 case 136: 5264 return 710; 5265 case 137: 5266 return 8240; 5267 case 138: 5268 return 352; 5269 case 139: 5270 return 8249; 5271 case 140: 5272 return 338; 5273 case 141: 5274 return 141; 5275 case 142: 5276 return 381; 5277 case 143: 5278 return 143; 5279 case 144: 5280 return 144; 5281 case 145: 5282 return 8216; 5283 case 146: 5284 return 8217; 5285 case 147: 5286 return 8220; 5287 case 148: 5288 return 8221; 5289 case 149: 5290 return 8226; 5291 case 150: 5292 return 8211; 5293 case 151: 5294 return 8212; 5295 case 152: 5296 return 732; 5297 case 153: 5298 return 8482; 5299 case 154: 5300 return 353; 5301 case 155: 5302 return 8250; 5303 case 156: 5304 return 339; 5305 case 157: 5306 return 157; 5307 case 158: 5308 return 382; 5309 case 159: 5310 return 376; 5311 default: 5312 if (e >= 55296 && e <= 57343 || e > 1114111) return 65533; 5313 if (e >= 1 && e <= 8 || e >= 14 && e <= 31 || e >= 127 && e <= 159 || e >= 64976 && e <= 65007 || e == 11 || e == 65534 || e == 131070 || e == 3145726 || e == 196607 || e == 262142 || e == 262143 || e == 327678 || e == 327679 || e == 393214 || e == 393215 || e == 458750 || e == 458751 || e == 524286 || e == 524287 || e == 589822 || e == 589823 || e == 655358 || e == 655359 || e == 720894 || e == 720895 || e == 786430 || e == 786431 || e == 851966 || e == 851967 || e == 917502 || e == 917503 || e == 983038 || e == 983039 || e == 1048574 || e == 1048575 || e == 1114110 || e == 1114111) return e 5314 } 5315 }, n.EntityParser = f 5316 }, {"./InputStream": 3, "html5-entities": 12}], 3: [function (e, t, n) { 5317 function r() { 5318 this.data = "", this.start = 0, this.committed = 0, this.eof = !1, this.lastLocation = { 5319 line: 0, 5320 column: 0 5321 } 5322 } 5323 5324 r.EOF = -1, r.DRAIN = -2, r.prototype = { 5325 slice: function () { 5326 if (this.start >= this.data.length) { 5327 if (!this.eof) throw r.DRAIN; 5328 return r.EOF 5329 } 5330 return this.data.slice(this.start, this.data.length) 5331 }, "char": function () { 5332 if (!this.eof && this.start >= this.data.length - 1) throw r.DRAIN; 5333 if (this.start >= this.data.length) return r.EOF; 5334 var e = this.data[this.start++]; 5335 return e === "\r" && (e = "\n"), e 5336 }, advance: function (e) { 5337 this.start += e; 5338 if (this.start >= this.data.length) { 5339 if (!this.eof) throw r.DRAIN; 5340 return r.EOF 5341 } 5342 this.committed > this.data.length / 2 && (this.lastLocation = this.location(), this.data = this.data.slice(this.committed), this.start = this.start - this.committed, this.committed = 0) 5343 }, matchWhile: function (e) { 5344 if (this.eof && this.start >= this.data.length) return ""; 5345 var t = new RegExp("^" + e + "+"), n = t.exec(this.slice()); 5346 if (n) { 5347 if (!this.eof && n[0].length == this.data.length - this.start) throw r.DRAIN; 5348 return this.advance(n[0].length), n[0] 5349 } 5350 return "" 5351 }, matchUntil: function (e) { 5352 var t, n; 5353 n = this.slice(); 5354 if (n === r.EOF) return ""; 5355 if (t = (new RegExp(e + (this.eof ? "|$" : ""))).exec(n)) { 5356 var i = this.data.slice(this.start, this.start + t.index); 5357 return this.advance(t.index), i.replace(/\r/g, "\n").replace(/\n{2,}/g, "\n") 5358 } 5359 throw r.DRAIN 5360 }, append: function (e) { 5361 this.data += e 5362 }, shift: function (e) { 5363 if (!this.eof && this.start + e >= this.data.length) throw r.DRAIN; 5364 if (this.eof && this.start >= this.data.length) return r.EOF; 5365 var t = this.data.slice(this.start, this.start + e).toString(); 5366 return this.advance(Math.min(e, this.data.length - this.start)), t 5367 }, peek: function (e) { 5368 if (!this.eof && this.start + e >= this.data.length) throw r.DRAIN; 5369 return this.eof && this.start >= this.data.length ? r.EOF : this.data.slice(this.start, Math.min(this.start + e, this.data.length)).toString() 5370 }, length: function () { 5371 return this.data.length - this.start - 1 5372 }, unget: function (e) { 5373 if (e === r.EOF) return; 5374 this.start -= e.length 5375 }, undo: function () { 5376 this.start = this.committed 5377 }, commit: function () { 5378 this.committed = this.start 5379 }, location: function () { 5380 var e = this.lastLocation.line, t = this.lastLocation.column, 5381 n = this.data.slice(0, this.committed), r = n.match(/\n/g), i = r ? e + r.length : e, 5382 s = r ? n.length - n.lastIndexOf("\n") - 1 : t + n.length; 5383 return {line: i, column: s} 5384 } 5385 }, n.InputStream = r 5386 }, {}], 4: [function (e, t, n) { 5387 function i(e, t, n, r) { 5388 this.localName = t, this.namespaceURI = e, this.attributes = n, this.node = r 5389 } 5390 5391 function s(e, t) { 5392 for (var n = 0; n < e.attributes.length; n++) if (e.attributes[n].nodeName == t) return e.attributes[n].nodeValue; 5393 return null 5394 } 5395 5396 var r = { 5397 "http://www.w3.org/1999/xhtml": ["address", "applet", "area", "article", "aside", "base", "basefont", "bgsound", "blockquote", "body", "br", "button", "caption", "center", "col", "colgroup", "dd", "details", "dir", "div", "dl", "dt", "embed", "fieldset", "figcaption", "figure", "footer", "form", "frame", "frameset", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "iframe", "img", "input", "isindex", "li", "link", "listing", "main", "marquee", "menu", "menuitem", "meta", "nav", "noembed", "noframes", "noscript", "object", "ol", "p", "param", "plaintext", "pre", "script", "section", "select", "source", "style", "summary", "table", "tbody", "td", "textarea", "tfoot", "th", "thead", "title", "tr", "track", "ul", "wbr", "xmp"], 5398 "http://www.w3.org/1998/Math/MathML": ["mi", "mo", "mn", "ms", "mtext", "annotation-xml"], 5399 "http://www.w3.org/2000/svg": ["foreignObject", "desc", "title"] 5400 }; 5401 i.prototype.isSpecial = function () { 5402 return this.namespaceURI in r && r[this.namespaceURI].indexOf(this.localName) > -1 5403 }, i.prototype.isFosterParenting = function () { 5404 return this.namespaceURI === "http://www.w3.org/1999/xhtml" ? this.localName === "table" || this.localName === "tbody" || this.localName === "tfoot" || this.localName === "thead" || this.localName === "tr" : !1 5405 }, i.prototype.isNumberedHeader = function () { 5406 return this.namespaceURI === "http://www.w3.org/1999/xhtml" ? this.localName === "h1" || this.localName === "h2" || this.localName === "h3" || this.localName === "h4" || this.localName === "h5" || this.localName === "h6" : !1 5407 }, i.prototype.isForeign = function () { 5408 return this.namespaceURI != "http://www.w3.org/1999/xhtml" 5409 }, i.prototype.isHtmlIntegrationPoint = function () { 5410 if (this.namespaceURI === "http://www.w3.org/1998/Math/MathML") { 5411 if (this.localName !== "annotation-xml") return !1; 5412 var e = s(this, "encoding"); 5413 return e ? (e = e.toLowerCase(), e === "text/html" || e === "application/xhtml+xml") : !1 5414 } 5415 return this.namespaceURI === "http://www.w3.org/2000/svg" ? this.localName === "foreignObject" || this.localName === "desc" || this.localName === "title" : !1 5416 }, i.prototype.isMathMLTextIntegrationPoint = function () { 5417 return this.namespaceURI === "http://www.w3.org/1998/Math/MathML" ? this.localName === "mi" || this.localName === "mo" || this.localName === "mn" || this.localName === "ms" || this.localName === "mtext" : !1 5418 }, n.StackItem = i 5419 }, {}], 5: [function (e, t, n) { 5420 function s(e) { 5421 return e === " " || e === "\n" || e === " " || e === "\r" || e === "\f" 5422 } 5423 5424 function o(e) { 5425 return e >= "A" && e <= "Z" || e >= "a" && e <= "z" 5426 } 5427 5428 function u(e) { 5429 this._tokenHandler = e, this._state = u.DATA, this._inputStream = new r, this._currentToken = null, this._temporaryBuffer = "", this._additionalAllowedCharacter = "" 5430 } 5431 5432 var r = e("./InputStream").InputStream, i = e("./EntityParser").EntityParser; 5433 u.prototype._parseError = function (e, t) { 5434 this._tokenHandler.parseError(e, t) 5435 }, u.prototype._emitToken = function (e) { 5436 if (e.type === "StartTag") for (var t = 1; t < e.data.length; t++) e.data[t].nodeName || e.data.splice(t--, 1); else e.type === "EndTag" && (e.selfClosing && this._parseError("self-closing-flag-on-end-tag"), e.data.length !== 0 && this._parseError("attributes-in-end-tag")); 5437 this._tokenHandler.processToken(e), e.type === "StartTag" && e.selfClosing && !this._tokenHandler.isSelfClosingFlagAcknowledged() && this._parseError("non-void-element-with-trailing-solidus", {name: e.name}) 5438 }, u.prototype._emitCurrentToken = function () { 5439 this._state = u.DATA, this._emitToken(this._currentToken) 5440 }, u.prototype._currentAttribute = function () { 5441 return this._currentToken.data[this._currentToken.data.length - 1] 5442 }, u.prototype.setState = function (e) { 5443 this._state = e 5444 }, u.prototype.tokenize = function (e) { 5445 function n(e) { 5446 var n = e.char(); 5447 if (n === r.EOF) return t._emitToken({type: "EOF", data: null}), !1; 5448 if (n === "&") t.setState(a); else if (n === "<") t.setState(j); else if (n === "\0") t._emitToken({ 5449 type: "Characters", 5450 data: n 5451 }), e.commit(); else { 5452 var i = e.matchUntil("&|<|\0"); 5453 t._emitToken({type: "Characters", data: n + i}), e.commit() 5454 } 5455 return !0 5456 } 5457 5458 function a(e) { 5459 var r = i.consumeEntity(e, t); 5460 return t.setState(n), t._emitToken({type: "Characters", data: r || "&"}), !0 5461 } 5462 5463 function f(e) { 5464 var n = e.char(); 5465 if (n === r.EOF) return t._emitToken({type: "EOF", data: null}), !1; 5466 if (n === "&") t.setState(l); else if (n === "<") t.setState(d); else if (n === "\0") t._parseError("invalid-codepoint"), t._emitToken({ 5467 type: "Characters", 5468 data: "\ufffd" 5469 }), e.commit(); else { 5470 var i = e.matchUntil("&|<|\0"); 5471 t._emitToken({type: "Characters", data: n + i}), e.commit() 5472 } 5473 r
5473eturn !0 5474 } 5475 5476 function l(e) { 5477 var n = i.consumeEntity(e, t); 5478 return t.setState(f), t._emitToken({type: "Characters", data: n || "&"}), !0 5479 } 5480 5481 function c(e) { 5482 var n = e.char(); 5483 if (n === r.EOF) return t._emitToken({type: "EOF", data: null}), !1; 5484 if (n === "<") t.setState(g); else if (n === "\0") t._parseError("invalid-codepoint"), t._emitToken({ 5485 type: "Characters", 5486 data: "\ufffd" 5487 }), e.commit(); else { 5488 var i = e.matchUntil("<|\0"); 5489 t._emitToken({type: "Characters", data: n + i}) 5490 } 5491 return !0 5492 } 5493 5494 function h(e) { 5495 var n = e.char(); 5496 if (n === r.EOF) return t._emitToken({type: "EOF", data: null}), !1; 5497 if (n === "\0") t._parseError("invalid-codepoint"), t._emitToken({ 5498 type: "Characters", 5499 data: "\ufffd" 5500 }), e.commit(); else { 5501 var i = e.matchUntil("\0"); 5502 t._emitToken({type: "Characters", data: n + i}) 5503 } 5504 return !0 5505 } 5506 5507 function p(e) { 5508 var n = e.char(); 5509 if (n === r.EOF) return t._emitToken({type: "EOF", data: null}), !1; 5510 if (n === "<") t.setState(w); else if (n === "\0") t._parseError("invalid-codepoint"), t._emitToken({ 5511 type: "Characters", 5512 data: "\ufffd" 5513 }), e.commit(); else { 5514 var i = e.matchUntil("<|\0"); 5515 t._emitToken({type: "Characters", data: n + i}) 5516 } 5517 return !0 5518 } 5519 5520 function d(e) { 5521 var n = e.char(); 5522 return n === "/" ? (this._temporaryBuffer = "", t.setState(v)) : (t._emitToken({ 5523 type: "Characters", 5524 data: "<" 5525 }), e.unget(n), t.setState(f)), !0 5526 } 5527 5528 function v(e) { 5529 var n = e.char(); 5530 return o(n) ? (this._temporaryBuffer += n, t.setState(m)) : (t._emitToken({ 5531 type: "Characters", 5532 data: "</" 5533 }), e.unget(n), t.setState(f)), !0 5534 } 5535 5536 function m(e) { 5537 var r = t._currentToken && t._currentToken.name === this._temporaryBuffer.toLowerCase(), 5538 i = e.char(); 5539 return s(i) && r ? (t._currentToken = { 5540 type: "EndTag", 5541 name: this._temporaryBuffer, 5542 data: [], 5543 selfClosing: !1 5544 }, t.setState(q)) : i === "/" && r ? (t._currentToken = { 5545 type: "EndTag", 5546 name: this._temporaryBuffer, 5547 data: [], 5548 selfClosing: !1 5549 }, t.setState(K)) : i === ">" && r ? (t._currentToken = { 5550 type: "EndTag", 5551 name: this._temporaryBuffer, 5552 data: [], 5553 selfClosing: !1 5554 }, t._emitCurrentToken(), t.setState(n)) : o(i) ? (this._temporaryBuffer += i, e.commit()) : (t._emitToken({ 5555 type: "Characters", 5556 data: "</" + this._temporaryBuffer 5557 }), e.unget(i), t.setState(f)), !0 5558 } 5559 5560 function g(e) { 5561 var n = e.char(); 5562 return n === "/" ? (this._temporaryBuffer = "", t.setState(y)) : (t._emitToken({ 5563 type: "Characters", 5564 data: "<" 5565 }), e.unget(n), t.setState(c)), !0 5566 } 5567 5568 function y(e) { 5569 var n = e.char(); 5570 return o(n) ? (this._temporaryBuffer += n, t.setState(b)) : (t._emitToken({ 5571 type: "Characters", 5572 data: "</" 5573 }), e.unget(n), t.setState(c)), !0 5574 } 5575 5576 function b(e) { 5577 var r = t._currentToken && t._currentToken.name === this._temporaryBuffer.toLowerCase(), 5578 i = e.char(); 5579 return s(i) && r ? (t._currentToken = { 5580 type: "EndTag", 5581 name: this._temporaryBuffer, 5582 data: [], 5583 selfClosing: !1 5584 }, t.setState(q)) : i === "/" && r ? (t._currentToken = { 5585 type: "EndTag", 5586 name: this._temporaryBuffer, 5587 data: [], 5588 selfClosing: !1 5589 }, t.setState(K)) : i === ">" && r ? (t._currentToken = { 5590 type: "EndTag", 5591 name: this._temporaryBuffer, 5592 data: [], 5593 selfClosing: !1 5594 }, t._emitCurrentToken(), t.setState(n)) : o(i) ? (this._temporaryBuffer += i, e.commit()) : (t._emitToken({ 5595 type: "Characters", 5596 data: "</" + this._temporaryBuffer 5597 }), e.unget(i), t.setState(c)), !0 5598 } 5599 5600 function w(e) { 5601 var n = e.char(); 5602 return n === "/" ? (this._temporaryBuffer = "", t.setState(E)) : n === "!" ? (t._emitToken({ 5603 type: "Characters", 5604 data: "<!" 5605 }), t.setState(x)) : (t._emitToken({type: "Characters", data: "<"}), e.unget(n), t.setState(p)), !0 5606 } 5607 5608 function E(e) { 5609 var n = e.char(); 5610 return o(n) ? (this._temporaryBuffer += n, t.setState(S)) : (t._emitToken({ 5611 type: "Characters", 5612 data: "</" 5613 }), e.unget(n), t.setState(p)), !0 5614 } 5615 5616 function S(e) { 5617 var n = t._currentToken && t._currentToken.name === this._temporaryBuffer.toLowerCase(), 5618 r = e.char(); 5619 return s(r) && n ? (t._currentToken = { 5620 type: "EndTag", 5621 name: "script", 5622 data: [], 5623 selfClosing: !1 5624 }, t.setState(q)) : r === "/" && n ? (t._currentToken = { 5625 type: "EndTag", 5626 name: "script", 5627 data: [], 5628 selfClosing: !1 5629 }, t.setState(K)) : r === ">" && n ? (t._currentToken = { 5630 type: "EndTag", 5631 name: "script", 5632 data: [], 5633 selfClosing: !1 5634 }, t._emitCurrentToken()) : o(r) ? (this._temporaryBuffer += r, e.commit()) : (t._emitToken({ 5635 type: "Characters", 5636 data: "</" + this._temporaryBuffer 5637 }), e.unget(r), t.setState(p)), !0 5638 } 5639 5640 function x(e) { 5641 var n = e.char(); 5642 return n === "-" ? (t._emitToken({ 5643 type: "Characters", 5644 data: "-" 5645 }), t.setState(T)) : (e.unget(n), t.setState(p)), !0 5646 } 5647 5648 function T(e) { 5649 var n = e.char(); 5650 return n === "-" ? (t._emitToken({ 5651 type: "Characters", 5652 data: "-" 5653 }), t.setState(k)) : (e.unget(n), t.setState(p)), !0 5654 } 5655 5656 function N(e) { 5657 var i = e.char(); 5658 if (i === r.EOF) e.unget(i), t.setState(n); else if (i === "-") t._emitToken({ 5659 type: "Characters", 5660 data: "-" 5661 }), t.setState(C); else if (i === "<") t.setState(L); else if (i === "\0") t._parseError("invalid-codepoint"), t._emitToken({ 5662 type: "Characters", 5663 data: "\ufffd" 5664 }), e.commit(); else { 5665 var s = e.matchUntil("<|-|\0"); 5666 t._emitToken({type: "Characters", data: i + s}) 5667 } 5668 return !0 5669 } 5670 5671 function C(e) { 5672 var i = e.char(); 5673 return i === r.EOF ? (e.unget(i), t.setState(n)) : i === "-" ? (t._emitToken({ 5674 type: "Characters", 5675 data: "-" 5676 }), t.setState(k)) : i === "<" ? t.setState(L) : i === "\0" ? (t._parseError("invalid-codepoint"), t._emitToken({ 5677 type: "Characters", 5678 data: "\ufffd" 5679 }), t.setState(N)) : (t._emitToken({type: "Characters", data: i}), t.setState(N)), !0 5680 } 5681 5682 function k(e) { 5683 var i = e.char(); 5684 return i === r.EOF ? (t._parseError("eof-in-script"), e.unget(i), t.setState(n)) : i === "<" ? t.setState(L) : i === ">" ? (t._emitToken({ 5685 type: "Characters", 5686 data: ">" 5687 }), t.setState(p)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._emitToken({ 5688 type: "Characters", 5689 data: "\ufffd" 5690 }), t.setState(N)) : (t._emitToken({type: "Characters", data: i}), t.setState(N)), !0 5691 } 5692 5693 function L(e) { 5694 var n = e.char(); 5695 return n === "/" ? (this._temporaryBuffer = "", t.setState(A)) : o(n) ? (t._emitToken({ 5696 type: "Characters", 5697 data: "<" + n 5698 }), this._temporaryBuffer = n, t.setState(M)) : (t._emitToken({ 5699 type: "Characters", 5700 data: "<" 5701 }), e.unget(n), t.setState(N)), !0 5702 } 5703 5704 function A(e) { 5705 var n = e.char(); 5706 return o(n) ? (this._temporaryBuffer = n, t.setState(O)) : (t._emitToken({ 5707 type: "Characters", 5708 data: "</" 5709 }), e.unget(n), t.setState(N)), !0 5710 } 5711 5712 function O(e) { 5713 var r = t._currentToken && t._currentToken.name === this._temporaryBuffer.toLowerCase(), 5714 i = e.char(); 5715 return s(i) && r ? (t._currentToken = { 5716 type: "EndTag", 5717 name: "script", 5718 data: [], 5719 selfClosing: !1 5720 }, t.setState(q)) : i === "/" && r ? (t._currentToken = { 5721 type: "EndTag", 5722 name: "script", 5723 data: [], 5724 selfClosing: !1 5725 }, t.setState(K)) : i === ">" && r ? (t._currentToken = { 5726 type: "EndTag", 5727 name: "script", 5728 data: [], 5729 selfClosing: !1 5730 }, t.setState(n), t._emitCurrentToken()) : o(i) ? (this._temporaryBuffer += i, e.commit()) : (t._emitToken({ 5731 type: "Characters", 5732 data: "</" + this._temporaryBuffer 5733 }), e.unget(i), t.setState(N)), !0 5734 } 5735 5736 function M(e) { 5737 var n = e.char(); 5738 return s(n) || n === "/" || n === ">" ? (t._emitToken({ 5739 type: "Characters", 5740 data: n 5741 }), this._temporaryBuffer.toLowerCase() === "script" ? t.setState(_) : t.setState(N)) : o(n) ? (t._emitToken({ 5742 type: "Characters", 5743 data: n 5744 }), this._temporaryBuffer += n, e.commit()) : (e.unget(n), t.setState(N)), !0 5745 } 5746 5747 function _(e) { 5748 var i = e.char(); 5749 return i === r.EOF ? (t._parseError("eof-in-script"), e.unget(i), t.setState(n)) : i === "-" ? (t._emitToken({ 5750 type: "Characters", 5751 data: "-" 5752 }), t.setState(D)) : i === "<" ? (t._emitToken({ 5753 type: "Characters", 5754 data: "<" 5755 }), t.setState(H)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._emitToken({ 5756 type: "Characters", 5757 data: "\ufffd" 5758 }), e.commit()) : (t._emitToken({type: "Characters", data: i}), e.commit()), !0 5759 } 5760 5761 function D(e) { 5762 var i = e.char(); 5763 return i === r.EOF ? (t._parseError("eof-in-script"), e.unget(i), t.setState(n)) : i === "-" ? (t._emitToken({ 5764 type: "Characters", 5765 data: "-" 5766 }), t.setState(P)) : i === "<" ? (t._emitToken({ 5767 type: "Characters", 5768 data: "<" 5769 }), t.setState(H)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._emitToken({ 5770 type: "Characters", 5771 data: "\ufffd" 5772 }), t.setState(_)) : (t._emitToken({type: "Characters", data: i}), t.setState(_)), !0 5773 } 5774 5775 function P(e) { 5776 var i = e.char(); 5777 return i === r.EOF ? (t._parseError("eof-in-script"), e.unget(i), t.setState(n)) : i === "-" ? (t._emitToken({ 5778 type: "Characters", 5779 data: "-" 5780 }), e.commit()) : i === "<" ? (t._emitToken({ 5781 type: "Characters", 5782 data: "<" 5783 }), t.setState(H)) : i === ">" ? (t._emitToken({ 5784 type: "Characters", 5785 data: ">" 5786 }), t.setState(p)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._emitToken({ 5787 type: "Characters", 5788 data: "\ufffd" 5789 }), t.setState(_)) : (t._emitToken({type: "Characters", data: i}), t.setState(_)), !0 5790 } 5791 5792 function H(e) { 5793 var n = e.char(); 5794 return n === "/" ? (t._emitToken({ 5795 type: "Characters", 5796 data: "/" 5797 }), this._temporaryBuffer = "", t.setState(B)) : (e.unget(n), t.setState(_)), !0 5798 } 5799 5800 function B(e) { 5801 var n = e.char(); 5802 return s(n) || n === "/" || n === ">" ? (t._emitToken({ 5803 type: "Characters", 5804 data: n 5805 }), this._temporaryBuffer.toLowerCase() === "script" ? t.setState(N) : t.setState(_)) : o(n) ? (t._emitToken({ 5806 type: "Characters", 5807 data: n 5808 }), this._temporaryBuffer += n, e.commit()) : (e.unget(n), t.setState(_)), !0 5809 } 5810 5811 function j(e) { 5812 var i = e.char(); 5813 return i === r.EOF ? (t._parseError("bare-less-than-sign-at-eof"), t._emitToken({ 5814 type: "Characters", 5815 data: "<" 5816 }), e.unget(i), t.setState(n)) : o(i) ? (t._currentToken = { 5817 type: "StartTag", 5818 name: i.toLowerCase(), 5819 data: [] 5820 }, t.setState(I)) : i === "!" ? t.setState(G) : i === "/" ? t.setState(F) : i === ">"
5820 ? (t._parseError("expected-tag-name-but-got-right-bracket"), t._emitToken({ 5821 type: "Characters", 5822 data: "<>" 5823 }), t.setState(n)) : i === "?" ? (t._parseError("expected-tag-name-but-got-question-mark"), e.unget(i), t.setState(Q)) : (t._parseError("expected-tag-name"), t._emitToken({ 5824 type: "Characters", 5825 data: "<" 5826 }), e.unget(i), t.setState(n)), !0 5827 } 5828 5829 function F(e) { 5830 var i = e.char(); 5831 return i === r.EOF ? (t._parseError("expected-closing-tag-but-got-eof"), t._emitToken({ 5832 type: "Characters", 5833 data: "</" 5834 }), e.unget(i), t.setState(n)) : o(i) ? (t._currentToken = { 5835 type: "EndTag", 5836 name: i.toLowerCase(), 5837 data: [] 5838 }, t.setState(I)) : i === ">" ? (t._parseError("expected-closing-tag-but-got-right-bracket"), t.setState(n)) : (t._parseError("expected-closing-tag-but-got-char", {data: i}), e.unget(i), t.setState(Q)), !0 5839 } 5840 5841 function I(e) { 5842 var i = e.char(); 5843 return i === r.EOF ? (t._parseError("eof-in-tag-name"), e.unget(i), t.setState(n)) : s(i) ? t.setState(q) : o(i) ? t._currentToken.name += i.toLowerCase() : i === ">" ? t._emitCurrentToken() : i === "/" ? t.setState(K) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.name += "\ufffd") : t._currentToken.name += i, e.commit(), !0 5844 } 5845 5846 function q(e) { 5847 var i = e.char(); 5848 if (i === r.EOF) t._parseError("expected-attribute-name-but-got-eof"), e.unget(i), t.setState(n); else { 5849 if (s(i)) return !0; 5850 o(i) ? (t._currentToken.data.push({ 5851 nodeName: i.toLowerCase(), 5852 nodeValue: "" 5853 }), t.setState(R)) : i === ">" ? t._emitCurrentToken() : i === "/" ? t.setState(K) : i === "'" || i === '"' || i === "=" || i === "<" ? (t._parseError("invalid-character-in-attribute-name"), t._currentToken.data.push({ 5854 nodeName: i, 5855 nodeValue: "" 5856 }), t.setState(R)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.data.push({ 5857 nodeName: "\ufffd", 5858 nodeValue: "" 5859 })) : (t._currentToken.data.push({nodeName: i, nodeValue: ""}), t.setState(R)) 5860 } 5861 return !0 5862 } 5863 5864 function R(e) { 5865 var i = e.char(), u = !0, a = !1; 5866 i === r.EOF ? (t._parseError("eof-in-attribute-name"), e.unget(i), t.setState(n), a = !0) : i === "=" ? t.setState(z) : o(i) ? (t._currentAttribute().nodeName += i.toLowerCase(), u = !1) : i === ">" ? a = !0 : s(i) ? t.setState(U) : i === "/" ? t.setState(K) : i === "'" || i === '"' ? (t._parseError("invalid-character-in-attribute-name"), t._currentAttribute().nodeName += i, u = !1) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentAttribute().nodeName += "\ufffd") : (t._currentAttribute().nodeName += i, u = !1); 5867 if (u) { 5868 var f = t._currentToken.data, l = f[f.length - 1]; 5869 for (var c = f.length - 2; c >= 0; c--) if (l.nodeName === f[c].nodeName) { 5870 t._parseError("duplicate-attribute", {name: l.nodeName}), l.nodeName = null; 5871 break 5872 } 5873 a && t._emitCurrentToken() 5874 } else e.commit(); 5875 return !0 5876 } 5877 5878 function U(e) { 5879 var i = e.char(); 5880 if (i === r.EOF) t._parseError("expected-end-of-tag-but-got-eof"), e.unget(i), t.setState(n); else { 5881 if (s(i)) return !0; 5882 i === "=" ? t.setState(z) : i === ">" ? t._emitCurrentToken() : o(i) ? (t._currentToken.data.push({ 5883 nodeName: i, 5884 nodeValue: "" 5885 }), t.setState(R)) : i === "/" ? t.setState(K) : i === "'" || i === '"' || i === "<" ? (t._parseError("invalid-character-after-attribute-name"), t._currentToken.data.push({ 5886 nodeName: i, 5887 nodeValue: "" 5888 }), t.setState(R)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.data.push({ 5889 nodeName: "\ufffd", 5890 nodeValue: "" 5891 })) : (t._currentToken.data.push({nodeName: i, nodeValue: ""}), t.setState(R)) 5892 } 5893 return !0 5894 } 5895 5896 function z(e) { 5897 var i = e.char(); 5898 if (i === r.EOF) t._parseError("expected-attribute-value-but-got-eof"), e.unget(i), t.setState(n); else { 5899 if (s(i)) return !0; 5900 i === '"' ? t.setState(W) : i === "&" ? (t.setState(V), e.unget(i)) : i === "'" ? t.setState(X) : i === ">" ? (t._parseError("expected-attribute-value-but-got-right-bracket"), t._emitCurrentToken()) : i === "=" || i === "<" || i === "`" ? (t._parseError("unexpected-character-in-unquoted-attribute-value"), t._currentAttribute().nodeValue += i, t.setState(V)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentAttribute().nodeValue += "\ufffd") : (t._currentAttribute().nodeValue += i, t.setState(V)) 5901 } 5902 return !0 5903 } 5904 5905 function W(e) { 5906 var i = e.char(); 5907 if (i === r.EOF) t._parseError("eof-in-attribute-value-double-quote"), e.unget(i), t.setState(n); else if (i === '"') t.setState(J); else if (i === "&") this._additionalAllowedCharacter = '"', t.setState($); else if (i === "\0") t._parseError("invalid-codepoint"), t._currentAttribute().nodeValue += "\ufffd"; else { 5908 var s = e.matchUntil('[\0"&]'); 5909 i += s, t._currentAttribute().nodeValue += i 5910 } 5911 return !0 5912 } 5913 5914 function X(e) { 5915 var i = e.char(); 5916 return i === r.EOF ? (t._parseError("eof-in-attribute-value-single-quote"), e.unget(i), t.setState(n)) : i === "'" ? t.setState(J) : i === "&" ? (this._additionalAllowedCharacter = "'", t.setState($)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentAttribute().nodeValue += "\ufffd") : t._currentAttribute().nodeValue += i + e.matchUntil("\0|['&]"), !0 5917 } 5918 5919 function V(e) { 5920 var i = e.char(); 5921 if (i === r.EOF) t._parseError("eof-after-attribute-value"), e.unget(i), t.setState(n); else if (s(i)) t.setState(q); else if (i === "&") this._additionalAllowedCharacter = ">", t.setState($); else if (i === ">") t._emitCurrentToken(); else if (i === '"' || i === "'" || i === "=" || i === "`" || i === "<") t._parseError("unexpected-character-in-unquoted-attribute-value"), t._currentAttribute().nodeValue += i, e.commit(); else if (i === "\0") t._parseError("invalid-codepoint"), t._currentAttribute().nodeValue += "\ufffd"; else { 5922 var o = e.matchUntil("\0|[ \n\x0b\f \r&<>\"'=`]"); 5923 o === r.EOF && (t._parseError("eof-in-attribute-value-no-quotes"), t._emitCurrentToken()), e.commit(), t._currentAttribute().nodeValue += i + o 5924 } 5925 return !0 5926 } 5927 5928 function $(e) { 5929 var n = i.consumeEntity(e, t, this._additionalAllowedCharacter); 5930 return this._currentAttribute().nodeValue += n || "&", this._additionalAllowedCharacter === '"' ? t.setState(W) : this._additionalAllowedCharacter === "'" ? t.setState(X) : this._additionalAllowedCharacter === ">" && t.setState(V), !0 5931 } 5932 5933 function J(e) { 5934 var i = e.char(); 5935 return i === r.EOF ? (t._parseError("eof-after-attribute-value"), e.unget(i), t.setState(n)) : s(i) ? t.setState(q) : i === ">" ? (t.setState(n), t._emitCurrentToken()) : i === "/" ? t.setState(K) : (t._parseError("unexpected-character-after-attribute-value"), e.unget(i), t.setState(q)), !0 5936 } 5937 5938 function K(e) { 5939 var i = e.char(); 5940 return i === r.EOF ? (t._parseError("unexpected-eof-after-solidus-in-tag"), e.unget(i), t.setState(n)) : i === ">" ? (t._currentToken.selfClosing = !0, t.setState(n), t._emitCurrentToken()) : (t._parseError("unexpected-character-after-solidus-in-tag"), e.unget(i), t.setState(q)), !0 5941 } 5942 5943 function Q(e) { 5944 var r = e.matchUntil(">"); 5945 return r = r.replace(/\u0000/g, "\ufffd"), e.char(), t._emitToken({ 5946 type: "Comment", 5947 data: r 5948 }), t.setState(n), !0 5949 } 5950 5951 function G(e) { 5952 var n = e.shift(2); 5953 if (n === "--") t._currentToken = {type: "Comment", data: ""}, t.setState(Z); else { 5954 var i = e.shift(5); 5955 if (i === r.EOF || n === r.EOF) return t._parseError("expected-dashes-or-doctype"), t.setState(Q), e.unget(n), !0; 5956 n += i, n.toUpperCase() === "DOCTYPE" ? (t._currentToken = { 5957 type: "Doctype", 5958 name: "", 5959 publicId: null, 5960 systemId: null, 5961 forceQuirks: !1 5962 }, t.setState(st)) : t._tokenHandler.isCdataSectionAllowed() && n === "[CDATA[" ? t.setState(Y) : (t._parseError("expected-dashes-or-doctype"), e.unget(n), t.setState(Q)) 5963 } 5964 return !0 5965 } 5966 5967 function Y(e) { 5968 var r = e.matchUntil("]]>"); 5969 return e.shift(3), r && t._emitToken({type: "Characters", data: r}), t.setState(n), !0 5970 } 5971 5972 function Z(e) { 5973 var i = e.char(); 5974 return i === r.EOF ? (t._parseError("eof-in-comment"), t._emitToken(t._currentToken), e.unget(i), t.setState(n)) : i === "-" ? t.setState(et) : i === ">" ? (t._parseError("incorrect-comment"), t._emitToken(t._currentToken), t.setState(n)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.data += "\ufffd") : (t._currentToken.data += i, t.setState(tt)), !0 5975 } 5976 5977 function et(e) { 5978 var i = e.char(); 5979 return i === r.EOF ? (t._parseError("eof-in-comment"), t._emitToken(t._currentToken), e.unget(i), t.setState(n)) : i === "-" ? t.setState(rt) : i === ">" ? (t._parseError("incorrect-comment"), t._emitToken(t._currentToken), t.setState(n)) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.data += "\ufffd") : (t._currentToken.data += "-" + i, t.setState(tt)), !0 5980 } 5981 5982 function tt(e) { 5983 var i = e.char(); 5984 return i === r.EOF ? (t._parseError("eof-in-comment"), t._emitToken(t._currentToken), e.unget(i), t.setState(n)) : i === "-" ? t.setState(nt) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.data += "\ufffd") : (t._currentToken.data += i, e.commit()), !0 5985 } 5986 5987 function nt(e) { 5988 var i = e.char(); 5989 return i === r.EOF ? (t._parseError("eof-in-comment-end-dash"), t._emitToken(t._currentToken), e.unget(i), t.setState(n)) : i === "-" ? t.setState(rt) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.data += "-\ufffd", t.setState(tt)) : (t._currentToken.data += "-" + i + e.matchUntil("\0|-"), e.char()), !0 5990 } 5991 5992 function rt(e) { 5993 var i = e.char(); 5994 return i === r.EOF ? (t._parseError("eof-in-comment-double-dash"), t._emitToken(t._currentToken), e.unget(i), t.setState(n)) : i === ">" ? (t._emitToken(t._currentToken), t.setState(n)) : i === "!" ? (t._parseError("unexpected-bang-after-double-dash-in-comment"), t.setState(it)) : i === "-" ? (t._parseError("unexpected-dash-after-double-dash-in-comment"), t._currentToken.data += i) : i === "\0" ? (t._parseError("invalid-codepoint"), t._currentToken.data += "--\ufffd", t.setState(tt)) : (t._parseError("unexpected-char-in-comment"), t._currentToken.data += "--" + i, t.setState(tt)), !0 5995 } 5996 5997 function it(e) { 5998 var i = e.char(); 5999 return i === r.EOF ? (t._parseError("eof-in-comment-end-bang-state"), t._emitToken(t._currentToken), e.unget(i), t.setState(n)) : i === ">" ? (t._emitToken(t._currentToken), t.setState(n)) : i === "-" ? (t._currentToken.data += "--!", t.setState(nt)) : (t._currentToken.data += "--!" + i, t.setState(tt)), !0 6000 } 6001 6002 function st(e) { 6003 var i = e.char(); 6004 return i === r.EOF ? (t._parseError("expected-doctype-name-but-got-eof"), t._currentToken.forceQuirks = !0, e.unget(i), t.setState(n), t._emitCurrentToken()) : s(i) ? t.setState(ot) : (t._parseError("need-space-after-doctype"), e.unget(i), t.setState(ot)), !0 6005 } 6006 6007 function ot(e) { 6008 var i = e.char(); 6009 return i === r.EOF ? (t._parseError("expected-doctype-name-but-got-eof"), t._currentToken.forceQuirks = !0, e.unget(i), t.setState(n), t._emitCurrentToken()) : s(i) || (i === ">" ? (t._parseError("expected-doctype-name-but-got-right-bracket"), t._currentToken.forceQuirks = !0, t.setState(n), t._emitCurrentToken()) : (o(i) && (i = i.toLowerCase()), t._currentToken.name = i, t.setState(ut))), !0 6010 } 6011 6012 function ut(e) { 6013 var i = e.char(); 6014 return i === r.EOF ? (t._currentToken.forceQuirks = !0, e.unget(i), t._parseError("eof-in-doctype-name"), t.setState(n), t._emitCurrentToken()) : s(i) ? t.setState(at) : i === ">" ? (t.setState(n), t._emitCurrentToken()) : (o(i) && (i = i.toLowerCase()), t._currentToken.name += i, e.commit()), !0 6015 } 6016 6017 function at(e) { 6018 var i = e.char(); 6019 if (i === r.EOF) t._currentToken.forceQuirks = !0, e.unget(i), t._parseError("eof-in-doctype"), t.setState(n), t._emitCurrentToken(); else if (!s(i)) if (i === ">") t.setState(n), t._emitCurrentToken(); else { 6020 if (["p", "P"].indexOf(i) > -1) { 6021 var o = [["u", "U"], ["b", "B"], ["l", "L"], ["i", "I"], ["c", "C"]], 6022 u = o.every(function (t) { 6023 return i = e.char(), t.indexOf(i) > -1 6024 }); 6025 if (u) return t.setState(ft), !0 6026 } else if (["s", "S"].indexOf(i) > -1) { 6027 var o = [["y", "Y"], ["s", "S"], ["t", "T"], ["e", "E"], ["m", "M"]], 6028 u = o.every(function (t) { 6029 return i = e.char(), t.indexOf(i) > -1 6030 }); 6031 if (u) return t.setState(vt), !0 6032 } 6033 e.unget(i), t._currentToken.forceQuirks = !0, i === r.EOF ? (t._parseError("eof-in-doctype"), e.unget(i), t.setState(n), t._emitCurrentToken()) : (t._parseError("expected-space-or-right-bracket-in-doctype", {data: i}), t.setState(wt)) 6034 } 6035 return !0 6036 } 6037 6038 function ft(e) { 6039 var i = e.char(); 6040 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, e.unget(i), t.setState(n), t._emitCurrentToken()) : s
6040(i) ? t.setState(lt) : i === "'" || i === '"' ? (t._parseError("unexpected-char-in-doctype"), e.unget(i), t.setState(lt)) : (e.unget(i), t.setState(lt)), !0 6041 } 6042 6043 function lt(e) { 6044 var i = e.char(); 6045 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, e.unget(i), t.setState(n), t._emitCurrentToken()) : s(i) || (i === '"' ? (t._currentToken.publicId = "", t.setState(ct)) : i === "'" ? (t._currentToken.publicId = "", t.setState(ht)) : i === ">" ? (t._parseError("unexpected-end-of-doctype"), t._currentToken.forceQuirks = !0, t.setState(n), t._emitCurrentToken()) : (t._parseError("unexpected-char-in-doctype"), t._currentToken.forceQuirks = !0, t.setState(wt))), !0 6046 } 6047 6048 function ct(e) { 6049 var i = e.char(); 6050 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, e.unget(i), t.setState(n), t._emitCurrentToken()) : i === '"' ? t.setState(pt) : i === ">" ? (t._parseError("unexpected-end-of-doctype"), t._currentToken.forceQuirks = !0, t.setState(n), t._emitCurrentToken()) : t._currentToken.publicId += i, !0 6051 } 6052 6053 function ht(e) { 6054 var i = e.char(); 6055 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, e.unget(i), t.setState(n), t._emitCurrentToken()) : i === "'" ? t.setState(pt) : i === ">" ? (t._parseError("unexpected-end-of-doctype"), t._currentToken.forceQuirks = !0, t.setState(n), t._emitCurrentToken()) : t._currentToken.publicId += i, !0 6056 } 6057 6058 function pt(e) { 6059 var i = e.char(); 6060 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), e.unget(i), t.setState(n)) : s(i) ? t.setState(dt) : i === ">" ? (t.setState(n), t._emitCurrentToken()) : i === '"' ? (t._parseError("unexpected-char-in-doctype"), t._currentToken.systemId = "", t.setState(gt)) : i === "'" ? (t._parseError("unexpected-char-in-doctype"), t._currentToken.systemId = "", t.setState(yt)) : (t._parseError("unexpected-char-in-doctype"), t._currentToken.forceQuirks = !0, t.setState(wt)), !0 6061 } 6062 6063 function dt(e) { 6064 var i = e.char(); 6065 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), e.unget(i), t.setState(n)) : s(i) || (i === ">" ? (t._emitCurrentToken(), t.setState(n)) : i === '"' ? (t._currentToken.systemId = "", t.setState(gt)) : i === "'" ? (t._currentToken.systemId = "", t.setState(yt)) : (t._parseError("unexpected-char-in-doctype"), t._currentToken.forceQuirks = !0, t.setState(wt))), !0 6066 } 6067 6068 function vt(e) { 6069 var i = e.char(); 6070 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), e.unget(i), t.setState(n)) : s(i) ? t.setState(mt) : i === "'" || i === '"' ? (t._parseError("unexpected-char-in-doctype"), e.unget(i), t.setState(mt)) : (e.unget(i), t.setState(mt)), !0 6071 } 6072 6073 function mt(e) { 6074 var i = e.char(); 6075 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), e.unget(i), t.setState(n)) : s(i) || (i === '"' ? (t._currentToken.systemId = "", t.setState(gt)) : i === "'" ? (t._currentToken.systemId = "", t.setState(yt)) : i === ">" ? (t._parseError("unexpected-end-of-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), t.setState(n)) : (t._parseError("unexpected-char-in-doctype"), t._currentToken.forceQuirks = !0, t.setState(wt))), !0 6076 } 6077 6078 function gt(e) { 6079 var i = e.char(); 6080 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), e.unget(i), t.setState(n)) : i === '"' ? t.setState(bt) : i === ">" ? (t._parseError("unexpected-end-of-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), t.setState(n)) : t._currentToken.systemId += i, !0 6081 } 6082 6083 function yt(e) { 6084 var i = e.char(); 6085 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), e.unget(i), t.setState(n)) : i === "'" ? t.setState(bt) : i === ">" ? (t._parseError("unexpected-end-of-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), t.setState(n)) : t._currentToken.systemId += i, !0 6086 } 6087 6088 function bt(e) { 6089 var i = e.char(); 6090 return i === r.EOF ? (t._parseError("eof-in-doctype"), t._currentToken.forceQuirks = !0, t._emitCurrentToken(), e.unget(i), t.setState(n)) : s(i) || (i === ">" ? (t._emitCurrentToken(), t.setState(n)) : (t._parseError("unexpected-char-in-doctype"), t.setState(wt))), !0 6091 } 6092 6093 function wt(e) { 6094 var i = e.char(); 6095 return i === r.EOF ? (e.unget(i), t._emitCurrentToken(), t.setState(n)) : i === ">" && (t._emitCurrentToken(), t.setState(n)), !0 6096 } 6097 6098 u.DATA = n, u.RCDATA = f, u.RAWTEXT = c, u.SCRIPT_DATA = p, u.PLAINTEXT = h, this._state = u.DATA, this._inputStream.append(e), this._tokenHandler.startTokenization(this), this._inputStream.eof = !0; 6099 var t = this; 6100 while (this._state.call(this, this._inputStream)) ; 6101 }, Object.defineProperty(u.prototype, "lineNumber", { 6102 get: function () { 6103 return this._inputStream.location().line 6104 } 6105 }), Object.defineProperty(u.prototype, "columnNumber", { 6106 get: function () { 6107 return this._inputStream.location().column 6108 } 6109 }), n.Tokenizer = u 6110 }, {"./EntityParser": 2, "./InputStream": 3}], 6: [function (e, t, n) { 6111 function c(e) { 6112 return e === " " || e === "\n" || e === " " || e === "\r" || e === "\f" 6113 } 6114 6115 function h(e) { 6116 return c(e) || e === "\ufffd" 6117 } 6118 6119 function p(e) { 6120 for (var t = 0; t < e.length; t++) { 6121 var n = e[t]; 6122 if (!c(n)) return !1 6123 } 6124 return !0 6125 } 6126 6127 function d(e) { 6128 for (var t = 0; t < e.length; t++) { 6129 var n = e[t]; 6130 if (!h(n)) return !1 6131 } 6132 return !0 6133 } 6134 6135 function v(e, t) { 6136 for (var n = 0; n < e.attributes.length; n++) { 6137 var r = e.attributes[n]; 6138 if (r.nodeName === t) return r 6139 } 6140 return null 6141 } 6142 6143 function m(e) { 6144 this.characters = e, this.current = 0, this.end = this.characters.length 6145 } 6146 6147 function g() { 6148 this.tokenizer = null, this.errorHandler = null, this.scriptingEnabled = !1, this.document = null, this.head = null, this.form = null, this.openElements = new a, this.activeFormattingElements = [], this.insertionMode = null, this.insertionModeName = "", this.originalInsertionMode = "", this.inQuirksMode = !1, this.compatMode = "no quirks", this.framesetOk = !0, this.redirectAttachToFosterParent = !1, this.selfClosingFlagAcknowledged = !1, this.context = "", this.pendingTableCharacters = [], this.shouldSkipLeadingNewline = !1; 6149 var e = this, t = this.insertionModes = {}; 6150 t.base = { 6151 end_tag_handlers: {"-default": "endTagOther"}, 6152 start_tag_handlers: {"-default": "startTagOther"}, 6153 processEOF: function () {
6154 e.generateImpliedEndTags(), e.openElements.length > 2 ? e.parseError("expected-closing-tag-but-got-eof") : e.openElements.length == 2 && e.openElements.item(1).localName != "body" ? e.parseError("expected-closing-tag-but-got-eof") : e.context && e.openElements.length > 1 6155 }, 6156 processComment: function (t) { 6157 e.insertComment(t, e.currentStackItem().node) 6158 }, 6159 processDoctype: function (t, n, r, i) { 6160 e.parseError("unexpected-doctype") 6161 }, 6162 processStartTag: function (e, t, n) { 6163 if (this[this.start_tag_handlers[e]]) this[this.start_tag_handlers[e]](e, t, n); else { 6164 if (!this[this.start_tag_handlers["-default"]]) throw new Error("No handler found for " + e); 6165 this[this.start_tag_handlers["-default"]](e, t, n) 6166 } 6167 }, 6168 processEndTag: function (e) { 6169 if (this[this.end_tag_handlers[e]]) this[this.end_tag_handlers[e]](e); else { 6170 if (!this[this.end_tag_handlers["-default"]]) throw new Error("No handler found for " + e); 6171 this[this.end_tag_handlers["-default"]](e) 6172 } 6173 }, 6174 startTagHtml: function (e, n) { 6175 t.inBody.startTagHtml(e, n) 6176 } 6177 }, t.initial = Object.create(t.base), t.initial.processEOF = function () { 6178 e.parseError("expected-doctype-but-got-eof"), this.anythingElse(), e.insertionMode.processEOF() 6179 }, t.initial.processComment = function (t) { 6180 e.insertComment(t, e.document) 6181 }, t.initial.processDoctype = function (t, n, r, i) { 6182 function s(e) { 6183 return n.toLowerCase().indexOf(e) === 0 6184 } 6185 6186 e.insertDoctype(t || "", n || "", r || ""), i || t != "html" || n != null && (["+//silmaril//dtd html pro v0r11 19970101//", "-//advasoft ltd//dtd html 3.0 aswedit + extensions//", "-/
6186/as//dtd html 3.0 aswedit + extensions//", "-//ietf//dtd html 2.0 level 1//", "-//ietf//dtd html 2.0 level 2//", "-//ietf//dtd html 2.0 strict level 1//", "-//ietf//dtd html 2.0 strict level 2//", "-//ietf//dtd html 2.0 strict//", "-//ietf//dtd html 2.0//", "-//ietf//dtd html 2.1e//", "-//ietf//dtd html 3.0//", "-//ietf//dtd html 3.0//", "-//ietf//dtd html 3.2 final//", "-//ietf//dtd html 3.2//", "-//ietf//dtd html 3//", "-//ietf//dtd html level 0//", "-//ietf//dtd html level 0//", "-//ietf//dtd html level 1//", "-//ietf//dtd html level 1//", "-//ietf//dtd html level 2//", "-//ietf//dtd html level 2//", "-//ietf//dtd html level 3//", "-//ietf//dtd html level 3//", "-//ietf//dtd html strict level 0//", "-//ietf//dtd html strict level 0//", "-//ietf//dtd html strict level 1//", "-//ietf//dtd html strict level 1//", "-//ietf//dtd html strict level 2//", "-//ietf//dtd html strict level 2//", "-//ietf//dtd html strict level 3//", "-//ietf//dtd html strict level 3//", "-//ietf//dtd html strict//", "-//ietf//dtd html strict//", "-//ietf//dtd html strict//", "-//ietf//dtd html//", "-//ietf//dtd html//", "-//ietf//dtd html//", "-//metrius//dtd metrius presentational//", "-//microsoft//dtd internet explorer 2.0 html strict//", "-//microsoft//dtd internet explorer 2.0 html//", "-//microsoft//dtd internet explorer 2.0 tables//", "-//microsoft//dtd internet explorer 3.0 html strict//", "-//microsoft//dtd internet explorer 3.0 html//", "-//microsoft//dtd internet explorer 3.0 tables//", "-//netscape comm. corp.//dtd html//", "-//netscape comm. corp.//dtd strict html//", "-//o'reilly and associates//dtd html 2.0//", "-//o'reilly and associates//dtd html extended 1.0//", "-//spyglass//dtd html 2.0 extended//", "-//sq//dtd html 2.0 hotmetal + extensions//", "-/
6186/sun microsystems corp.//dtd hotjava html//", "-//sun microsystems corp.//dtd hotjava strict html//", "-//w3c//dtd html 3 1995-03-24//", "-//w3c//dtd html 3.2 draft//", "-//w3c//dtd html 3.2 final//", "-//w3c//dtd html 3.2//", "-//w3c//dtd html 3.2s draft//", "-//w3c//dtd html 4.0 frameset//", "-//w3c//dtd html 4.0 transitional//", "-//w3c//dtd html experimental 19960712//", "-//w3c//dtd html experimental 970421//", "-//w3c//dtd w3 html//", "-//w3o//dtd w3 html 3.0//", "-//webtechs//dtd mozilla html 2.0//", "-//webtechs//dtd mozilla html//", "html"].some(s) || ["-//w3o//dtd w3 html strict 3.0//en//", "-/w3c/dtd html 4.0 transitional/en", "html"].indexOf(n.toLowerCase()) > -1 || r == null && ["-//w3c//dtd html 4.01 transitional//", "-//w3c//dtd html 4.01 frameset//"].some(s)) || r != null && r.toLowerCase() == "http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd" ? (e.compatMode = "quirks", e.parseError("quirky-doctype")) : n != null && (["-//w3c//dtd xhtml 1.0 transitional//", "-//w3c//dtd xhtml 1.0 frameset//"].some(s) || r != null && ["-//w3c//dtd html 4.01 transitional//", "-//w3c//dtd html 4.01 frameset//"].indexOf(n.toLowerCase()) > -1) ? (e.compatMode = "limited quirks", e.parseError("almost-standards-doctype")) : n == "-//W3C//DTD HTML 4.0//EN" && (r == null || r == "http://www.w3.org/TR/REC-html40/strict.dtd") || n == "-//W3C//DTD HTML 4.01//EN" && (r == null || r == "http://www.w3.org/TR/html4/strict.dtd") || n == "-//W3C//DTD XHTML 1.0 Strict//EN" && r == "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" || n == "-//W3C//DTD XHTML 1.1//EN" && r == "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" || (r != null && r != "about:legacy-compat" || n != null) && e.parseError("unknown-doctype"), e.setInsertionMode("beforeHTML") 6187 }, t.initial.processCharacters = function (t) { 6188 t.skipLeadingWhitespace(); 6189 if (!t.length) return; 6190 e.parseError("expected-doctype-but-got-chars"), this.anythingElse(), e.insertionMode.processCharacters(t) 6191 }, t.initial.processStartTag = function (t, n, r) { 6192 e.parseError("expected-doctype-but-got-start-tag", {name: t}), this.anythingElse(), e.insertionMode.processStartTag(t, n, r) 6193 }, t.initial.processEndTag = function (t) { 6194 e.parseError("expected-doctype-but-got-end-tag", {name: t}), this.anythingElse(), e.insertionMode.processEndTag(t) 6195 }, t.initial.anythingElse = function () { 6196 e.compatMode = "quirks", e.setInsertionMode("beforeHTML") 6197 }, t.beforeHTML = Object.create(t.base), t.beforeHTML.start_tag_handlers = { 6198 html: "startTagHtml", 6199 "-default": "startTagOther" 6200 }, t.beforeHTML.processEOF = function () { 6201 this.anythingElse(), e.insertionMode.processEOF() 6202 }, t.beforeHTML.processComment = function (t) { 6203 e.insertComment(t, e.document) 6204 }, t.beforeHTML.processCharacters = function (t) { 6205 t.skipLeadingWhitespace(); 6206 if (!t.length) return; 6207 this.anythingElse(), e.insertionMode.processCharacters(t) 6208 }, t.beforeHTML.startTagHtml = function (t, n, r) { 6209 e.insertHtmlElement(n), e.setInsertionMode("beforeHead") 6210 }, t.beforeHTML.startTagOther = function (t, n, r) { 6211 this.anythingElse(), e.insertionMode.processStartTag(t, n, r) 6212 }, t.beforeHTML.processEndTag = function (t) { 6213 this.anythingElse(), e.insertionMode.processEndTag(t) 6214 }, t.beforeHTML.anythingElse = function () { 6215 e.insertHtmlElement(), e.setInsertionMode("beforeHead") 6216 }, t.afterAfterBody = Object.create(t.base), t.afterAfterBody.start_tag_handlers = { 6217 html: "startTagHtml", 6218 "-default": "startTagOther" 6219 }, t.afterAfterBody.processComment = function (t) { 6220 e.insertComment(t, e.document) 6221 }, t.afterAfterBody.processDoctype = function (e) { 6222 t.inBody.processDoctype(e) 6223 }, t.afterAfterBody.startTagHtml = function (e, n) { 6224 t.inBody.startTagHtml(e, n) 6225 }, t.afterAfterBody.startTagOther = function (t, n, r) { 6226 e.parseError("unexpected-start-tag", {name: t}), e.setInsertionMode("inBody"), e.insertionMode.processStartTag(t, n, r) 6227 }, t.afterAfterBody.endTagOther = function (t) { 6228 e.parseError("unexpected-end-tag", {name: t}), e.setInsertionMode("inBody"), e.insertionMode.processEndTag(t) 6229 }, t.afterAfterBody.processCharacters = function (n) { 6230 if (!p(n.characters)) return e.parseError("unexpected-char-after-body"), e.setInsertionMode("inBody"), e.insertionMode.processCharacters(n); 6231 t.inBody.processCharacters(n) 6232 }, t.afterBody = Object.create(t.base), t.afterBody.end_tag_handlers = { 6233 html: "endTagHtml", 6234 "-default": "endTagOther" 6235 }, t.afterBody.processComment = function (t) { 6236 e.insertComment(t, e.openElements.rootNode) 6237 }, t.afterBody.processCharacters = function (n) { 6238 if (!p(n.characters)) return e.parseError("unexpected-char-after-body"), e.setInsertionMode("inBody"), e.insertionMode.processCharacters(n); 6239 t.inBody.processCharacters(n) 6240 }, t.afterBody.processStartTag = function (t, n, r) { 6241 e.parseError("unexpected-start-tag-after-body", {name: t}), e.setInsertionMode("inBody"), e.insertionMode.processStartTag(t, n, r) 6242 }, t.afterBody.endTagHtml = function (t) { 6243 e.context ? e.parseError("end-html-in-innerhtml") : e.setInsertionMode("afterAfterBody") 6244 }, t.afterBody.endTagOther = function (t) { 6245 e.parseError("unexpected-end-tag-after-body", {name: t}), e.setInsertionMode("inBody"), e.insertionMode.processEndTag(t) 6246 }, t.afterFrameset = Object.create(t.base), t.afterFrameset.start_tag_handlers = { 6247 html: "startTagHtml", 6248 noframes: "startTagNoframes", 6249 "-default": "startTagOther" 6250 }, t.afterFrameset.end_tag_handlers = { 6251 html: "endTagHtml", 6252 "-default": "endTagOther" 6253 }, t.afterFrameset.processCharacters = function (t) { 6254 var n = t.takeRemaining(), r = ""; 6255 for (var i = 0; i < n.length; i++) { 6256 var s = n[i]; 6257 c(s) && (r += s) 6258 } 6259 r && e.insertText(r), r.length < n.length && e.parseError("expected-eof-but-got-char") 6260 }, t.afterFrameset.startTagNoframes = function (e, n) { 6261 t.inHead.processStartTag(e, n) 6262 }, t.afterFrameset.startTagOther = function (t, n) { 6263 e.parseError("unexpected-start-tag-after-frameset", {name: t}) 6264 }, t.afterFrameset.endTagHtml = function (t) { 6265 e.setInsertionMode("afterAfterFrameset") 6266 }, t.afterFrameset.endTagOther = function (t) { 6267 e.parseError("unexpected-end-tag-after-frameset", {name: t}) 6268 }, t.beforeHead = Object.create(t.base), t.beforeHead.start_tag_handlers = { 6269 html: "startTagHtml", 6270 head: "startTagHead", 6271 "-default": "startTagOther" 6272 }, t.beforeHead.end_tag_handlers = { 6273 html: "endTagImplyHead", 6274 head: "endTagImplyHead", 6275 body: "endTagImplyHead", 6276 br: "endTagImplyHead", 6277 "-default": "endTagOther" 6278 }, t.beforeHead.processEOF = function () { 6279 this.startTagHead("head", []), e.insertionMode.processEOF() 6280 }, t.beforeHead.processCharacters = function (t) { 6281 t.skipLeadingWhitespace(); 6282 if (!t.length) return; 6283 this.startTagHead("head", []), e.insertionMode.processCharacters(t) 6284 }, t.beforeHead.startTagHead = function (t, n) { 6285 e.insertHeadElement(n), e.setInsertionMode("inHead") 6286 }, t.beforeHead.startTagOther = function (t, n, r) { 6287 this.startTagHead("head", []), e.insertionMode.processStartTag(t, n, r) 6288 }, t.beforeHead.endTagImplyHead = function (t) { 6289 this.startTagHead("head", []), e.insertionMode.processEndTag(t) 6290 }, t.beforeHead.endTagOther = function (t) { 6291 e.parseError("end-tag-after-implied-root", {name: t}) 6292 }, t.inHead = Object.create(t.base), t.inHead.start_tag_handlers = { 6293 html: "startTagHtml", 6294 head: "startTagHead", 6295 title: "startTagTitle", 6296 script: "startTagScript", 6297 style: "startTagNoFramesStyle", 6298 noscript: "startTagNoScript", 6299 noframes: "startTagNoFramesStyle", 6300 base: "startTagBaseBasefontBgsoundLink", 6301 basefont: "startTagBaseBasefontBgsoundLink", 6302 bgsound: "startTagBaseBasefontBgsoundLink", 6303 link: "startTagBaseBasefontBgsoundLink", 6304 meta: "startTagMeta", 6305 "-default": "startTagOther" 6306 }, t.inHead.end_tag_handlers = { 6307 head: "endTagHead", 6308 html: "endTagHtmlBodyBr", 6309 body: "endTagHtmlBodyBr", 6310 br: "endTagHtmlBodyBr", 6311 "-default": "endTagOther" 6312 }, t.inHead.processEOF = function () { 6313 var t = e.currentStackItem().localName; 6314 ["title", "style", "script"].indexOf(t) != -1 && (e.parseError("expected-named-closing-tag-but-got-eof", {name: t}), e.popElement()), this.anythingElse(), e.insertionMode.processEOF() 6315 }, t.inHead.processCharacters = function (t) { 6316 var n = t.takeLeadingWhitespace(); 6317 n && e.insertText(n); 6318 if (!t.length) return; 6319 this.anythingElse(), e.insertionMode.processCharacters(t) 6320 }, t.inHead.startTagHtml = function (e, n) { 6321 t.inBody.processStartTag(e, n) 6322 }, t.inHead.startTagHead = function (t, n) { 6323 e.parseError("two-heads-are-not-better-than-one") 6324 }, t.inHead.startTagTitle = function (t, n) { 6325 e.processGenericRCDATAStartTag(t, n) 6326 }, t.inHead.startTagNoScript = function (t, n) { 6327 if (e.scriptingEnabled) return e.processGenericRawTextStartTag(t, n); 6328 e.insertElement(t, n), e.setInsertionMode("inHeadNoscript") 6329 }, t.inHead.startTagNoFramesStyle = function (t, n) { 6330 e.processGenericRawTextStartTag(t, n) 6331 }, t.inHead.startTagScript = function (t, n) { 6332 e.insertElement(t, n), e.tokenizer.setState(u.SCRIPT_DATA), e.originalInsertionMode = e.insertionModeName, e.setInsertionMode("text") 6333 }, t.inHead.startTagBaseBasefontBgsoundLink = function (t, n) { 6334 e.insertSelfClosingElement(t, n) 6335 }, t.inHead.startTagMeta = function (t, n) { 6336 e.insertSelfClosingElement(t, n) 6337 }, t.inHead.startTagOther = function (t, n, r) { 6338 this.anythingElse(), e.insertionMode.processStartTag(t, n, r) 6339 }, t.inHead.endTagHead = function (t) { 6340 e.openElements.item(e.openElements.length - 1).localName == "head" ? e.o
6340penElements.pop() : e.parseError("unexpected-end-tag", {name: "head"}), e.setInsertionMode("afterHead") 6341 }, t.inHead.endTagHtmlBodyBr = function (t) { 6342 this.anythingElse(), e.insertionMode.processEndTag(t) 6343 }, t.inHead.endTagOther = function (t) { 6344 e.parseError("unexpected-end-tag", {name: t}) 6345 }, t.inHead.anythingElse = function () { 6346 this.endTagHead("head") 6347 }, t.afterHead = Object.create(t.base), t.afterHead.start_tag_handlers = { 6348 html: "startTagHtml", 6349 head: "startTagHead", 6350 body: "startTagBody", 6351 frameset: "startTagFrameset", 6352 base: "startTagFromHead", 6353 link: "startTagFromHead", 6354 meta: "startTagFromHead", 6355 script: "startTagFromHead", 6356 style: "startTagFromHead", 6357 title: "startTagFromHead", 6358 "-default": "startTagOther" 6359 }, t.afterHead.end_tag_handlers = { 6360 body: "endTagBodyHtmlBr", 6361 html: "endTagBodyHtmlBr", 6362 br: "endTagBodyHtmlBr", 6363 "-default": "endTagOther" 6364 }, t.afterHead.processEOF = function () { 6365 this.anythingElse(), e.insertionMode.processEOF() 6366 }, t.afterHead.processCharacters = function (t) { 6367 var n = t.takeLeadingWhitespace(); 6368 n && e.insertText(n); 6369 if (!t.length) return; 6370 this.anythingElse(), e.insertionMode.processCharacters(t) 6371 }, t.afterHead.startTagHtml = function (e, n) { 6372 t.inBody.processStartTag(e, n) 6373 }, t.afterHead.startTagBody = function (t, n) { 6374 e.framesetOk = !1, e.insertBodyElement(n), e.setInsertionMode("inBody") 6375 }, t.afterHead.startTagFrameset = function (t, n) { 6376 e.insertElement(t, n), e.setInsertionMode("inFrameset") 6377 }, t.afterHead.startTagFromHead = function (n, r, i) { 6378 e.parseError("unexpected-start-tag-out-of-my-head", {name: n}), e.openElements.push(e.head), t.inHead.processStartTag(n, r, i), e.openElements.remove(e.head) 6379 }, t.afterHead.startTagHead = function (t, n, r) { 6380 e.parseError("unexpected-start-tag", {name: t}) 6381 }, t.afterHead.startTagOther = function (t, n, r) { 6382 this.anythingElse(), e.insertionMode.processStartTag(t, n, r) 6383 }, t.afterHead.endTagBodyHtmlBr = function (t) { 6384 this.anythingElse(), e.insertionMode.processEndTag(t) 6385 }, t.afterHead.endTagOther = function (t) { 6386 e.parseError("unexpected-end-tag", {name: t}) 6387 }, t.afterHead.anythingElse = function () { 6388 e.insertBodyElement([]), e.setInsertionMode("inBody"), e.framesetOk = !0 6389 }, t.inBody = Object.create(t.base), t.inBody.start_tag_handlers = { 6390 html: "startTagHtml", 6391 head: "startTagMisplaced", 6392 base: "startTagProcessInHead", 6393 basefont: "startTagProcessInHead", 6394 bgsound: "startTagProcessInHead", 6395 link: "startTagProcessInHead", 6396 meta: "startTagProcessInHead", 6397 noframes: "startTagProcessInHead", 6398 script: "startTagProcessInHead", 6399 style: "startTagProcessInHead", 6400 title: "startTagProcessInHead", 6401 body: "startTagBody", 6402 form: "startTagForm", 6403 plaintext: "startTagPlaintext", 6404 a: "startTagA", 6405 button: "startTagButton", 6406 xmp: "startTagXmp", 6407 table: "startTagTable", 6408 hr: "startTagHr", 6409 image: "startTagImage", 6410 input: "startTagInput", 6411 textarea: "startTagTextarea", 6412 select: "startTagSelect", 6413 isindex: "startTagIsindex", 6414 applet: "startTagAppletMarqueeObject", 6415 marquee: "startTagAppletMarqueeObject", 6416 object: "startTagAppletMarqueeObject", 6417 li: "startTagListItem", 6418 dd: "startTagListItem", 6419 dt: "startTagListItem", 6420 address: "startTagCloseP", 6421 article: "startTagCloseP", 6422 aside: "startTagCloseP", 6423 blockquote: "startTagCloseP", 6424 center: "startTagCloseP", 6425 details: "startTagCloseP", 6426 dir: "startTagCloseP", 6427 div: "startTagCloseP", 6428 dl: "startTagCloseP", 6429 fieldset: "startTagCloseP", 6430 figcaption: "startTagCloseP", 6431 figure: "startTagCloseP", 6432 footer: "startTagCloseP", 6433 header: "startTagCloseP", 6434 hgroup: "startTagCloseP", 6435 main: "startTagCloseP", 6436 menu: "startTagCloseP", 6437 nav: "startTagCloseP", 6438 ol: "startTagCloseP", 6439 p: "startTagCloseP", 6440 section: "startTagCloseP", 6441 summary: "startTagCloseP", 6442 ul: "startTagCloseP", 6443 listing: "startTagPreListing", 6444 pre: "startTagPreListing", 6445 b: "startTagFormatting", 6446 big: "startTagFormatting", 6447 code: "startTagFormatting", 6448 em: "startTagFormatting", 6449 font: "startTagFormatting", 6450 i: "startTagFormatting", 6451 s: "startTagFormatting", 6452 small: "startTagFormatting",
6453 strike: "startTagFormatting", 6454 strong: "startTagFormatting", 6455 tt: "startTagFormatting", 6456 u: "startTagFormatting", 6457 nobr: "startTagNobr", 6458 area: "startTagVoidFormatting", 6459 br: "startTagVoidFormatting", 6460 embed: "startTagVoidFormatting", 6461 img: "startTagVoidFormatting", 6462 keygen: "startTagVoidFormatting", 6463 wbr: "startTagVoidFormatting", 6464 param: "startTagParamSourceTrack", 6465 source: "startTagParamSourceTrack", 6466 track: "startTagParamSourceTrack", 6467 iframe: "startTagIFrame", 6468 noembed: "startTagRawText", 6469 noscript: "startTagRawText", 6470 h1: "startTagHeading", 6471 h2: "startTagHeading", 6472 h3: "startTagHeading", 6473 h4: "startTagHeading", 6474 h5: "startTagHeading", 6475 h6: "startTagHeading", 6476 caption: "startTagMisplaced", 6477 col: "startTagMisplaced", 6478 colgroup: "startTagMisplaced", 6479 frame: "startTagMisplaced", 6480 frameset: "startTagFrameset", 6481 tbody: "startTagMisplaced", 6482 td: "startTagMisplaced", 6483 tfoot: "startTagMisplaced", 6484 th: "startTagMisplaced", 6485 thead: "startTagMisplaced", 6486 tr: "startTagMisplaced", 6487 option: "startTagOptionOptgroup", 6488 optgroup: "startTagOptionOptgroup", 6489 math: "startTagMath", 6490 svg: "startTagSVG", 6491 rt: "startTagRpRt", 6492 rp: "startTagRpRt", 6493 "-default": "startTagOther" 6494 }, t.inBody.end_tag_handlers = { 6495 p: "endTagP", 6496 body: "endTagBody", 6497 html: "endTagHtml", 6498 address: "endTagBlock", 6499 article: "endTagBlock", 6500 aside: "endTagBlock", 6501 blockquote: "endTagBlock", 6502 button: "endTagBlock", 6503 center: "endTagBlock", 6504 details: "endTagBlock", 6505 dir: "endTagBlock", 6506 div: "endTagBlock", 6507 dl: "endTagBlock", 6508 fieldset: "endTagBlock", 6509 figcaption: "endTagBlock", 6510 figure: "endTagBlock", 6511 footer: "endTagBlock", 6512 header: "endTagBlock", 6513 hgroup: "endTagBlock", 6514 listing: "endTagBlock", 6515 main: "endTagBlock", 6516 menu: "endTagBlock", 6517 nav: "endTagBlock", 6518 ol: "endTagBlock", 6519 pre: "endTagBlock", 6520 section: "endTagBlock", 6521 summary: "endTagBlock", 6522 ul: "endTagBlock", 6523 form: "endTagForm", 6524 applet: "endTagAppletMarqueeObject", 6525 marquee: "endTagAppletMarqueeObject", 6526 object: "endTagAppletMarqueeObject", 6527 dd: "endTagListItem", 6528 dt: "endTagListItem", 6529 li: "endTagListItem", 6530 h1: "endTagHeading", 6531 h2: "endTagHeading", 6532 h3: "endTagHeading", 6533 h4: "endTagHeading", 6534 h5: "endTagHeading", 6535 h6: "endTagHeading", 6536 a: "endTagFormatting", 6537 b: "endTagFormatting", 6538 big: "endTagFormatting", 6539 code: "endTagFormatting", 6540 em: "endTagFormatting", 6541 font: "endTagFormatting", 6542 i: "endTagFormatting", 6543 nobr: "endTagFormatting", 6544 s: "endTagFormatting", 6545 small: "endTagFormatting",
6546 strike: "endTagFormatting", 6547 strong: "endTagFormatting", 6548 tt: "endTagFormatting", 6549 u: "endTagFormatting", 6550 br: "endTagBr", 6551 "-default": "endTagOther" 6552 }, t.inBody.processCharacters = function (t) { 6553 e.shouldSkipLeadingNewline && (e.shouldSkipLeadingNewline = !1, t.skipAtMostOneLeadingNewline()), e.reconstructActiveFormattingElements(); 6554 var n = t.takeRemaining(); 6555 n = n.replace(/\u0000/g, function (t, n) { 6556 return e.parseError("invalid-codepoint"), "" 6557 }); 6558 if (!n) return; 6559 e.insertText(n), e.framesetOk && !d(n) && (e.framesetOk = !1) 6560 }, t.inBody.startTagHtml = function (t, n) { 6561 e.parseError("non-html-root"), e.addAttributesToElement(e.openElements.rootNode, n) 6562 }, t.inBody.startTagProcessInHead = function (e, n) { 6563 t.inHead.processStartTag(e, n) 6564 }, t.inBody.startTagBody = function (t, n) { 6565 e.parseError("unexpected-start-tag", {name: "body"}), e.openElements.length == 1 || e.openElements.item(1).localName != "body" ? r.ok(e.context) : (e.framesetOk = !1, e.addAttributesToElement(e.openElements.bodyElement, n)) 6566 }, t.inBody.startTagFrameset = function (t, n) { 6567 e.parseError("unexpected-start-tag", {name: "frameset"}); 6568 if (e.openElements.length == 1 || e.openElements.item(1).localName != "body") r.ok(e.context); else if (e.framesetOk) { 6569 e.detachFromParent(e.openElements.bodyElement); 6570 while (e.openElements.length > 1) e.openElements.pop(); 6571 e.insertElement(t, n), e.setInsertionMode("inFrameset") 6572 } 6573 }, t.inBody.startTagCloseP = function (t, n) { 6574 e.openElements.inButtonScope("p") && this.endTagP("p"), e.insertElement(t, n) 6575 }, t.inBody.startTagPreListing = function (t, n) { 6576 e.openElements.inButtonScope("p") && this.endTagP("p"), e.insertElement(t, n), e.framesetOk = !1, e.shouldSkipLeadingNewline = !0 6577 }, t.inBody.startTagForm = function (t, n) { 6578 e.form ? e.parseError("unexpected-start-tag", {name: t}) : (e.openElements.inButtonScope("p") && this.endTagP("p"), e.insertElement(t, n), e.form = e.currentStackItem()) 6579 }, t.inBody.startTagRpRt = function (t, n) { 6580 e.openElements.inScope("ruby") && (e.generateImpliedEndTags(), e.currentStackItem().localName != "ruby" && e.parseError("unexpected-start-tag", {name: t})), e.insertElement(t, n) 6581 }, t.inBody.startTagListItem = function (t, n) { 6582 var r = {li: ["li"], dd: ["dd", "dt"], dt: ["dd", "dt"]}, i = r[t], s = e.openElements; 6583 for (var o = s.length - 1; o >= 0; o--) { 6584 var u = s.item(o); 6585 if (i.indexOf(u.localName) != -1) { 6586 e.insertionMode.processEndTag(u.localName); 6587 break 6588 } 6589 if (u.isSpecial() && u.localName !== "p" && u.localName !== "address" && u.localName !== "div") break 6590 } 6591 e.openElements.inButtonScope("p") && this.endTagP("p"), e.insertElement(t, n), e.framesetOk = !1 6592 }, t.inBody.startTagPlaintext = function (t, n) { 6593 e.openElements.inButtonScope("p") && this.endTagP("p"), e.insertElement(t, n), e.tokenizer.setState(u.PLAINTEXT) 6594 }, t.inBody.startTagHeading = function (t, n) { 6595 e.openElements.inButtonScope("p") && this.endTagP("p"), e.currentStackItem().isNumberedHeader() && (e.parseError("unexpected-start-tag", {name: t}), e.popElement()), e.insertElement(t, n) 6596 }, t.inBody.startTagA = function (t, n) { 6597 var r = e.elementInActiveFormattingElements("a"); 6598 r && (e.parseError("unexpected-start-tag-implies-end-tag", { 6599 startName: "a", 6600 endName: "a" 6601 }), e.adoptionAgencyEndTag("a"), e.openElements.contains(r) && e.openElements.remove(r), e.removeElementFromActiveFormattingElements(r)), e.reconstructActiveFormattingElements(), e.insertFormattingElement(t, n) 6602 }, t.inBody.startTagFormatting = function (t, n) { 6603 e.reconstructActiveFormattingElements(), e.insertFormattingElement(t, n) 6604 }, t.inBody.startTagNobr = function (t, n) { 6605 e.reconstructActiveFormattingElements(), e.o
6605penElements.inScope("nobr") && (e.parseError("unexpected-start-tag-implies-end-tag", { 6606 startName: "nobr", 6607 endName: "nobr" 6608 }), this.processEndTag("nobr"), e.reconstructActiveFormattingElements()), e.insertFormattingElement(t, n) 6609 }, t.inBody.startTagButton = function (t, n) { 6610 e.openElements.inScope("button") ? (e.parseError("unexpected-start-tag-implies-end-tag", { 6611 startName: "button", 6612 endName: "button" 6613 }), this.processEndTag("button"), e.insertionMode.processStartTag(t, n)) : (e.framesetOk = !1, e.reconstructActiveFormattingElements(), e.insertElement(t, n)) 6614 },t.inBody.startTagAppletMarqueeObject = function (t, n) { 6615 e.reconstructActiveFormattingElements(), e.insertElement(t, n), e.activeFormattingElements.push(l), e.framesetOk = !1 6616 },t.inBody.endTagAppletMarqueeObject = function (t) { 6617 e.openElements.inScope(t) ? (e.generateImpliedEndTags(), e.currentStackItem().localName != t && e.parseError("end-tag-too-early", {name: t}), e.openElements.popUntilPopped(t), e.clearActiveFormattingElements()) : e.parseError("unexpected-end-tag", {name: t}) 6618 },t.inBody.startTagXmp = function (t, n) { 6619 e.openElements.inButtonScope("p") && this.processEndTag("p"), e.reconstructActiveFormattingElements(), e.processGenericRawTextStartTag(t, n), e.framesetOk = !1 6620 },t.inBody.startTagTable = function (t, n) { 6621 e.compatMode !== "quirks" && e.openElements.inButtonScope("p") && this.processEndTag("p"), e.insertElement(t, n), e.setInsertionMode("inTable"), e.framesetOk = !1 6622 },t.inBody.startTagVoidFormatting = function (t, n) { 6623 e.reconstructActiveFormattingElements(), e.insertSelfClosingElement(t, n), e.framesetOk = !1 6624 },t.inBody.startTagParamSourceTrack = function (t, n) { 6625 e.insertSelfClosingElement(t, n) 6626 },t.inBody.startTagHr = function (t, n) { 6627 e.openElements.inButtonScope("p") && this.endTagP("p"), e.insertSelfClosingElement(t, n), e.framesetOk = !1 6628 },t.inBody.startTagImage = function (t, n) { 6629 e.parseError("unexpected-start-tag-treated-as", { 6630 originalName: "image", 6631 newName: "img" 6632 }), this.processStartTag("img", n) 6633 },t.inBody.startTagInput = function (t, n) { 6634 var r = e.framesetOk; 6635 this.startTagVoidFormatting(t, n); 6636 for (var i in n) if (n[i].nodeName == "type") { 6637 n[i].nodeValue.toLowerCase() == "hidden" && (e.framesetOk = r); 6638 break 6639 } 6640 },t.inBody.startTagIsindex = function (t, n) { 6641 e.parseError("deprecated-tag", {name: "isindex"}), e.selfClosingFlagAcknowledged = !0; 6642 if (e.form) return; 6643 var r = [], i = [], s = "This is a searchable index. Enter search keywords: "; 6644 for (var o in n) switch (n[o].nodeName) { 6645 case"action": 6646 r.push({nodeName: "action", nodeValue: n[o].nodeValue}); 6647 break; 6648 case"prompt": 6649 s = n[o].nodeValue; 6650 break; 6651 case"name": 6652 break; 6653 default: 6654 i.push({nodeName: n[o].nodeName, nodeValue: n[o].nodeValue}) 6655 } 6656 i.push({ 6657 nodeName: "name", 6658 nodeValue: "isindex" 6659 }), this.processStartTag("form", r), this.processStartTag("hr"), this.processStartTag("label"), this.processCharacters(new m(s)), this.processStartTag("input", i), this.processEndTag("label"), this.processStartTag("hr"), this.processEndTag("form") 6660 },t.inBody.startTagTextarea = function (t, n) { 6661 e.insertElement(t, n), e.tokenizer.setState(u.RCDATA), e.originalInsertionMode = e.insertionModeName, e.shouldSkipLeadingNewline = !0, e.framesetOk = !1, e.setInsertionMode("text") 6662 },t.inBody.startTagIFrame = function (t, n) { 6663 e.framesetOk = !1, this.startTagRawText(t, n) 6664 },t.inBody.startTagRawText = function (t, n) { 6665 e.processGenericRawTextStartTag(t, n) 6666 },t.inBody.startTagSelect = function (t, n) { 6667 e.reconstructActiveFormattingElements(), e.insertElement(t, n), e.framesetOk = !1; 6668 var r = e.insertionModeName; 6669 r == "inTable" || r == "inCaption" || r == "inColumnGroup" || r == "inTableBody" || r == "inRow" || r == "inCell" ? e.setInsertionMode("inSelectInTable") : e.setInsertionMode("inSelect") 6670 },t.inBody.startTagMisplaced = function (t, n) { 6671 e.parseError("unexpected-start-tag-ignored", {name: t}) 6672 },t.inBody.endTagMisplaced = function (t) { 6673 e.parseError("unexpected-end-tag", {name: t}) 6674 },t.inBody.endTagBr = function (t) { 6675 e.parseError("unexpected-end-tag-treated-as", { 6676 originalName: "br", 6677 newName: "br element" 6678 }), e.reconstructActiveFormattingElements(), e.insertElement(t, []), e.popElement() 6679 },t.inBody.startTagOptionOptgroup = function (t, n) { 6680 e.currentStackItem().localName == "option" && e.popElement(), e.reconstructActiveFormattingElements(), e.insertElement(t, n) 6681 },t.inBody.startTagOther = function (t, n) { 6682 e.reconstructActiveFormattingElements(), e.insertElement(t, n) 6683 },t.inBody.endTagOther = function (t) { 6684 var n; 6685 for (var r = e.openElements.length - 1; r > 0; r--) { 6686 n = e.openElements.item(r); 6687 if (n.localName == t) { 6688 e.generateImpliedEndTags(t), e.currentStackItem().localName != t && e.parseError("unexpected-end-tag", {name: t}), e.openElements.remove_openElements_until(function (e) { 6689 return e === n 6690 }); 6691 break 6692 } 6693 if (n.isSpecial()) { 6694 e.parseError("unexpected-end-tag", {name: t}); 6695 break 6696 } 6697 } 6698 },t.inBody.startTagMath = function (t, n, r) { 6699 e.reconstructActiveFormattingElements(), n = e.adjustMathMLAttributes(n), n = e.adjustForeignAttributes(n), e.insertForeignElement(t, n, "http://www.w3.org/1998/Math/MathML", r) 6700 },t.inBody.startTagSVG = function (t, n, r) { 6701 e.reconstructActiveFormattingElements(), n = e.adjustSVGAttributes(n), n = e.adjustForeignAttributes(n), e.insertForeignElement(t, n, "http://www.w3.org/2000/svg", r) 6702 },t.inBody.endTagP = function (t) { 6703 e.openElements.inButtonScope("p") ? (e.generateImpliedEndTags("p"), e.currentStackItem().localName != "p" && e.parseError("unexpected-implied-end-tag", {name: "p"}
6703), e.openElements.popUntilPopped(t)) : (e.parseError("unexpected-end-tag", {name: "p"}), this.startTagCloseP("p", []), this.endTagP("p")) 6704 },t.inBody.endTagBody = function (t) { 6705 if (!e.openElements.inScope("body")) { 6706 e.parseError("unexpected-end-tag", {name: t}); 6707 return 6708 } 6709 e.currentStackItem().localName != "body" && e.parseError("expected-one-end-tag-but-got-another", { 6710 expectedName: e.currentStackItem().localName, 6711 gotName: t 6712 }), e.setInsertionMode("afterBody") 6713 },t.inBody.endTagHtml = function (t) { 6714 if (!e.openElements.inScope("body")) { 6715 e.parseError("unexpected-end-tag", {name: t}); 6716 return 6717 } 6718 e.currentStackItem().localName != "body" && e.parseError("expected-one-end-tag-but-got-another", { 6719 expectedName: e.currentStackItem().localName, 6720 gotName: t 6721 }), e.setInsertionMode("afterBody"), e.insertionMode.processEndTag(t) 6722 },t.inBody.endTagBlock = function (t) { 6723 e.openElements.inScope(t) ? (e.generateImpliedEndTags(), e.currentStackItem().localName != t && e.parseError("end-tag-too-early", {name: t}), e.openElements.popUntilPopped(t)) : e.parseError("unexpected-end-tag", {name: t}) 6724 },t.inBody.endTagForm = function (t) { 6725 var n = e.form; 6726 e.form = null, !n || !e.openElements.inScope(t) ? e.parseError("unexpected-end-tag", {name: t}) : (e.generateImpliedEndTags(), e.currentStackItem() != n && e.parseError("end-tag-too-early-ignored", {name: "form"}), e.openElements.remove(n)) 6727 },t.inBody.endTagListItem = function (t) { 6728 e.openElements.inListItemScope(t) ? (e.generateImpliedEndTags(t), e.currentStackItem().localName != t && e.parseError("end-tag-too-early", {name: t}), e.openElements.popUntilPopped(t)) : e.parseError("unexpected-end-tag", {name: t}) 6729 },t.inBody.endTagHeading = function (t) { 6730 if (!e.openElements.hasNumberedHeaderElementInScope()) { 6731 e.parseError("unexpected-end-tag", {name: t}); 6732 return 6733 } 6734 e.generateImpliedEndTags(), e.currentStackItem().localName != t && e.parseError("end-tag-too-early", {name: t}), e.openElements.remove_openElements_until(function (e) { 6735 return e.isNumberedHeader() 6736 }) 6737 },t.inBody.endTagFormatting = function (t, n) { 6738 e.adoptionAgencyEndTag(t) || this.endTagOther(t, n) 6739 },t.inCaption = Object.create(t.base),t.inCaption.start_tag_handlers = { 6740 html: "startTagHtml", 6741 caption: "startTagTableElement", 6742 col: "startTagTableElement", 6743 colgroup: "startTagTableElement", 6744 tbody: "startTagTableElement", 6745 td: "startTagTableElement", 6746 tfoot: "startTagTableElement", 6747 thead: "startTagTableElement", 6748 tr: "startTagTableElement", 6749 "-default": "startTagOther" 6750 },t.inCaption.end_tag_handlers = { 6751 caption: "endTagCaption", 6752 table: "endTagTable", 6753 body: "endTagIgnore", 6754 col: "endTagIgnore", 6755 colgroup: "endTagIgnore", 6756 html: "endTagIgnore", 6757 tbody: "endTagIgnore", 6758 td: "endTagIgnore", 6759 tfood: "endTagIgnore", 6760 thead: "endTagIgnore", 6761 tr: "endTagIgnore", 6762 "-default": "endTagOther" 6763 },t.inCaption.processCharacters = function (e) { 6764 t.inBody.processCharacters(e) 6765 },t.inCaption.startTagTableElement = function (t, n) { 6766 e.parseError("unexpected-end-tag", {name: t}); 6767 var r = !e.openElements.inTableScope("caption"); 6768 e.insertionMode.processEndTag("caption"), r || e.insertionMode.processStartTag(t, n) 6769 },t.inCaption.startTagOther = function (e, n, r) { 6770 t.inBody.processStartTag(e, n, r) 6771 },t.inCaption.endTagCaption = function (t) { 6772 e.openElements.inTableScope("caption") ? (e.generateImpliedEndTags(), e.currentStackItem().localName != "caption" && e.parseError("expected-one-end-tag-but-got-another", { 6773 gotName: "caption", 6774 expectedName: e.currentStackItem().localName 6775 }
6775), e.openElements.popUntilPopped("caption"), e.clearActiveFormattingElements(), e.setInsertionMode("inTable")) : (r.ok(e.context), e.parseError("unexpected-end-tag", {name: t})) 6776 },t.inCaption.endTagTable = function (t) { 6777 e.parseError("unexpected-end-table-in-caption"); 6778 var n = !e.openElements.inTableScope("caption"); 6779 e.insertionMode.processEndTag("caption"), n || e.insertionMode.processEndTag(t) 6780 },t.inCaption.endTagIgnore = function (t) { 6781 e.parseError("unexpected-end-tag", {name: t}) 6782 },t.inCaption.endTagOther = function (e) { 6783 t.inBody.processEndTag(e) 6784 },t.inCell = Object.create(t.base),t.inCell.start_tag_handlers = { 6785 html: "startTagHtml", 6786 caption: "startTagTableOther", 6787 col: "startTagTableOther", 6788 colgroup: "startTagTableOther", 6789 tbody: "startTagTableOther", 6790 td: "startTagTableOther", 6791 tfoot: "startTagTableOther", 6792 th: "startTagTableOther", 6793 thead: "startTagTableOther", 6794 tr: "startTagTableOther", 6795 "-default": "startTagOther" 6796 },t.inCell.end_tag_handlers = { 6797 td: "endTagTableCell", 6798 th: "endTagTableCell", 6799 body: "endTagIgnore", 6800 caption: "endTagIgnore", 6801 col: "endTagIgnore", 6802 colgroup: "endTagIgnore", 6803 html: "endTagIgnore", 6804 table: "endTagImply", 6805 tbody: "endTagImply", 6806 tfoot: "endTagImply", 6807 thead: "endTagImply", 6808 tr: "endTagImply", 6809 "-default": "endTagOther" 6810 },t.inCell.processCharacters = function (e) { 6811 t.inBody.processCharacters(e) 6812 },t.inCell.startTagTableOther = function (t, n, r) { 6813 e.openElements.inTableScope("td") || e.openElements.inTableScope("th") ? (this.closeCell(), e.insertionMode.processStartTag(t, n, r)) : e.parseError("unexpected-start-tag", {name: t}) 6814 },t.inCell.startTagOther = function (e, n, r) { 6815 t.inBody.processStartTag(e, n, r) 6816 },t.inCell.endTagTableCell = function (t) { 6817 e.openElements.inTableScope(t) ? (e.generateImpliedEndTags(t), e.currentStackItem().localName != t.toLowerCase() ? (e.parseError("unexpected-cell-end-tag", {name: t}), e.openElements.popUntilPopped(t)) : e.popElement(), e.clearActiveFormattingElements(), e.setInsertionMode("inRow")) : e.parseError("unexpected-end-tag", {name: t}) 6818 },t.inCell.endTagIgnore = function (t) { 6819 e.parseError("unexpected-end-tag", {name: t}) 6820 },t.inCell.endTagImply = function (t) { 6821 e.openElements.inTableScope(t) ? (this.closeCell(), e.insertionMode.processEndTag(t)) : e.parseError("unexpected-end-tag", {name: t}) 6822 },t.inCell.endTagOther = function (e) { 6823 t.inBody.processEndTag(e) 6824 },t.inCell.closeCell = function () { 6825 e.openElements.inTableScope("td") ? this.endTagTableCell("td") : e.openElements.inTableScope("th") && this.endTagTableCell("th") 6826 },t.inColumnGroup = Object.create(t.base),t.inColumnGroup.start_tag_handlers = { 6827 html: "startTagHtml", 6828 col: "startTagCol", 6829 "-default": "startTagOther" 6830 },t.inColumnGroup.end_tag_handlers = { 6831 colgroup: "endTagColgroup", 6832 col: "endTagCol", 6833 "-default": "endTagOther" 6834 },t.inColumnGroup.ignoreEndTagColgroup = function () { 6835 return e.currentStackItem().localName == "html" 6836 },t.inColumnGroup.processCharacters = function (t) { 6837 var n = t.takeLeadingWhitespace(); 6838 n && e.insertText(n); 6839 if (!t.length) return; 6840 var r = this.ignoreEndTagColgroup(); 6841 this.endTagColgroup("colgroup"), r || e.insertionMode.processCharacters(t) 6842 },t.inColumnGroup.startTagCol = function (t, n) { 6843 e.insertSelfClosingElement(t, n) 6844 },t.inColumnGroup.startTagOther = function (t, n, r) { 6845 var i = this.ignoreEndTagColgroup(); 6846 this.endTagColgroup("colgroup"), i || e.insertionMode.processStartTag(t, n, r) 6847 },t.inColumnGroup.endTagColgroup = function (t) { 6848 this.ignoreEndTagColgroup() ? (r.ok(e.context), e.parseError("unexpected-end-tag", {name: t})) : (e.popElement(), e.setInsertionMode("inTable")) 6849 },t.inColumnGroup.endTagCol = function (t) { 6850 e.parseError("no-end-tag", {name: "col"}) 6851 },t.inColumnGroup.endTagOther = function (t) { 6852 var n = this.ignoreEndTagColgroup(); 6853 this.endTagColgroup("colgroup"), n || e.insertionMode.processEndTag(t) 6854 },t.inForeignContent = Object.create(t.base),t.inForeignContent.processStartTag = function (t, n, r) { 6855 if (["b", "big", "blockquote", "body", "br", "center", "code", "dd", "div", "dl", "dt", "em", "embed", "h1", "h2", "h3", "h4", "h5", "h6", "head", "hr", "i", "img", "li", "listing", "menu", "meta", "nobr", "ol", "p", "pre", "ruby", "s", "small", "span", "strong", "strike", "sub", "sup", "table", "tt", "u", "ul", "var"].indexOf(t) != -1 || t == "font" && n.some(function (e) { 6856 return ["color", "face", "size"].indexOf(e.nodeName) >= 0 6857 })) { 6858 e.parseError("unexpected-html-element-in-foreign-content", {name: t}); 6859 while (e.currentStackItem().isForeign() && !e.currentStackItem().isHtmlIntegrationPoint() && !e.currentStackItem().isMathMLTextIntegrationPoint()) e.openElements.pop(); 6860 e.insertionMode.processStartTag(t, n, r); 6861 return 6862 } 6863 e.currentStackItem().namespaceURI == "http://www.w3.org/1998/Math/MathML" && (n = e.adjustMathMLAttributes(n)), e.currentStackItem().namespaceURI == "http://www.w3.org/2000/svg" && (t = e.adjustSVGTagNameCase(t), n = e.adjustSVGAttributes(n)), n = e.adjustForeignAttributes(n), e.insertForeignElement(t, n, e.currentStackItem().namespaceURI, r) 6864 },t.inForeignContent.processEndTag = function (t) { 6865 var n = e.currentStackItem(), r = e.openElements.length - 1; 6866 n.localName.toLowerCase() != t && e.parseError("unexpected-end-tag", {name: t}); 6867 for (; ;) { 6868 if (r === 0) break; 6869 if (n.localName.toLowerCase() == t) { 6870 while (e.openElements.pop() != n) ; 6871 break 6872 } 6873 r -= 1, n = e.openElements.item(r); 6874 if (n.isForeign()) continue; 6875 e.insertionMode.processEndTag(t); 6876 break 6877 } 6878 },t.inForeignContent.processCharacters = function (t) { 6879 var n = t.takeRemaining(); 6880 n = n.replace(/\u0000/g, function (t, n) { 6881 return e.parseError("invalid-codepoint"), "\ufffd" 6882 }), e.framesetOk && !d(n) && (e.framesetOk = !1), e.insertText(n) 6883 },t.inHeadNoscript = Object.create(t.base),t.inHeadNoscript.start_tag_handlers = { 6884 html: "startTagHtml", 6885 basefont: "startTagBasefontBgsoundLinkMetaNoframesStyle", 6886 bgsound: "startTagBasefontBgsoundLinkMetaNoframesStyle", 6887 link: "startTagBasefontBgsoundLinkMetaNoframesStyle", 6888 meta: "startTagBasefontBgsoundLinkMetaNoframesStyle", 6889 noframes: "startTagBasefontBgsoundLinkMetaNoframesStyle", 6890 style: "startTagBasefontBgsoundLinkMetaNoframesStyle", 6891 head: "startTagHeadNoscript", 6892 noscript: "startTagHeadNoscript", 6893 "-default": "startTagOther" 6894 },t.inHeadNoscript.end_tag_handlers = { 6895 noscript: "endTagNoscript", 6896 br: "endTagBr", 6897 "-default": "endTagOther" 6898 },t.inHeadNoscript.processCharacters = function (t) { 6899 var n = t.takeLeadingWhitespace(); 6900 n && e.insertText(n); 6901 if (!t.length) return; 6902 e.parseError("unexpected-char-in-frameset"), this.anythingElse(), e.insertionMode.processCharacters(t) 6903 },t.inHeadNoscript.processComment = function (e) { 6904 t.inHead.processComment(e) 6905 },t.inHeadNoscript.startTagBasefontBgsoundLinkMetaNoframesStyle = function (e, n) { 6906 t.inHead.processStartTag(e, n) 6907 },t.inHeadNoscript.startTagHeadNoscript = function (t, n) { 6908 e.parseError("unexpected-start-tag-in-frameset", {name: t}) 6909 },t.inHeadNoscript.startTagOther = function (t, n) { 6910 e.parseError("unexpected-start-tag-in-frameset", {name: t}), this.anythingElse(), e.insertionMode.processStartTag(t, n) 6911 },t.inHeadNoscript.endTagBr = function (t, n) { 6912 e.parseError("unexpected-end-tag-in-frameset", {name: t}), this.anythingElse(), e.insertionMode.processEndTag(t, n) 6913 },t.inHeadNoscript.endTagNoscript = function (t, n) { 6914 e.popElement(), e.setInsertionMode("inHead") 6915 },t.inHeadNoscript.endTagOther = function (t, n) { 6916 e.parseError("unexpected-end-tag-in-frameset", {name: t}) 6917 },t.inHeadNoscript.anythingElse = function () { 6918 e.popElement(), e.setInsertionMode("inHead") 6919 },t.inFrameset = Object.create(t.base),t.inFrameset.start_tag_handlers = { 6920 html: "startTagHtml", 6921 frameset: "startTagFrameset", 6922 frame: "startTagFrame", 6923 noframes: "startTagNoframes", 6924 "-default": "startTagOther" 6925 },t.inFrameset.end_tag_handlers = { 6926 frameset: "endTagFrameset", 6927 noframes: "endTagNoframes", 6928 "-default": "endTagOther" 6929 },t.inFrameset.processCharacters = function (t) { 6930 e.parseError("unexpected-char-in-frameset") 6931 },t.inFrameset.startTagFrameset = function (t, n) { 6932 e.insertElement(t, n) 6933 },t.inFrameset.startTagFrame = function (t, n) { 6934 e.insertSelfClosingElement(t, n) 6935 },t.inFrameset.startTagNoframes = function (e, n) { 6936 t.inBody.processStartTag(e, n) 6937 },t.inFrameset.startTagOther = function (t, n) { 6938 e.parseError("unexpected-start-tag-in-frameset", {name: t}) 6939 },t.inFrameset.endTagFrameset = function (t, n) { 6940 e.currentStackItem().localName == "html" ? e.parseError("unexpected-frameset-in-frameset-innerhtml") : e.popElement(), !e.context && e.currentStackItem().localName != "frameset" && e.setInsertionMode("afterFrameset") 6941 },t.inFrameset.endTagNoframes = function (e) { 6942 t.inBody.processEndTag(e) 6943 },t.inFrameset.endTagOther = function (t) { 6944 e.parseError("unexpected-end-tag-in-frameset", {name: t}) 6945 },t.inTable = Object.create(t.base),t.inTable.start_tag_handlers = { 6946 html: "startTagHtml", 6947 caption: "startTagCaption", 6948 colgroup: "startTagColgroup", 6949 col: "startTagCol", 6950 table: "startTagTable", 6951 tbody: "startTagRowGroup", 6952 tfoot: "startTagRowGroup", 6953 thead: "startTagRowGroup", 6954 td: "startTagImplyTbody", 6955 th: "startTagImplyTbody", 6956 tr: "startTagImplyTbody", 6957 style: "startTagStyleScript", 6958 script: "startTagStyleScript", 6959 input: "startTagInput", 6960 form: "startTagForm", 6961 "-default": "startTagOther" 6962 },t.inTable.end_tag_handlers = { 6963 table: "endTagTable", 6964 body: "endTagIgnore", 6965 caption: "endTagIgnore", 6966 col: "endTagIgnore", 6967 colgroup: "endTagIgnore", 6968 html: "endTagIgnore", 6969 tbody: "endTagIgnore", 6970 td: "endTagIgnore", 6971 tfoot: "endTagIgnore", 6972 th: "endTagIgnore", 6973 thead: "endTagIgnore", 6974 tr: "endTagIgnore", 6975 "-default": "endTagOther" 6976 },t.inTable.processCharacters = function (n) { 6977 if (e.currentStackItem().isFosterParenting()) { 6978 var r = e.insertionModeName; 6979 e.setInsertionMode("inTableText"), e.originalInsertionMode = r, e.insertionMode.processCharacters(n) 6980 } else e.redirectAttachToFosterParent = !0, t.inBody.processCharacters(n), e.redirectAttachToFosterParent = !1 6981 },t.inTable.startTagCaption = function (t, n) { 6982 e.openElements.popUntilTableScopeMarker(), e.activeFormattingElements.push(l), e.
6982insertElement(t, n), e.setInsertionMode("inCaption") 6983 },t.inTable.startTagColgroup = function (t, n) { 6984 e.openElements.popUntilTableScopeMarker(), e.insertElement(t, n), e.setInsertionMode("inColumnGroup") 6985 },t.inTable.startTagCol = function (t, n) { 6986 this.startTagColgroup("colgroup", []), e.insertionMode.processStartTag(t, n) 6987 },t.inTable.startTagRowGroup = function (t, n) { 6988 e.openElements.popUntilTableScopeMarker(), e.insertElement(t, n), e.setInsertionMode("inTableBody") 6989 },t.inTable.startTagImplyTbody = function (t, n) { 6990 this.startTagRowGroup("tbody", []), e.insertionMode.processStartTag(t, n) 6991 },t.inTable.startTagTable = function (t, n) { 6992 e.parseError("unexpected-start-tag-implies-end-tag", { 6993 startName: "table", 6994 endName: "table" 6995 }), e.insertionMode.processEndTag("table"), e.context || e.insertionMode.processStartTag(t, n) 6996 },t.inTable.startTagStyleScript = function (e, n) { 6997 t.inHead.processStartTag(e, n) 6998 },t.inTable.startTagInput = function (t, n) { 6999 for (var r in n) if (n[r].nodeName.toLowerCase() == "type") { 7000 if (n[r].nodeValue.toLowerCase() == "hidden") { 7001 e.parseError("unexpected-hidden-input-in-table"), e.insertElement(t, n), e.openElements.pop(); 7002 return 7003 } 7004 break 7005 } 7006 this.startTagOther(t, n) 7007 },t.inTable.startTagForm = function (t, n) { 7008 e.parseError("unexpected-form-in-table"), e.form || (e.insertElement(t, n), e.form = e.currentStackItem(), e.openElements.pop()) 7009 },t.inTable.startTagOther = function (n, r, i) { 7010 e.parseError("unexpected-start-tag-implies-table-voodoo", {name: n}), e.redirectAttachToFosterParent = !0, t.inBody.processStartTag(n, r, i), e.redirectAttachToFosterParent = !1 7011 },t.inTable.endTagTable = function (t) { 7012 e.openElements.inTableScope(t) ? (e.generateImpliedEndTags(), e.currentStackItem().localName != t && e.parseError("end-tag-too-early-named", { 7013 gotName: "table", 7014 expectedName: e.currentStackItem().localName 7015 }
7015), e.openElements.popUntilPopped("table"), e.resetInsertionMode()) : (r.ok(e.context), e.parseError("unexpected-end-tag", {name: t})) 7016 },t.inTable.endTagIgnore = function (t) { 7017 e.parseError("unexpected-end-tag", {name: t}) 7018 },t.inTable.endTagOther = function (n) { 7019 e.parseError("unexpected-end-tag-implies-table-voodoo", {name: n}), e.redirectAttachToFosterParent = !0, t.inBody.processEndTag(n), e.redirectAttachToFosterParent = !1 7020 },t.inTableText = Object.create(t.base),t.inTableText.flushCharacters = function () { 7021 var t = e.pendingTableCharacters.join(""); 7022 p(t) ? e.insertText(t) : (e.redirectAttachToFosterParent = !0, e.reconstructActiveFormattingElements(), e.insertText(t), e.framesetOk = !1, e.redirectAttachToFosterParent = !1), e.pendingTableCharacters = [] 7023 },t.inTableText.processComment = function (t) { 7024 this.flushCharacters(), e.setInsertionMode(e.originalInsertionMode), e.insertionMode.processComment(t) 7025 },t.inTableText.processEOF = function (t) { 7026 this.flushCharacters(), e.setInsertionMode(e.originalInsertionMode), e.insertionMode.processEOF() 7027 },t.inTableText.processCharacters = function (t) { 7028 var n = t.takeRemaining(); 7029 n = n.replace(/\u0000/g, function (t, n) { 7030 return e.parseError("invalid-codepoint"), "" 7031 }); 7032 if (!n) return; 7033 e.pendingTableCharacters.push(n) 7034 },t.inTableText.processStartTag = function (t, n, r) { 7035 this.flushCharacters(), e.setInsertionMode(e.originalInsertionMode), e.insertionMode.processStartTag(t, n, r) 7036 },t.inTableText.processEndTag = function (t, n) { 7037 this.flushCharacters(), e.setInsertionMode(e.originalInsertionMode), e.insertionMode.processEndTag(t, n) 7038 },t.inTableBody = Object.create(t.base),t.inTableBody.start_tag_handlers = { 7039 html: "startTagHtml", 7040 tr: "startTagTr", 7041 td: "startTagTableCell", 7042 th: "startTagTableCell", 7043 caption: "startTagTableOther", 7044 col: "startTagTableOther", 7045 colgroup: "startTagTableOther", 7046 tbody: "startTagTableOther", 7047 tfoot: "startTagTableOther", 7048 thead: "startTagTableOther", 7049 "-default": "startTagOther" 7050 },t.inTableBody.end_tag_handlers = { 7051 table: "endTagTable", 7052 tbody: "endTagTableRowGroup", 7053 tfoot: "endTagTableRowGroup", 7054 thead: "endTagTableRowGroup", 7055 body: "endTagIgnore", 7056 caption: "endTagIgnore", 7057 col: "endTagIgnore", 7058 colgroup: "endTagIgnore", 7059 html: "endTagIgnore", 7060 td: "endTagIgnore", 7061 th: "endTagIgnore", 7062 tr: "endTagIgnore", 7063 "-default": "endTagOther" 7064 },t.inTableBody.processCharacters = function (e) { 7065 t.inTable.processCharacters(e) 7066 },t.inTableBody.startTagTr = function (t, n) { 7067 e.openElements.popUntilTableBodyScopeMarker(), e.insertElement(t, n), e.setInsertionMode("inRow") 7068 },t.inTableBody.startTagTableCell = function (t, n) { 7069 e.parseError("unexpected-cell-in-table-body", {name: t}), this.startTagTr("tr", []), e.insertionMode.processStartTag(t, n) 7070 },t.inTableBody.startTagTableOther = function (t, n) { 7071 e.openElements.inTableScope("tbody") || e.openElements.inTableScope("thead") || e.openElements.inTableScope("tfoot") ? (e.openElements.popUntilTableBodyScopeMarker(), this.endTagTableRowGroup(e.currentStackItem().localName), e.insertionMode.processStartTag(t, n)) : e.parseError("unexpected-start-tag", {name: t}) 7072 },t.inTableBody.startTagOther = function (e, n) { 7073 t.inTable.processStartTag(e, n) 7074 },t.inTableBody.endTagTableRowGroup = function (t) { 7075 e.openElements.inTableScope(t) ? (e.openElements.popUntilTableBodyScopeMarker(), e.popElement(), e.setInsertionMode("inTable")) : e.parseError("unexpected-end-tag-in-table-body", {name: t}) 7076 },t.inTableBody.endTagTable = function (t) { 7077 e.openElements.inTableScope("tbody") || e.openElements.inTableScope("thead") || e.openElements.inTableScope("tfoot") ? (e.openElements.popUntilTableBodyScopeMarker(), this.endTagTableRowGroup(e.currentStackItem().localName), e.insertionMode.processEndTag(t)) : e.parseError("unexpected-end-tag", {name: t}) 7078 },t.inTableBody.endTagIgnore = function (t) { 7079 e.parseError("unexpected-end-tag-in-table-body", {name: t}) 7080 },t.inTableBody.endTagOther = function (e) { 7081 t.inTable.processEndTag(e) 7082 },t.inSelect = Object.create(t.base),t.inSelect.start_tag_handlers = { 7083 html: "startTagHtml", 7084 option: "startTagOption", 7085 optgroup: "startTagOptgroup", 7086 select: "startTagSelect", 7087 input: "startTagInput", 7088 keygen: "startTagInput", 7089 textarea: "startTagInput", 7090 script: "startTagScript", 7091 "-default": "startTagOther" 7092 },t.inSelect.end_tag_handlers = { 7093 option: "endTagOption", 7094 optgroup: "endTagOptgroup", 7095 select: "endTagSelect", 7096 caption: "endTagTableElements", 7097 table: "endTagTableElements", 7098 tbody: "endTagTableElements", 7099 tfoot: "endTagTableElements", 7100 thead: "endTagTableElements", 7101 tr: "endTagTableElements", 7102 td: "endTagTableElements", 7103 th: "endTagTableElements", 7104 "-default": "endTagOther" 7105 },t.inSelect.processCharacters = function (t) { 7106 var n = t.takeRemaining(); 7107 n = n.replace(/\u0000/g, function (t, n) { 7108 return e.parseError("invalid-codepoint"), "" 7109 }); 7110 if (!n) return; 7111 e.insertText(n) 7112 },t.inSelect.startTagOption = function (t, n) { 7113 e.currentStackItem().localName == "option" && e.popElement(), e.insertElement(t, n) 7114 },t.inSelect.startTagOptgroup = function (t, n) { 7115 e.currentStackItem().localName == "option" && e.popElement(), e.currentStackItem().localName == "optgroup" && e.popElement(), e.insertElement(t, n) 7116 },t.inSelect.endTagOption = function (t) { 7117 if (e.currentStackItem().localName !== "option") { 7118 e.parseError("unexpected-end-tag-in-select", {name: t}); 7119 return 7120 } 7121 e.popElement() 7122 },t.inSelect.endTagOptgroup = function (t) { 7123 e.currentStackItem().localName == "option" && e.openElements.item(e.openElements.length - 2).localName == "optgroup" && e.popElement(), e.currentStackItem().localName == "optgroup" ? e.popElement() : e.parseError("unexpected-end-tag-in-select", {name: "optgroup"}) 7124 },t.inSelect.startTagSelect = function (t) { 7125 e.parseError("unexpected-select-in-select"), this.endTagSelect("select") 7126 },t.inSelect.endTagSelect = function (t) { 7127 e.openElements.inTableScope("select") ? (e.openElements.popUntilPopped("select"), e.resetInsertionMode()) : e.parseError("unexpected-end-tag", {name: t}) 7128 },t.inSelect.startTagInput = function (t, n) { 7129 e.parseError("unexpected-input-in-select"), e.openElements.inSelectScope("select") && (this.endTagSelect("select"), e.insertionMode.processStartTag(t, n)) 7130 },t.inSelect.startTagScript = function (e, n) { 7131 t.inHead.processStartTag(e, n) 7132 },t.inSelect.endTagTableElements = function (t) { 7133 e.parseError("unexpected-end-tag-in-select", {name: t}), e.openElements.inTableScope(t) && (this.endTagSelect("select"), e.insertionMode.processEndTag(t)) 7134 },t.inSelect.startTagOther = function (t, n) { 7135 e.parseError("unexpected-start-tag-in-select", {name: t}) 7136 },t.inSelect.endTagOther = function (t) { 7137 e.parseError("unexpected-end-tag-in-select", {name: t}) 7138 },t.inSelectInTable = Object.create(t.base),t.inSelectInTable.start_tag_handlers = { 7139 caption: "startTagTable", 7140 table: "startTagTable", 7141 tbody: "startTagTable", 7142 tfoot: "startTagTable", 7143 thead: "startTagTable", 7144 tr: "startTagTable", 7145 td: "startTagTable", 7146 th: "startTagTable", 7147 "-default": "startTagOther" 7148 },t.inSelectInTable.end_tag_handlers = { 7149 caption: "endTagTable", 7150 table: "endTagTable", 7151 tbody: "endTagTable", 7152 tfoot: "endTagTable", 7153 thead: "endTagTable", 7154 tr: "endTagTable", 7155 td: "endTagTable", 7156 th: "endTagTable", 7157 "-default": "endTagOther" 7158 },t.inSelectInTable.processCharacters = function (e) { 7159 t.inSelect.processCharacters(e) 7160 },t.inSelectInTable.startTagTable = function (t, n) { 7161 e.parseError("unexpected-table-element-start-tag-in-select-in-table", {name: t}), this.endTagOther("select"), e.insertionMode.processStartTag(t, n) 7162 },t.inSelectInTable.startTagOther = function (e, n, r) { 7163 t.inSelect.processStartTag(e, n, r) 7164 },t.inSelectInTable.endTagTable = function (t) { 7165 e.parseError("unexpected-table-element-end-tag-in-select-in-table", {name: t}), e.openElements.inTableScope(t) && (this.endTagOther("select"), e.insertionMode.processEndTag(t)) 7166 },t.inSelectInTable.endTagOther = function (e) { 7167 t.inSelect.processEndTag(e) 7168 },t.inRow = Object.create(t.base),t.inRow.start_tag_handlers = { 7169 html: "startTagHtml", 7170 td: "startTagTableCell", 7171 th: "startTagTableCell", 7172 caption: "startTagTableOther", 7173 col: "startTagTableOther", 7174 colgroup: "startTagTableOther", 7175 tbody: "startTagTableOther", 7176 tfoot: "startTagTableOther", 7177 thead: "startTagTableOther", 7178 tr: "startTagTableOther", 7179 "-default": "startTagOther" 7180 },t.inRow.end_tag_handlers = { 7181 tr: "endTagTr", 7182 table: "endTagTable", 7183 tbody: "endTagTableRowGroup", 7184 tfoot: "endTagTableRowGroup", 7185 thead: "endTagTableRowGroup", 7186 body: "endTagIgnore", 7187 caption: "endTagIgnore", 7188 col: "endTagIgnore", 7189 colgroup: "endTagIgnore", 7190 html: "endTagIgnore", 7191 td: "endTagIgnore", 7192 th: "endTagIgnore", 7193 "-default": "endTagOther" 7194 },t.inRow.processCharacters = function (e) { 7195 t.inTable.processCharacters(e) 7196 },t.inRow.startTagTableCell = function (t, n) { 7197 e.openElements.popUntilTableRowScopeMarker(), e.insertElement(t, n), e.setInsertionMode("inCell"), e.activeFormattingElements.push(l) 7198 },t.inRow.startTagTableOther = function (t, n) { 7199 var r = this.ignoreEndTagTr(); 7200 this.endTagTr("tr"), r || e.insertionMode.processStartTag(t, n) 7201 },t.inRow.startTagOther = function (e, n, r) { 7202 t.inTable.processStartTag(e, n, r) 7203 },t.inRow.endTagTr = function (t) { 7204 this.ignoreEndTagTr() ? (r.ok(e.context), e.parseError("unexpected-end-tag", {name: t})) : (e.openElements.popUntilTableRowScopeMarker(), e.popElement(), e.setInsertionMode("inTableBody")) 7205 },t.inRow.endTagTable = function (t) { 7206 var n = this.ignoreEndTagTr(); 7207 this.endTagTr("tr"), n || e.insertionMode.processEndTag(t) 7208 },t.inRow.endTagTableRowGroup = function (t) { 7209 e.openElements.inTableScope(t) ? (this.endTagTr("tr"), e.insertionMode.processEndTag(t)) : e.parseError("unexpected-end-tag", {name: t}) 7210 },t.inRow.endTagIgnore = function (t) { 7211 e.parseError("unexpected-end-tag-in-table-row", {name: t}) 7212 },t.inRow.endTagOther = function (e) { 7213 t.inTable.processEndTag(e) 7214 },t.inRow.ignoreEndTagTr = function () { 7215 return !e.openElements.inTableScope("tr") 7216 },t.afterAfterFrameset = Object.create(t.base),t.afterAfterFrameset.start_tag_handlers = { 7217 html: "startTagHtml", 7218 noframes: "startTagNoFrames", 7219 "-default": "startTagOther" 7220 },t.afterAfterFrameset.processEOF = function () { 7221 },t.afterAfterFrameset.processComment = function (t) { 7222 e.insertComment(t, e.document) 7223 },t.afterAfterFrameset.processCharacters = function (t) { 7224 var n = t.takeRemaining(), r = ""; 7225 for (var i = 0; i < n.length; i++) { 7226 var s = n[i]; 7227 c(s) && (r += s) 7228 } 7229 r && (e.reconstructActiveFormattingElements(), e.insertText(r)), r.length < n.length && e.parseError("expected-eof-but-got-char") 7230 },t.afterAfterFrameset.startTagNoFrames = function (e, n) { 7231 t.inHead.processStartTag(e, n) 7232 },t.afterAfterFrameset.startTagOther = function (t, n, r) { 7233 e.parseError("expected-eof-but-got-start-tag", {name: t}) 7234 },t.afterAfterFrameset.processEndTag = function (t, n) { 7235 e.parseError("expected-eof-but-got-end-tag", {name: t}) 7236 },t.text = Object.create(t.base),t.text.start_tag_handlers = {"-default": "startTagOther"},t.text.end_tag_handlers = { 7237 script: "endTagScript", 7238 "-default": "endTagOther" 7239 },t.text.processCharacters = function (t) { 7240 e.shouldSkipLeadingNewline && (e.shouldSkipLeadingNewline = !1, t.skipAtMostOneLeadingNewline()); 7241 var n = t.takeRemaining(); 7242 if (!n) return; 7243 e.insertText(n) 7244 },t.text.processEOF = function () { 7245 e.parseError("expected-named-closing-tag-but-got-eof", {name: e.currentStackItem().localName}
7245), e.openElements.pop(), e.setInsertionMode(e.originalInsertionMode), e.insertionMode.processEOF() 7246 },t.text.startTagOther = function (e) { 7247 throw"Tried to process start tag " + e + " in RCDATA/RAWTEXT mode" 7248 },t.text.endTagScript = function (t) { 7249 var n = e.openElements.pop(); 7250 r.ok(n.localName == "script"), e.setInsertionMode(e.originalInsertionMode) 7251 },t.text.endTagOther = function (t) { 7252 e.openElements.pop(), e.setInsertionMode(e.originalInsertionMode) 7253 } 7254 } 7255 7256 function y(e, t) { 7257 return e.replace(new RegExp("{[0-9a-z-]+}", "gi"), function (e) { 7258 return t[e.slice(1, -1)] || e 7259 }) 7260 } 7261 7262 var r = e("assert"), i = e("./messages.json"), s = e("./constants"), o = e("events").EventEmitter, 7263 u = e("./Tokenizer").Tokenizer, a = e("./ElementStack").ElementStack, f = e("./StackItem").StackItem, 7264 l = {}; 7265 m.prototype.skipAtMostOneLeadingNewline = function () { 7266 this.characters[this.current] === "\n" && this.current++ 7267 }, m.prototype.skipLeadingWhitespace = function () { 7268 while (c(this.characters[this.current])) if (++this.current == this.end) return 7269 }, m.prototype.skipLeadingNonWhitespace = function () { 7270 while (!c(this.characters[this.current])) if (++this.current == this.end) return 7271 }, m.prototype.takeRemaining = function () { 7272 return this.characters.substring(this.current) 7273 }, m.prototype.takeLeadingWhitespace = function () { 7274 var e = this.current; 7275 return this.skipLeadingWhitespace(), e === this.current ? "" : this.characters.substring(e, this.current - e) 7276 }, Object.defineProperty(m.prototype, "length", { 7277 get: function () { 7278 return this.end - this.current 7279 } 7280 }), g.prototype.setInsertionMode = function (e) { 7281 this.insertionMode = this.insertionModes[e], this.insertionModeName = e 7282 }, g.prototype.adoptionAgencyEndTag = function (e) { 7283 function i(e) { 7284 return e === r 7285 } 7286 7287 var t = 8, n = 3, r, s = 0; 7288 while (s++ < t) { 7289 r = this.elementInActiveFormattingElements(e); 7290 if (!r || this.openElements.contains(r) && !this.openElements.inScope(r.localName)) return this.parseError("adoption-agency-1.1", {name: e}), !1; 7291 if (!this.openElements.contains(r)) return this.parseError("adoption-agency-1.2", {name: e}), this.removeElementFromActiveFormattingElements(r), !0; 7292 this.openElements.inScope(r.localName) || this.parseError("adoption-agency-4.4", {name: e}), r != this.currentStackItem() && this.parseError("adoption-agency-1.3", {name: e}); 7293 var o = this.openElements.furthestBlockForFormattingElement(r.node); 7294 if (!o) return this.openElements.remove_openElements_until(i), this.removeElementFromActiveFormattingElements(r), !0; 7295 var u = this.openElements.elements.indexOf(r), a = this.openElements.item(u - 1), 7296 l = this.activeFormattingElements.indexOf(r), c = o, h = o, 7297 p = this.openElements.elements.indexOf(c), d = 0; 7298 while (d++ < n) { 7299 p -= 1, c = this.openElements.item(p); 7300 if (this.activeFormattingElements.indexOf(c) < 0) { 7301 this.openElements.elements.splice(p, 1); 7302 continue 7303 } 7304 if (c == r) break; 7305 h == o && (l = this.activeFormattingElements.indexOf(c) + 1); 7306 var v = this.createElement(c.namespaceURI, c.localName, c.attributes), 7307 m = new f(c.namespaceURI, c.localName, c.attributes, v); 7308 this.activeFormattingElements[this.activeFormattingElements.indexOf(c)] = m, this.openElements.elements[this.openElements.elements.indexOf(c)] = m, c = m, this.detachFromParent(h.node), this.attachNode(h.node, c.node), h = c 7309 } 7310 this.detachFromParent(h.node), a.isFosterParenting() ? this.insertIntoFosterParent(h.node) : this.attachNode(h.node, a.node); 7311 var v = this.createElement("http://www.w3.org/1999/xhtml", r.localName, r.attributes), 7312 g = new f(r.namespaceURI, r.localName, r.attributes, v); 7313 this.reparentChildren(o.node, v), this.attachNode(v, o.node), this.removeElementFromActiveFormattingElements(r), this.activeFormattingElements.splice(Math.min(l, this.activeFormattingElements.length), 0, g), this.openElements.remove(r), this.openElements.elements.splice(this.openElements.elements.indexOf(o) + 1, 0, g) 7314 } 7315 return !0 7316 }, g.prototype.start = function () { 7317 throw"Not mplemented" 7318 }, g.prototype.startTokenization = function (e) { 7319 this.tokenizer = e, this.compatMode = "no quirks", this.originalInsertionMode = "initial", this.framesetOk = !0, this.openElements = new a, this.activeFormattingElements = [], this.start(); 7320 if (this.context) { 7321 switch (this.context) { 7322 case"title": 7323 case"textarea": 7324 this.tokenizer.setState(u.RCDATA); 7325 break; 7326 case"style": 7327 case"xmp": 7328 case"iframe": 7329 case"noembed": 7330 case"noframes": 7331 this.tokenizer.setState(u.RAWTEXT); 7332 break; 7333 case"script": 7334 this.tokenizer.setState(u.SCRIPT_DATA); 7335 break; 7336 case"noscript": 7337 this.scriptingEnabled && this.tokenizer.setState(u.RAWTEXT); 7338 break; 7339 case"plaintext": 7340 this.tokenizer.setState(u.PLAINTEXT) 7341 } 7342 this.insertHtmlElement(), this.resetInsertionMode() 7343 } else this.setInsertionMode("initial") 7344 }, g.prototype.processToken = function (e) { 7345 this.selfClosingFlagAcknowledged = !1; 7346 var t = this.openElements.top || null, n; 7347 !t || !t.isForeign() || t.isMathMLTextIntegrationPoint() && (e.type == "StartTag" && !(e.name in { 7348 mglyph: 0, 7349 malignmark: 0 7350 }) || e.type === "Characters") || t.namespaceURI == "http://www.w3.org/1998/Math/MathML" && t.localName == "annotation-xml" && e.type == "StartTag" && e.name == "svg" || t.isHtmlIntegrationPoint() && e.type in { 7351 StartTag: 0, 7352 Characters: 0 7353 } || e.type == "EOF" ? n = this.insertionMode : n = this.insertionModes.inForeignContent; 7354 switch (e.type) { 7355 case"Characters": 7356 var r = new m(e.data); 7357 n.processCharacters(r); 7358 break; 7359 case"Comment": 7360 n.processComment(e.data); 7361 break; 7362 case"StartTag": 7363 n.processStartTag(e.name, e.data, e.selfClosing); 7364 break; 7365 case"EndTag": 7366 n.processEndTag(e.name); 7367 break; 7368 case"Doctype": 7369 n.processDoctype(e.name, e.publicId, e.systemId, e.forceQuirks); 7370 break; 7371 case"EOF": 7372 n.processEOF() 7373 } 7374 }, g.prototype.isCdataSectionAllowed = function () { 7375 return this.openElements.length > 0 && this.currentStackItem().isForeign() 7376 }, g.prototype.isSelfClosingFlagAcknowledged = function () { 7377 return this.selfClosingFlagAcknowledged 7378 }, g.prototype.createElement = function (e, t, n) { 7379 throw new Error("Not implemented") 7380 }, g.prototype.attachNode = function (e, t) { 7381 throw new Error("Not implemented") 7382 }, g.prototype.attachNodeToFosterParent = function (e, t, n) { 7383 throw new Error("Not implemented") 7384 }, g.prototype.detachFromParent = function (e) { 7385 throw new Error("Not implemented") 7386 }, g.prototype.addAttributesToElement = function (e, t) { 7387 throw new Error("Not implemented") 7388 }, g.prototype.insertHtmlElement = function (e) { 7389 var t = this.createElement("http://www.w3.org/1999/xhtml", "html", e); 7390 return this.attachNode(t, this.document), this.openElements.pushHtmlElement(new f("http://www.w3.org/1999/xhtml", "html", e, t)), t 7391 }, g.prototype.insertHeadElement = function (e) { 7392 var t = this.createElement("http://www.w3.org/1999/xhtml", "head", e); 7393 return this.head = new f("http://www.w3.org/1999/xhtml", "head", e, t), this.attachNode(t, this.openElements.top.node), this.openElements.pushHeadElement(this.head), t 7394 }, g.prototype.insertBodyElement = function (e) { 7395 var t = this.createElement("http://www.w3.org/1999/xhtml", "body", e); 7396 return this.attachNode(t, this.openElements.top.node), this.openElements.pushBodyElement(new f("http://www.w3.org/1999/xhtml", "body", e, t)), t 7397 }, g.prototype.insertIntoFosterParent = function (e) { 7398 var t = this.openElements.findIndex("table"), n = this.openElements.item(t).node; 7399 if (t === 0) return this.attachNode(e, n); 7400 this.attachNodeToFosterParent(e, n, this.openElements.item(t - 1).node) 7401 }, g.prototype.insertElement = function (e, t, n, r) { 7402 n || (n = "http://www.w3.org/1999/xhtml"); 7403 var i = this.createElement(n, e, t); 7404 this.shouldFosterParent() ? this.insertIntoFosterParent(i) : this.attachNode(i, this.openElements.top.node), r || this.openElements.push(new f(n, e, t, i)) 7405 }, g.prototype.insertFormattingElement = function (e, t) { 7406 this.insertElement(e, t, "http://www.w3.org/1999/xhtml"), this.appendElementToActiveFormattingElements(this.currentStackItem()) 7407 }, g.prototype.insertSelfClosingElement = function (e, t) { 7408 this.selfClosingFlagAcknowledged = !0, this.insertElement(e, t, "http://www.w3.org/1999/xhtml", !0) 7409 }, g.prototype.insertForeignElement = function (e, t, n, r) { 7410 r && (this.selfClosingFlagAcknowledged = !0), this.insertElement(e, t, n, r) 7411 }, g.prototype.insertComment = function (e, t) { 7412 throw new Error("Not implemented") 7413 }, g.prototype.insertDoctype = function (e, t, n) { 7414 throw new Error("Not implemented") 7415 }, g.prototype.insertText = function (e) { 7416 throw new Error("Not implemented") 7417 }, g.prototype.currentStackItem = function () { 7418 return this.openElements.top 7419 }, g.prototype.popElement = function () { 7420 return this.openElements.pop() 7421 }, g.prototype.shouldFosterParent = function () { 7422 return this.redirectAttachToFosterParent && this.currentStackItem().isFosterParenting() 7423 }, g.prototype.generateImpliedEndTags = function (e) { 7424 var t = this.openElements.top.localName; 7425 ["dd", "dt", "li", "option", "optgroup", "p", "rp", "rt"].indexOf(t) != -1 && t != e && (this.popElement(), this.generateImpliedEndTags(e)) 7426 }, g.prototype.reconstructActiveFormattingElements = function () { 7427 if (this.activeFormattingElements.length === 0) return; 7428 var e = this.activeFormattingElements.length - 1, t = this.activeFormattingElements[e]; 7429 if (t == l || this.openElements.contains(t)) return; 7430 while (t != l && !this.openElements.contains(t)) { 7431 e -= 1, t = this.activeFormattingElements[e]; 7432 if (!t) break 7433 } 7434 for (; ;) { 7435 e += 1, t = this.activeFormattingElements[e], this.insertElement(t.localName, t.attributes); 7436 var n = this.currentStackItem(); 7437 this.activeFormattingElements[e] = n; 7438 if (n == this.activeFormattingElements[this.activeFormattingElements.length - 1]) break 7439 } 7440 }, g.prototype.ensureNoahsArkCondition = function (e) { 7441 var t = 3; 7442 if (this.activeFormattingElements.length < t) return; 7443 var n = [], r = e.attributes.length; 7444 for (var i = this.activeFormattingElements.length - 1; i >= 0; i--) { 7445 var s = this.activeFormattingElements[i]; 7446 if (s === l) break; 7447 if (e.localName !== s.localName || e.namespaceURI !== s.namespaceURI) continue; 7448 if (s.attributes.length != r) continue; 7449 n.push(s) 7450 } 7451 if (n.length < t) return; 7452 var o = [], u = e.attributes; 7453 for (var i = 0; i < u.length; i++) { 7454 var a = u[i]; 7455 for (var f = 0; f < n.length; f++) { 7456 var s = n[f], c = v(s, a.nodeName); 7457 c && c.nodeValue === a.nodeValue && o.push(s) 7458 } 7459 if (o.length < t) return; 7460 n = o, o = [] 7461 } 7462 for (var i = t - 1; i < n.length; i++) this.removeElementFromActiveFormattingElements(n[i]) 7463 }, g.prototype.appendElementToActiveFormattingElements = function (e) { 7464 this.ensureNoahsArkCondition(e), this.activeFormattingElements.push(e) 7465 }, g.prototype.removeElementFromActiveFormattingElements = function (e) { 7466 var t = this.activeFormattingElements.indexOf(e); 7467 t >= 0 && this.activeFormattingElements.splice(t, 1) 7468 }, g.prototype.elementInActiveFormattingElements = function (e) { 7469 var t = this.activeFormattingElements; 7470 for (var n = t.length - 1; n >= 0; n--) { 7471 if (t[n] == l) break; 7472 if (t[n].localName == e) return t[n] 7473 } 7474 return !1 7475 }, g.prototype.clearActiveFormattingElements = function () { 7476 while (this.activeFormattingElements.length !== 0 && this.activeFormattingElements.pop() != l) ; 7477 }, g.prototype.reparentChildren = function (e, t) { 7478 throw new Error("Not implemented") 7479 }, g.prototype.setFragmentContext = function (e) { 7480 this.context = e 7481 }, g.prototype.parseError = function (e, t) { 7482 if (!this.errorHandler) return; 7483 var n = y(i[e], t); 7484 this.errorHandler.error(n, this.tokenizer._inputStream.location(), e) 7485 }, g.prototype.resetInsertionMode = function () { 7486 var e = !1, t = null; 7487 for (var n = this.openElements.length - 1; n >= 0; n--) { 7488 t = this.openElements.item(n), n === 0 && (r.ok(this.context), e = !0, t = new f("http://www.w3.org/1999/xhtml", this.context, [], null)); 7489 if (t.namespaceURI === "http://www.w3.org/1999/xhtml") { 7490 if (t.localName === "select") return this.setInsertionMode("inSelect"); 7491 if (t.localName === "td" || t.localName === "th") return this.setInsertionMode("inCell"); 7492 if (t.localName === "tr") return this.setInsertionMode("inRow"); 7493 if (t.localName === "tbody" || t.localName
7493=== "thead" || t.localName === "tfoot") return this.setInsertionMode("inTableBody"); 7494 if (t.localName === "caption") return this.setInsertionMode("inCaption"); 7495 if (t.localName === "colgroup") return this.setInsertionMode("inColumnGroup"); 7496 if (t.localName === "table") return this.setInsertionMode("inTable"); 7497 if (t.localName === "head" && !e) return this.setInsertionMode("inHead"); 7498 if (t.localName === "body") return this.setInsertionMode("inBody"); 7499 if (t.localName === "frameset") return this.setInsertionMode("inFrameset"); 7500 if (t.localName === "html") return this.openElements.headElement ? this.setInsertionMode("afterHead") : this.setInsertionMode("beforeHead") 7501 } 7502 if (e) return this.setInsertionMode("inBody") 7503 } 7504 }, g.prototype.processGenericRCDATAStartTag = function (e, t) { 7505 this.insertElement(e, t), this.tokenizer.setState(u.RCDATA), this.originalInsertionMode = this.insertionModeName, this.setInsertionMode("text") 7506 }, g.prototype.processGenericRawTextStartTag = function (e, t) { 7507 this.insertElement(e, t), this.tokenizer.setState(u.RAWTEXT), this.originalInsertionMode = this.insertionModeName, this.setInsertionMode("text") 7508 }, g.prototype.adjustMathMLAttributes = function (e) { 7509 return e.forEach(function (e) { 7510 e.namespaceURI = "http://www.w3.org/1998/Math/MathML", s.MATHMLAttributeMap[e.nodeName] && (e.nodeName = s.MATHMLAttributeMap[e.nodeName]) 7511 }), e 7512 }, g.prototype.adjustSVGTagNameCase = function (e) { 7513 return s.SVGTagMap[e] || e 7514 }, g.prototype.adjustSVGAttributes = function (e) { 7515 return e.forEach(function (e) { 7516 e.namespaceURI = "http://www.w3.org/2000/svg", s.SVGAttributeMap[e.nodeName] && (e.nodeName = s.SVGAttributeMap[e.nodeName]) 7517 }), e 7518 }, g.prototype.adjustForeignAttributes = function (e) { 7519 for (var t = 0; t < e.length; t++) { 7520 var n = e[t], r = s.ForeignAttributeMap[n.nodeName]; 7521 r && (n.nodeName = r.localName, n.prefix = r.prefix, n.namespaceURI = r.namespaceURI) 7522 } 7523 return e 7524 }, n.TreeBuilder = g 7525 }, { 7526 "./ElementStack": 1, 7527 "./StackItem": 4, 7528 "./Tokenizer": 5, 7529 "./constants": 7, 7530 "./messages.json": 8, 7531 assert: 13, 7532 events: 16 7533 }], 7: [function (e, t, n) { 7534 n.SVGTagMap = { 7535 altglyph: "altGlyph", 7536 altglyphdef: "altGlyphDef", 7537 altglyphitem: "altGlyphItem", 7538 animatecolor: "animateColor", 7539 animatemotion: "animateMotion", 7540 animatetransform: "animateTransform", 7541 clippath: "clipPath", 7542 feblend: "feBlend", 7543 fecolormatrix: "feColorMatrix", 7544 fecomponenttransfer: "feComponentTransfer", 7545 fecomposite: "feComposite", 7546 feconvolvematrix: "feConvolveMatrix", 7547 fediffuselighting: "feDiffuseLighting", 7548 fedisplacementmap: "feDisplacementMap", 7549 fedistantlight: "feDistantLight", 7550 feflood: "feFlood", 7551 fefunca: "feFuncA", 7552 fefuncb: "feFuncB", 7553 fefuncg: "feFuncG", 7554 fefuncr: "feFuncR", 7555 fegaussianblur: "feGaussianBlur", 7556 feimage: "feImage", 7557 femerge: "feMerge", 7558 femergenode: "feMergeNode", 7559 femorphology: "feMorphology", 7560 feoffset: "feOffset", 7561 fepointlight: "fePointLight", 7562 fespecularlighting: "feSpecularLighting", 7563 fespotlight: "feSpotLight", 7564 fetile: "feTile", 7565 feturbulence: "feTurbulence", 7566 foreignobject: "foreignObject", 7567 glyphref: "glyphRef", 7568 lineargradient: "linearGradient", 7569 radialgradient: "radialGradient", 7570 textpath: "textPath" 7571 }, n.MATHMLAttributeMap = {definitionurl: "definitionURL"}, n.SVGAttributeMap = { 7572 attributename: "attributeName", 7573 attributetype: "attributeType", 7574 basefrequency: "baseFrequency", 7575 baseprofile: "baseProfile", 7576 calcmode: "calcMode", 7577 clippathunits: "clipPathUnits", 7578 contentscripttype: "contentScriptType", 7579 contentstyletype: "contentStyleType", 7580 diffuseconstant: "diffuseConstant", 7581 edgemode: "edgeMode", 7582 externalresourcesrequired: "externalResourcesRequired", 7583 filterres: "filterRes", 7584 filterunits: "filterUnits", 7585 glyphref: "glyphRef", 7586 gradienttransform: "gradientTransform", 7587 gradientunits: "gradientUnits", 7588 kernelmatrix: "kernelMatrix", 7589 kernelunitlength: "kernelUnitLength", 7590 keypoints: "keyPoints", 7591 keysplines: "keySplines", 7592 keytimes: "keyTimes", 7593 lengthadjust: "lengthAdjust", 7594 limitingconeangle: "limitingConeAngle", 7595 markerheight: "markerHeight", 7596 markerunits: "markerUnits", 7597 markerwidth: "markerWidth", 7598 maskcontentunits: "maskContentUnits", 7599 maskunits: "maskUnits", 7600 numoctaves: "numOctaves", 7601 pathlength: "pathLength", 7602 patterncontentunits: "patternContentUnits", 7603 patterntransform: "patternTransform", 7604 patternunits: "patternUnits", 7605 pointsatx: "pointsAtX", 7606 pointsaty: "pointsAtY", 7607 pointsatz: "pointsAtZ", 7608 preservealpha: "preserveAlpha", 7609 preserveaspectratio: "preserveAspectRatio", 7610 primitiveunits: "primitiveUnits", 7611 refx: "refX", 7612 refy: "refY", 7613 repeatcount: "repeatCount", 7614 repeatdur: "repeatDur", 7615 requiredextensions: "requiredExtensions", 7616 requiredfeatures: "requiredFeatures", 7617 specularconstant: "specularConstant", 7618 specularexponent: "specularExponent", 7619 spreadmethod: "spreadMethod", 7620 startoffset: "startOffset", 7621 stddeviation: "stdDeviation", 7622 stitchtiles: "stitchTiles", 7623 surfacescale: "surfaceScale", 7624 systemlanguage: "systemLanguage", 7625 tablevalues: "tableValues", 7626 targetx: "targetX", 7627 targety: "targetY", 7628 textlength: "textLength", 7629 viewbox: "viewBox", 7630 viewtarget: "viewTarget", 7631 xchannelselector: "xChannelSelector", 7632 ychannelselector: "yChannelSelector", 7633 zoomandpan: "zoomAndPan" 7634 }, n.ForeignAttributeMap = { 7635 "xlink:actuate": {prefix: "xlink", localName: "actuate", namespaceURI: "http://www.w3.org/1999/xlink"}, 7636 "xlink:arcrole": {prefix: "xlink", localName: "arcrole", namespaceURI: "http://www.w3.org/1999/xlink"}, 7637 "xlink:href": {prefix: "xlink", localName: "href", namespaceURI: "http://www.w3.org/1999/xlink"}, 7638 "xlink:role": {prefix: "xlink", localName: "role", namespaceURI: "http://www.w3.org/1999/xlink"}, 7639 "xlink:show": {prefix: "xlink", localName: "show", namespaceURI: "http://www.w3.org/1999/xlink"}, 7640 "xlink:title": {prefix: "xlink", localName: "title", namespaceURI: "http://www.w3.org/1999/xlink"}, 7641 "xlink:type": {prefix: "xlink", localName: "title", namespaceURI: "http://www.w3.org/1999/xlink"}, 7642 "xml:base": {prefix: "xml", localName: "base", namespaceURI: "http://www.w3.org/XML/1998/namespace"}, 7643 "xml:lang": {prefix: "xml", localName: "lang", namespaceURI: "http://www.w3.org/XML/1998/namespace"}, 7644 "xml:space": {prefix: "xml", localName: "space", namespaceURI: "http://www.w3.org/XML/1998/namespace"}, 7645 xmlns: {prefix: null, localName: "xmlns", namespaceURI: "http://www.w3.org/2000/xmlns/"}, 7646 "xmlns:xlink": {prefix: "xmlns", localName: "xlink", namespaceURI: "http://www.w3.org/2000/xmlns/"} 7647 } 7648 }, {}], 8: [function (e, t, n) { 7649 t.exports = { 7650 "null-character": "Null character in input stream, replaced with U+FFFD.", 7651 "invalid-codepoint": "Invalid codepoint in stream", 7652 "incorrectly-placed-solidus": "Solidus (/) incorrectly placed in tag.", 7653 "incorrect-cr-newline-entity": "Incorrect CR newline entity, replaced with LF.", 7654 "illegal-windows-1252-entity": "Entity used with illegal number (windows-1252 reference).", 7655 "cant-convert-numeric-entity": "Numeric entity couldn't be converted to character (codepoint U+{charAsInt}).", 7656 "invalid-numeric-entity-replaced": "Numeric entity represents an illegal codepoint. Expanded to the C1 controls range.", 7657 "numeric-entity-without-semicolon": "Numeric entity didn't end with ';'.", 7658 "expected-numeric-entity-but-got-eof": "Numeric entity expected. Got end of file instead.", 7659 "expected-numeric-entity": "Numeric entity expected but none found.", 7660 "named-entity-without-semicolon": "Named entity didn't end with ';'.", 7661 "expected-named-entity": "Named entity expected. Got none.", 7662 "attributes-in-end-tag": "End tag contains unexpected attributes.", 7663 "self-closing-flag-on-end-tag": "End tag contains unexpected self-closing flag.", 7664 "bare-less-than-sign-at-eof": "End of file after <.", 7665 "expected-tag-name-but-got-right-bracket": "Expected tag name. Got '>' instead.", 7666 "expected-tag-name-but-got-question-mark": "Expected tag name. Got '?' instead. (HTML doesn't support processing instructions.)", 7667 "expected-tag-name": "Expected tag name. Got something else instead.", 7668 "expected-closing-tag-but-got-right-bracket": "Expected closing tag. Got '>' instead. Ignoring '</>'.", 7669 "expected-closing-tag-but-got-eof": "Expected closing tag. Unexpected end of file.", 7670 "expected-closing-tag-but-got-char": "Expected closing tag. Unexpected character '{data}' found.", 7671 "eof-in-tag-name": "Unexpected end of file in the tag name.", 7672 "expected-attribute-name-but-got-eof": "Unexpected end of file. Expected attribute name instead.", 7673 "eof-in-attribute-name": "Unexpected end of file in attribute name.", 7674 "invalid-character-in-attribute-name": "Invalid character in attribute name.", 7675 "duplicate-attribute": "Dropped duplicate attribute '{name}' on tag.", 7676 "expected-end-of-tag-but-got-eof": "Unexpected end of file. Expected = or end of tag.", 7677 "expected-attribute-value-but-got-eof": "Unexpected end of file. Expected attribute value.", 7678 "expected-attribute-value-but-got-right-bracket": "Expected attribute value. Got '>' instead.", 7679 "unexpected-character-in-unquoted-attribute-value": "Unexpected character in unquoted attribute", 7680 "invalid-character-after-attribute-name": "Unexpected character after attribute name.", 7681 "unexpected-character-after-attribute-value": "Unexpected character after attribute value.", 7682 "eof-in-attribute-value-double-quote": 'Unexpected end of file in attribute value (").', 7683 "eof-in-attribute-value-single-quote": "Unexpected end of file in attribute value (').", 7684 "eof-in-attribute-value-no-quotes": "Unexpected end of file in attribute value.", 7685 "eof-after-attribute-value": "Unexpected end of file after attribute value.", 7686 "unexpected-eof-after-solidus-in-tag": "Unexpected end of file in tag. Expected >.", 7687 "unexpected-character-after-solidus-in-tag": "Unexpected character after / in tag. Expected >.", 7688 "expected-dashes-or-doctype": "Expected '--' or 'DOCTYPE'. Not found.", 7689 "unexpected-bang-after-double-dash-in-comment": "Unexpected ! after -- in comment.", 7690 "incorrect-comment": "Incorrect comment.", 7691 "eof-in-comment": "Unexpected end of file in comment.", 7692 "eof-in-comment-end-dash": "Unexpected end of file in comment (-).", 7693 "unexpected-dash-after-double-dash-in-comment": "Unexpected '-' after '--' found in comment.", 7694 "eof-in-comment-double-dash": "Unexpected end of file in comment (--).", 7695 "eof-in-comment-end-bang-state": "Unexpected end of file in comment.", 7696 "unexpected-char-in-comment": "Unexpected character in comment found.", 7697 "need-space-after-doctype": "No space after literal string 'DOCTYPE'.", 7698 "expected-doctype-name-but-got-right-bracket": "Unexpected > character. Expected DOCTYPE name.", 7699 "expected-doctype-name-but-got-eof": "Unexpected end of file. Expected DOCTYPE name.", 7700 "eof-in-doctype-name": "Unexpected end of file in DOCTYPE name.", 7701 "eof-in-doctype": "Unexpected end of file in DOCTYPE.", 7702 "expected-space-or-right-bracket-in-doctype": "Expected space or '>'. Got '{data}'.", 7703 "unexpected-end-of-doctype": "Unexpected end of DOCTYPE.", 7704 "unexpected-char-in-doctype": "Unexpected character in DOCTYPE.", 7705 "eof-in-bogus-doctype": "Unexpected end of file in bogus doctype.", 7706 "eof-in-innerhtml": "Unexpected EOF in inner html mode.", 7707 "unexpected-doctype": "Unexpected DOCTYPE. Ignored.", 7708 "non-html-root": "html needs to be the first start tag.", 7709 "expected-doctype-but-got-eof": "Unexpected End of file. Expected DOCTYPE.", 7710 "unknown-doctype": "Erroneous DOCTYPE. Expected <!DOCTYPE html>.", 7711 "quirky-doctype": "Quirky doctype. Expected <!DOCTYPE html>.", 7712 "almost-standards-doctype": "Almost standards mode doctype. Expected <!DOCTYPE html>.", 7713 "obsolete-doctype": "Obsolete doctype. Expected <!DOCTYPE html>.", 7714 "expected-doctype-but-got-chars": "Non-space characters found without seeing a doctype first. Expected e.g. <!DOCTYPE html>.", 7715 "expected-doctype-but-got-start-tag": "Start tag seen without seeing a doctype first. Expected e.g. <!DOCTYPE html>.", 7716 "expected-doctype-but-got-end-tag": "End tag seen without seeing a doctype first. Expected e.g. <!DOCTYPE html>.", 7717 "end-tag-after-implied-root": "Unexpected end tag ({name}) after the (implied) root element.", 7718 "expected-named-closing-tag-but-got-eof": "Unexpected end of file. Expected end tag ({name}).", 7719 "two-heads-are-not-better-than-one": "Unexpected start tag head in existing head. Ignored.", 7720 "unexpected-end-tag": "Unexpected end tag ({name}). Ignored.", 7721 "unexpected-implied-end-tag": "End tag {name} implied, but there were open elements.", 7722 "unexpected-start-tag-out-of-my-head": "Unexpected start tag ({name}) that can be in head. Moved.", 7723 "unexpected-start-tag": "Unexpected start tag ({name}).", 7724 "missing-end-tag": "Missing end tag ({name}).", 7725 "missing-end-tags": "Missing end tags ({name}).", 7726 "unexpected-start-tag-implies-end-tag": "Unexpected start tag ({startName}) implies end tag ({endName}).", 7727 "unexpected-start-tag-treated-as": "Unexpected start tag ({originalName}). Treated as {newName}.", 7728 "de
7728precated-tag": "Unexpected start tag {name}. Don't use it!", 7729 "unexpected-start-tag-ignored": "Unexpected start tag {name}. Ignored.", 7730 "expected-one-end-tag-but-got-another": "Unexpected end tag ({gotName}). Missing end tag ({expectedName}).", 7731 "end-tag-too-early": "End tag ({name}) seen too early. Expected other end tag.", 7732 "end-tag-too-early-named": "Unexpected end tag ({gotName}). Expected end tag ({expectedName}.", 7733 "end-tag-too-early-ignored": "End tag ({name}) seen too early. Ignored.", 7734 "adoption-agency-1.1": "End tag ({name}) violates step 1, paragraph 1 of the adoption agency algorithm.", 7735 "adoption-agency-1.2": "End tag ({name}) violates step 1, paragraph 2 of the adoption agency algorithm.", 7736 "adoption-agency-1.3": "End tag ({name}) violates step 1, paragraph 3 of the adoption agency algorithm.", 7737 "adoption-agency-4.4": "End tag ({name}) violates step 4, paragraph 4 of the adoption agency algorithm.", 7738 "unexpected-end-tag-treated-as": "Unexpected end tag ({originalName}). Treated as {newName}.", 7739 "no-end-tag": "This element ({name}) has no end tag.", 7740 "unexpected-implied-end-tag-in-table": "Unexpected implied end tag ({name}) in the table phase.", 7741 "unexpected-implied-end-tag-in-table-body": "Unexpected implied end tag ({name}) in the table body phase.", 7742 "unexpected-char-implies-table-voodoo": "Unexpected non-space characters in table context caused voodoo mode.", 7743 "unexpected-hidden-input-in-table": "Unexpected input with type hidden in table context.", 7744 "unexpected-form-in-table": "Unexpected form in table context.", 7745 "unexpected-start-tag-implies-table-voodoo": "Unexpected start tag ({name}) in table context caused voodoo mode.", 7746 "unexpected-end-tag-implies-table-voodoo": "Unexpected end tag ({name}) in table context caused voodoo mode.", 7747 "unexpected-cell-in-table-body": "Unexpected table cell start tag ({name}) in the table body phase.", 7748 "unexpected-cell-end-tag": "Got table cell end tag ({name}) while required end tags are missing.", 7749 "unexpected-end-tag-in-table-body": "Unexpected end tag ({name}) in the table body phase. Ignored.", 7750 "unexpected-implied-end-tag-in-table-row": "Unexpected implied end tag ({name}) in the table row phase.", 7751 "unexpected-end-tag-in-table-row": "Unexpected end tag ({name}) in the table row phase. Ignored.", 7752 "unexpected-select-in-select": "Unexpected select start tag in the select phase treated as select end tag.", 7753 "unexpected-input-in-select": "Unexpected input start tag in the select phase.", 7754 "unexpected-start-tag-in-select": "Unexpected start tag token ({name}) in the select phase. Ignored.", 7755 "unexpected-end-tag-in-select": "Unexpected end tag ({name}) in the select phase. Ignored.", 7756 "unexpected-table-element-start-tag-in-select-in-table": "Unexpected table element start tag ({name}) in the select in table phase.", 7757 "unexpected-table-element-end-tag-in-select-in-table": "Unexpected table element end tag ({name}) in the select in table phase.", 7758 "unexpected-char-after-body": "Unexpected non-space characters in the after body phase.", 7759 "unexpected-start-tag-after-body": "Unexpected start tag token ({name}) in the after body phase.", 7760 "unexpected-end-tag-after-body": "Unexpected end tag token ({name}) in the after body phase.", 7761 "unexpected-char-in-frameset": "Unepxected characters in the frameset phase. Characters ignored.", 7762 "unexpected-start-tag-in-frameset": "Unexpected start tag token ({name}) in the frameset phase. Ignored.", 7763 "unexpected-frameset-in-frameset-innerhtml": "Unexpected end tag token (frameset in the frameset phase (innerHTML).", 7764 "unexpected-end-tag-in-frameset": "Unexpected end tag token ({name}) in the frameset phase. Ignored.", 7765 "unexpected-char-after-frameset": "Unexpected non-space characters in the after frameset phase. Ignored.", 7766 "unexpected-start-tag-after-frameset": "Unexpected start tag ({name}) in the after frameset phase. Ignored.", 7767 "unexpected-end-tag-after-frameset": "Unexpected end tag ({name}) in the after frameset phase. Ignored.", 7768 "expected-eof-but-got-char": "Unexpected non-space characters. Expected end of file.", 7769 "expected-eof-but-got-start-tag": "Unexpected start tag ({name}). Expected end of file.", 7770 "expected-eof-but-got-end-tag": "Unexpected end tag ({name}). Expected end of file.", 7771 "unexpected-end-table-in-caption": "Unexpected end table tag in caption. Generates implied end caption.", 7772 "end-html-in-innerhtml": "Unexpected html end tag in inner html mode.", 7773 "eof-in-table": "Unexpected end of file. Expected table content.", 7774 "eof-in-script": "Unexpected end of file. Expected script content.", 7775 "non-void-element-with-trailing-solidus": "Trailing solidus not allowed on element {name}.", 7776 "unexpected-html-element-in-foreign-content": 'HTML start tag "{name}" in a foreign namespace context.', 7777 "unexpected-start-tag-in-table": "Unexpected {name}. Expected table content." 7778 } 7779 }, {}], 9: [function (e, t, n) { 7780 function o() { 7781 this.contentHandler = null, this._errorHandler = null, this._treeBuilder = new r, this._tokenizer = new i(this._treeBuilder), this._scriptingEnabled = !1 7782 } 7783 7784 var r = e("./SAXTreeBuilder").SAXTreeBuilder, i = e("../Tokenizer").Tokenizer, 7785 s = e("./TreeParser").TreeParser; 7786 o.prototype.parse = function (e) { 7787 this._tokenizer.tokenize(e); 7788 var t = this._treeBuilder.document; 7789 t && (new s(this.contentHandler)).parse(t) 7790 }, o.prototype.parseFragment = function (e, t) { 7791 this._treeBuilder.setFragmentContext(t), this._tokenizer.tokenize(e); 7792 var n = this._treeBuilder.getFragment(); 7793 n && (new s(this.contentHandler)).parse(n) 7794 }, Object.defineProperty(o.prototype, "scriptingEnabled", { 7795 get: function () { 7796 return this._scriptingEnabled 7797 }, set: function (e) { 7798 this._scriptingEnabled = e, this._treeBuilder.scriptingEnabled = e 7799 } 7800 }), Object.defineProperty(o.prototype, "errorHandler", { 7801 get: function () { 7802 return this._errorHandler 7803 }, set: function (e) { 7804 this._errorHandler = e, this._treeBuilder.errorHandler = e 7805 } 7806 }), n.SAXParser = o 7807 }, {"../Tokenizer": 5, "./SAXTreeBuilder": 10, "./TreeParser": 11}], 10: [function (e, t, n) { 7808 function s() { 7809 i.call(this) 7810 } 7811 7812 function o(e, t) { 7813 for (var n = 0; n < e.attributes.length; n++) { 7814 var r = e.attributes[n]; 7815 if (r.nodeName === t) return r.nodeValue 7816 } 7817 } 7818 7819 function a(e) { 7820 e ? (this.columnNumber = e.columnNumber, this.lineNumber = e.lineNumber) : (this.columnNumber = -1, this.lineNumber = -1), this.parentNode = null, this.nextSibling = null, this.firstChild = null 7821 } 7822 7823 function f(e) { 7824 a.call(this, e), this.lastChild = null, this._endLocator = null 7825 } 7826 7827 function l(e) { 7828 f.call(this, e), this.nodeType = u.DOCUMENT 7829 } 7830 7831 function c() { 7832 f.call(this, new Locator), this.nodeType = u.DOCUMENT_FRAGMENT 7833 } 7834 7835 function h(e, t, n, r, i, s) { 7836 f.call(this, e), this.uri = t, this.localName = n, this.qName = r, this.attributes = i, this.prefixMappings = s, this.nodeType = u.ELEMENT 7837 } 7838 7839 function p(e, t) { 7840 a.call(this, e), this.data = t, this.nodeType = u.CHARACTERS 7841 } 7842 7843 function d(e, t) { 7844 a.call(this, e), this.data = t, this.nodeType = u.IGNORABLE_WHITESPACE 7845 } 7846 7847 function v(e, t) { 7848 a.call(this, e), this.data = t, this.nodeType = u.COMMENT 7849 } 7850 7851 function m(e) { 7852 f.call(this, e), this.nodeType = u.CDATA 7853 } 7854 7855 function g(e) { 7856 f.call(this), this.name = e, this.nodeType = u.ENTITY 7857 } 7858 7859 function y(e) { 7860 a.call(this), this.name = e, this.nodeType = u.SKIPPED_ENTITY 7861 } 7862 7863 function b(e, t) { 7864 a.call(this), this.target = e, this.data = t 7865 } 7866 7867 function w(e, t, n) { 7868 f.call(this), this.name = e, this.publicIdentifier = t, this.systemIdentifier = n, this.nodeType = u.DTD 7869 } 7870 7871 var r = e("util"), i = e("../TreeBuilder").TreeBuilder; 7872 r.inherits(s, i), s.prototype.start = function (e) { 7873 this.document = new l(this.tokenizer) 7874 }, s.prototype.end = function () { 7875 this.document.endLocator = this.tokenizer 7876 }, s.prototype.insertDoctype = function (e, t, n) { 7877 var r = new w(this.tokenizer, e, t, n); 7878 r.endLocator = this.tokenizer, this.document.appendChild(r) 7879 }, s.prototype.createElement = function (e, t, n) { 7880 var r = new h(this.tokenizer, e, t, t, n || []); 7881 return r 7882 }, s.prototype.insertComment = function (e, t) { 7883 t || (t = this.currentStackItem()); 7884 var n = new v(this.tokenizer, e); 7885 t.appendChild(n) 7886 }, s.prototype.appendCharacters = function (e, t) { 7887 var n = new p(this.tokenizer, t); 7888 e.appendChild(n) 7889 }, s.prototype.insertText = function (e) { 7890 if (this.redirectAttachToFosterParent && this.openElements.top.isFosterParenting()) { 7891 var t = this.openElements.findIndex("table"), n = this.openElements.item(t), r = n.node; 7892 if (t === 0) return this.appendCharacters(r, e); 7893 var i = new p(this.tokenizer, e), s = r.parentNode; 7894 if (s) { 7895 s.insertBetween(i, r.previousSibling, r); 7896 return 7897 } 7898 var o = this.openElements.item(t - 1).node; 7899 o.appendChild(i); 7900 return 7901 } 7902 this.appendCharacters(this.currentStackItem().node, e) 7903 }, s.prototype.attachNode = function (e, t) { 7904 t.appendChild(e) 7905 }, s.prototype.attachNodeToFosterParent = function (e, t, n) { 7906 var r = t.parentNode; 7907 r ? r.insertBetween(e, t.previousSibling, t) : n.appendChild(e) 7908 }, s.prototype.detachFromParent = function (e) { 7909 e.detach() 7910 }, s.prototype.reparentChildren = function (e, t) { 7911 t.appendChildren(e.firstChild) 7912 }, s.prototype.getFragment = function () { 7913 var e = new c; 7914 return this.reparentChildren(this.openElements.rootNode, e), e 7915 }, s.prototype.addAttributesToElement = function (e, t) { 7916 for (var n = 0; n < t.length; n++) { 7917 var r = t[n]; 7918 o(e, r.nodeName) || e.attributes.push(r) 7919 } 7920 }; 7921 var u = { 7922 CDATA: 1, 7923 CHARACTERS: 2, 7924 COMMENT: 3, 7925 DOCUMENT: 4, 7926 DOCUMENT_FRAGMENT: 5, 7927 DTD: 6, 7928 ELEMENT: 7, 7929 ENTITY: 8, 7930 IGNORABLE_WHITESPACE: 9, 7931 PROCESSING_INSTRUCTION: 10, 7932 SKIPPED_ENTITY: 11 7933 }; 7934 a.prototype.visit = function (e) { 7935 throw new Error("Not Implemented") 7936 }, a.prototype.revisit = function (e) { 7937 return 7938 }, a.prototype.detach = function () { 7939 this.parentNode !== null && (this.parentNode.removeChild(this), this.parentNode = null) 7940 }, Object.defineProperty(a.prototype, "previousSibling", { 7941 get: function () { 7942 var e = null, t = this.parentNode.firstChild; 7943 for (; ;) { 7944 if (this == t) return e; 7945 e = t, t = t.nextSibling 7946 } 7947 } 7948 }), f.prototype = Object.create(a.prototype), f.prototype.insertBefore = function (e, t) { 7949 if (!t) return this.appendChild(e); 7950 e.detach(), e.parentNode = this; 7951 if (this.firstChild == t) e.nextSibling = t, this.firstChild = e; else { 7952 var n = this.firstChild, r = this.firstChild.nextSibling; 7953 while (r != t) n = r, r = r.nextSibling; 7954 n.nextSibling = e, e.nextSibling = r 7955 } 7956 return e 7957 }, f.prototype.insertBetween = function (e, t, n) { 7958 return n ? (e.detach(), e.parentNode = this, e.nextSibling = n, t ? t.nextSibling = e : firstChild = e, e) : this.appendChild(e) 7959 }, f.prototype.appendChild = function (e) { 7960 return e.detach(), e.parentNode = this, this.firstChild ? this.lastChild.nextSibling = e : this.firstChild = e, this.lastChild = e, e 7961 }, f.prototype.appendChildren = function (e) { 7962 var t = e.firstChild; 7963 if (!t) return; 7964 var n = e; 7965 this.firstChild ? this.lastChild.nextSibling = t : this.firstChild = t, this.lastChild = n.lastChild; 7966 do t.parentNode = this; while (t = t.nextSibling); 7967 n.firstChild = null, n.lastChild = null 7968 }, f.prototype.removeChild = function (e) { 7969 if (this.firstChild == e) this.firstChild = e.nextSibling, this.lastChild == e && (this.lastChild = null); else { 7970 var t = this.firstChild, n = this.firstChild.nextSibling; 7971 while (n != e) t = n, n = n.nextSibling; 7972 t.nextSibling = e.nextSibling, this.lastChild == e && (this.lastChild = t) 7973 } 7974 return e.parentNode = null, e 7975 }, Object.defineProperty(f.prototype, "endLocator", { 7976 get: function () { 7977 return this._endLocator 7978 }, set: function (e) { 7979 this._endLocator = {lineNumber: e.lineNumber,
7979columnNumber: e.columnNumber} 7980 } 7981 }), l.prototype = Object.create(f.prototype), l.prototype.visit = function (e) { 7982 e.startDocument(this) 7983 }, l.prototype.revisit = function (e) { 7984 e.endDocument(this.endLocator) 7985 }, c.prototype = Object.create(f.prototype), c.prototype.visit = function (e) { 7986 }, h.prototype = Object.create(f.prototype), h.prototype.visit = function (e) { 7987 if (this.prefixMappings) for (var t in prefixMappings) { 7988 var n = prefixMappings[t]; 7989 e.startPrefixMapping(n.getPrefix(), n.getUri(), this) 7990 } 7991 e.startElement(this.uri, this.localName, this.qName, this.attributes, this) 7992 }, h.prototype.revisit = function (e) { 7993 e.endElement(this.uri, this.localName, this.qName, this.endLocator); 7994 if (this.prefixMappings) for (var t in prefixMappings) { 7995 var n = prefixMappings[t]; 7996 e.endPrefixMapping(n.getPrefix(), this.endLocator) 7997 } 7998 }, p.prototype = Object.create(a.prototype), p.prototype.visit = function (e) { 7999 e.characters(this.data, 0, this.data.length, this) 8000 }, d.prototype = Object.create(a.prototype), d.prototype.visit = function (e) { 8001 e.ignorableWhitespace(this.data, 0, this.data.length, this) 8002 }, v.prototype = Object.create(a.prototype), v.prototype.visit = function (e) { 8003 e.comment(this.data, 0, this.data.length, this) 8004 }, m.prototype = Object.create(f.prototype), m.prototype.visit = function (e) { 8005 e.startCDATA(this) 8006 }, m.prototype.revisit = function (e) { 8007 e.endCDATA(this.endLocator) 8008 }, g.prototype = Object.create(f.prototype), g.prototype.visit = function (e) { 8009 e.startEntity(this.name, this) 8010 }, g.prototype.revisit = function (e) { 8011 e.endEntity(this.name) 8012 }, y.prototype = Object.create(a.prototype), y.prototype.visit = function (e) { 8013 e.skippedEntity(this.name, this) 8014 }, b.prototype = Object.create(a.prototype), b.prototype.visit = function (e) { 8015 e.processingInstruction(this.target, this.data, this) 8016 }, b.prototype.getNodeType = function () { 8017 return u.PROCESSING_INSTRUCTION 8018 }, w.prototype = Object.create(f.prototype), w.prototype.visit = function (e) { 8019 e.startDTD(this.name, this.publicIdentifier, this.systemIdentifier, this) 8020 }, w.prototype.revisit = function (e) { 8021 e.endDTD() 8022 }, n.SAXTreeBuilder = s 8023 }, {"../TreeBuilder": 6, util: 20}], 11: [function (e, t, n) { 8024 function r(e, t) { 8025 this.contentHandler, this.lexicalHandler, this.locatorDelegate; 8026 if (!e) throw new IllegalArgumentException("contentHandler was null."); 8027 this.contentHandler = e, t ? this.lexicalHandler = t : this.lexicalHandler = new i 8028 } 8029 8030 function i() { 8031 } 8032 8033 r.prototype.parse = function (e) { 8034 this.contentHandler.documentLocator = this; 8035 var t = e, n; 8036 for (; ;) { 8037 t.visit(this); 8038 if (n = t.firstChild) { 8039 t = n; 8040 continue 8041 } 8042 for (; ;) { 8043 t.revisit(this); 8044 if (t == e) return; 8045 if (n = t.nextSibling) { 8046 t = n; 8047 break 8048 } 8049 t = t.parentNode 8050 } 8051 } 8052 }, r.prototype.characters = function (e, t, n, r) { 8053 this.locatorDelegate = r, this.contentHandler.characters(e, t, n) 8054 }, r.prototype.endDocument = function (e) { 8055 this.locatorDelegate = e, this.contentHandler.endDocument() 8056 }, r.prototype.endElement = function (e, t, n, r) { 8057 this.locatorDelegate = r, this.contentHandler.endElement(e, t, n) 8058 }, r.prototype.endPrefixMapping = function (e, t) { 8059 this.locatorDelegate = t, this.contentHandler.endPrefixMapping(e) 8060 }, r.prototype.ignorableWhitespace = function (e, t, n, r) { 8061 this.locatorDelegate = r, this.contentHandler.ignorableWhitespace(e, t, n) 8062 }, r.prototype.processingInstruction = function (e, t, n) { 8063 this.locatorDelegate = n, this.contentHandler.processingInstruction(e, t) 8064 }, r.prototype.skippedEntity = function (e, t) { 8065 this.locatorDelegate = t, this.contentHandler.ski
8065ppedEntity(e) 8066 }, r.prototype.startDocument = function (e) { 8067 this.locatorDelegate = e, this.contentHandler.startDocument() 8068 }, r.prototype.startElement = function (e, t, n, r, i) { 8069 this.locatorDelegate = i, this.contentHandler.startElement(e, t, n, r) 8070 }, r.prototype.startPrefixMapping = function (e, t, n) { 8071 this.locatorDelegate = n, this.contentHandler.startPrefixMapping(e, t) 8072 }, r.prototype.comment = function (e, t, n, r) { 8073 this.locatorDelegate = r, this.lexicalHandler.comment(e, t, n) 8074 }, r.prototype.endCDATA = function (e) { 8075 this.locatorDelegate = e, this.lexicalHandler.endCDATA() 8076 }, r.prototype.endDTD = function (e) { 8077 this.locatorDelegate = e, this.lexicalHandler.endDTD() 8078 }, r.prototype.endEntity = function (e, t) { 8079 this.locatorDelegate = t, this.lexicalHandler.endEntity(e) 8080 }, r.prototype.startCDATA = function (e) { 8081 this.locatorDelegate = e, this.lexicalHandler.startCDATA() 8082 }, r.prototype.startDTD = function (e, t, n, r) { 8083 this.locatorDelegate = r, this.lexicalHandler.startDTD(e, t, n) 8084 }, r.prototype.startEntity = function (e, t) { 8085 this.locatorDelegate = t, this.lexicalHandler.startEntity(e) 8086 }, Object.defineProperty(r.prototype, "columnNumber", { 8087 get: function () { 8088 return this.locatorDelegate ? this.locatorDelegate.columnNumber : -1 8089 } 8090 }), Object.defineProperty(r.prototype, "lineNumber", { 8091 get: function () { 8092 return this.locatorDelegate ? this.locatorDelegate.lineNumber : -1 8093 } 8094 }), i.prototype.comment = function () { 8095 }, i.prototype.endCDATA = function () { 8096 }, i.prototype.endDTD = function () { 8097 }, i.prototype.endEntity = function () { 8098 }, i.prototype.startCDATA = function () { 8099 }, i.prototype.startDTD = function () { 8100 }, i.prototype.startEntity = function () { 8101 }, n.TreeParser = r 8102 }, {}], 12: [function (e, t, n) { 8103 t.exports = { 8104 "Aacute;": "\u00c1", 8105 Aacute: "\u00c1", 8106 "aacute;": "\u00e1", 8107 aacute: "\u00e1", 8108 "Abreve;": "\u0102", 8109 "abreve;": "\u0103", 8110 "ac;": "\u223e", 8111 "acd;": "\u223f", 8112 "acE;": "\u223e\u0333", 8113 "Acirc;": "\u00c2", 8114 Acirc: "\u00c2", 8115 "acirc;": "\u00e2", 8116 acirc: "\u00e2", 8117 "acute;": "\u00b4", 8118 acute: "\u00b4", 8119 "Acy;": "\u0410", 8120 "acy;
8120": "\u0430", 8121 "AElig;": "\u00c6", 8122 AElig: "\u00c6", 8123 "aelig;": "\u00e6", 8124 aelig: "\u00e6", 8125 "af;": "\u2061", 8126 "Afr;": "\ud835\udd04", 8127 "afr;": "\ud835\udd1e", 8128 "Agrave;": "\u00c0", 8129 Agrave: "\u00c0", 8130 "agrave;": "\u00e0", 8131 agrave: "\u00e0", 8132 "alefsym;": "\u2135", 8133 "aleph;": "\u2135", 8134 "Alpha;": "\u0391", 8135 "alpha;": "\u03b1", 8136 "Amacr;": "\u0100", 8137 "amacr;": "\u0101", 8138 "amalg;": "\u2a3f", 8139 "amp;": "&", 8140 amp: "&", 8141 "AMP;": "&", 8142 AMP: "&", 8143 "andand;": "\u2a55", 8144 "And;": "\u2a53", 8145 "and;": "\u2227", 8146 "andd;": "\u2a5c", 8147 "andslope;": "\u2a58", 8148 "andv;": "\u2a5a", 8149 "ang;": "\u2220", 8150 "ange;": "\u29a4", 8151 "angle;": "\u2220", 8152 "angmsdaa;": "\u29a8", 8153 "angmsdab;": "\u29a9", 8154 "angmsdac;": "\u29aa", 8155 "angmsdad;": "\u29ab", 8156 "angmsdae;": "\u29ac", 8157 "angmsdaf;": "\u29ad", 8158 "angmsdag;": "\u29ae", 8159 "angmsdah;": "\u29af", 8160 "angmsd;": "\u2221", 8161 "angrt;": "\u221f", 8162 "angrtvb;": "\u22be", 8163 "angrtvbd;": "\u299d", 8164 "angsph;": "\u2222", 8165 "angst;": "\u00c5", 8166 "angzarr;": "\u237c", 8167 "Aogon;": "\u0104", 8168 "aogon;": "\u0105", 8169 "Aopf;": "\ud835\udd38", 8170 "aopf;": "\ud835\udd52", 8171 "apacir;": "\u2a6f", 8172 "ap;": "\u2248", 8173 "apE;": "\u2a70", 8174 "ape;": "\u224a", 8175 "apid;": "\u224b", 8176 "apos;": "'", 8177 "ApplyFunction;": "\u2061", 8178 "approx;": "\u2248", 8179 "approxeq;": "\u224a", 8180 "Aring;": "\u00c5", 8181 Aring: "\u00c5", 8182 "aring;": "\u00e5", 8183 aring: "\u00e5", 8184 "Ascr;": "\ud835\udc9c", 8185 "ascr;": "\ud835\udcb6", 8186 "Assign;": "\u2254", 8187 "ast;": "*", 8188 "asymp;": "\u2248", 8189 "asympeq;": "\u224d", 8190 "Atilde;": "\u00c3", 8191 Atilde: "\u00c3", 8192 "atilde;": "\u00e3", 8193 atilde: "\u00e3", 8194 "Auml;": "\u00c4", 8195 Auml: "\u00c4", 8196 "auml;": "\u00e4", 8197 auml: "\u00e4", 8198 "awconint;": "\u2233", 8199 "awint;": "\u2a11", 8200 "backcong;": "\u224c", 8201 "backepsilon;": "\u03f6", 8202 "backprime;": "\u2035", 8203 "backsim;": "\u223d", 8204 "backsimeq;": "\u22cd", 8205 "Backslash;": "\u2216", 8206 "Barv;": "\u2ae7", 8207 "barvee;": "\u22bd", 8208 "barwed;": "\u2305", 8209 "Barwed;": "\u2306", 8210 "barwedge;": "\u2305", 8211 "bbrk;": "\u23b5", 8212 "bbrktbrk;": "\u23b6", 8213 "bcong;": "\u224c", 8214 "Bcy;": "\u0411", 8215 "bcy;": "\u0431", 8216 "bdquo;": "\u201e", 8217 "becaus;": "\u2235", 8218 "because;": "\u2235", 8219 "Because;": "\u2235", 8220 "bemptyv;": "\u29b0", 8221 "bepsi;": "\u03f6", 8222 "bernou;": "\u212c", 8223 "Bernoullis;": "\u212c", 8224 "Beta;": "\u0392", 8225 "beta;": "\u03b2", 8226 "beth;": "\u2136", 8227 "between;": "\u226c", 8228 "Bfr;": "\ud835\udd05", 8229 "bfr;": "\ud835\udd1f", 8230 "bigcap;": "\u22c2", 8231 "bigcirc;": "\u25ef", 8232 "bigcup;": "\u22c3", 8233 "bigodot;": "\u2a00", 8234 "bigoplus;": "\u2a01", 8235 "bigotimes;": "\u2a02", 8236 "bigsqcup;": "\u2a06", 8237 "bigstar;": "\u2605",
8238 "bigtriangledown;": "\u25bd", 8239 "bigtriangleup;": "\u25b3", 8240 "biguplus;": "\u2a04", 8241 "bigvee;": "\u22c1", 8242 "bigwedge;": "\u22c0", 8243 "bkarow;": "\u290d", 8244 "blacklozenge;": "\u29eb", 8245 "blacksquare;": "\u25aa", 8246 "blacktriangle;": "\u25b4", 8247 "blacktriangledown;": "\u25be", 8248 "blacktriangleleft;": "\u25c2", 8249 "blacktriangleright;": "\u25b8", 8250 "blank;": "\u2423", 8251 "blk12;": "\u2592", 8252 "blk14;": "\u2591", 8253 "blk34;": "\u2593", 8254 "block;": "\u2588", 8255 "bne;": "=\u20e5", 8256 "bnequiv;": "\u2261\u20e5", 8257 "bNot;": "\u2aed", 8258 "bnot;": "\u2310", 8259 "Bopf;": "\ud835\udd39", 8260 "bopf;": "\ud835\udd53", 8261 "bot;": "\u22a5", 8262 "bottom;": "\u22a5", 8263 "bowtie;": "\u22c8", 8264 "boxbox;": "\u29c9", 8265 "boxdl;": "\u2510", 8266 "boxdL;": "\u2555", 8267 "boxDl;": "\u2556", 8268 "boxDL;": "\u2557", 8269 "boxdr;": "\u250c", 8270 "boxdR;": "\u2552", 8271 "boxDr;": "\u2553", 8272 "boxDR;": "\u2554", 8273 "boxh;": "\u2500", 8274 "boxH;": "\u2550", 8275 "boxhd;": "\u252c", 8276 "boxHd;": "\u2564", 8277 "boxhD;": "\u2565", 8278 "boxHD;": "\u2566", 8279 "boxhu;": "\u2534", 8280 "boxHu;": "\u2567", 8281 "boxhU;": "\u2568", 8282 "boxHU;": "\u2569", 8283 "boxminus;": "\u229f", 8284 "boxplus;": "\u229e", 8285 "boxtimes;": "\u22a0", 8286 "boxul;": "\u2518", 8287 "boxuL;": "\u255b", 8288 "boxUl;": "\u255c", 8289 "boxUL;": "\u255d", 8290 "boxur;": "\u2514", 8291 "boxuR;": "\u2558", 8292 "boxUr;": "\u2559", 8293 "boxUR;": "\u255a", 8294 "boxv;": "\u2502", 8295 "boxV;": "\u2551", 8296 "boxvh;": "\u253c", 8297 "boxvH;": "\u256a", 8298 "boxVh;": "\u256b", 8299 "boxVH;": "\u256c", 8300 "boxvl;": "\u2524", 8301 "boxvL;": "\u2561", 8302 "boxVl;": "\u2562", 8303 "boxVL;": "\u2563", 8304 "boxvr;": "\u251c", 8305 "boxvR;": "\u255e", 8306 "boxVr;": "\u255f", 8307 "boxVR;": "\u2560", 8308 "bprime;": "\u2035", 8309 "breve;": "\u02d8", 8310 "Breve;": "\u02d8", 8311 "brvbar;": "\u00a6", 8312 brvbar: "\u00a6", 8313 "bscr;": "\ud835\udcb7", 8314 "Bscr;": "\u212c", 8315 "bsemi;": "\u204f", 8316 "bsim;": "\u223d", 8317 "bsime;": "\u22cd", 8318 "bsolb;": "\u29c5", 8319 "bsol;": "\\", 8320 "bsolhsub;": "\u27c8", 8321 "bull;": "\u2022", 8322 "bullet;": "\u2022", 8323 "bump;": "\u224e", 8324 "bumpE;": "\u2aae", 8325 "bumpe;": "\u224f", 8326 "Bumpeq;": "\u224e", 8327 "bumpeq;": "\u224f", 8328 "Cacute;": "\u0106", 8329 "cacute;": "\u0107", 8330 "capand;": "\u2a44", 8331 "capbrcup;": "\u2a49", 8332 "capcap;": "\u2a4b", 8333 "cap;": "\u2229", 8334 "Cap;": "\u22d2", 8335 "capcup;": "\u2a47", 8336 "capdot;": "\u2a40", 8337 "CapitalDifferentialD;": "\u2145", 8338 "caps;": "\u2229\ufe00", 8339 "caret;": "\u2041", 8340 "caron;": "\u02c7", 8341 "Cayleys;": "\u212d", 8342 "ccaps;": "\u2a4d", 8343 "Ccaron;": "\u010c", 8344 "ccaron;": "\u010d", 8345 "Ccedil;": "\u00c7", 8346 Ccedil: "\u00c7", 8347 "ccedil;": "\u00e7", 8348 ccedil: "\u00e7", 8349 "Ccirc;": "\u0108", 8350 "ccirc;": "\u0109", 8351 "Cconint;": "\u2230", 8352 "ccups;": "\u2a4c", 8353 "ccupssm;": "\u2a50", 8354 "Cdot;": "\u010a", 8355 "cdot;": "\u010b", 8356 "cedil;": "\u00b8", 8357 cedil: "\u00b8", 8358 "Cedilla;": "\u00b8", 8359 "cemptyv;": "\u29b2", 8360 "cent;": "\u00a2", 8361 cent: "\u00a2", 8362 "centerdot;": "\u00b7", 8363 "CenterDot;": "\u00b7", 8364 "cfr;": "\ud835\udd20", 8365 "Cfr;": "\u212d", 8366 "CHcy;": "\u0427", 8367 "chcy;": "\u0447", 8368 "check;": "\u2713", 8369 "checkmark;": "\u2713", 8370 "Chi;": "\u03a7", 8371 "chi;": "\u03c7", 8372 "circ;": "\u02c6", 8373 "circeq;": "\u2257", 8374 "circlearrowleft;": "\u21ba", 8375 "circlearrowright;": "\u21bb", 8376 "circledast;": "\u229b", 8377 "circledcirc;": "\u229a", 8378 "circleddash;": "\u229d", 8379 "CircleDot;": "\u2299", 8380 "circledR;": "\u00ae", 8381 "circledS;": "\u24c8", 8382 "CircleMinus;": "\u2296", 8383 "CirclePlus;": "\u2295", 8384 "CircleTimes;": "\u2297", 8385 "cir;": "\u25cb", 8386 "cirE;": "\u29c3", 8387 "cire;": "\u2257", 8388 "cirfnint;": "\u2a10", 8389 "cirmid;": "\u2aef", 8390 "cirscir;": "\u29c2", 8391 "ClockwiseContourIntegral;": "\u2232", 8392 "CloseCurlyDoubleQuote;": "\u201d", 8393 "CloseCurlyQuote;": "\u2019", 8394 "clubs;": "\u2663", 8395 "clubsuit;": "\u2663", 8396 "colon;": ":", 8397 "Colon;": "\u2237", 8398 "Colone;": "\u2a74", 8399 "colone;": "\u2254", 8400 "coloneq;": "\u2254", 8401 "comma;": ",", 8402 "commat;": "@", 8403 "comp;": "\u2201", 8404 "compfn;": "\u2218", 8405 "complement;": "\u2201", 8406 "complexes;": "\u2102", 8407 "cong;": "\u2245", 8408 "congdot;": "\u2a6d", 8409 "Congruent;": "\u2261", 8410 "conint;": "\u222e", 8411 "Conint;": "\u222f", 8412 "ContourIntegral;": "\u222e", 8413 "copf;": "\ud835\udd54", 8414 "Copf;": "\u2102", 8415 "coprod;": "\u2210", 8416 "Coproduct;": "\u2210", 8417 "copy;": "\u00a9", 8418 copy: "\u00a9", 8419 "COPY;": "\u00a9", 8420 COPY: "\u00a9", 8421 "copysr;": "\u2117", 8422 "CounterClockwiseContourIntegral;": "\u2233", 8423 "crarr;": "\u21b5", 8424 "cross;": "\u2717", 8425 "Cross;": "\u2a2f", 8426 "Cscr;": "\ud835\udc9e", 8427 "cscr;": "\ud835\udcb8", 8428 "csub;": "\u2acf", 8429 "csube;": "\u2ad1", 8430 "csup;": "\u2ad0", 8431 "csupe;": "\u2ad2", 8432 "ctdot;": "\u22ef", 8433 "cudarrl;": "\u2938", 8434 "cudarrr;": "\u2935", 8435 "cuepr;": "\u22de", 8436 "cuesc;": "\u22df", 8437 "cularr;": "\u21b6", 8438 "cularrp;": "\u293d", 8439 "cupbrcap;": "\u2a48", 8440 "cupcap;": "\u2a46", 8441 "CupCap;": "\u224d", 8442 "cup;": "\u222a", 8443 "Cup;": "\u22d3", 8444 "cupcup;": "\u2a4a", 8445 "cupdot;": "\u228d", 8446 "cupor;": "\u2a45", 8447 "cups;": "\u222a\ufe00", 8448 "curarr;": "\u21b7", 8449 "curarrm;": "\u293c", 8450 "curlyeqprec;": "\u22de", 8451 "curlyeqsucc;": "\u22df", 8452 "curlyvee;": "\u22ce", 8453 "curlywedge;": "\u22cf", 8454 "curren;": "\u00a4", 8455 curren: "\u00a4", 8456 "curvearrowleft;": "\u21b6", 8457 "curvearrowright;": "\u21b7", 8458 "cuvee;": "\u22ce", 8459 "cuwed;": "\u22cf", 8460 "cwconint;": "\u2232", 8461 "cwint;": "\u2231", 8462 "cylcty;": "\u232d", 8463 "dagger;": "\u2020", 8464 "Dagger;": "\u2021", 8465 "daleth;": "\u2138", 8466 "darr;": "\u2193", 8467 "Darr;": "\u21a1", 8468 "dArr;": "\u21d3", 8469 "dash;": "\u2010", 8470 "Dashv;": "\u2ae4", 8471 "dashv;": "\u22a3", 8472 "dbkarow;": "\u290f", 8473 "dblac;": "\u02dd", 8474 "Dcaron;": "\u010e", 8475 "dcaron;": "\u010f", 8476 "Dcy;": "\u0414", 8477 "dcy;": "\u0434", 8478 "ddagger;": "\u2021", 8479 "ddarr;": "\u21ca", 8480 "DD;": "\u2145", 8481 "dd;": "\u2146", 8482 "DDotrahd;": "\u2911", 8483 "ddotseq;": "\u2a77", 8484 "deg;": "\u00b0", 8485 deg: "\u00b0", 8486 "Del;": "\u2207", 8487 "Delta;": "\u0394", 8488 "delta;": "\u03b4", 8489 "demptyv;": "\u29b1", 8490 "dfisht;": "\u297f", 8491 "Dfr;": "\ud835\udd07", 8492 "dfr;": "\ud835\udd21", 8493 "dHar;": "\u2965", 8494 "dharl;": "\u21c3", 8495 "dharr;": "\u21c2", 8496 "DiacriticalAcute;": "\u00b4", 8497 "DiacriticalDot;": "\u02d9", 8498 "DiacriticalDoubleAcute;": "\u02dd", 8499 "DiacriticalGrave;": "`", 8500 "DiacriticalTilde;": "\u02dc", 8501 "diam;": "\u22c4", 8502 "diamond;": "\u22c4", 8503 "Diamond;": "\u22c4", 8504 "diamondsuit;": "\u2666", 8505 "diams;": "\u2666", 8506 "die;": "\u00a8", 8507 "DifferentialD;
8507": "\u2146", 8508 "digamma;": "\u03dd", 8509 "disin;": "\u22f2", 8510 "div;": "\u00f7", 8511 "divide;": "\u00f7", 8512 divide: "\u00f7", 8513 "divideontimes;": "\u22c7", 8514 "divonx;": "\u22c7", 8515 "DJcy;": "\u0402", 8516 "djcy;": "\u0452", 8517 "dlcorn;": "\u231e", 8518 "dlcrop;": "\u230d", 8519 "dollar;": "$", 8520 "Dopf;": "\ud835\udd3b", 8521 "dopf;": "\ud835\udd55", 8522 "Dot;": "\u00a8", 8523 "dot;": "\u02d9", 8524 "DotDot;": "\u20dc", 8525 "doteq;": "\u2250", 8526 "doteqdot;": "\u2251", 8527 "DotEqual;": "\u2250", 8528 "dotminus;": "\u2238", 8529 "dotplus;": "\u2214", 8530 "dotsquare;": "\u22a1", 8531 "doublebarwedge;": "\u2306", 8532 "DoubleContourIntegral;": "\u222f", 8533 "DoubleDot;": "\u00a8", 8534 "DoubleDownArrow;": "\u21d3", 8535 "DoubleLeftArrow;": "\u21d0", 8536 "DoubleLeftRightArrow;": "\u21d4", 8537 "DoubleLeftTee;": "\u2ae4", 8538 "DoubleLongLeftArrow;": "\u27f8", 8539 "DoubleLongLeftRightArrow;": "\u27fa", 8540 "DoubleLongRightArrow;": "\u27f9", 8541 "DoubleRightArrow;": "\u21d2", 8542 "DoubleRightTee;": "\u22a8", 8543 "DoubleUpArrow;": "\u21d1", 8544 "DoubleUpDownArrow;": "\u21d5", 8545 "DoubleVerticalBar;": "\u2225", 8546 "DownArrowBar;": "\u2913", 8547 "downarrow;": "\u2193", 8548 "DownArrow;": "\u2193", 8549 "Downarrow;": "\u21d3", 8550 "DownArrowUpArrow;": "\u21f5", 8551 "DownBreve;": "\u0311", 8552 "downdownarrows;": "\u21ca", 8553 "downharpoonleft;": "\u21c3", 8554 "downharpoonright;": "\u21c2", 8555 "DownLeftRightVector;": "\u2950", 8556 "DownLeftTeeVector;": "\u295e", 8557 "DownLeftVectorBar;": "\u2956", 8558 "DownLeftVector;": "\u21bd", 8559 "DownRightTeeVector;": "\u295f", 8560 "DownRightVectorBar;": "\u2957", 8561 "DownRightVector;": "\u21c1", 8562 "DownTeeArrow;": "\u21a7", 8563 "DownTee;": "\u22a4", 8564 "drbkarow;": "\u2910", 8565 "drcorn;": "\u231f", 8566 "drcrop;": "\u230c", 8567 "Dscr;": "\ud835\udc9f", 8568 "dscr;": "\ud835\udcb9", 8569 "DScy;": "\u0405", 8570 "dscy;": "\u0455", 8571 "dsol;": "\u29f6", 8572 "Dstrok;": "\u0110", 8573 "dstrok;": "\u0111", 8574 "dtdot;": "\u22f1", 8575 "dtri;": "\u25bf", 8576 "dtrif;": "\u25be", 8577 "duarr;": "\u21f5", 8578 "duhar;": "\u296f", 8579 "dwangle;": "\u29a6", 8580 "DZcy;": "\u040f", 8581 "dzcy;": "\u045f", 8582 "dzigrarr;": "\u27ff", 8583 "Eacute;": "\u00c9", 8584 Eacute: "\u00c9", 8585 "eacute;": "\u00e9", 8586 eacute: "\u00e9", 8587 "easter;": "\u2a6e", 8588 "Ecaron;": "\u011a", 8589 "ecaron;": "\u011b", 8590 "Ecirc;": "\u00ca", 8591 Ecirc: "\u00ca", 8592 "ecirc;": "\u00ea", 8593 ecirc: "\u00ea", 8594 "ecir;": "\u2256", 8595 "ecolon;": "\u2255", 8596 "Ecy;": "\u042d", 8597 "ecy;": "\u044d", 8598 "eDDot;": "\u2a77", 8599 "Edot;": "\u0116", 8600 "edot;": "\u0117", 8601 "eDot;": "\u2251", 8602 "ee;": "\u2147", 8603 "efDot;": "\u2252", 8604 "Efr;": "\ud835\udd08", 8605 "efr;": "\ud835\udd22", 8606 "eg;": "\u2a9a", 8607 "Egrave;": "\u00c8", 8608 Egrave: "\u00c8", 8609 "egrave;": "\u00e8", 8610 egrave: "\u00e8", 8611 "egs;": "\u2a96", 8612 "egsdot;": "\u2a98", 8613 "el;": "\u2a99", 8614 "Element;": "\u2208", 8615 "elinters;": "\u23e7", 8616 "ell;": "\u2113", 8617 "els;": "\u2a95", 8618 "elsdot;": "\u2a97", 8619 "Emacr;": "\u0112", 8620 "emacr;": "\u0113", 8621 "empty;": "\u2205", 8622 "emptyset;": "\u2205", 8623 "EmptySmallSquare;": "\u25fb", 8624 "emptyv;": "\u2205", 8625 "EmptyVerySmallSquare;": "\u25ab", 8626 "emsp13;": "\u2004", 8627 "emsp14;": "\u2005", 8628 "emsp;": "\u2003", 8629 "ENG;": "\u014a", 8630 "eng;": "\u014b", 8631 "ensp;": "\u2002", 8632 "Eogon;": "\u0118", 8633 "eogon;": "\u0119", 8634 "Eopf;": "\ud835\udd3c", 8635 "eopf;": "\ud835\udd56", 8636 "epar;": "\u22d5", 8637 "eparsl;": "\u29e3", 8638 "eplus;": "\u2a71", 8639 "epsi;": "\u03b5", 8640 "Epsilon;": "\u0395", 8641 "epsilon;": "\u03b5", 8642 "epsiv;": "\u03f5", 8643 "eqcirc;": "\u2256", 8644 "eqcolon;": "\u2255", 8645 "eqsim;": "\u2242", 8646 "eqslantgtr;": "\u2a96", 8647 "eqslantless;": "\u2a95", 8648 "Equal;": "\u2a75", 8649 "equals;": "=", 8650 "EqualTilde;": "\u2242", 8651 "equest;": "\u225f", 8652 "Equilibrium;": "\u21cc", 8653 "equiv;": "\u2261", 8654 "equivDD;": "\u2a78", 8655 "eqvparsl;": "\u29e5", 8656 "erarr;": "\u2971", 8657 "erDot;": "\u2253", 8658 "escr;": "\u212f", 8659 "Escr;": "\u2130", 8660 "esdot;": "\u2250", 8661 "Esim;": "\u2a73", 8662 "esim;": "\u2242", 8663 "Eta;": "\u0397", 8664 "eta;": "\u03b7", 8665 "ETH;": "\u00d0", 8666 ETH: "\u00d0", 8667 "eth;": "\u00f0", 8668 eth: "\u00f0", 8669 "Euml;": "\u00cb", 8670 Euml: "\u00cb", 8671 "euml;": "\u00eb", 8672 euml: "\u00eb", 8673 "euro;": "\u20ac", 8674 "excl;": "!", 8675 "exist;": "\u2203", 8676 "Exists;": "\u2203", 8677 "expectation;": "\u2130", 8678 "exponentiale;": "\u2147", 8679 "ExponentialE;": "\u2147", 8680 "fallingdotseq;": "\u2252", 8681 "Fcy;": "\u0424", 8682 "fcy;": "\u0444", 8683 "female;": "\u2640", 8684 "ffilig;": "\ufb03", 8685 "fflig;": "\ufb00", 8686 "ffllig;": "\ufb04", 8687 "Ffr;": "\ud835\udd09", 8688 "ffr;": "\ud835\udd23", 8689 "filig;": "\ufb01", 8690 "FilledSmallSquare;": "\u25fc", 8691 "FilledVerySmallSquare;": "\u25aa", 8692 "fjlig;": "fj", 8693 "flat;": "\u266d", 8694 "fllig;": "\ufb02", 8695 "fltns;": "\u25b1", 8696 "fnof;": "\u0192", 8697 "Fopf;": "\ud835\udd3d", 8698 "fopf;": "\ud835\udd57", 8699 "forall;": "\u2200", 8700 "ForAll;": "\u2200", 8701 "fork;": "\u22d4", 8702 "forkv;": "\u2ad9", 8703 "Fouriertrf;": "\u2131", 8704 "fpartint;": "\u2a0d", 8705 "frac12;": "\u00bd", 8706 frac12: "\u00bd", 8707 "frac13;": "\u2153", 8708 "frac14;": "\u00bc", 8709 frac14: "\u00bc", 8710 "frac15;": "\u2155", 8711 "frac16;": "\u2159", 8712 "frac18;": "\u215b", 8713 "frac23;": "\u2154", 8714 "frac25;": "\u2156", 8715 "frac34;": "\u00be", 8716 frac34: "\u00be", 8717 "frac35;": "\u2157", 8718 "frac38;": "\u215c", 8719 "frac45;": "\u2158", 8720 "frac56;": "\u215a", 8721 "frac58;": "\u215d", 8722 "frac78;": "\u215e", 8723 "frasl;": "\u2044", 8724 "frown;": "\u2322", 8725 "fscr;": "\ud835\udcbb", 8726 "Fscr;": "\u2131", 8727 "gacute;": "\u01f5", 8728 "Gamma;": "\u0393", 8729 "gamma;": "\u03b3", 8730 "Gammad;": "\u03dc", 8731 "gammad;": "\u03dd", 8732 "gap;": "\u2a86", 8733 "Gbreve;": "\u011e", 8734 "gbreve;": "\u011f", 8735 "Gcedil;": "\u0122", 8736 "Gcirc;": "\u011c", 8737 "gcirc;": "\u011d", 8738 "Gcy;": "\u0413", 8739 "gcy;": "\u0433", 8740 "Gdot;": "\u0120", 8741 "gdot;": "\u0121", 8742 "ge;": "\u2265", 8743 "gE;": "\u2267", 8744 "gEl;": "\u2a8c", 8745 "gel;": "\u22db", 8746 "geq;": "\u2265", 8747 "geqq;": "\u2267", 8748 "geqslant;": "\u2a7e", 8749 "gescc;": "\u2aa9", 8750 "ges;": "\u2a7e", 8751 "gesdot;": "\u2a80", 8752 "gesdoto;": "\u2a82", 8753 "gesdotol;": "\u2a84", 8754 "gesl;": "\u22db\ufe00", 8755 "gesles;": "\u2a94", 8756 "Gfr;": "\ud835\udd0a", 8757 "gfr;": "\ud835\udd24", 8758 "gg;": "\u226b", 8759 "Gg;": "\u22d9", 8760 "ggg;": "\u22d9", 8761 "gimel;": "\u2137", 8762 "GJcy;": "\u0403", 8763 "gjcy;": "\u0453", 8764 "gla;": "\u2aa5", 8765 "gl;": "\u2277", 8766 "glE;": "\u2a92", 8767 "glj;": "\u2aa4", 8768 "gnap;": "\u2a8a", 8769 "gnapprox;": "\u2a8a", 8770 "gne;": "\u2a88", 8771 "gnE;": "\u2269", 8772 "gneq;": "\u2a88", 8773 "gneqq;": "\u2269", 8774 "gnsim;": "\u22e7", 8775 "Gopf;": "\ud835\udd3e", 8776 "gopf;": "\ud835\udd58", 8777 "grave;": "`", 8778 "GreaterEqual;": "\u2265", 8779 "GreaterEqualLess;": "\u22db", 8780 "GreaterFullEqual;": "\u2267", 8781 "GreaterGreater;": "\u2aa2", 8782 "GreaterLess;": "\u2277", 8783 "GreaterSlantEqual;": "\u2a7e", 8784 "GreaterTilde;": "\u2273",
8785 "Gscr;": "\ud835\udca2", 8786 "gscr;": "\u210a", 8787 "gsim;": "\u2273", 8788 "gsime;": "\u2a8e", 8789 "gsiml;": "\u2a90", 8790 "gtcc;": "\u2aa7", 8791 "gtcir;": "\u2a7a", 8792 "gt;": ">", 8793 gt: ">", 8794 "GT;": ">", 8795 GT: ">", 8796 "Gt;": "\u226b", 8797 "gtdot;": "\u22d7", 8798 "gtlPar;": "\u2995", 8799 "gtquest;": "\u2a7c", 8800 "gtrapprox;": "\u2a86", 8801 "gtrarr;": "\u2978", 8802 "gtrdot;": "\u22d7", 8803 "gtreqless;": "\u22db", 8804 "gtreqqless;": "\u2a8c", 8805 "gtrless;": "\u2277", 8806 "gtrsim;": "\u2273", 8807 "gvertneqq;": "\u2269\ufe00", 8808 "gvnE;": "\u2269\ufe00", 8809 "Hacek;": "\u02c7", 8810 "hairsp;": "\u200a", 8811 "half;": "\u00bd", 8812 "hamilt;": "\u210b", 8813 "HARDcy;": "\u042a", 8814 "hardcy;": "\u044a", 8815 "harrcir;": "\u2948", 8816 "harr;": "\u2194", 8817 "hArr;": "\u21d4", 8818 "harrw;": "\u21ad", 8819 "Hat;": "^", 8820 "hbar;": "\u210f", 8821 "Hcirc;": "\u0124", 8822 "hcirc;": "\u0125", 8823 "hearts;": "\u2665", 8824 "heartsuit;": "\u2665", 8825 "hellip;": "\u2026", 8826 "hercon;": "\u22b9", 8827 "hfr;": "\ud835\udd25", 8828 "Hfr;": "\u210c", 8829 "HilbertSpace;": "\u210b", 8830 "hksearow;": "\u2925", 8831 "hkswarow;": "\u2926", 8832 "hoarr;": "\u21ff", 8833 "homtht;": "\u223b", 8834 "hookleftarrow;": "\u21a9", 8835 "hookrightarrow;": "\u21aa", 8836 "hopf;": "\ud835\udd59", 8837 "Hopf;": "\u210d", 8838 "horbar;": "\u2015", 8839 "HorizontalLine;": "\u2500", 8840 "hscr;": "\ud835\udcbd", 8841 "Hscr;": "\u210b", 8842 "hslash;": "\u210f", 8843 "Hstrok;": "\u0126", 8844 "hstrok;": "\u0127", 8845 "HumpDownHump;": "\u224e", 8846 "HumpEqual;": "\u224f", 8847 "hybull;": "\u2043", 8848 "hyphen;": "\u2010", 8849 "Iacute;": "\u00cd", 8850 Iacute: "\u00cd", 8851 "iacute;": "\u00ed", 8852 iacute: "\u00ed", 8853 "ic;": "\u2063", 8854 "Icirc;": "\u00ce", 8855 Icirc: "\u00ce", 8856 "icirc;": "\u00ee", 8857 icirc: "\u00ee", 8858 "Icy;": "\u0418", 8859 "icy;": "\u0438", 8860 "Idot;": "\u0130", 8861 "IEcy;": "\u0415", 8862 "iecy;": "\u0435", 8863 "iexcl;": "\u00a1", 8864 iexcl: "\u00a1", 8865 "iff;": "\u21d4", 8866 "ifr;": "\ud835\udd26", 8867 "Ifr;": "\u2111", 8868 "Igrave;": "\u00cc", 8869 Igrave: "\u00cc", 8870 "igrave;": "\u00ec", 8871 igrave: "\u00ec", 8872 "ii;": "\u2148", 8873 "iiiint;": "\u2a0c", 8874 "iiint;": "\u222d", 8875 "iinfin;": "\u29dc", 8876 "iiota;": "\u2129", 8877 "IJlig;": "\u0132", 8878 "ijlig;": "\u0133", 8879 "Imacr;": "\u012a", 8880 "imacr;": "\u012b", 8881 "image;": "\u2111", 8882 "ImaginaryI;": "\u2148", 8883 "imagline;": "\u2110", 8884 "imagpart;": "\u2111", 8885 "imath;": "\u0131", 8886 "Im;": "\u2111", 8887 "imof;": "\u22b7", 8888 "imped;": "\u01b5", 8889 "Implies;": "\u21d2", 8890 "incare;": "\u2105", 8891 "in;": "\u2208", 8892 "infin;": "\u221e", 8893 "infintie;": "\u29dd", 8894 "inodot;": "\u0131", 8895 "intcal;": "\u22ba", 8896 "int;": "\u222b", 8897 "Int;": "\u222c", 8898 "integers;": "\u2124", 8899 "Integral;": "\u222b", 8900 "intercal;": "\u22ba", 8901 "Intersection;": "\u22c2", 8902 "intlarhk;": "\u2a17", 8903 "intprod;": "\u2a3c", 8904 "InvisibleComma;": "\u2063", 8905 "InvisibleTimes;": "\u2062", 8906 "IOcy;": "\u0401", 8907 "iocy;": "\u0451", 8908 "Iogon;": "\u012e", 8909 "iogon;": "\u012f", 8910 "Iopf;": "\ud835\udd40", 8911 "iopf;": "\ud835\udd5a", 8912 "Iota;": "\u0399", 8913 "iota;": "\u03b9", 8914 "iprod;": "\u2a3c", 8915 "iquest;": "\u00bf", 8916 iquest: "\u00bf", 8917 "iscr;": "\ud835\udcbe", 8918 "Iscr;": "\u2110", 8919 "isin;": "\u2208", 8920 "isindot;": "\u22f5", 8921 "isinE;": "\u22f9", 8922 "isins;": "\u22f4", 8923 "isinsv;": "\u22f3", 8924 "isinv;": "\u2208", 8925 "it;": "\u2062", 8926 "Itilde;": "\u0128", 8927 "itilde;": "\u0129", 8928 "Iukcy;": "\u0406", 8929 "iukcy;": "\u0456", 8930 "Iuml;": "\u00cf", 8931 Iuml: "\u00cf", 8932 "iuml;": "\u00ef", 8933 iuml: "\u00ef", 8934 "Jcirc;": "\u0134", 8935 "jcirc;": "\u0135", 8936 "Jcy;": "\u0419", 8937 "jcy;": "\u0439", 8938 "Jfr;": "\ud835\udd0d", 8939 "jfr;": "\ud835\udd27", 8940 "jmath;": "\u0237", 8941 "Jopf;": "\ud835\udd41", 8942 "jopf;": "\ud835\udd5b", 8943 "Jscr;": "\ud835\udca5", 8944 "jscr;": "\ud835\udcbf", 8945 "Jsercy;": "\u0408", 8946 "jsercy;": "\u0458", 8947 "Jukcy;": "\u0404", 8948 "jukcy;": "\u0454", 8949 "Kappa;": "\u039a", 8950 "kappa;": "\u03ba", 8951 "kappav;": "\u03f0", 8952 "Kcedil;": "\u0136", 8953 "kcedil;": "\u0137", 8954 "Kcy;": "\u041a", 8955 "kcy;": "\u043a", 8956 "Kfr;": "\ud835\udd0e", 8957 "kfr;": "\ud835\udd28", 8958 "kgreen;": "\u0138", 8959 "KHcy;": "\u0425", 8960 "khcy;": "\u0445", 8961 "KJcy;": "\u040c", 8962 "kjcy;": "\u045c", 8963 "Kopf;": "\ud835\udd42", 8964 "kopf;": "\ud835\udd5c", 8965 "Kscr;": "\ud835\udca6", 8966 "kscr;": "\ud835\udcc0", 8967 "lAarr;": "\u21da", 8968 "Lacute;": "\u0139", 8969 "lacute;": "\u013a", 8970 "laemptyv;": "\u29b4", 8971 "lagran;": "\u2112", 8972 "Lambda;": "\u039b", 8973 "lambda;": "\u03bb", 8974 "lang;": "\u27e8", 8975 "Lang;": "\u27ea", 8976 "langd;": "\u2991", 8977 "langle;": "\u27e8", 8978 "lap;": "\u2a85", 8979 "Laplacetrf;": "\u2112", 8980 "laquo;": "\u00ab", 8981 laquo: "\u00ab", 8982 "larrb;": "\u21e4", 8983 "larrbfs;": "\u291f", 8984 "larr;": "\u2190", 8985 "Larr;": "\u219e", 8986 "lArr;": "\u21d0", 8987 "larrfs;": "\u291d", 8988 "larrhk;": "\u21a9", 8989 "larrlp;": "\u21ab", 8990 "larrpl;": "\u2939", 8991 "larrsim;": "\u2973", 8992 "larrtl;": "\u21a2", 8993 "latail;": "\u2919", 8994 "lAtail;": "\u291b", 8995 "lat;": "\u2aab", 8996 "late;": "\u2aad", 8997 "lates;": "\u2aad\ufe00", 8998 "lbarr;": "\u290c", 8999 "lBarr;": "\u290e", 9000 "lbbrk;": "\u2772", 9001 "lbrace;": "{", 9002 "lbrack;": "[", 9003 "lbrke;": "\u298b", 9004 "lbrksld;": "\u298f", 9005 "lbrkslu;": "\u298d", 9006 "Lcaron;": "\u013d", 9007 "lcaron;": "\u013e", 9008 "Lcedil;": "\u013b", 9009 "lcedil;": "\u013c", 9010 "lceil;": "\u2308", 9011 "lcub;": "{", 9012 "Lcy;": "\u041b", 9013 "lcy;": "\u043b", 9014 "ldca;": "\u2936", 9015 "ldquo;": "\u201c", 9016 "ldquor;": "\u201e", 9017 "ldrdhar;": "\u2967", 9018 "ldrushar;": "\u294b", 9019 "ldsh;": "\u21b2", 9020 "le;": "\u2264", 9021 "lE;": "\u2266", 9022 "LeftAngleBracket;": "\u27e8", 9023 "LeftArrowBar;": "\u21e4", 9024 "leftarrow;": "\u2190", 9025 "LeftArrow;
9025": "\u2190", 9026 "Leftarrow;": "\u21d0", 9027 "LeftArrowRightArrow;": "\u21c6", 9028 "leftarrowtail;": "\u21a2", 9029 "LeftCeiling;": "\u2308", 9030 "LeftDoubleBracket;": "\u27e6", 9031 "LeftDownTeeVector;": "\u2961", 9032 "LeftDownVectorBar;": "\u2959", 9033 "LeftDownVector;": "\u21c3", 9034 "LeftFloor;": "\u230a", 9035 "leftharpoondown;": "\u21bd", 9036 "leftharpoonup;": "\u21bc", 9037 "leftleftarrows;": "\u21c7", 9038 "leftrightarrow;": "\u2194", 9039 "LeftRightArrow;": "\u2194", 9040 "Leftrightarrow;": "\u21d4", 9041 "leftrightarrows;": "\u21c6", 9042 "leftrightharpoons;": "\u21cb", 9043 "leftrightsquigarrow;": "\u21ad", 9044 "LeftRightVector;": "\u294e", 9045 "LeftTeeArrow;": "\u21a4", 9046 "LeftTee;": "\u22a3", 9047 "LeftTeeVector;": "\u295a", 9048 "leftthreetimes;": "\u22cb", 9049 "LeftTriangleBar;": "\u29cf", 9050 "LeftTriangle;": "\u22b2", 9051 "LeftTriangleEqual;": "\u22b4", 9052 "LeftUpDownVector;": "\u2951", 9053 "LeftUpTeeVector;": "\u2960", 9054 "LeftUpVectorBar;": "\u2958", 9055 "LeftUpVector;": "\u21bf", 9056 "LeftVectorBar;": "\u2952", 9057 "LeftVector;": "\u21bc", 9058 "lEg;": "\u2a8b", 9059 "leg;": "\u22da", 9060 "leq;": "\u2264", 9061 "leqq;": "\u2266", 9062 "leqslant;": "\u2a7d", 9063 "lescc;": "\u2aa8", 9064 "les;": "\u2a7d", 9065 "lesdot;": "\u2a7f", 9066 "lesdoto;": "\u2a81", 9067 "lesdotor;": "\u2a83", 9068 "lesg;": "\u22da\ufe00", 9069 "lesges;": "\u2a93", 9070 "lessapprox;": "\u2a85", 9071 "lessdot;": "\u22d6", 9072 "lesseqgtr;": "\u22da", 9073 "lesseqqgtr;": "\u2a8b", 9074 "LessEqualGreater;": "\u22da", 9075 "LessFullEqual;": "\u2266", 9076 "LessGreater;": "\u2276", 9077 "lessgtr;": "\u2276", 9078 "LessLess;": "\u2aa1", 9079 "lesssim;": "\u2272", 9080 "LessSlantEqual;": "\u2a7d", 9081 "LessTilde;": "\u2272", 9082 "lfisht;": "\u297c", 9083 "lfloor;": "\u230a", 9084 "Lfr;": "\ud835\udd0f", 9085 "lfr;": "\ud835\udd29", 9086 "lg;": "\u2276", 9087 "lgE;": "\u2a91", 9088 "lHar;": "\u2962", 9089 "lhard;": "\u21bd", 9090 "lharu;": "\u21bc", 9091 "lharul;": "\u296a", 9092 "lhblk;": "\u2584", 9093 "LJcy;": "\u0409", 9094 "ljcy;": "\u0459", 9095 "llarr;": "\u21c7", 9096 "ll;": "\u226a", 9097 "Ll;": "\u22d8", 9098 "llcorner;": "\u231e", 9099 "Lleftarrow;": "\u21da", 9100 "llhard;": "\u296b", 9101 "lltri;": "\u25fa", 9102 "Lmidot;": "\u013f", 9103 "lmidot;": "\u0140", 9104 "lmoustache;": "\u23b0", 9105 "lmoust;": "\u23b0", 9106 "lnap;": "\u2a89", 9107 "lnapprox;": "\u2a89", 9108 "lne;": "\u2a87", 9109 "lnE;": "\u2268", 9110 "lneq;": "\u2a87", 9111 "lneqq;": "\u2268", 9112 "lnsim;": "\u22e6", 9113 "loang;": "\u27ec", 9114 "loarr;": "\u21fd", 9115 "lobrk;": "\u27e6", 9116 "longleftarrow;": "\u27f5", 9117 "LongLeftArrow;": "\u27f5", 9118 "Longleftarrow;": "\u27f8", 9119 "longleftrightarrow;": "\u27f7", 9120 "LongLeftRightArrow;": "\u27f7", 9121 "Longleftrightarrow;": "\u27fa", 9122 "longmapsto;": "\u27fc", 9123 "longrightarrow;": "\u27f6", 9124 "LongRightArrow;": "\u27f6", 9125 "Longrightarrow;": "\u27f9", 9126 "looparrowleft;": "\u21ab", 9127 "looparrowright;": "\u21ac", 9128 "lopar;": "\u2985", 9129 "Lopf;": "\ud835\udd43", 9130 "lopf;": "\ud835\udd5d", 9131 "loplus;": "\u2a2d", 9132 "lotimes;": "\u2a34", 9133 "lowast;": "\u2217", 9134 "lowbar;": "_", 9135 "LowerLeftArrow;
9135": "\u2199", 9136 "LowerRightArrow;": "\u2198", 9137 "loz;": "\u25ca", 9138 "lozenge;": "\u25ca", 9139 "lozf;": "\u29eb", 9140 "lpar;": "(", 9141 "lparlt;": "\u2993", 9142 "lrarr;": "\u21c6", 9143 "lrcorner;": "\u231f", 9144 "lrhar;": "\u21cb", 9145 "lrhard;": "\u296d", 9146 "lrm;": "\u200e", 9147 "lrtri;": "\u22bf", 9148 "lsaquo;": "\u2039", 9149 "lscr;": "\ud835\udcc1", 9150 "Lscr;": "\u2112", 9151 "lsh;": "\u21b0", 9152 "Lsh;": "\u21b0", 9153 "lsim;": "\u2272", 9154 "lsime;": "\u2a8d", 9155 "lsimg;": "\u2a8f", 9156 "lsqb;": "[", 9157 "lsquo;": "\u2018", 9158 "lsquor;": "\u201a", 9159 "Lstrok;": "\u0141", 9160 "lstrok;": "\u0142", 9161 "ltcc;": "\u2aa6", 9162 "ltcir;": "\u2a79", 9163 "lt;": "<", 9164 lt: "<", 9165 "LT;": "<", 9166 LT: "<", 9167 "Lt;": "\u226a", 9168 "ltdot;": "\u22d6", 9169 "lthree;": "\u22cb", 9170 "ltimes;": "\u22c9", 9171 "ltlarr;": "\u2976", 9172 "ltquest;": "\u2a7b", 9173 "ltri;": "\u25c3", 9174 "ltrie;": "\u22b4", 9175 "ltrif;": "\u25c2", 9176 "ltrPar;": "\u2996", 9177 "lurdshar;": "\u294a", 9178 "luruhar;": "\u2966", 9179 "lvertneqq;": "\u2268\ufe00", 9180 "lvnE;": "\u2268\ufe00", 9181 "macr;": "\u00af", 9182 macr: "\u00af", 9183 "male;": "\u2642", 9184 "malt;": "\u2720", 9185 "maltese;": "\u2720", 9186 "Map;": "\u2905", 9187 "map;": "\u21a6", 9188 "mapsto;": "\u21a6", 9189 "mapstodown;": "\u21a7", 9190 "mapstoleft;": "\u21a4", 9191 "mapstoup;": "\u21a5", 9192 "marker;": "\u25ae", 9193 "mcomma;": "\u2a29", 9194 "Mcy;": "\u041c", 9195 "mcy;": "\u043c", 9196 "mdash;": "\u2014", 9197 "mDDot;": "\u223a", 9198 "measuredangle;": "\u2221", 9199 "MediumSpace;": "\u205f", 9200 "Mellintrf;": "\u2133", 9201 "Mfr;": "\ud835\udd10", 9202 "mfr;": "\ud835\udd2a", 9203 "mho;": "\u2127", 9204 "micro;": "\u00b5", 9205 micro: "\u00b5", 9206 "midast;": "*", 9207 "midcir;": "\u2af0", 9208 "mid;": "\u2223", 9209 "middot;": "\u00b7", 9210 middot: "\u00b7", 9211 "minusb;": "\u229f", 9212 "minus;": "\u2212", 9213 "minusd;": "\u2238", 9214 "minusdu;": "\u2a2a", 9215 "MinusPlus;": "\u2213", 9216 "mlcp;": "\u2adb", 9217 "mldr;": "\u2026", 9218 "mnplus;": "\u2213", 9219 "models;": "\u22a7", 9220 "Mopf;": "\ud835\udd44", 9221 "mopf;": "\ud835\udd5e", 9222 "mp;": "\u2213", 9223 "mscr;": "\ud835\udcc2", 9224 "Mscr;": "\u2133", 9225 "mstpos;": "\u223e", 9226 "Mu;": "\u039c", 9227 "mu;": "\u03bc", 9228 "multimap;": "\u22b8", 9229 "mumap;": "\u22b8", 9230 "nabla;": "\u2207", 9231 "Nacute;": "\u0143", 9232 "nacute;": "\u0144", 9233 "nang;": "\u2220\u20d2", 9234 "nap;": "\u2249", 9235 "napE;": "\u2a70\u0338", 9236 "napid;": "\u224b\u0338", 9237 "napos;": "\u0149", 9238 "napprox;": "\u2249", 9239 "natural;": "\u266e", 9240 "naturals;": "\u2115", 9241 "natur;": "\u266e", 9242 "nbsp;": "\u00a0", 9243 nbsp: "\u00a0", 9244 "nbump;": "\u224e\u0338", 9245 "nbumpe;": "\u224f\u0338", 9246 "ncap;": "\u2a43", 9247 "Ncaron;": "\u0147", 9248 "ncaron;": "\u0148", 9249 "Ncedil;": "\u0145", 9250 "ncedil;": "\u0146", 9251 "ncong;": "\u2247", 9252 "ncongdot;": "\u2a6d\u0338", 9253 "ncup;": "\u2a42", 9254 "Ncy;": "\u041d", 9255 "ncy;": "\u043d", 9256 "ndash;": "\u2013", 9257 "nearhk;": "\u2924", 9258 "nearr;": "\u2197", 9259 "neArr;": "\u21d7", 9260 "nearrow;": "\u2197", 9261 "ne;": "\u2260", 9262 "nedot;": "\u2250\u0338", 9263 "NegativeMediumSpace;": "\u200b", 9264 "NegativeThickSpace;": "\u200b", 9265 "NegativeThinSpace;": "\u200b", 9266 "NegativeVeryThinSpace;": "\u200b", 9267 "nequiv;": "\u2262", 9268 "nesear;": "\u2928", 9269 "nesim;": "\u2242\u0338", 9270 "NestedGreaterGreater;": "\u226b", 9271 "NestedLessLess;": "\u226a", 9272 "NewLine;": "\n", 9273 "nexist;": "\u2204", 9274 "nexists;": "\u2204", 9275 "Nfr;": "\ud835\udd11", 9276 "nfr;": "\ud835\udd2b", 9277 "ngE;": "\u2267\u0338", 9278 "nge;": "\u2271", 9279 "ngeq;": "\u2271", 9280 "ngeqq;": "\u2267\u0338", 9281 "ngeqslant;": "\u2a7e\u0338", 9282 "nges;": "\u2a7e\u0338", 9283 "nGg;": "\u22d9\u0338", 9284 "ngsim;": "\u2275", 9285 "nGt;": "\u226b\u20d2", 9286 "ngt;": "\u226f", 9287 "ngtr;": "\u226f", 9288 "nGtv;": "\u226b\u0338", 9289 "nharr;": "\u21ae", 9290 "nhArr;": "\u21ce", 9291 "nhpar;": "\u2af2", 9292 "ni;": "\u220b", 9293 "nis;": "\u22fc", 9294 "nisd;": "\u22fa", 9295 "niv;": "\u220b", 9296 "NJcy;": "\u040a", 9297 "njcy;": "\u045a", 9298 "nlarr;": "\u219a", 9299 "nlArr;": "\u21cd", 9300 "nldr;": "\u2025", 9301 "nlE;": "\u2266\u0338", 9302 "nle;": "\u2270", 9303 "nleftarrow;": "\u219a", 9304 "nLeftarrow;": "\u21cd", 9305 "nleftrightarrow;": "\u21ae", 9306 "nLeftrightarrow;": "\u21ce", 9307 "nleq;": "\u2270", 9308 "nleqq;": "\u2266\u0338", 9309 "nleqslant;
9309": "\u2a7d\u0338", 9310 "nles;": "\u2a7d\u0338", 9311 "nless;": "\u226e", 9312 "nLl;": "\u22d8\u0338", 9313 "nlsim;": "\u2274", 9314 "nLt;": "\u226a\u20d2", 9315 "nlt;": "\u226e", 9316 "nltri;": "\u22ea", 9317 "nltrie;": "\u22ec", 9318 "nLtv;": "\u226a\u0338", 9319 "nmid;": "\u2224", 9320 "NoBreak;": "\u2060", 9321 "NonBreakingSpace;": "\u00a0", 9322 "nopf;": "\ud835\udd5f", 9323 "Nopf;": "\u2115", 9324 "Not;": "\u2aec", 9325 "not;": "\u00ac", 9326 not: "\u00ac", 9327 "NotCongruent;": "\u2262", 9328 "NotCupCap;": "\u226d", 9329 "NotDoubleVerticalBar;": "\u2226", 9330 "NotElement;": "\u2209", 9331 "NotEqual;": "\u2260", 9332 "NotEqualTilde;": "\u2242\u0338", 9333 "NotExists;": "\u2204", 9334 "NotGreater;": "\u226f", 9335 "NotGreaterEqual;": "\u2271", 9336 "NotGreaterFullEqual;": "\u2267\u0338", 9337 "NotGreaterGreater;": "\u226b\u0338", 9338 "NotGreaterLess;": "\u2279", 9339 "NotGreaterSlantEqual;": "\u2a7e\u0338", 9340 "NotGreaterTilde;": "\u2275", 9341 "NotHumpDownHump;": "\u224e\u0338", 9342 "NotHumpEqual;": "\u224f\u0338", 9343 "notin;": "\u2209", 9344 "notindot;": "\u22f5\u0338", 9345 "notinE;": "\u22f9\u0338", 9346 "notinva;": "\u2209", 9347 "notinvb;": "\u22f7", 9348 "notinvc;": "\u22f6", 9349 "NotLeftTriangleBar;": "\u29cf\u0338", 9350 "NotLeftTriangle;": "\u22ea", 9351 "NotLeftTriangleEqual;": "\u22ec", 9352 "NotLess;": "\u226e", 9353 "NotLessEqual;": "\u2270", 9354 "NotLessGreater;": "\u2278", 9355 "NotLessLess;": "\u226a\u0338", 9356 "NotLessSlantEqual;": "\u2a7d\u0338", 9357 "NotLessTilde;": "\u2274", 9358 "NotNestedGreaterGreater;": "\u2aa2\u0338", 9359 "NotNestedLessLess;": "\u2aa1\u0338", 9360 "notni;": "\u220c", 9361 "notniva;": "\u220c", 9362 "notnivb;": "\u22fe", 9363 "notnivc;": "\u22fd", 9364 "NotPrecedes;": "\u2280", 9365 "NotPrecedesEqual;": "\u2aaf\u0338", 9366 "NotPrecedesSlantEqual;": "\u22e0", 9367 "NotReverseElement;": "\u220c", 9368 "NotRightTriangleBar;": "\u29d0\u0338", 9369 "NotRightTriangle;": "\u22eb", 9370 "NotRightTriangleEqual;": "\u22ed", 9371 "NotSquareSubset;": "\u228f\u0338", 9372 "NotSquareSubsetEqual;": "\u22e2", 9373 "NotSquareSuperset;": "\u2290\u0338", 9374 "NotSquareSupersetEqual;": "\u22e3", 9375 "NotSubset;": "\u2282\u20d2", 9376 "NotSubsetEqual;": "\u2288", 9377 "NotSucceeds;": "\u2281", 9378 "NotSucceedsEqual;": "\u2ab0\u0338", 9379 "NotSucceedsSlantEqual;": "\u22e1", 9380 "NotSucceedsTilde;": "\u227f\u0338", 9381 "NotSuperset;": "\u2283\u20d2", 9382 "NotSupersetEqual;": "\u2289", 9383 "NotTilde;": "\u2241", 9384 "NotTildeEqual;": "\u2244", 9385 "NotTildeFullEqual;": "\u2247", 9386 "NotTildeTilde;": "\u2249", 9387 "NotVerticalBar;": "\u2224", 9388 "nparallel;": "\u2226", 9389 "npar;": "\u2226", 9390 "nparsl;": "\u2afd\u20e5", 9391 "npart;": "\u2202\u0338", 9392 "npolint;": "\u2a14", 9393 "npr;": "\u2280", 9394 "nprcue;": "\u22e0", 9395 "nprec;": "\u2280", 9396 "npreceq;": "\u2aaf\u0338", 9397 "npre;": "\u2aaf\u0338", 9398 "nrarrc;": "\u2933\u0338", 9399 "nrarr;": "\u219b", 9400 "nrArr;": "\u21cf", 9401 "nrarrw;": "\u219d\u0338", 9402 "nrightarrow;": "\u219b", 9403 "nRightarrow;": "\u21cf", 9404 "nrtri;": "\u22eb", 9405 "nrtrie;": "\u22ed", 9406 "nsc;": "\u2281", 9407 "nsccue;": "\u22e1", 9408 "nsce;": "\u2ab0\u0338", 9409 "Nscr;": "\ud835\udca9", 9410 "nscr;": "\ud835\udcc3", 9411 "nshortmid;": "\u2224", 9412 "nshortparallel;": "\u2226", 9413 "nsim;": "\u2241", 9414 "nsime;": "\u2244", 9415 "nsimeq;": "\u2244", 9416 "nsmid;": "\u2224", 9417 "nspar;": "\u2226", 9418 "nsqsube;": "\u22e2", 9419 "nsqsupe;": "\u22e3", 9420 "nsub;": "\u2284", 9421 "nsubE;": "\u2ac5\u0338", 9422 "nsube;": "\u2288", 9423 "nsubset;": "\u2282\u20d2", 9424 "nsubseteq;": "\u2288", 9425 "nsubseteqq;": "\u2ac5\u0338", 9426 "nsucc;": "\u2281", 9427 "nsucceq;": "\u2ab0\u0338", 9428 "nsup;": "\u2285", 9429 "nsupE;": "\u2ac6\u0338", 9430 "nsupe;": "\u2289", 9431 "nsupset;": "\u2283\u20d2", 9432 "nsupseteq;": "\u2289", 9433 "nsupseteqq;": "\u2ac6\u0338", 9434 "ntgl;": "\u2279", 9435 "Ntilde;": "\u00d1", 9436 Ntilde: "\u00d1", 9437 "ntilde;": "\u00f1", 9438 ntilde: "\u00f1", 9439 "ntlg;": "\u2278", 9440 "ntriangleleft;": "\u22ea", 9441 "ntrianglelefteq;": "\u22ec", 9442 "ntriangleright;": "\u22eb", 9443 "ntrianglerighteq;": "\u22ed", 9444 "Nu;": "\u039d", 9445 "nu;": "\u03bd", 9446 "num;": "#", 9447 "numero;": "\u2116", 9448 "numsp;": "\u2007", 9449 "nvap;": "\u224d\u20d2", 9450 "nvdash;": "\u22ac", 9451 "nvDash;": "\u22ad", 9452 "nVdash;": "\u22ae", 9453 "nVDash;": "\u22af", 9454 "nvge;": "\u2265\u20d2", 9455 "nvgt;": ">\u20d2", 9456 "nvHarr;": "\u2904", 9457 "nvinfin;": "\u29de", 9458 "nvlArr;": "\u2902", 9459 "nvle;": "\u2264\u20d2", 9460 "nvlt;": "<\u20d2", 9461 "nvltrie;": "\u22b4\u20d2", 9462 "nvrArr;": "\u2903", 9463 "nvrtrie;": "\u22b5\u20d2", 9464 "nvsim;": "\u223c\u20d2", 9465 "nwarhk;": "\u2923", 9466 "nwarr;": "\u2196", 9467 "nwArr;": "\u21d6", 9468 "nwarrow;": "\u2196", 9469 "nwnear;": "\u2927", 9470 "Oacute;": "\u00d3", 9471 Oacute: "\u00d3", 9472 "oacute;": "\u00f3", 9473 oacute: "\u00f3", 9474 "oast;": "\u229b", 9475 "Ocirc;": "\u00d4", 9476 Ocirc: "\u00d4", 9477 "ocirc;": "\u00f4", 9478 ocirc: "\u00f4", 9479 "ocir;": "\u229a", 9480 "Ocy;": "\u041e", 9481 "ocy;
9481": "\u043e", 9482 "odash;": "\u229d", 9483 "Odblac;": "\u0150", 9484 "odblac;": "\u0151", 9485 "odiv;": "\u2a38", 9486 "odot;": "\u2299", 9487 "odsold;": "\u29bc", 9488 "OElig;": "\u0152", 9489 "oelig;": "\u0153", 9490 "ofcir;": "\u29bf", 9491 "Ofr;": "\ud835\udd12", 9492 "ofr;": "\ud835\udd2c", 9493 "ogon;": "\u02db", 9494 "Ograve;": "\u00d2", 9495 Ograve: "\u00d2", 9496 "ograve;": "\u00f2", 9497 ograve: "\u00f2", 9498 "ogt;": "\u29c1", 9499 "ohbar;": "\u29b5", 9500 "ohm;": "\u03a9", 9501 "oint;": "\u222e", 9502 "olarr;": "\u21ba", 9503 "olcir;": "\u29be", 9504 "olcross;": "\u29bb", 9505 "oline;": "\u203e", 9506 "olt;": "\u29c0", 9507 "Omacr;": "\u014c", 9508 "omacr;": "\u014d", 9509 "Omega;": "\u03a9", 9510 "omega;": "\u03c9", 9511 "Omicron;": "\u039f", 9512 "omicron;": "\u03bf", 9513 "omid;": "\u29b6", 9514 "ominus;": "\u2296", 9515 "Oopf;": "\ud835\udd46", 9516 "oopf;": "\ud835\udd60", 9517 "opar;": "\u29b7", 9518 "OpenCurlyDoubleQuote;": "\u201c", 9519 "OpenCurlyQuote;": "\u2018", 9520 "operp;": "\u29b9", 9521 "oplus;": "\u2295", 9522 "orarr;": "\u21bb", 9523 "Or;": "\u2a54", 9524 "or;": "\u2228", 9525 "ord;": "\u2a5d", 9526 "order;": "\u2134", 9527 "orderof;": "\u2134", 9528 "ordf;": "\u00aa", 9529 ordf: "\u00aa", 9530 "ordm;": "\u00ba", 9531 ordm: "\u00ba", 9532 "origof;": "\u22b6", 9533 "oror;": "\u2a56", 9534 "orslope;": "\u2a57", 9535 "orv;": "\u2a5b", 9536 "oS;": "\u24c8", 9537 "Oscr;": "\ud835\udcaa", 9538 "oscr;": "\u2134", 9539 "Oslash;": "\u00d8", 9540 Oslash: "\u00d8", 9541 "oslash;": "\u00f8", 9542 oslash: "\u00f8", 9543 "osol;": "\u2298", 9544 "Otilde;": "\u00d5", 9545 Otilde: "\u00d5", 9546 "otilde;": "\u00f5", 9547 otilde: "\u00f5", 9548 "otimesas;": "\u2a36", 9549 "Otimes;": "\u2a37", 9550 "otimes;": "\u2297", 9551 "Ouml;": "\u00d6", 9552 Ouml: "\u00d6", 9553 "ouml;": "\u00f6", 9554 ouml: "\u00f6", 9555 "ovbar;": "\u233d", 9556 "OverBar;": "\u203e", 9557 "OverBrace;": "\u23de", 9558 "OverBracket;": "\u23b4", 9559 "OverParenthesis;": "\u23dc", 9560 "para;": "\u00b6", 9561 para: "\u00b6", 9562 "parallel;": "\u2225", 9563 "par;": "\u2225", 9564 "parsim;": "\u2af3", 9565 "parsl;": "\u2afd", 9566 "part;": "\u2202", 9567 "PartialD;": "\u2202", 9568 "Pcy;": "\u041f", 9569 "pcy;": "\u043f", 9570 "percnt;": "%", 9571 "period;": ".", 9572 "permil;": "\u2030", 9573 "perp;": "\u22a5", 9574 "pertenk;": "\u2031", 9575 "Pfr;": "\ud835\udd13", 9576 "pfr;": "\ud835\udd2d", 9577 "Phi;": "\u03a6", 9578 "phi;": "\u03c6", 9579 "phiv;": "\u03d5", 9580 "phmmat;": "\u2133", 9581 "phone;": "\u260e", 9582 "Pi;": "\u03a0", 9583 "pi;": "\u03c0", 9584 "pitchfork;": "\u22d4", 9585 "piv;": "\u03d6", 9586 "planck;": "\u210f", 9587 "planckh;": "\u210e", 9588 "plankv;": "\u210f", 9589 "plusacir;": "\u2a23", 9590 "plusb;": "\u229e", 9591 "pluscir;": "\u2a22", 9592 "plus;": "+", 9593 "plusdo;": "\u2214", 9594 "plusdu;": "\u2a25", 9595 "pluse;": "\u2a72", 9596 "PlusMinus;": "\u00b1", 9597 "plusmn;": "\u00b1", 9598 plusmn: "\u00b1", 9599 "plussim;": "\u2a26", 9600 "plustwo;": "\u2a27", 9601 "pm;": "\u00b1", 9602 "Poincareplane;": "\u210c", 9603 "pointint;": "\u2a15", 9604 "popf;": "\ud835\udd61", 9605 "Popf;": "\u2119", 9606 "pound;": "\u00a3", 9607 pound: "\u00a3", 9608 "prap;": "\u2ab7", 9609 "Pr;": "\u2abb", 9610 "pr;": "\u227a",
9611 "prcue;": "\u227c", 9612 "precapprox;": "\u2ab7", 9613 "prec;": "\u227a", 9614 "preccurlyeq;": "\u227c", 9615 "Precedes;": "\u227a", 9616 "PrecedesEqual;": "\u2aaf", 9617 "PrecedesSlantEqual;": "\u227c", 9618 "PrecedesTilde;": "\u227e", 9619 "preceq;": "\u2aaf", 9620 "precnapprox;": "\u2ab9", 9621 "precneqq;": "\u2ab5", 9622 "precnsim;": "\u22e8", 9623 "pre;": "\u2aaf", 9624 "prE;": "\u2ab3", 9625 "precsim;": "\u227e", 9626 "prime;": "\u2032", 9627 "Prime;": "\u2033", 9628 "primes;": "\u2119", 9629 "prnap;": "\u2ab9", 9630 "prnE;": "\u2ab5", 9631 "prnsim;": "\u22e8", 9632 "prod;": "\u220f", 9633 "Product;": "\u220f", 9634 "profalar;": "\u232e", 9635 "profline;": "\u2312", 9636 "profsurf;": "\u2313", 9637 "prop;": "\u221d", 9638 "Proportional;": "\u221d", 9639 "Proportion;": "\u2237", 9640 "propto;": "\u221d", 9641 "prsim;": "\u227e", 9642 "prurel;": "\u22b0", 9643 "Pscr;": "\ud835\udcab", 9644 "pscr;": "\ud835\udcc5", 9645 "Psi;": "\u03a8", 9646 "psi;": "\u03c8", 9647 "puncsp;": "\u2008", 9648 "Qfr;": "\ud835\udd14", 9649 "qfr;": "\ud835\udd2e", 9650 "qint;": "\u2a0c", 9651 "qopf;": "\ud835\udd62", 9652 "Qopf;": "\u211a", 9653 "qprime;": "\u2057", 9654 "Qscr;": "\ud835\udcac", 9655 "qscr;": "\ud835\udcc6", 9656 "quaternions;": "\u210d", 9657 "quatint;": "\u2a16", 9658 "quest;": "?", 9659 "questeq;": "\u225f", 9660 "quot;": '"', 9661 quot: '"', 9662 "QUOT;": '"', 9663 QUOT: '"', 9664 "rAarr;": "\u21db", 9665 "race;": "\u223d\u0331", 9666 "Racute;": "\u0154", 9667 "racute;": "\u0155", 9668 "radic;": "\u221a", 9669 "raemptyv;": "\u29b3", 9670 "rang;": "\u27e9", 9671 "Rang;": "\u27eb", 9672 "rangd;": "\u2992", 9673 "range;": "\u29a5", 9674 "rangle;": "\u27e9", 9675 "raquo;": "\u00bb", 9676 raquo: "\u00bb", 9677 "rarrap;": "\u2975", 9678 "rarrb;": "\u21e5", 9679 "rarrbfs;": "\u2920", 9680 "rarrc;": "\u2933", 9681 "rarr;": "\u2192", 9682 "Rarr;": "\u21a0", 9683 "rArr;": "\u21d2", 9684 "rarrfs;": "\u291e", 9685 "rarrhk;": "\u21aa", 9686 "rarrlp;": "\u21ac", 9687 "rarrpl;": "\u2945", 9688 "rarrsim;": "\u2974", 9689 "Rarrtl;": "\u2916", 9690 "rarrtl;": "\u21a3", 9691 "rarrw;": "\u219d", 9692 "ratail;": "\u291a", 9693 "rAtail;": "\u291c", 9694 "ratio;": "\u2236", 9695 "rationals;": "\u211a", 9696 "rbarr;": "\u290d", 9697 "rBarr;": "\u290f", 9698 "RBarr;": "\u2910", 9699 "rbbrk;": "\u2773", 9700 "rbrace;": "}", 9701 "rbrack;": "]", 9702 "rbrke;": "\u298c", 9703 "rbrksld;": "\u298e", 9704 "rbrkslu;": "\u2990", 9705 "Rcaron;": "\u0158", 9706 "rcaron;": "\u0159", 9707 "Rcedil;": "\u0156", 9708 "rcedil;": "\u0157", 9709 "rceil;": "\u2309", 9710 "rcub;": "}", 9711 "Rcy;": "\u0420", 9712 "rcy;": "\u0440", 9713 "rdca;": "\u2937", 9714 "rdldhar;": "\u2969", 9715 "rdquo;": "\u201d", 9716 "rdquor;": "\u201d", 9717 "rdsh;": "\u21b3", 9718 "real;": "\u211c", 9719 "realine;": "\u211b", 9720 "realpart;": "\u211c", 9721 "reals;": "\u211d", 9722 "Re;": "\u211c", 9723 "rect;": "\u25ad", 9724 "reg;": "\u00ae", 9725 reg: "\u00ae", 9726 "REG;": "\u00ae", 9727 REG: "\u00ae", 9728 "ReverseElement;": "\u220b", 9729 "ReverseEquilibrium;": "\u21cb", 9730 "ReverseUpEquilibrium;": "\u296f", 9731 "rfisht;": "\u297d", 9732 "rfloor;": "\u230b", 9733 "rfr;": "\ud835\udd2f", 9734 "Rfr;": "\u211c", 9735 "rHar;": "\u2964", 9736 "rhard;": "\u21c1", 9737 "rharu;": "\u21c0", 9738 "rharul;": "\u296c", 9739 "Rho;": "\u03a1", 9740 "rho;": "\u03c1", 9741 "rhov;": "\u03f1", 9742 "RightAngleBracket;": "\u27e9", 9743 "RightArrowBar;": "\u21e5", 9744 "rightarrow;": "\u2192", 9745 "RightArrow;": "\u2192", 9746 "Rightarrow;": "\u21d2", 9747 "RightArrowLeftArrow;
9747": "\u21c4", 9748 "rightarrowtail;": "\u21a3", 9749 "RightCeiling;": "\u2309", 9750 "RightDoubleBracket;": "\u27e7", 9751 "RightDownTeeVector;": "\u295d", 9752 "RightDownVectorBar;": "\u2955", 9753 "RightDownVector;": "\u21c2", 9754 "RightFloor;": "\u230b", 9755 "rightharpoondown;": "\u21c1", 9756 "rightharpoonup;": "\u21c0", 9757 "rightleftarrows;": "\u21c4", 9758 "rightleftharpoons;": "\u21cc", 9759 "rightrightarrows;": "\u21c9", 9760 "rightsquigarrow;": "\u219d", 9761 "RightTeeArrow;": "\u21a6", 9762 "RightTee;": "\u22a2", 9763 "RightTeeVector;": "\u295b", 9764 "rightthreetimes;": "\u22cc", 9765 "RightTriangleBar;": "\u29d0", 9766 "RightTriangle;": "\u22b3", 9767 "RightTriangleEqual;": "\u22b5", 9768 "RightUpDownVector;": "\u294f", 9769 "RightUpTeeVector;": "\u295c", 9770 "RightUpVectorBar;": "\u2954", 9771 "RightUpVector;": "\u21be", 9772 "RightVectorBar;": "\u2953", 9773 "RightVector;": "\u21c0", 9774 "ring;": "\u02da", 9775 "risingdotseq;": "\u2253", 9776 "rlarr;": "\u21c4", 9777 "rlhar;": "\u21cc", 9778 "rlm;": "\u200f", 9779 "rmoustache;": "\u23b1", 9780 "rmoust;": "\u23b1", 9781 "rnmid;": "\u2aee", 9782 "roang;": "\u27ed", 9783 "roarr;": "\u21fe", 9784 "robrk;": "\u27e7", 9785 "ropar;": "\u2986", 9786 "ropf;": "\ud835\udd63", 9787 "Ropf;": "\u211d", 9788 "roplus;": "\u2a2e", 9789 "rotimes;": "\u2a35", 9790 "RoundImplies;": "\u2970", 9791 "rpar;": ")", 9792 "rpargt;": "\u2994", 9793 "rppolint;": "\u2a12", 9794 "rrarr;": "\u21c9", 9795 "Rrightarrow;": "\u21db", 9796 "rsaquo;": "\u203a", 9797 "rscr;": "\ud835\udcc7", 9798 "Rscr;": "\u211b", 9799 "rsh;": "\u21b1", 9800 "Rsh;": "\u21b1", 9801 "rsqb;": "]", 9802 "rsquo;": "\u2019", 9803 "rsquor;": "\u2019", 9804 "rthree;": "\u22cc", 9805 "rtimes;": "\u22ca", 9806 "rtri;": "\u25b9", 9807 "rtrie;": "\u22b5", 9808 "rtrif;": "\u25b8", 9809 "rtriltri;": "\u29ce", 9810 "RuleDelayed;": "\u29f4", 9811 "ruluhar;": "\u2968", 9812 "rx;": "\u211e", 9813 "Sacute;": "\u015a", 9814 "sacute;": "\u015b", 9815 "sbquo;": "\u201a", 9816 "scap;": "\u2ab8", 9817 "Scaron;": "\u0160", 9818 "scaron;": "\u0161", 9819 "Sc;": "\u2abc", 9820 "sc;": "\u227b", 9821 "sccue;": "\u227d", 9822 "sce;": "\u2ab0", 9823 "scE;": "\u2ab4", 9824 "Scedil;": "\u015e", 9825 "scedil;": "\u015f", 9826 "Scirc;": "\u015c", 9827 "scirc;": "\u015d", 9828 "scnap;": "\u2aba", 9829 "scnE;": "\u2ab6", 9830 "scnsim;": "\u22e9", 9831 "scpolint;": "\u2a13", 9832 "scsim;": "\u227f", 9833 "Scy;": "\u0421", 9834 "scy;": "\u0441", 9835 "sdotb;": "\u22a1", 9836 "sdot;": "\u22c5", 9837 "sdote;": "\u2a66", 9838 "searhk;": "\u2925", 9839 "searr;": "\u2198", 9840 "seArr;": "\u21d8", 9841 "searrow;": "\u2198", 9842 "sect;": "\u00a7", 9843 sect: "\u00a7", 9844 "semi;": ";", 9845 "seswar;": "\u2929", 9846 "setminus;": "\u2216", 9847 "setmn;": "\u2216", 9848 "sext;": "\u2736", 9849 "Sfr;": "\ud835\udd16", 9850 "sfr;": "\ud835\udd30", 9851 "sfrown;": "\u2322", 9852 "sharp;": "\u266f", 9853 "SHCHcy;": "\u0429", 9854 "shchcy;": "\u0449", 9855 "SHcy;": "\u0428", 9856 "shcy;": "\u0448", 9857 "ShortDownArrow;": "\u2193", 9858 "ShortLeftArrow;
9858": "\u2190", 9859 "shortmid;": "\u2223", 9860 "shortparallel;": "\u2225", 9861 "ShortRightArrow;": "\u2192", 9862 "ShortUpArrow;": "\u2191", 9863 "shy;": "\u00ad", 9864 shy: "\u00ad", 9865 "Sigma;": "\u03a3", 9866 "sigma;": "\u03c3", 9867 "sigmaf;": "\u03c2", 9868 "sigmav;": "\u03c2", 9869 "sim;": "\u223c", 9870 "simdot;": "\u2a6a", 9871 "sime;": "\u2243", 9872 "simeq;": "\u2243", 9873 "simg;": "\u2a9e", 9874 "simgE;": "\u2aa0", 9875 "siml;": "\u2a9d", 9876 "simlE;": "\u2a9f", 9877 "simne;": "\u2246", 9878 "simplus;": "\u2a24", 9879 "simrarr;": "\u2972", 9880 "slarr;": "\u2190", 9881 "SmallCircle;": "\u2218", 9882 "smallsetminus;": "\u2216", 9883 "smashp;": "\u2a33", 9884 "smeparsl;": "\u29e4", 9885 "smid;": "\u2223", 9886 "smile;": "\u2323", 9887 "smt;": "\u2aaa", 9888 "smte;": "\u2aac", 9889 "smtes;": "\u2aac\ufe00", 9890 "SOFTcy;": "\u042c", 9891 "softcy;": "\u044c", 9892 "solbar;": "\u233f", 9893 "solb;": "\u29c4", 9894 "sol;": "/", 9895 "Sopf;": "\ud835\udd4a", 9896 "sopf;": "\ud835\udd64", 9897 "spades;": "\u2660", 9898 "spadesuit;": "\u2660", 9899 "spar;": "\u2225", 9900 "sqcap;": "\u2293", 9901 "sqcaps;": "\u2293\ufe00", 9902 "sqcup;": "\u2294", 9903 "sqcups;": "\u2294\ufe00", 9904 "Sqrt;": "\u221a", 9905 "sqsub;": "\u228f", 9906 "sqsube;": "\u2291", 9907 "sqsubset;": "\u228f", 9908 "sqsubseteq;": "\u2291", 9909 "sqsup;": "\u2290", 9910 "sqsupe;": "\u2292", 9911 "sqsupset;": "\u2290", 9912 "sqsupseteq;": "\u2292", 9913 "square;": "\u25a1", 9914 "Square;": "\u25a1", 9915 "SquareIntersection;": "\u2293", 9916 "SquareSubset;": "\u228f", 9917 "SquareSubsetEqual;": "\u2291", 9918 "SquareSuperset;": "\u2290", 9919 "SquareSupersetEqual;": "\u2292", 9920 "SquareUnion;": "\u2294", 9921 "squarf;": "\u25aa", 9922 "squ;": "\u25a1", 9923 "squf;": "\u25aa", 9924 "srarr;": "\u2192", 9925 "Sscr;": "\ud835\udcae", 9926 "sscr;": "\ud835\udcc8", 9927 "ssetmn;": "\u2216", 9928 "ssmile;": "\u2323", 9929 "sstarf;": "\u22c6", 9930 "Star;": "\u22c6", 9931 "star;": "\u2606", 9932 "starf;": "\u2605", 9933 "straightepsilon;": "\u03f5", 9934 "straightphi;": "\u03d5", 9935 "strns;": "\u00af", 9936 "sub;": "\u2282", 9937 "Sub;": "\u22d0", 9938 "subdot;": "\u2abd", 9939 "subE;": "\u2ac5", 9940 "sube;": "\u2286", 9941 "subedot;": "\u2ac3", 9942 "submult;": "\u2ac1", 9943 "subnE;": "\u2acb", 9944 "subne;": "\u228a", 9945 "subplus;": "\u2abf", 9946 "subrarr;": "\u2979", 9947 "subset;": "\u2282", 9948 "Subset;": "\u22d0", 9949 "subseteq;": "\u2286", 9950 "subseteqq;": "\u2ac5", 9951 "SubsetEqual;": "\u2286", 9952 "subsetneq;": "\u228a", 9953 "subsetneqq;": "\u2acb", 9954 "subsim;": "\u2ac7", 9955 "subsub;": "\u2ad5", 9956 "subsup;": "\u2ad3", 9957 "succapprox;": "\u2ab8", 9958 "succ;": "\u227b", 9959 "succcurlyeq;": "\u227d", 9960 "Succeeds;": "\u227b", 9961 "SucceedsEqual;": "\u2ab0", 9962 "SucceedsSlantEqual;": "\u227d", 9963 "SucceedsTilde;": "\u227f", 9964 "succeq;": "\u2ab0", 9965 "succnapprox;": "\u2aba", 9966 "succneqq;": "\u2ab6", 9967 "succnsim;": "\u22e9", 9968 "succsim;": "\u227f", 9969 "SuchThat;": "\u220b", 9970 "sum;": "\u2211", 9971 "Sum;": "\u2211", 9972 "sung;": "\u266a", 9973 "sup1;": "\u00b9", 9974 sup1: "\u00b9", 9975 "sup2;": "\u00b2", 9976 sup2: "\u00b2", 9977 "sup3;": "\u00b3", 9978 sup3: "\u00b3", 9979 "sup;": "\u2283", 9980 "Sup;": "\u22d1", 9981 "supdot;": "\u2abe", 9982 "supdsub;": "\u2ad8", 9983 "supE;": "\u2ac6", 9984 "supe;": "\u2287", 9985 "supedot;": "\u2ac4", 9986 "Superset;": "\u2283", 9987 "SupersetEqual;": "\u2287", 9988 "suphsol;": "\u27c9", 9989 "suphsub;": "\u2ad7", 9990 "suplarr;": "\u297b", 9991 "supmult;": "\u2ac2", 9992 "supnE;": "\u2acc", 9993 "supne;": "\u228b", 9994 "supplus;": "\u2ac0", 9995 "supset;": "\u2283", 9996 "Supset;": "\u22d1", 9997 "supseteq;": "\u2287", 9998 "supseteqq;": "\u2ac6", 9999 "supsetneq;": "\u228b", 10000 "supsetneqq;": "\u2acc", 10001 "supsim;": "\u2ac8", 10002 "supsub;": "\u2ad4", 10003 "supsup;": "\u2ad6", 10004 "swarhk;": "\u2926", 10005 "swarr;": "\u2199", 10006 "swArr;": "\u21d9", 10007 "swarrow;": "\u2199", 10008 "swnwar;": "\u292a", 10009 "szlig;": "\u00df", 10010 szlig: "\u00df", 10011 "Tab;": " ", 10012 "target;": "\u2316", 10013 "Tau;": "\u03a4", 10014 "tau;": "\u03c4", 10015 "tbrk;": "\u23b4", 10016 "Tcaron;": "\u0164", 10017 "tcaron;": "\u0165", 10018 "Tcedil;": "\u0162", 10019 "tcedil;": "\u0163", 10020 "Tcy;": "\u0422", 10021 "tcy;": "\u0442", 10022 "tdot;": "\u20db", 10023 "telrec;": "\u2315", 10024 "Tfr;": "\ud835\udd17", 10025 "tfr;": "\ud835\udd31", 10026 "there4;": "\u2234", 10027 "therefore;": "\u2234", 10028 "Therefore;": "\u2234", 10029 "Theta;
10029": "\u0398", 10030 "theta;": "\u03b8", 10031 "thetasym;": "\u03d1", 10032 "thetav;": "\u03d1", 10033 "thickapprox;": "\u2248", 10034 "thicksim;": "\u223c", 10035 "ThickSpace;": "\u205f\u200a", 10036 "ThinSpace;": "\u2009", 10037 "thinsp;": "\u2009", 10038 "thkap;": "\u2248", 10039 "thksim;": "\u223c", 10040 "THORN;": "\u00de", 10041 THORN: "\u00de", 10042 "thorn;": "\u00fe", 10043 thorn: "\u00fe", 10044 "tilde;": "\u02dc", 10045 "Tilde;": "\u223c", 10046 "TildeEqual;": "\u2243", 10047 "TildeFullEqual;": "\u2245", 10048 "TildeTilde;": "\u2248", 10049 "timesbar;": "\u2a31", 10050 "timesb;": "\u22a0", 10051 "times;": "\u00d7", 10052 times: "\u00d7", 10053 "timesd;": "\u2a30", 10054 "tint;": "\u222d", 10055 "toea;": "\u2928", 10056 "topbot;": "\u2336", 10057 "topcir;": "\u2af1", 10058 "top;": "\u22a4", 10059 "Topf;": "\ud835\udd4b", 10060 "topf;": "\ud835\udd65", 10061 "topfork;": "\u2ada", 10062 "tosa;": "\u2929", 10063 "tprime;": "\u2034", 10064 "trade;": "\u2122", 10065 "TRADE;": "\u2122", 10066 "triangle;": "\u25b5", 10067 "triangledown;": "\u25bf", 10068 "triangleleft;": "\u25c3", 10069 "trianglelefteq;": "\u22b4", 10070 "triangleq;": "\u225c", 10071 "triangleright;": "\u25b9", 10072 "trianglerighteq;": "\u22b5", 10073 "tridot;": "\u25ec", 10074 "trie;": "\u225c", 10075 "triminus;": "\u2a3a", 10076 "TripleDot;": "\u20db", 10077 "triplus;": "\u2a39", 10078 "trisb;": "\u29cd", 10079 "tritime;": "\u2a3b", 10080 "trpezium;": "\u23e2", 10081 "Tscr;": "\ud835\udcaf", 10082 "tscr;": "\ud835\udcc9", 10083 "TScy;": "\u0426", 10084 "tscy;": "\u0446", 10085 "TSHcy;": "\u040b", 10086 "tshcy;": "\u045b", 10087 "Tstrok;": "\u0166", 10088 "tstrok;": "\u0167", 10089 "twixt;": "\u226c", 10090 "twoheadleftarrow;": "\u219e", 10091 "twoheadrightarrow;": "\u21a0", 10092 "Uacute;": "\u00da", 10093 Uacute: "\u00da", 10094 "uacute;": "\u00fa", 10095 uacute: "\u00fa", 10096 "uarr;": "\u2191", 10097 "Uarr;": "\u219f", 10098 "uArr;": "\u21d1", 10099 "Uarrocir;": "\u2949", 10100 "Ubrcy;": "\u040e", 10101 "ubrcy;": "\u045e", 10102 "Ubreve;": "\u016c", 10103 "ubreve;": "\u016d", 10104 "Ucirc;": "\u00db", 10105 Ucirc: "\u00db", 10106 "ucirc;": "\u00fb", 10107 ucirc: "\u00fb", 10108 "Ucy;": "\u0423", 10109 "ucy;": "\u0443", 10110 "udarr;": "\u21c5", 10111 "Udblac;": "\u0170", 10112 "udblac;": "\u0171", 10113 "udhar;": "\u296e", 10114 "ufisht;": "\u297e", 10115 "Ufr;": "\ud835\udd18", 10116 "ufr;": "\ud835\udd32", 10117 "Ugrave;": "\u00d9", 10118 Ugrave: "\u00d9", 10119 "ugrave;": "\u00f9", 10120 ugrave: "\u00f9", 10121 "uHar;": "\u2963", 10122 "uharl;": "\u21bf", 10123 "uharr;": "\u21be", 10124 "uhblk;": "\u2580", 10125 "ulcorn;": "\u231c", 10126 "ulcorner;": "\u231c", 10127 "ulcrop;": "\u230f", 10128 "ultri;": "\u25f8", 10129 "Umacr;": "\u016a", 10130 "umacr;": "\u016b", 10131 "uml;": "\u00a8", 10132 uml: "\u00a8", 10133 "UnderBar;": "_", 10134 "UnderBrace;": "\u23df", 10135 "UnderBracket;": "\u23b5", 10136 "UnderParenthesis;": "\u23dd", 10137 "Union;": "\u22c3", 10138 "UnionPlus;": "\u228e", 10139 "Uogon;": "\u0172", 10140 "uogon;": "\u0173", 10141 "Uopf;": "\ud835\udd4c", 10142 "uopf;": "\ud835\udd66", 10143 "UpArrowBar;": "\u2912", 10144 "uparrow;": "\u2191", 10145 "UpArrow;": "\u2191", 10146 "Uparrow;": "\u21d1", 10147 "UpArrowDownArrow;": "\u21c5", 10148 "updownarrow;": "\u2195", 10149 "UpDownArrow;": "\u2195", 10150 "Updownarrow;": "\u21d5", 10151 "UpEquilibrium;": "\u296e", 10152 "upharpoonleft;": "\u21bf", 10153 "upharpoonright;": "\u21be", 10154 "uplus;": "\u228e", 10155 "UpperLeftArrow;
10155": "\u2196", 10156 "UpperRightArrow;": "\u2197", 10157 "upsi;": "\u03c5", 10158 "Upsi;": "\u03d2", 10159 "upsih;": "\u03d2", 10160 "Upsilon;": "\u03a5", 10161 "upsilon;": "\u03c5", 10162 "UpTeeArrow;": "\u21a5", 10163 "UpTee;": "\u22a5", 10164 "upuparrows;": "\u21c8", 10165 "urcorn;": "\u231d", 10166 "urcorner;": "\u231d", 10167 "urcrop;": "\u230e", 10168 "Uring;": "\u016e", 10169 "uring;": "\u016f", 10170 "urtri;": "\u25f9", 10171 "Uscr;": "\ud835\udcb0", 10172 "uscr;": "\ud835\udcca", 10173 "utdot;": "\u22f0", 10174 "Utilde;": "\u0168", 10175 "utilde;": "\u0169", 10176 "utri;": "\u25b5", 10177 "utrif;": "\u25b4", 10178 "uuarr;": "\u21c8", 10179 "Uuml;": "\u00dc", 10180 Uuml: "\u00dc", 10181 "uuml;": "\u00fc", 10182 uuml: "\u00fc", 10183 "uwangle;": "\u29a7", 10184 "vangrt;": "\u299c", 10185 "varepsilon;": "\u03f5", 10186 "varkappa;": "\u03f0", 10187 "varnothing;": "\u2205", 10188 "varphi;": "\u03d5", 10189 "varpi;": "\u03d6", 10190 "varpropto;": "\u221d", 10191 "varr;": "\u2195", 10192 "vArr;": "\u21d5", 10193 "varrho;": "\u03f1", 10194 "varsigma;": "\u03c2", 10195 "varsubsetneq;": "\u228a\ufe00", 10196 "varsubsetneqq;": "\u2acb\ufe00", 10197 "varsupsetneq;": "\u228b\ufe00", 10198 "varsupsetneqq;": "\u2acc\ufe00", 10199 "vartheta;": "\u03d1", 10200 "vartriangleleft;": "\u22b2", 10201 "vartriangleright;": "\u22b3", 10202 "vBar;": "\u2ae8", 10203 "Vbar;": "\u2aeb", 10204 "vBarv;": "\u2ae9", 10205 "Vcy;": "\u0412", 10206 "vcy;": "\u0432", 10207 "vdash;": "\u22a2", 10208 "vDash;": "\u22a8", 10209 "Vdash;": "\u22a9", 10210 "VDash;": "\u22ab", 10211 "Vdashl;": "\u2ae6", 10212 "veebar;": "\u22bb", 10213 "vee;": "\u2228", 10214 "Vee;": "\u22c1", 10215 "veeeq;": "\u225a", 10216 "vellip;": "\u22ee", 10217 "verbar;": "|", 10218 "Verbar;": "\u2016", 10219 "vert;": "|", 10220 "Vert;": "\u2016", 10221 "VerticalBar;": "\u2223", 10222 "VerticalLine;": "|", 10223 "VerticalSeparator;": "\u2758", 10224 "VerticalTilde;": "\u2240", 10225 "VeryThinSpace;": "\u200a", 10226 "Vfr;": "\ud835\udd19", 10227 "vfr;": "\ud835\udd33", 10228 "vltri;": "\u22b2", 10229 "vnsub;": "\u2282\u20d2", 10230 "vnsup;": "\u2283\u20d2", 10231 "Vopf;": "\ud835\udd4d", 10232 "vopf;": "\ud835\udd67", 10233 "vprop;": "\u221d", 10234 "vrtri;": "\u22b3", 10235 "Vscr;": "\ud835\udcb1", 10236 "vscr;": "\ud835\udccb", 10237 "vsubnE;": "\u2acb\ufe00", 10238 "vsubne;": "\u228a\ufe00", 10239 "vsupnE;": "\u2acc\ufe00", 10240 "vsupne;": "\u228b\ufe00", 10241 "Vvdash;": "\u22aa", 10242 "vzigzag;": "\u299a", 10243 "Wcirc;": "\u0174", 10244 "wcirc;": "\u0175", 10245 "wedbar;": "\u2a5f", 10246 "wedge;": "\u2227", 10247 "Wedge;": "\u22c0", 10248 "wedgeq;": "\u2259", 10249 "weierp;": "\u2118", 10250 "Wfr;": "\ud835\udd1a", 10251 "wfr;": "\ud835\udd34", 10252 "Wopf;": "\ud835\udd4e", 10253 "wopf;": "\ud835\udd68", 10254 "wp;": "\u2118", 10255 "wr;": "\u2240", 10256 "wreath;
10256": "\u2240", 10257 "Wscr;": "\ud835\udcb2", 10258 "wscr;": "\ud835\udccc", 10259 "xcap;": "\u22c2", 10260 "xcirc;": "\u25ef", 10261 "xcup;": "\u22c3", 10262 "xdtri;": "\u25bd", 10263 "Xfr;": "\ud835\udd1b", 10264 "xfr;": "\ud835\udd35", 10265 "xharr;": "\u27f7", 10266 "xhArr;": "\u27fa", 10267 "Xi;": "\u039e", 10268 "xi;": "\u03be", 10269 "xlarr;": "\u27f5", 10270 "xlArr;": "\u27f8", 10271 "xmap;": "\u27fc", 10272 "xnis;": "\u22fb", 10273 "xodot;": "\u2a00", 10274 "Xopf;": "\ud835\udd4f", 10275 "xopf;": "\ud835\udd69", 10276 "xoplus;": "\u2a01", 10277 "xotime;": "\u2a02", 10278 "xrarr;": "\u27f6", 10279 "xrArr;": "\u27f9", 10280 "Xscr;": "\ud835\udcb3", 10281 "xscr;": "\ud835\udccd", 10282 "xsqcup;": "\u2a06", 10283 "xuplus;": "\u2a04", 10284 "xutri;": "\u25b3", 10285 "xvee;": "\u22c1", 10286 "xwedge;": "\u22c0", 10287 "Yacute;": "\u00dd", 10288 Yacute: "\u00dd", 10289 "yacute;": "\u00fd", 10290 yacute: "\u00fd", 10291 "YAcy;": "\u042f", 10292 "yacy;": "\u044f", 10293 "Ycirc;": "\u0176", 10294 "ycirc;": "\u0177", 10295 "Ycy;": "\u042b", 10296 "ycy;": "\u044b", 10297 "yen;": "\u00a5", 10298 yen: "\u00a5", 10299 "Yfr;": "\ud835\udd1c", 10300 "yfr;": "\ud835\udd36", 10301 "YIcy;": "\u0407", 10302 "yicy;": "\u0457", 10303 "Yopf;": "\ud835\udd50", 10304 "yopf;": "\ud835\udd6a", 10305 "Yscr;": "\ud835\udcb4", 10306 "yscr;": "\ud835\udcce", 10307 "YUcy;": "\u042e", 10308 "yucy;": "\u044e", 10309 "yuml;": "\u00ff", 10310 yuml: "\u00ff", 10311 "Yuml;": "\u0178", 10312 "Zacute;": "\u0179", 10313 "zacute;": "\u017a", 10314 "Zcaron;": "\u017d", 10315 "zcaron;": "\u017e", 10316 "Zcy;": "\u0417", 10317 "zcy;": "\u0437", 10318 "Zdot;": "\u017b", 10319 "zdot;": "\u017c", 10320 "zeetrf;": "\u2128", 10321 "ZeroWidthSpace;": "\u200b", 10322 "Zeta;": "\u0396", 10323 "zeta;": "\u03b6", 10324 "zfr;": "\ud835\udd37", 10325 "Zfr;": "\u2128", 10326 "ZHcy;": "\u0416", 10327 "zhcy;": "\u0436", 10328 "zigrarr;": "\u21dd", 10329 "zopf;": "\ud835\udd6b", 10330 "Zopf;": "\u2124", 10331 "Zscr;": "\ud835\udcb5", 10332 "zscr;": "\ud835\udccf", 10333 "zwj;": "\u200d", 10334 "zwnj;": "\u200c" 10335 } 10336 }, {}], 13: [function (e, t, n) { 10337 function u(e, t) { 10338 return r.isUndefined(t) ? "" + t : r.isNumber(t) && (isNaN(t) || !isFinite(t)) ? t.toString() : r.isFunction(t) || r.isRegExp(t) ? t.toString() : t 10339 } 10340 10341 function a(e, t) { 10342 return r.isString(e) ? e.length < t ? e : e.slice(0, t) : e 10343 } 10344 10345 function f(e) { 10346 return a(JSON.stringify(e.actual, u), 128) + " " + e.operator + " " + a(JSON.stringify(e.expected, u), 128) 10347 } 10348 10349 function l(e, t, n, r, i) { 10350 throw new o.AssertionError({message: n, actual: e, expected: t, operator: r, stackStartFunction: i}) 10351 } 10352 10353 function c(e, t) { 10354 e || l(e, !0, t, "==", o.ok) 10355 } 10356 10357 function h(e, t) { 10358 if (e === t) return !0; 10359 if (r.isBuffer(e) && r.isBuffer(t)) { 10360 if (e.length != t.length) return !1; 10361 for (var n = 0; n < e.length; n++) if (e[n] !== t[n]) return !1; 10362 return !0 10363 } 10364 return r.isDate(e) && r.isDate(t) ? e.getTime() === t.getTime() : r.isRegExp(e) && r.isRegExp(t) ? e.source === t.source && e.global === t.global && e.multiline === t.multiline && e.lastIndex === t.lastIndex && e.ignoreCase === t.ignoreCase : !r.isObject(e) && !r.isObject(t) ? e == t : d(e, t) 10365 } 10366 10367 function p(e) { 10368 return Object.prototype.toString.call(e) == "[object Arguments]" 10369 } 10370 10371 function d(e, t) { 10372 if (r.isNullOrUndefined(e) || r.isNullOrUndefined(t)) return !1; 10373 if (e.prototype !== t.prototype) return !1; 10374 if (p(e)) return p(t) ? (e = i.call(e), t = i.call(t), h(e, t)) : !1; 10375 try { 10376 var n = g(e), s = g(t), o, u 10377 } catch (a) { 10378 return !1 10379 } 10380 if (n.length != s.length) return !1; 10381 n.sort(), s.sort(); 10382 for (u = n.length - 1; u >= 0; u--) if (n[u] != s[u]) return !1; 10383 for (u = n.length - 1; u >= 0; u--) { 10384 o = n[u]; 10385 if (!h(e[o], t[o])) return !1 10386 } 10387 return !0 10388 } 10389 10390 function v(e, t) { 10391 return !e || !t ? !1 : Object.prototype.toString.call(t) == "[object RegExp]" ? t.test(e) : e instanceof t ? !0 : t.call({}, e) === !0 ? !0 : !1 10392 } 10393 10394 function m(e, t, n, i) { 10395 var s; 10396 r.isString(n) && (i = n, n = null); 10397 try { 10398 t() 10399 } catch (o) { 10400 s = o 10401 } 10402 i = (n && n.name ? " (" + n.name + ")." : ".") + (i ? " " + i : "."), e && !s && l(s, n, "Missing expected exception" + i), !e && v(s, n) && l(s, n, "Got unwanted exception" + i); 10403 if (e && s && n && !v(s, n) || !e && s) throw s 10404 } 10405 10406 var r = e("util/"), i = Array.prototype.slice, s = Object.prototype.hasOwnProperty, o = t.exports = c; 10407 o.AssertionError = function (t) { 10408 this.name = "AssertionError", this.actual = t.actual, this.expected = t.expected, this.operator = t.operator, t.message ? (this.message = t.message, this.generatedMessage = !1) : (this.message = f(this), this.generatedMessage = !0); 10409 var n = t.stackStartFunction || l; 10410 if (Error.captureStackTrace) Error.captureStackTrace(this, n); else { 10411 var r = new Error; 10412 if (r.stack) { 10413 var i = r.stack, s = n.name, o = i.indexOf("\n" + s); 10414 if (o >= 0) { 10415 var u = i.indexOf("\n", o + 1); 10416 i = i.substring(u + 1) 10417 } 10418 this.stack = i 10419 } 10420 } 10421 }, r.inherits(o.AssertionError, Error), o.fail = l, o.ok = c, o.equal = function (t, n, r) { 10422 t != n && l(t, n, r, "==", o.equal) 10423 }, o.notEqual = function (t, n, r) { 10424 t == n && l(t, n, r, "!=", o.notEqual) 10425 }, o.deepEqual = function (t, n, r) { 10426 h(t, n) || l(t, n, r, "deepEqual", o.deepEqual) 10427 }, o.notDeepEqual = function (t, n, r) { 10428 h(t, n) && l(t, n, r, "notDeepEqual", o.notDeepEqual) 10429 }, o.strictEqual = function (t, n, r) { 10430 t !== n && l(t, n, r, "===", o.strictEqual) 10431 }
10431, o.notStrictEqual = function (t, n, r) { 10432 t === n && l(t, n, r, "!==", o.notStrictEqual) 10433 }, o.throws = function (e, t, n) { 10434 m.apply(this, [!0].concat(i.call(arguments))) 10435 }, o.doesNotThrow = function (e, t) { 10436 m.apply(this, [!1].concat(i.call(arguments))) 10437 }, o.ifError = function (e) { 10438 if (e) throw e 10439 }; 10440 var g = Object.keys || function (e) { 10441 var t = []; 10442 for (var n in e) s.call(e, n) && t.push(n); 10443 return t 10444 } 10445 }, {"util/": 15}], 14: [function (e, t, n) { 10446 t.exports = function (t) { 10447 return t && typeof t == "object" && typeof t.copy == "function" && typeof t.fill == "function" && typeof t.readUInt8 == "function" 10448 } 10449 }, {}], 15: [function (e, t, n) { 10450 (function (t, r) { 10451 function u(e, t) { 10452 var r = {seen: [], stylize: f}; 10453 return arguments.length >= 3 && (r.depth = arguments[2]), arguments.length >= 4 && (r.colors = arguments[3]), y(t) ? r.showHidden = t : t && n._extend(r, t), T(r.showHidden) && (r.showHidden = !1), T(r.depth) && (r.depth = 2), T(r.colors) && (r.colors = !1), T(r.customInspect) && (r.customInspect = !0), r.colors && (r.stylize = a), c(r, e, r.depth) 10454 } 10455 10456 function a(e, t) { 10457 var n = u.styles[t]; 10458 return n ? "�[" + u.colors[n][0] + "m" + e + "�[" + u.colors[n][1] + "m" : e 10459 } 10460 10461 function f(e, t) { 10462 return e 10463 } 10464 10465 function l(e) { 10466 var t = {}; 10467 return e.forEach(function (e, n) { 10468 t[e] = !0 10469 }), t 10470 } 10471 10472 function c(e, t, r) { 10473 if (e.customInspect && t && A(t.inspect) && t.inspect !== n.inspect && (!t.constructor || t.constructor.prototype !== t)) { 10474 var i = t.inspect(r, e); 10475 return S(i) || (i = c(e, i, r)), i 10476 } 10477 var s = h(e, t); 10478 if (s) return s; 10479 var o = Object.keys(t), u = l(o); 10480 e.showHidden && (o = Object.getOwnPropertyNames(t)); 10481 if (L(t) && (o.indexOf("message") >= 0 || o.indexOf("description") >= 0)) return p(t); 10482 if (o.length === 0) { 10483 if (A(t)) { 10484 var a = t.name ? ": " + t.name : ""; 10485 return e.stylize("[Function" + a + "]", "special") 10486 } 10487 if (N(t)) return e.stylize(RegExp.prototype.toString.call(t), "regexp"); 10488 if (k(t)) return e.stylize(Date.prototype.toString.call(t), "date"); 10489 if (L(t)) return p(t) 10490 } 10491 var f = "", y = !1, b = ["{", "}"]; 10492 g(t) && (y = !0, b = ["[", "]"]); 10493 if (A(t)) { 10494 var w = t.name ? ": " + t.name : ""; 10495 f = " [Function" + w + "]" 10496 } 10497 N(t) && (f = " " + RegExp.prototype.toString.call(t)), k(t) && (f = " " + Date.prototype.toUTCString.call(t)), L(t) && (f = " " + p(t)); 10498 if (o.length !== 0 || !!y && t.length != 0) { 10499 if (r < 0) return N(t) ? e.stylize(RegExp.prototype.toString.call(t), "regexp") : e.stylize("[Object]", "special"); 10500 e.seen.push(t); 10501 var E; 10502 return y ? E = d(e, t, r, u, o) : E = o.map(function (n) { 10503 return v(e, t, r, u, n, y) 10504 }), e.seen.pop(), m(E, f, b) 10505 } 10506 return b[0] + f + b[1] 10507 } 10508 10509 function h(e, t) { 10510 if (T(t)) return e.stylize("undefined", "undefined"); 10511 if (S(t)) { 10512 var n = "'" + JSON.stringify(t).replace(/^"|"$/g, "").replace(/'/g, "\\'").replace(/\\"/g, '"') + "'"; 10513 return e.stylize(n, "string") 10514 } 10515 if (E(t)) return e.stylize("" + t, "number"); 10516 if (y(t)) return e.stylize("" + t, "boolean"); 10517 if (b(t)) return e.stylize("null", "null") 10518 } 10519 10520 function p(e) { 10521 return "[" + Error.prototype.toString.call(e) + "]" 10522 } 10523 10524 function d(e, t, n, r, i) { 10525 var s = []; 10526 for (var o = 0, u = t.length; o < u; ++o) H(t, String(o)) ? s.push(v(e, t, n, r, String(o), !0)) : s.push("");
10527 return i.forEach(function (i) { 10528 i.match(/^\d+$/) || s.push(v(e, t, n, r, i, !0)) 10529 }), s 10530 } 10531 10532 function v(e, t, n, r, i, s) { 10533 var o, u, a; 10534 a = Object.getOwnPropertyDescriptor(t, i) || {value: t[i]}, a.get ? a.set ? u = e.stylize("[Getter/Setter]", "special") : u = e.stylize("[Getter]", "special") : a.set && (u = e.stylize("[Setter]", "special")), H(r, i) || (o = "[" + i + "]"), u || (e.seen.indexOf(a.value) < 0 ? (b(n) ? u = c(e, a.value, null) : u = c(e, a.value, n - 1), u.indexOf("\n") > -1 && (s ? u = u.split("\n").map(function (e) { 10535 return " " + e 10536 }).join("\n").substr(2) : u = "\n" + u.split("\n").map(function (e) { 10537 return " " + e 10538 }).join("\n"))) : u = e.stylize("[Circular]", "special")); 10539 if (T(o)) { 10540 if (s && i.match(/^\d+$/)) return u; 10541 o = JSON.stringify("" + i), o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/) ? (o = o.substr(1, o.length - 2), o = e.stylize(o, "name")) : (o = o.replace(/'/g, "\\'").replace(/\\"/g, '"').replace(/(^"|"$)/g, "'"), o = e.stylize(o, "string")) 10542 } 10543 return o + ": " + u 10544 } 10545 10546 function m(e, t, n) { 10547 var r = 0, i = e.reduce(function (e, t) { 10548 return r++, t.indexOf("\n") >= 0 && r++, e + t.replace(/\u001b\[\d\d?m/g, "").length + 1 10549 }, 0); 10550 return i > 60 ? n[0] + (t === "" ? "" : t + "\n ") + " " + e.join(",\n ") + " " + n[1] : n[0] + t + " " + e.join(", ") + " " + n[1] 10551 } 10552 10553 function g(e) { 10554 return Array.isArray(e) 10555 } 10556 10557 function y(e) { 10558 return typeof e == "boolean" 10559 } 10560 10561 function b(e) { 10562 return e === null 10563 } 10564 10565 function w(e) { 10566 return e == null 10567 } 10568 10569 function E(e) { 10570 return typeof e == "number" 10571 } 10572 10573 function S(e) { 10574 return typeof e == "string" 10575 } 10576 10577 function x(e) { 10578 return typeof e == "symbol" 10579 } 10580 10581 function T(e) { 10582 return e === void 0 10583 } 10584 10585 function N(e) { 10586 return C(e) && M(e) === "[object RegExp]" 10587 } 10588 10589 function C(e) { 10590 return typeof e == "object" && e !== null 10591 } 10592 10593 function k(e) { 10594 return C(e) && M(e) === "[object Date]" 10595 } 10596 10597 function L(e) { 10598 return C(e) && (M(e) === "[object Error]" || e instanceof Error) 10599 } 10600 10601 function A(e) { 10602 return typeof e == "function" 10603 } 10604 10605 function O(e) { 10606 return e === null || typeof e == "boolean" || typeof e == "number" || typeof e == "string" || typeof e == "symbol" || typeof e == "undefined" 10607 } 10608 10609 function M(e) { 10610 return Object.prototype.toString.call(e) 10611 } 10612 10613 function _(e) { 10614 return e < 10 ? "0" + e.toString(10) : e.toString(10) 10615 } 10616 10617 function P() { 10618 var e = new Date, t = [_(e.getHours()), _(e.getMinutes()), _(e.getSeconds())].join(":"); 10619 return [e.getDate(), D[e.getMonth()], t].join(" ") 10620 } 10621 10622 function H(e, t) { 10623 return Object.prototype.hasOwnProperty.call(e, t) 10624 } 10625 10626 var i = /%[sdj%]/g; 10627 n.format = function (e) { 10628 if (!S(e)) { 10629 var t = []; 10630 for (var n = 0; n < arguments.length; n++) t.push(u(arguments[n])); 10631 return t.join(" ") 10632 } 10633 var n = 1, r = arguments, s = r.length, o = String(e).replace(i, function (e) { 10634 if (e === "%%") return "%"; 10635 if (n >= s) return e; 10636 switch (e) { 10637 case"%s": 10638 return String(r[n++]); 10639 case"%d": 10640 return Number(r[n++]); 10641 case"%j": 10642 try { 10643 return JSON.stringify(r[n++]) 10644 } catch (t) { 10645 return "[Circular]" 10646 } 10647 ; 10648 default: 10649 return e 10650 } 10651 }); 10652 for (var a = r[n]; n < s; a = r[++n]) b(a) || !C(a) ? o += " " + a : o += " " + u(a); 10653 return o 10654 }, n.deprecate = function (e, i) { 10655 function o() { 10656 if (!s) { 10657 if (t.throwDeprecation) throw new Error(i);
10658 t.traceDeprecation ? console.trace(i) : console.error(i), s = !0 10659 } 10660 return e.apply(this, arguments) 10661 } 10662 10663 if (T(r.process)) return function () { 10664 return n.deprecate(e, i).apply(this, arguments) 10665 }; 10666 if (t.noDeprecation === !0) return e; 10667 var s = !1; 10668 return o 10669 }; 10670 var s = {}, o; 10671 n.debuglog = function (e) { 10672 T(o) && (o = t.env.NODE_DEBUG || ""), e = e.toUpperCase(); 10673 if (!s[e]) if ((new RegExp("\\b" + e + "\\b", "i")).test(o)) { 10674 var r = t.pid; 10675 s[e] = function () { 10676 var t = n.format.apply(n, arguments); 10677 console.error("%s %d: %s", e, r, t) 10678 } 10679 } else s[e] = function () { 10680 }; 10681 return s[e] 10682 }, n.inspect = u, u.colors = { 10683 bold: [1, 22], 10684 italic: [3, 23], 10685 underline: [4, 24], 10686 inverse: [7, 27], 10687 white: [37, 39], 10688 grey: [90, 39], 10689 black: [30, 39], 10690 blue: [34, 39], 10691 cyan: [36, 39], 10692 green: [32, 39], 10693 magenta: [35, 39], 10694 red: [31, 39], 10695 yellow: [33, 39] 10696 }, u.styles = { 10697 special: "cyan", 10698 number: "yellow", 10699 "boolean": "yellow", 10700 "undefined": "grey", 10701 "null": "bold", 10702 string: "green", 10703 date: "magenta", 10704 regexp: "red" 10705 }, n.isArray = g, n.isBoolean = y, n.isNull = b, n.isNullOrUndefined = w, n.isNumber = E, n.isString = S, n.isSymbol = x, n.isUndefined = T, n.isRegExp = N, n.isObject = C, n.isDate = k, n.isError = L, n.isFunction = A, n.isPrimitive = O, n.isBuffer = e("./support/isBuffer"); 10706 var D = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; 10707 n.log = function () { 10708 console.log("%s - %s", P(), n.format.apply(n, arguments)) 10709 }, n.inherits = e("inherits"), n._extend = function (e, t) { 10710 if (!t || !C(t)) return e; 10711 var n = Object.keys(t), r = n.length; 10712 while (r--) e[n[r]] = t[n[r]]; 10713 return e 10714 } 10715 }).call(this, e("/usr/local/lib/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js"), typeof self != "undefined" ? self : typeof window != "undefined" ? window : {}) 10716 }, { 10717 "./support/isBuffer": 14, 10718 "/usr/local/lib/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js": 18, 10719 inherits: 17 10720 }], 16: [function (e, t, n) { 10721 function r() { 10722 this._events = this._events || {}, this._maxListeners = this._maxListeners || undefined 10723 } 10724 10725 function i(e) { 10726 return typeof e == "function" 10727 } 10728 10729 function s(e) { 10730 return typeof e == "number" 10731 } 10732 10733 function o(e) { 10734 return typeof e == "object" && e !== null 10735 } 10736 10737 function u(e) { 10738 return e === void 0 10739 } 10740 10741 t.exports = r, r.EventEmitter = r, r.prototype._events = undefined, r.prototype._maxListeners = undefined, r.defaultMaxListeners = 10, r.prototype.setMaxListeners = function (e) { 10742 if (!s(e) || e < 0 || isNaN(e)) throw TypeError("n must be a positive number"); 10743 return this._maxListeners = e, this 10744 }, r.prototype.emit = function (e) { 10745 var t, n, r, s, a, f; 10746 this._events || (this._events = {}); 10747 if (e === "error") if (!this._events.error || o(this._events.error) && !this._events.error.length) throw t = arguments[1], t instanceof Error ? t : TypeError('Uncaught, unspecified "error" event.'); 10748 n = this._events[e]; 10749 if (u(n)) return !1; 10750 if (i(n)) switch (arguments.length) { 10751 case 1: 10752 n.call(this); 10753 break; 10754 case 2: 10755 n.call(this, arguments[1]); 10756 break; 10757 case 3: 10758 n.call(this, arguments[1], arguments[2]); 10759 break; 10760 default: 10761 r = arguments.length, s = new Array(r - 1); 10762 for (a = 1; a < r; a++) s[a - 1] = arguments[a]; 10763 n.apply(this, s) 10764 } else if (o(n)) { 10765 r = arguments.length, s = new Array(r - 1); 10766 for (a = 1; a < r; a++) s[a - 1] = arguments[a]; 10767 f = n.slice(), r = f.length; 10768 for (a = 0; a < r; a++) f[a].apply(this, s) 10769 } 10770 return !0 10771 }, r.prototype.addListener = function (e, t) { 10772 var n; 10773 if (!i(t)) throw TypeError("listener must be a function"); 10774 this._events || (this._events = {}
10774), this._events.newListener && this.emit("newListener", e, i(t.listener) ? t.listener : t), this._events[e] ? o(this._events[e]) ? this._events[e].push(t) : this._events[e] = [this._events[e], t] : this._events[e] = t; 10775 if (o(this._events[e]) && !this._events[e].warned) { 10776 var n; 10777 u(this._maxListeners) ? n = r.defaultMaxListeners : n = this._maxListeners, n && n > 0 && this._events[e].length > n && (this._events[e].warned = !0, console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.", this._events[e].length), console.trace()) 10778 } 10779 return this 10780 }, r.prototype.on = r.prototype.addListener, r.prototype.once = function (e, t) { 10781 function r() { 10782 this.removeListener(e, r), n || (n = !0, t.apply(this, arguments)) 10783 } 10784 10785 if (!i(t)) throw TypeError("listener must be a function"); 10786 var n = !1; 10787 return r.listener = t, this.on(e, r), this 10788 }, r.prototype.removeListener = function (e, t) { 10789 var n, r, s, u; 10790 if (!i(t)) throw TypeError("listener must be a function"); 10791 if (!this._events || !this._events[e]) return this; 10792 n = this._events[e], s = n.length, r = -1; 10793 if (n === t || i(n.listener) && n.listener === t) delete this._events[e], this._events.removeListener && this.emit("removeListener", e, t); else if (o(n)) { 10794 for (u = s; u-- > 0;) if (n[u] === t || n[u].listener && n[u].listener === t) { 10795 r = u; 10796 break 10797 } 10798 if (r < 0) return this; 10799 n.length === 1 ? (n.length = 0, delete this._events[e]) : n.splice(r, 1), this._events.removeListener && this.emit("removeListener", e, t) 10800 } 10801 return this 10802 }, r.prototype.removeAllListeners = function (e) { 10803 var t, n; 10804 if (!this._events) return this; 10805 if (!this._events.removeListener) return arguments.length === 0 ? this._events = {} : this._events[e] && delete this._events[e], this; 10806 if (arguments.length === 0) { 10807 for (t in this._events) { 10808 if (t === "removeListener") continue; 10809 this.removeAllListeners(t) 10810 } 10811 return this.removeAllListeners("removeListener"), this._events = {}, this 10812 } 10813 n = this._events[e]; 10814 if (i(n)) this.removeListener(e, n); else while (n.length) this.removeListener(e, n[n.length - 1]); 10815 return delete this._events[e], this 10816 }, r.prototype.listeners = function (e) { 10817 var t; 10818 return !this._events || !this._events[e] ? t = [] : i(this._events[e]) ? t = [this._events[e]] : t = this._events[e].slice(), t 10819 }, r.listenerCount = function (e, t) { 10820 var n; 10821 return !e._events || !e._events[t] ? n = 0 : i(e._events[t]) ? n = 1 : n = e._events[t].length, n 10822 } 10823 }, {}], 17: [function (e, t, n) { 10824 typeof Object.create == "function" ? t.exports = function (t, n) { 10825 t.super_ = n, t.prototype = Object.create(n.prototype, { 10826 constructor: { 10827 value: t, 10828 enumerable: !1, 10829 writable: !0, 10830 configurable: !0 10831 } 10832 }) 10833 } : t.exports = function (t, n) { 10834 t.super_ = n; 10835 var r = function () { 10836 }; 10837 r.prototype = n.prototype, t.prototype = new r, t.prototype.constructor = t 10838 } 10839 }, {}], 18: [function (e, t, n) { 10840 function i() { 10841 } 10842 10843 var r = t.exports = {}; 10844 r.nextTick = function () { 10845 var e = typeof window != "undefined" && window.setImmediate, 10846 t = typeof window != "undefined" && window.postMessage && window.addEventListener; 10847 if (e) return function (e) { 10848 return window.setImmediate(e) 10849 }; 10850 if (t) { 10851 var n = []; 10852 return window.addEventListener("message", function (e) { 10853 var t = e.source; 10854 if ((t === window || t === null) && e.data === "process-tick") { 10855 e.stopPropagation(); 10856 if (n.length > 0) { 10857 var r = n.shift(); 10858 r() 10859 } 10860 } 10861 }, !0), function (t) { 10862 n.push(t), window.postMessage("process-tick", "*") 10863 } 10864 } 10865 return function (t) { 10866 setTimeout(t, 0) 10867 } 10868 }(), r.title = "browser", r.browser = !0, r.env = {}, r.argv = [], r.on = i, r.once = i, r.off = i, r.emit = i, r.binding = function (e) { 10869 throw new Error("process.binding is not supported") 10870 }, r.cwd = function () { 10871 return "/" 10872 }, r.chdir = function (e) { 10873 throw new Error("process.chdir is not supported") 10874 } 10875 }, {}], 19: [function (e, t, n) { 10876 t.exports = e(14) 10877 }, {}], 20: [function (e, t, n) { 10878 t.exports = e(15) 10879 }, { 10880 "./support/isBuffer": 19, 10881 "/usr/local/lib/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js": 18, 10882 inherits: 17 10883 }] 10884 }, {}, [9])(9) 10885}), define("ace/mode/html_worker", [], function (e, t, n) { 10886 "use strict"; 10887 var r = e("../lib/oop"), i = e("../lib/lang"), s = e("../wor
10887ker/mirror").Mirror, 10888 o = e("./html/saxparser").SAXParser, u = { 10889 "expected-doctype-but-got-start-tag": "info", 10890 "expected-doctype-but-got-chars": "info", 10891 "non-html-root": "info" 10892 }, a = t.Worker = function (e) { 10893 s.call(this, e), this.setTimeout(400), this.context = null 10894 }; 10895 r.inherits(a, s), function () { 10896 this.setOptions = function (e) { 10897 this.context = e.context 10898 }, this.onUpdate = function () { 10899 var e = this.doc.getValue(); 10900 if (!e) return; 10901 var t = new o, n = [], r = function () { 10902 }; 10903 t.contentHandler = { 10904 startDocument: r, 10905 endDocument: r, 10906 startElement: r, 10907 endElement: r, 10908 characters: r 10909 }, t.errorHandler = { 10910 error: function (e, t, r) { 10911 n.push({row: t.line, column: t.column, text: e, type: u[r] || "error"}) 10912 } 10913 }, this.context ? t.parseFragment(e, this.context) : t.parse(e), this.sender.emit("error", n) 10914 } 10915 }.call(a.prototype) 10916}), define("ace/lib/es5-shim", [], function (e, t, n) { 10917 function r() { 10918 } 10919 10920 function w(e) { 10921 try { 10922 return Object.defineProperty(e, "sentinel", {}), "sentinel" in e 10923 } catch (t) { 10924 } 10925 } 10926 10927 function H(e) { 10928 return e = +e, e !== e ? e = 0 : e !== 0 && e !== 1 / 0 && e !== -1 / 0 && (e = (e > 0 || -1) * Math.floor(Math.abs(e))), e 10929 } 10930 10931 function B(e) { 10932 var t = typeof e; 10933 return e === null || t === "undefined" || t === "boolean" || t === "number" || t === "string" 10934 } 10935 10936 function j(e) { 10937 var t, n, r; 10938 if (B(e)) return e; 10939 n = e.valueOf; 10940 if (typeof n == "function") { 10941 t = n.call(e); 10942 if (B(t)) return t 10943 } 10944 r = e.toString; 10945 if (typeof r == "function") { 10946 t = r.call(e); 10947 if (B(t)) return t 10948 } 10949 throw new TypeError 10950 } 10951 10952 Function.prototype.bind || (Function.prototype.bind = function (t) { 10953 var n = this; 10954 if (typeof n != "function") throw new TypeError("Function.prototype.bind called on incompatible " + n); 10955 var i = u.call(arguments, 1), s = function () { 10956 if (this instanceof s) { 10957 var e = n.apply(this, i.concat(u.call(arguments))); 10958 return Object(e) === e ? e : this 10959 } 10960 return n.apply(t, i.concat(u.call(arguments))) 10961 }; 10962 return n.prototype && (r.prototype = n.prototype, s.prototype = new r, r.prototype = null), s 10963 }); 10964 var i = Function.prototype.call, s = Array.prototype, o = Object.prototype, u = s.slice, a = i.bind(o.toString), 10965 f = i.bind(o.hasOwnProperty), l, c, h, p, d; 10966 if (d = f(o, "__defineGetter__")) l = i.bind(o.__defineGetter__), c = i.bind(o.__defineSetter__), h = i.bind(o.__lookupGetter__), p = i.bind(o.__lookupSetter__); 10967 if ([1, 2].splice(0).length != 2) if (!function () { 10968 function e(e) { 10969 var t = new Array(e + 2); 10970 return t[0] = t[1] = 0, t 10971 } 10972 10973 var t = [], n; 10974 t.splice.apply(t, e(20)), t.splice.apply(t, e(26)), n = t.length, t.splice(5, 0, "XXX"), n + 1 == t.length; 10975 if (n + 1 == t.length) return !0 10976 }()) Array.prototype.splice = function (e, t) { 10977 var n = this.length; 10978 e > 0 ? e > n && (e = n) : e == void 0 ? e = 0 : e < 0 && (e = Math.max(n + e, 0)), e + t < n || (t = n - e); 10979 var r = this.slice(e, e + t), i = u.call(arguments, 2), s = i.length; 10980 if (e === n) s && this.push.apply(this, i); else { 10981 var o = Math.min(t, n - e), a = e + o, f = a + s - o, l = n - a, c = n - o; 10982 if (f < a) for (var h = 0; h < l; ++h) this[f + h] = this[a + h]; else if (f > a) for (h = l; h--;) this[f + h] = this[a + h]; 10983 if (s && e === c) this.length = c, this.push.apply(this, i); else { 10984 this.length = c + s; 10985 for (h = 0; h < s; ++h) this[e + h] = i[h] 10986 } 10987 } 10988 return r 10989 }; else { 10990 var v = Array.prototype.splice; 10991 Array.prototype.splice = function (e, t) { 10992 return arguments.length ? v.apply(this, [e === void 0 ? 0 : e, t === void 0 ? this.length - e : t].concat(u.call(arguments, 2))) : [] 10993 } 10994 } 10995 Array.isArray || (Array.isArray = function (t) { 10996 return a(t) == "[object Array]" 10997 }); 10998 var m = Object("a"), g = m[0] != "a" || !(0 in m); 10999 Array.prototype.forEach || (Array.prototype.forEach = function (t) { 11000 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = arguments[1], s = -1, 11001 o = r.length >>> 0; 11002 if (a(t) != "[object Function]") throw new TypeError; 11003 while (++s < o) s in r && t.call(i, r[s], s, n) 11004 }), Array.prototype.map || (Array.prototype.map = function (t) { 11005 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = Array(i), 11006 o = arguments[1]; 11007 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11008 for (var u = 0; u < i; u++) u in r && (s[u] = t.call(o, r[u], u, n)); 11009 return s 11010 }), Array.prototype.filter || (Array.prototype.filter = function (t) { 11011 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = [], o, 11012 u = arguments[1]; 11013 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11014 for (var f = 0; f < i; f++) f in r && (o = r[f], t.call(u, o, f, n) && s.push(o)); 11015 return s 11016 }), Array.prototype.every || (Array.prototype.every = function (t) { 11017 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 11018 s = arguments[1]; 11019 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11020 for (var o = 0; o < i; o++) if (o in r && !t.call(s, r[o], o, n)) return !1; 11021 return !0 11022 }), Array.prototype.some || (Array.prototype.some = function (t) { 11023 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 11024 s = arguments[1]; 11025 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11026 for (var o = 0; o < i; o++) if (o in r && t.call(s, r[o], o, n)) return !0; 11027 return !1 11028 }), Array.prototype.reduce || (Array.prototype.reduce = function (t) { 11029 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 11030 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11031 if (!i && arguments.length == 1) throw new TypeError("reduce of empty array with
11031no initial value"); 11032 var s = 0, o; 11033 if (arguments.length >= 2) o = arguments[1]; else do { 11034 if (s in r) { 11035 o = r[s++]; 11036 break 11037 } 11038 if (++s >= i) throw new TypeError("reduce of empty array with no initial value") 11039 } while (!0); 11040 for (; s < i; s++) s in r && (o = t.call(void 0, o, r[s], s, n)); 11041 return o 11042 }), Array.prototype.reduceRight || (Array.prototype.reduceRight = function (t) { 11043 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 11044 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11045 if (!i && arguments.length == 1) throw new TypeError("reduceRight of empty array with no initial value"); 11046 var s, o = i - 1; 11047 if (arguments.length >= 2) s = arguments[1]; else do { 11048 if (o in r) { 11049 s = r[o--]; 11050 break 11051 } 11052 if (--o < 0) throw new TypeError("reduceRight of empty array with no initial value") 11053 } while (!0); 11054 do o in this && (s = t.call(void 0, s, r[o], o, n)); while (o--); 11055 return s 11056 }); 11057 if (!Array.prototype.indexOf || [0, 1].indexOf(1, 2) != -1) Array.prototype.indexOf = function (t) { 11058 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 11059 if (!r) return -1; 11060 var i = 0; 11061 arguments.length > 1 && (i = H(arguments[1])), i = i >= 0 ? i : Math.max(0, r + i); 11062 for (; i < r; i++) if (i in n && n[i] === t) return i; 11063 return -1 11064 }; 11065 if (!Array.prototype.lastIndexOf || [0, 1].lastIndexOf(0, -3) != -1) Array.prototype.lastIndexOf = function (t) { 11066 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 11067 if (!r) return -1; 11068 var i = r - 1; 11069 arguments.length > 1 && (i = Math.min(i, H(arguments[1]))), i = i >= 0 ? i : r - Math.abs(i); 11070 for (; i >= 0; i--) if (i in n && t === n[i]) return i; 11071 return -1 11072 }; 11073 Object.getPrototypeOf || (Object.getPrototypeOf = function (t) { 11074 return t.__proto__ || (t.constructor ? t.constructor.prototype : o) 11075 }); 11076 if (!Object.getOwnPropertyDescriptor) { 11077 var y = "Object.getOwnPropertyDescriptor called on a non-object: "; 11078 Object.getOwnPropertyDescriptor = function (t, n) { 11079 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(y + t); 11080 if (!f(t, n)) return; 11081 var r, i, s; 11082 r = {enumerable: !0, configurable: !0}; 11083 if (d) { 11084 var u = t.__proto__; 11085 t.__proto__ = o; 11086 var i = h(t, n), s = p(t, n); 11087 t.__proto__ = u; 11088 if (i || s) return i && (r.get = i), s && (r.set = s), r 11089 } 11090 return r.value = t[n], r 11091 } 11092 } 11093 Object.getOwnPropertyNames || (Object.getOwnPropertyNames = function (t) { 11094 return Object.keys(t) 11095 }); 11096 if (!Object.create) { 11097 var b; 11098 Object.prototype.__proto__ === null ? b = function () { 11099 return {__proto__: null} 11100 } : b = function () { 11101 var e = {}; 11102 for (var t in e) e[t] = null; 11103 return e.constructor = e.hasOwnProperty = e.propertyIsEnumerable = e.isPrototypeOf = e.toLocaleString = e.toString = e.valueOf = e.__proto__ = null, e 11104 }, Object.create = function (t, n) { 11105 var r; 11106 if (t === null) r = b(); else { 11107 if (typeof t != "object") throw new TypeError("typeof prototype[" + typeof t + "] != 'object'"); 11108 var i = function () { 11109 }; 11110 i.prototype = t, r = new i, r.__proto__ = t 11111 } 11112 return n !== void 0 && Object.defineProperties(r, n), r 11113 } 11114 } 11115 if (Object.defineProperty) { 11116 var E = w({}), S = typeof document == "undefined" || w(document.createElement("div")); 11117 if (!E || !S) var x = Object.defineProperty 11118 } 11119 if (!Object.defineProperty || x) { 11120 var T = "Property description must be an object: ", N = "Object.defineProperty called on non-object: ", 11121 C = "getters & setters can not be defined on this javascript engine"; 11122 Object.defineProperty = function (t, n, r) { 11123 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(N + t); 11124 if (typeof r != "object" && typeof r != "function" || r === null) throw new TypeError(T + r); 11125 if (x) try { 11126 return x.call(Object, t, n, r) 11127 } catch (i) { 11128 } 11129 if (f(r, "value")) if (d && (h(t, n) || p(t, n))) { 11130 var s = t.__proto__; 11131 t.__proto__ = o, delete t[n], t[n] = r.value, t.__proto__ = s 11132 } else t[n] = r.value; else { 11133 if (!d) throw new TypeError(C); 11134 f(r, "get") && l(t, n, r.get), f(r, "set") && c(t, n, r.set) 11135 } 11136 return t 11137 } 11138 } 11139 Object.defineProperties || (Object.defineProperties = function (t, n) { 11140 for (var r in n) f(n, r) && Object.defineProperty(t, r, n[r]); 11141 return t 11142 }), Object.seal || (Object.seal = function (t) { 11143 return t 11144 }), Object.freeze || (Object.freeze = function (t) { 11145 return t 11146 }); 11147 try { 11148 Object.freeze(function () { 11149 }) 11150 } catch (k) { 11151 Object.freeze = function (t) { 11152 return function (n) { 11153 return typeof n == "function" ? n : t(n) 11154 } 11155 }(Object.freeze) 11156 } 11157 Object.preventExtensions || (Object.preventExtensions = function (t) { 11158 return t 11159 }), Object.isSealed || (Object.isSealed = function (t) { 11160 return !1 11161 }), Object.isFrozen || (Object.isFrozen = function (t) { 11162 return !1 11163 }), Object.isExtensible || (Object.isExtensible = function (t) { 11164 if (Object(t) === t) throw new TypeError; 11165 var n = ""; 11166 while (f(t, n)) n += "?"; 11167 t[n] = !0; 11168 var r = f(t, n); 11169 return delete t[n], r 11170 }); 11171 if (!Object.keys) { 11172 var L = !0,
11173 A = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], 11174 O = A.length; 11175 for (var M in {toString: null}) L = !1; 11176 Object.keys = function I(e) { 11177 if (typeof e != "object" && typeof e != "function" || e === null) throw new TypeError("Object.keys called on a non-object"); 11178 var I = []; 11179 for (var t in e) f(e, t) && I.push(t); 11180 if (L) for (var n = 0, r = O; n < r; n++) { 11181 var i = A[n]; 11182 f(e, i) && I.push(i) 11183 } 11184 return I 11185 } 11186 } 11187 Date.now || (Date.now = function () { 11188 return (new Date).getTime() 11189 }); 11190 var _ = " \n\x0b\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"; 11191 if (!String.prototype.trim || _.trim()) { 11192 _ = "[" + _ + "]"; 11193 var D = new RegExp("^" + _ + _ + "*"), P = new RegExp(_ + _ + "*$"); 11194 String.prototype.trim = function () { 11195 return String(this).replace(D, "").replace(P, "") 11196 } 11197 } 11198 var F = function (e) { 11199 if (e == null) throw new TypeError("can't convert " + e + " to object"); 11200 return Object(e) 11201 } 11202}) 11203 11204"no use strict"; 11205(function (e) { 11206 function t(e, t) { 11207 var n = e, r = ""; 11208 while (n) { 11209 var i = t[n]; 11210 if (typeof i == "string") return i + r; 11211 if (i) return i.location.replace(/\/*$/, "/") + (r || i.main || i.name); 11212 if (i === !1) return ""; 11213 var s = n.lastIndexOf("/"); 11214 if (s === -1) break; 11215 r = n.substr(s) + r, n = n.slice(0, s) 11216 } 11217 return e 11218 } 11219 11220 if (typeof e.window != "undefined" && e.document) return; 11221 if (e.require && e.define) return; 11222 e.console || (e.console = function () { 11223 var e = Array.prototype.slice.call(arguments, 0); 11224 postMessage({type: "log", data: e}) 11225 }, e.console.error = e.console.warn = e.console.log = e.console.trace = e.console), e.window = e, e.ace = e, e.onerror = function (e, t, n, r, i) { 11226 postMessage({type: "error", data: {message: e, data: i.data, file: t, line: n, col: r, stack: i.stack}}) 11227 }, e.normalizeModule = function (t, n) { 11228 if (n.indexOf("!") !== -1) { 11229 var r = n.split("!"); 11230 return e.normalizeModule(t, r[0]) + "!" + e.normalizeModule(t, r[1]) 11231 } 11232 if (n.charAt(0) == ".") { 11233 var i = t.split("/").slice(0, -1).join("/"); 11234 n = (i ? i + "/" : "") + n; 11235 while (n.indexOf(".") !== -1 && s != n) { 11236 var s = n; 11237 n = n.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "") 11238 } 11239 } 11240 return n 11241 }, e.require = function (r, i) { 11242 i || (i = r, r = null); 11243 if (!i.charAt) throw new Error("worker.js require() accepts only (parentId, id) as arguments"); 11244 i = e.normalizeModule(r, i); 11245 var s = e.require.modules[i]; 11246 if (s) return s.initialized || (s.initialized = !0, s.exports = s.factory().exports), s.exports; 11247 if (!e.require.tlns) return console.log("unable to load " + i); 11248 var o = t(i, e.require.tlns); 11249 return o.slice(-3) != ".js" && (o += ".js"), e.require.id = i, e.require.modules[i] = {}, importScripts(o), e.require(r, i) 11250 }, e.require.modules = {}, e.require.tlns = {}, e.define = function (t, n, r) { 11251 arguments.length == 2 ? (r = n, typeof t != "string" && (n = t, t = e.require.id)) : arguments.length == 1 && (r = t, n = [], t = e.require.id); 11252 if (typeof r != "function") { 11253 e.require.modules[t] = {exports: r, initialized: !0}; 11254 return 11255 } 11256 n.length || (n = ["require", "exports", "module"]); 11257 var i = function (n) { 11258 return e.require(t, n) 11259 }; 11260 e.require.modules[t] = { 11261 exports: {}, factory: function () { 11262 var e = this, t = r.apply(this, n.map(function (t) { 11263 switch (t) { 11264 case"require": 11265 return i; 11266 case"exports": 11267 return e.exports; 11268 case"module": 11269 return e; 11270 default: 11271 return i(t) 11272 } 11273 })); 11274 return t && (e.exports = t), e 11275 } 11276 } 11277 }, e.define.amd = {}, require.tlns = {}, e.initBaseUrls = function (t) { 11278 for (var n in t) require.tlns[n] = t[n] 11279 }, e.initSender = function () { 11280 var n = e.require("ace/lib/event_emitter").EventEmitter, r = e.require("ace/lib/oop"), i = function () { 11281 }; 11282 return function () { 11283 r.implement(this, n), this.callback = function (e, t) { 11284 postMessage({type: "call", id: t, data: e}) 11285 }, this.emit = function (e, t) { 11286 postMessage({type: "event", name: e, data: t}) 11287 } 11288 }.call(i.prototype), new i 11289 }; 11290 var n = e.main = null, r = e.sender = null; 11291 e.onmessage = function (t) { 11292 var i = t.data; 11293 if (i.event && r) r._signal(i.event, i.data); else if (i.command) if (n[i.command]) n[i.command].apply(n, i.args); else { 11294 if (!e[i.command]) throw new Error("Unknown command:" + i.command); 11295 e[i.command].apply(e, i.args) 11296 } else if (i.init) { 11297 e.initBaseUrls(i.tlns), require("ace/lib/es5-shim"), r = e.sender = e.initSender(); 11298 var s = require(i.module)[i.classname]; 11299 n = e.main = new s(r) 11300 } 11301 } 11302})(this), define("ace/lib/oop", ["require", "exports", "module"], function (e, t, n) { 11303 "use strict"; 11304 t.inherits = function (e, t) { 11305 e.super_ = t, e.prototype = Object.create(t.prototype, { 11306 constructor: { 11307 value: e, 11308 enumerable: !1, 11309 writable: !0, 11310 configurable: !0 11311 } 11312 }) 11313 }, t.mixin = function (e, t) { 11314 for (var n in t) e[n] = t[n]; 11315 return e 11316 }, t.implement = function (e, n) { 11317 t.mixin(e, n) 11318 } 11319}), define("ace/range", ["require", "exports", "module"], function (e, t, n) { 11320 "use strict"; 11321 var r = function (e, t) { 11322 return e.row - t.row || e.column - t.column 11323 }, i = function (e, t, n, r) { 11324 this.start = {row: e, column: t}, this.end = {row: n, column: r} 11325 }; 11326 (function () { 11327 this.isEqual = function (e) { 11328 return this.start.row === e.start.row && this.end.row
11328=== e.end.row && this.start.column === e.start.column && this.end.column === e.end.column 11329 }, this.toString = function () { 11330 return "Range: [" + this.start.row + "/" + this.start.column + "] -> [" + this.end.row + "/" + this.end.column + "]" 11331 }, this.contains = function (e, t) { 11332 return this.compare(e, t) == 0 11333 }, this.compareRange = function (e) { 11334 var t, n = e.end, r = e.start; 11335 return t = this.compare(n.row, n.column), t == 1 ? (t = this.compare(r.row, r.column), t == 1 ? 2 : t == 0 ? 1 : 0) : t == -1 ? -2 : (t = this.compare(r.row, r.column), t == -1 ? -1 : t == 1 ? 42 : 0) 11336 }, this.comparePoint = function (e) { 11337 return this.compare(e.row, e.column) 11338 }, this.containsRange = function (e) { 11339 return this.comparePoint(e.start) == 0 && this.comparePoint(e.end) == 0 11340 }, this.intersects = function (e) { 11341 var t = this.compareRange(e); 11342 return t == -1 || t == 0 || t == 1 11343 }, this.isEnd = function (e, t) { 11344 return this.end.row == e && this.end.column == t 11345 }, this.isStart = function (e, t) { 11346 return this.start.row == e && this.start.column == t 11347 }, this.setStart = function (e, t) { 11348 typeof e == "object" ? (this.start.column = e.column, this.start.row = e.row) : (this.start.row = e, this.start.column = t) 11349 }, this.setEnd = function (e, t) { 11350 typeof e == "object" ? (this.end.column = e.column, this.end.row = e.row) : (this.end.row = e, this.end.column = t) 11351 }, this.inside = function (e, t) { 11352 return this.compare(e, t) == 0 ? this.isEnd(e, t) || this.isStart(e, t) ? !1 : !0 : !1 11353 }, this.insideStart = function (e, t) { 11354 return this.compare(e, t) == 0 ? this.isEnd(e, t) ? !1 : !0 : !1 11355 }, this.insideEnd = function (e, t) { 11356 return this.compare(e, t) == 0 ? this.isStart(e, t) ? !1 : !0 : !1 11357 }, this.compare = function (e, t) { 11358 return !this.isMultiLine() && e === this.start.row ? t < this.start.column ? -1 : t > this.end.column ? 1 : 0 : e < this.start.row ? -1 : e > this.end.row ? 1 : this.start.row === e ? t >= this.start.column ? 0 : -1 : this.end.row === e ? t <= this.end.column ? 0 : 1 : 0 11359 }, this.compareStart = function (e, t) { 11360 return this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 11361 }, this.compareEnd = function (e, t) { 11362 return this.end.row == e && this.end.column == t ? 1 : this.compare(e, t) 11363 }, this.compareInside = function (e, t) { 11364 return this.end.row == e && this.end.column == t ? 1 : this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 11365 }, this.clipRows = function (e, t) { 11366 if (this.end.row > t) var n = {row: t + 1, column: 0}; else if (this.end.row < e) var n = { 11367 row: e, 11368 column: 0 11369 }; 11370 if (this.start.row > t) var r = {row: t + 1, column: 0}; else if (this.start.row < e) var r = { 11371 row: e, 11372 column: 0 11373 }; 11374 return i.fromPoints(r || this.start, n || this.end) 11375 }, this.extend = function (e, t) { 11376 var n = this.compare(e, t); 11377 if (n == 0) return this; 11378 if (n == -1) var r = {row: e, column: t}; else var s = {row: e, column: t}; 11379 return i.fromPoints(r || this.start, s || this.end) 11380 }, this.isEmpty = function () { 11381 return this.start.row === this.end.row && this.start.column === this.end.column 11382 }, this.isMultiLine = function () { 11383 return this.start.row !== this.end.row 11384 }, this.clone = function () { 11385 return i.fromPoints(this.start, this.end) 11386 }, this.collapseRows = function () { 11387 return this.end.column == 0 ? new i(this.start.row, 0, Math.max(this.start.row, this.end.row - 1), 0) : new i(this.start.row, 0, this.end.row, 0) 11388 }, this.toScreenRange = function (e) { 11389 var t = e.documentToScreenPosition(this.start), n = e.documentToScreenPosition(this.end); 11390 return new i(t.row, t.column, n.row, n.column) 11391 }, this.moveBy = function (e, t) { 11392 this.start.row += e, this.start.column += t, this.end.row += e, this.end.column += t 11393 } 11394 }).call(i.prototype), i.fromPoints = function (e, t) { 11395 return new i(e.row, e.column, t.row, t.column) 11396 }, i.comparePoints = r, i.comparePoints = function (e, t) { 11397 return e.row - t.row || e.column - t.column 11398 }, t.Range = i 11399}), define("ace/apply_delta", ["require", "exports", "module"], function (e, t, n) { 11400 "use strict"; 11401 11402 function r(e, t) { 11403 throw console.log("Invalid Delta:", e), "Invalid Delta: " + t 11404 } 11405 11406 function i(e, t) { 11407 return t.row >= 0 && t.row < e.length && t.column >= 0 && t.column <= e[t.row].length 11408 } 11409 11410 function s(e, t) { 11411 t.action != "insert" && t.action != "remove" && r(t, "delta.action must be 'insert' or 'remove'"), t.lines instanceof Array || r(t, "delta.lines must be an Array"), (!t.start || !t.end) && r(t, "delta.start/end must be an present"); 11412 var n = t.start; 11413 i(e, t.start) || r(t, "delta.start must be contained in document"); 11414 var s = t.end; 11415 t.action == "remove" && !i(e, s) && r(t, "delta.end must contained in document for 'remove' actions"); 11416 var o = s.row - n.row, u = s.column - (o == 0 ? n.column : 0); 11417 (o != t.lines.length - 1 || t.lines[o].length != u) && r(t, "delta.range must match delta lines") 11418 } 11419 11420 t.applyDelta = function (e, t, n) { 11421 var r = t.start.row, i = t.start.column, s = e[r] || ""; 11422 switch (t.action) { 11423 case"insert": 11424 var o = t.lines; 11425 if (o.length === 1) e[r] = s.substring(0, i) + t.lines[0] + s.substring(i); else {
11426 var u = [r, 1].concat(t.lines); 11427 e.splice.apply(e, u), e[r] = s.substring(0, i) + e[r], e[r + t.lines.length - 1] += s.substring(i) 11428 } 11429 break; 11430 case"remove": 11431 var a = t.end.column, f = t.end.row; 11432 r === f ? e[r] = s.substring(0, i) + s.substring(a) : e.splice(r, f - r + 1, s.substring(0, i) + e[f].substring(a)) 11433 } 11434 } 11435}), define("ace/lib/event_emitter", ["require", "exports", "module"], function (e, t, n) { 11436 "use strict"; 11437 var r = {}, i = function () { 11438 this.propagationStopped = !0 11439 }, s = function () { 11440 this.defaultPrevented = !0 11441 }; 11442 r._emit = r._dispatchEvent = function (e, t) { 11443 this._eventRegistry || (this._eventRegistry = {}), this._defaultHandlers || (this._defaultHandlers = {}); 11444 var n = this._eventRegistry[e] || [], r = this._defaultHandlers[e]; 11445 if (!n.length && !r) return; 11446 if (typeof t != "object" || !t) t = {}; 11447 t.type || (t.type = e), t.stopPropagation || (t.stopPropagation = i), t.preventDefault || (t.preventDefault = s), n = n.slice(); 11448 for (var o = 0; o < n.length; o++) { 11449 n[o](t, this); 11450 if (t.propagationStopped) break 11451 } 11452 if (r && !t.defaultPrevented) return r(t, this) 11453 }, r._signal = function (e, t) { 11454 var n = (this._eventRegistry || {})[e]; 11455 if (!n) return; 11456 n = n.slice(); 11457 for (var r = 0; r < n.length; r++) n[r](t, this) 11458 }, r.once = function (e, t) { 11459 var n = this; 11460 t && this.addEventListener(e, function r() { 11461 n.removeEventListener(e, r), t.apply(null, arguments) 11462 }) 11463 }, r.setDefaultHandler = function (e, t) { 11464 var n = this._defaultHandlers; 11465 n || (n = this._defaultHandlers = {_disabled_: {}}); 11466 if (n[e]) { 11467 var r = n[e], i = n._disabled_[e]; 11468 i || (n._disabled_[e] = i = []), i.push(r); 11469 var s = i.indexOf(t); 11470 s != -1 && i.splice(s, 1) 11471 } 11472 n[e] = t 11473 }, r.removeDefaultHandler = function (e, t) { 11474 var n = this._defaultHandlers; 11475 if (!n) return; 11476 var r = n._disabled_[e]; 11477 if (n[e] == t) { 11478 var i = n[e]; 11479 r && this.setDefaultHandler(e, r.pop()) 11480 } else if (r) { 11481 var s = r.indexOf(t); 11482 s != -1 && r.splice(s, 1) 11483 } 11484 }, r.on = r.addEventListener = function (e, t, n) { 11485 this._eventRegistry = this._eventRegistry || {}; 11486 var r = this._eventRegistry[e]; 11487 return r || (r = this._eventRegistry[e] = []), r.indexOf(t) == -1 && r[n ? "unshift" : "push"](t), t 11488 }, r.off = r.removeListener = r.removeEventListener = function (e, t) { 11489 this._eventRegistry = this._eventRegistry || {}; 11490 var n = this._eventRegistry[e]; 11491 if (!n) return; 11492 var r = n.indexOf(t); 11493 r !== -1 && n.splice(r, 1) 11494 }, r.removeAllListeners = function (e) { 11495 this._eventRegistry && (this._eventRegistry[e] = []) 11496 }, t.EventEmitter = r 11497}), define("ace/anchor", ["require", "exports", "module", "ace/lib/oop", "ace/lib/event_emitter"], function (e, t, n) { 11498 "use strict"; 11499 var r = e("./lib/oop"), i = e("./lib/event_emitter").EventEmitter, s = t.Anchor = function (e, t, n) { 11500 this.$onChange = this.onChange.bind(this), this.attach(e), typeof n == "undefined" ? this.setPosition(t.row, t.column) : this.setPosition(t, n) 11501 }; 11502 (function () { 11503 function e(e, t, n) { 11504 var r = n ? e.column <= t.column : e.column < t.column; 11505 return e.row < t.row || e.row == t.row && r 11506 } 11507 11508 function t(t, n, r) { 11509 var i = t.action == "insert", s = (i ? 1 : -1) * (t.end.row - t.start.row), 11510 o = (i ? 1 : -1) * (t.end.column - t.start.column), u = t.start, a = i ? u : t.end; 11511 return e(n, u, r) ? {row: n.row, column: n.column} : e(a, n, !r) ? { 11512 row: n.row + s, 11513 column: n.column + (n.row == a.row ? o : 0) 11514 } : {row: u.row, column: u.column} 11515 } 11516 11517 r.implement(this, i), this.getPosition = function () { 11518 return this.$clipPositionToDocument(this.row, this.column) 11519 }, this.getDocument = function () { 11520 return this.document 11521 }, this.$insertRight = !1, this.onChange = function (e) { 11522 if (e.start.row == e.end.row && e.start.row != this.row) return; 11523 if (e.start.row > this.row) return; 11524 var n = t(e, {row: this.row, column: this.column}, this.$insertRight); 11525 this.setPosition(n.row, n.column, !0) 11526 }, this.setPosition = function (e, t, n) { 11527 var r; 11528 n ? r = {row: e, column: t} : r = this.$clipPositionToDocument(e, t); 11529 if (this.row == r.row && this.column == r.column) return; 11530 var i = {row: this.row, column: this.column}; 11531 this.row = r.row, this.column = r.column, this._signal("change", {old: i, value: r}) 11532 }, this.detach = function () { 11533 this.document.removeEventListener("change", this.$onChange) 11534 }, this.attach = function (e) { 11535 this.document = e || this.document, this.document.on("change", this.$onChange) 11536 }, this.$clipPositionToDocument = function (e, t) { 11537 var n = {}; 11538 return e >= this.document.getLength() ? (n.row = Math.max(0, this.document.getLength() - 1), n.column = this.document.getLine(n.row).length) : e < 0 ? (n.row = 0, n.column = 0) : (n.row = e, n.column = Math.min(this.document.getLine(n.row).length, Math.max(0, t))), t < 0 && (n.column = 0), n 11539 } 11540 }).call(s.prototype) 11541}), define("ace/document", ["require", "exports", "module", "ace/lib/oop", "ace/apply_delta", "ace/lib/event_emitter", "ace/range", "ace/anchor"], function (e, t, n) { 11542 "use strict"; 11543 var r = e("./lib/oop"), i = e("./apply_delta").applyDelta, s = e("./lib/event_emitter").EventEmitter, 11544 o = e("./range").Range, u = e("./anchor").Anchor, a = function (e) { 11545 this.$lines = [""], e.length === 0 ? this.$lines = [""] : Array.isArray(e) ? this.insertMergedLines({ 11546 row: 0, 11547 column: 0 11548 }, e) : this.insert({row: 0, column: 0}, e) 11549 }; 11550 (function () { 11551 r.implement(this, s), this.setValue = function (e) { 11552 var t = this.getLength() - 1; 11553 this.remove(new o(0, 0, t, this.getLine(t).length)), this.insert({row: 0, column: 0}, e) 11554 }, this.getValue = function () { 11555 return this.getAllLines().join(this.getNewLineCharacter()) 11556 }, this.createAnchor = function (e, t) { 11557 return new u(this, e, t) 11558 }, "aaa".split(/a/).length === 0 ? this.$split = function (e) { 11559 return e.replace(/\r\n|\r/g, "\n").split("\n") 11560 } : this.$split = function (e) { 11561 return e.split(/\r\n|\r|\n/) 11562 }, this.$detectNewLine = function (e) { 11563 var t = e.match(/^.*?(\r\n|\r|\n)/m); 11564 this.$autoNewLine = t ? t[1] : "\n", this._signal("changeNewLineMode") 11565 }, this.getNewLineCharacter = function () { 11566 switch (this.$newLineMode) { 11567 case"windows": 11568 return "\r\n"; 11569 case"unix": 11570 return "\n"; 11571 default: 11572 return this.$autoNewLine || "\n" 11573 } 11574 }, this.$autoNewLine = "", this.$newLineMode = "auto", this.setNewLineMode = function (e) { 11575 if (this.$newLineMode === e) return; 11576 this.$newLineMode = e, this._signal("changeNewLineMode") 11577 }, this.getNewLineMode = function () { 11578 return this.$newLineMode 11579 }, this.isNewLine = function (e) { 11580 return e == "\r\n" || e == "\r" || e == "\n" 11581 }, this.getLine = function (e) { 11582 return this.$lines[e] || "" 11583 }, this.getLines = function (e, t) { 11584 return this.$lines.slice(e, t + 1) 11585 }, this.getAllLines = function () { 11586 return this.getLines(0, this.getLength()) 11587 }, this.getLength = function () { 11588 return this.$lines.length 11589 }, this.getTextRange = function (e) { 11590 return this.getLinesForRange(e).join(this.getNewLineCharacter()) 11591 }, this.getLinesForRange = function (e) { 11592 var t; 11593 if (e.start.row === e.end.row) t = [this.getLine(e.start.row).substring(e.start.column, e.end.column)]; else { 11594 t = this.getLines(e.start.row, e.end.row), t[0] = (t[0] || "").substring(e.start.column); 11595 var n = t.length - 1; 11596 e.end.row - e.start.row == n && (t[n] = t[n].substring(0, e.end.column)) 11597 } 11598 return t 11599 }, this.insertLines = function (e, t) { 11600 return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."), this.insertFullLines(e, t) 11601 }, this.removeLines = function (e, t) { 11602 return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."), this.removeFullLines(e, t) 11603 }, this.insertNewLine = function (e) { 11604 return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."), this.insertMergedLines(e, ["", ""]) 11605 }, this.insert = function (e, t) { 11606 return this.getLength() <= 1 && this.$detectNewLine(t), this.insertMergedLines(e, this.$split(t)) 11607 }, this.insertInLine = function (e, t) { 11608 var n = this.clippedPos(e.row, e.column), r = this.pos(e.row, e.column + t.length); 11609 return this.applyDelta({start: n, end: r, action: "insert", lines: [t]}, !0), this.clonePos(r) 11610 }, this.clippedPos = function (e, t) { 11611 var n = this.getLength(); 11612 e === undefined ? e = n : e < 0 ? e = 0 : e >= n && (e = n - 1, t = undefined); 11613 var r = this.getLine(e); 11614 return t == undefined && (t = r.length), t = Math.min(Math.max(t, 0), r.length), {row: e, column: t} 11615 }, this.clonePos = function (e) { 11616 return {row: e.row, column: e.column} 11617 }, this.pos = function (e, t) { 11618 return {row: e, column: t} 11619 }, this.$clipPosition = function (e) { 11620 var t = this.getLength(); 11621 return e.row >= t ? (e.row = Math.max(0, t - 1), e.column = this.getLine(t - 1).length) : (e.row = Math.max(0, e.row), e.column = Math.min(Math.max(e.column, 0), this.getLine(e.row).length)), e 11622 }, this.insertFullLines = function (e, t) { 11623 e = Math.min(Math.max(e, 0), this.getLength()); 11624 var n = 0; 11625 e < this.getLength() ? (t = t.concat([""]), n = 0) : (t = [""].concat(t), e--, n = this.$lines[e].length), this.insertMergedLines({ 11626 row: e, 11627 column: n 11628 }, t) 11629 }, this.insertMergedLines = function (e, t) { 11630 var n = this.clippedPos(e.row, e.column), 11631 r = {row: n.row + t.length - 1, column: (t.length == 1 ? n.column : 0) + t[t.length - 1].length}; 11632 return this.applyDelta({start: n, end: r, action: "insert", lines: t}), this.clonePos(r) 11633 }, this.remove = function (e) { 11634 var t = this.clippedPos(e.start.row, e.start.column), n = this.clippedPos(e.end.row, e.end.column); 11635 return this.applyDelta({ 11636 start: t, 11637 end: n, 11638 action: "remove", 11639 lines: this.getLinesForRange({start: t, end: n}) 11640 }), this.clonePos(t) 11641 }, this.removeInLine = function (e, t, n) { 11642 var r = this.clippedPos(e, t), i = this.clippedPos(e, n); 11643 return this.applyDelta({ 11644 start: r, 11645 end: i, 11646 action: "remove", 11647 lines: this.getLinesForRange({start: r, end: i}) 11648 }, !0), this.clonePos(r) 11649 }, this.removeFullLines = function (e, t) { 11650 e = Math.min(Math.max(0, e), this.getLength() - 1), t = Math.min(Math.max(0, t), this.getLength() - 1); 11651 var n = t == this.getLength() - 1 && e > 0, r = t < this.getLength() - 1, i = n ? e - 1 : e, 11652 s = n ? this.getLine(i).length : 0, u = r ? t + 1 : t, a = r ? 0 : this.getLine(u).length, 11653 f = new o(i, s, u, a), l = this.$lines.slice(e, t + 1); 11654 return this.applyDelta({start: f.start, end: f.end, action: "remove", lines: this.getLinesForRange(f)}), l 11655 }, this.removeNewLine = function (e) { 11656 e < this.getLength() - 1 && e >= 0 && this.applyDelta({ 11657 start: this.pos(e, this.getLine(e).length), 11658 end: this.pos(e + 1, 0), 11659 action: "remove", 11660 lines: ["", ""] 11661 }) 11662 }, this.replace = function (e, t) { 11663 e instanceof o || (e = o.fromPoints(e.start, e.end)); 11664 if (t.length === 0 && e.isEmpty()) return e.start; 11665 if (t == this.getTextRange(e)) return e.end; 11666 this.remove(e); 11667 var n; 11668 return t ? n = this.insert(e.start, t) : n = e.start, n 11669 }, this.applyDeltas = function (e) { 11670 for (var t = 0; t < e.length; t++) this.applyDelta(e[t]) 11671 }, this.revertDeltas = function (e) { 11672 for (var t = e.length - 1; t >= 0; t--) this.revertDelta(e[t]) 11673 }, this.applyDelta = function (e, t) { 11674 var n = e.action == "insert"; 11675 if (n ? e.lines.length <= 1 && !e.lines[0] : !o.comparePoints(e.start, e.end)) return; 11676 n && e.lines.length > 2e4 && this.$splitAndapplyLargeDelta(e, 2e4), i(this.$lines, e, t), this._signal("change", e) 11677 }, this.$splitAndapplyLargeDelta = function (e, t) { 11678 var n = e.lines, r = n.length, i = e.start.row, s = e.start.column, o = 0, u = 0; 11679 do { 11680 o = u, u += t - 1; 11681 var a = n.slice(o, u); 11682 if (u > r) { 11683 e.lines = a, e.start.row = i + o, e.start.column = s; 11684 break 11685 } 11686 a.push(""), this.applyDelta({ 11687 start: this.pos(i + o, s), 11688 end: this.pos(i + u, s = 0), 11689 action: e.action, 11690 lines: a 11691 }, !0) 11692 } while (!0) 11693 }, this.revertDelta = function (e) { 11694 this.applyDelta({ 11695 start: this.clonePos(e.start), 11696 end: this.clonePos(e.end), 11697 action: e.action == "insert" ? "remove" : "insert", 11698 lines: e.lines.slice() 11699 }) 11700 }, this.indexToPosition = function (e, t) { 11701 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length; 11702 for (var i = t || 0, s = n.length; i < s; i++) { 11703 e -= n[i].length + r; 11704 if (e < 0) return {row: i, column: e + n[i].length + r} 11705 } 11706 return {row: s - 1, column: n[s - 1].length} 11707 }, this.positionToIndex = function (e, t) { 11708 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length, i = 0, 11709 s = Math.min(e.row, n.length); 11710 for (var o = t || 0; o < s; ++o) i += n[o].length + r; 11711 return i + e.column 11712 } 11713 }).call(a.prototype), t.Document = a 11714}), define("ace/lib/lang", ["require", "exports", "module"], function (e, t, n) { 11715 "use strict"; 11716 t.last = function (e) { 11717 return e[e.length - 1] 11718 }
11718, t.stringReverse = function (e) { 11719 return e.split("").reverse().join("") 11720 }, t.stringRepeat = function (e, t) { 11721 var n = ""; 11722 while (t > 0) { 11723 t & 1 && (n += e); 11724 if (t >>= 1) e += e 11725 } 11726 return n 11727 }; 11728 var r = /^\s\s*/, i = /\s\s*$/; 11729 t.stringTrimLeft = function (e) { 11730 return e.replace(r, "") 11731 }, t.stringTrimRight = function (e) { 11732 return e.replace(i, "") 11733 }, t.copyObject = function (e) { 11734 var t = {}; 11735 for (var n in e) t[n] = e[n]; 11736 return t 11737 }, t.copyArray = function (e) { 11738 var t = []; 11739 for (var n = 0, r = e.length; n < r; n++) e[n] && typeof e[n] == "object" ? t[n] = this.copyObject(e[n]) : t[n] = e[n]; 11740 return t 11741 }, t.deepCopy = function s(e) { 11742 if (typeof e != "object" || !e) return e; 11743 var t; 11744 if (Array.isArray(e)) { 11745 t = []; 11746 for (var n = 0; n < e.length; n++) t[n] = s(e[n]); 11747 return t 11748 } 11749 if (Object.prototype.toString.call(e) !== "[object Object]") return e; 11750 t = {}; 11751 for (var n in e) t[n] = s(e[n]); 11752 return t 11753 }, t.arrayToMap = function (e) { 11754 var t = {}; 11755 for (var n = 0; n < e.length; n++) t[e[n]] = 1; 11756 return t 11757 }, t.createMap = function (e) { 11758 var t = Object.create(null); 11759 for (var n in e) t[n] = e[n]; 11760 return t 11761 }, t.arrayRemove = function (e, t) { 11762 for (var n = 0; n <= e.length; n++) t === e[n] && e.splice(n, 1) 11763 }, t.escapeRegExp = function (e) { 11764 return e.replace(/([.*+?^${}()|[\]\/\\])/g, "\\$1") 11765 }, t.escapeHTML = function (e) { 11766 return e.replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<") 11767 }, t.getMatchOffsets = function (e, t) { 11768 var n = []; 11769 return e.replace(t, function (e) { 11770 n.push({offset: arguments[arguments.length - 2], length: e.length}) 11771 }), n 11772 }, t.deferredCall = function (e) { 11773 var t = null, n = function () { 11774 t = null, e() 11775 }, r = function (e) { 11776 return r.cancel(), t = setTimeout(n, e || 0), r 11777 }; 11778 return r.schedule = r, r.call = function () { 11779 return this.cancel(), e(), r 11780 }, r.cancel = function () { 11781 return clearTimeout(t), t = null, r 11782 }, r.isPending = function () { 11783 return t 11784 }, r 11785 }, t.delayedCall = function (e, t) { 11786 var n = null, r = function () { 11787 n = null, e() 11788 }, i = function (e) { 11789 n == null && (n = setTimeout(r, e || t)) 11790 }; 11791 return i.delay = function (e) { 11792 n && clearTimeout(n), n = setTimeout(r, e || t) 11793 }, i.schedule = i, i.call = function () { 11794 this.cancel(), e() 11795 }, i.cancel = function () { 11796 n && clearTimeout(n), n = null 11797 }, i.isPending = function () { 11798 return n 11799 }, i 11800 } 11801}), define("ace/worker/mirror", ["require", "exports", "module", "ace/range", "ace/document", "ace/lib/lang"], function (e, t, n) { 11802 "use strict"; 11803 var r = e("../range").Range, i = e("../document").Document, s = e("../lib/lang"), o = t.Mirror = function (e) { 11804 this.sender = e; 11805 var t = this.doc = new i(""), n = this.deferredUpdate = s.delayedCall(this.onUpdate.bind(this)), r = this; 11806 e.on("change", function (e) { 11807 var i = e.data; 11808 if (i[0].start) t.applyDeltas(i); else for (var s = 0; s < i.length; s += 2) { 11809 if (Array.isArray(i[s + 1])) var o = { 11810 action: "insert", 11811 start: i[s], 11812 lines: i[s + 1] 11813 }; else var o = {action: "remove", start: i[s], end: i[s + 1]}; 11814 t.applyDelta(o, !0) 11815 } 11816 if (r.$timeout) return n.schedule(r.$timeout); 11817 r.onUpdate() 11818 }) 11819 }; 11820 (function () { 11821 this.$timeout = 500, this.setTimeout = function (e) { 11822 this.$timeout = e 11823 }, this.setValue = function (e) { 11824 this.doc.setValue(e), this.deferredUpdate.schedule(this.$timeout) 11825 }, this.getValue = function (e) { 11826 this.sender.callback(this.doc.getValue(), e) 11827 }, this.onUpdate = function () { 11828 }, this.isPending = function () { 11829 return this.deferredUpdate.isPending() 11830 } 11831 }).call(o.prototype) 11832}), define("ace/mode/hxl_worker", ["require", "exports", "module", "ace/lib/oop", "ace/worker/mirror"], function (e, t, n) { 11833 "use strict";
11834 var r = e("../lib/oop"), i = e("../worker/mirror").Mirror, s = t.HxlWorker = function (e) { 11835 i.call(this, e), this.setTimeout(250), this.setOptions() 11836 }; 11837 r.inherits(s, i), function () { 11838 this.setOptions = function (e) { 11839 this.options = e || { 11840 host: "http://localhost:8080", 11841 project: "hyperix/ide/", 11842 service: "codeValidation", 11843 parameter: "sourceCode" 11844 }, this.doc.getValue() && this.deferredUpdate.schedule(100) 11845 }, this.changeOptions = function (e) { 11846 r.mixin(this.options, e), this.doc.getValue() && this.deferredUpdate.schedule(100) 11847 }, this.onUpdate = function () { 11848 var e = this, t = this.doc.getValue(), n = [], r = new XMLHttpRequest; 11849 r.onreadystatechange = function () { 11850 if (r.readyState == 4 && r.status == 200) { 11851 n = r.response; 11852 var t = []; 11853 for (var i = 0; n != null && i < n.length; i++) { 11854 var s = n[i]; 11855 t.push({row: s.line - 1, column: s.column, text: atob(s.message), type: s.type}) 11856 } 11857 e.sender.emit("lint", t) 11858 } 11859 }; 11860 var i = new FormData; 11861 i.append(this.options.project + "/" + this.options.service + "/" + this.options.parameter, t), r.open("POST", this.options.host + "/" + this.options.project + "/" + this.options.service, !0), r.responseType = "json", r.send(i) 11862 } 11863 }.call(s.prototype) 11864}), define("ace/lib/es5-shim", ["require", "exports", "module"], function (e, t, n) { 11865 function r() { 11866 } 11867 11868 function w(e) { 11869 try { 11870 return Object.defineProperty(e, "sentinel", {}), "sentinel" in e 11871 } catch (t) { 11872 } 11873 } 11874 11875 function H(e) { 11876 return e = +e, e !== e ? e = 0 : e !== 0 && e !== 1 / 0 && e !== -1 / 0 && (e = (e > 0 || -1) * Math.floor(Math.abs(e))), e 11877 } 11878 11879 function B(e) { 11880 var t = typeof e; 11881 return e === null || t === "undefined" || t === "boolean" || t === "number" || t === "string" 11882 } 11883 11884 function j(e) { 11885 var t, n, r; 11886 if (B(e)) return e; 11887 n = e.valueOf; 11888 if (typeof n == "function") { 11889 t = n.call(e); 11890 if (B(t)) return t 11891 } 11892 r = e.toString; 11893 if (typeof r == "function") { 11894 t = r.call(e); 11895 if (B(t)) return t 11896 } 11897 throw new TypeError 11898 } 11899 11900 Function.prototype.bind || (Function.prototype.bind = function (t) { 11901 var n = this; 11902 if (typeof n != "function") throw new TypeError("Function.prototype.bind called on incompatible " + n); 11903 var i = u.call(arguments, 1), s = function () { 11904 if (this instanceof s) { 11905 var e = n.apply(this, i.concat(u.call(arguments))); 11906 return Object(e) === e ? e : this 11907 } 11908 return n.apply(t, i.concat(u.call(arguments))) 11909 }; 11910 return n.prototype && (r.prototype = n.prototype, s.prototype = new r, r.prototype = null), s 11911 }); 11912 var i = Function.prototype.call, s = Array.prototype, o = Object.prototype, u = s.slice, a = i.bind(o.toString), 11913 f = i.bind(o.hasOwnProperty), l, c, h, p, d; 11914 if (d = f(o, "__defineGetter__")) l = i.bind(o.__defineGetter__), c = i.bind(o.__defineSetter__), h = i.bind(o.__lookupGetter__), p = i.bind(o.__lookupSetter__); 11915 if ([1, 2].splice(0).length != 2) if (!function () { 11916 function e(e) { 11917 var t = new Array(e + 2); 11918 return t[0] = t[1] = 0, t 11919 } 11920 11921 var t = [], n; 11922 t.splice.apply(t, e(20)), t.splice.apply(t, e(26)), n = t.length, t.splice(5, 0, "XXX"), n + 1 == t.length; 11923 if (n + 1 == t.length) return !0 11924 }()) Array.prototype.splice = function (e, t) { 11925 var n = this.length; 11926 e > 0 ? e > n && (e = n) : e == void 0 ? e = 0 : e < 0 && (e = Math.max(n + e, 0)), e + t < n || (t = n - e); 11927 var r = this.slice(e, e + t), i = u.call(arguments, 2), s = i.length; 11928 if (e === n) s && this.push.apply(this, i); else { 11929 var o = Math.min(t, n - e), a = e + o, f = a + s - o, l = n - a, c = n - o; 11930 if (f < a) for (var h = 0; h < l; ++h) this[f + h] = this[a + h]; else if (f > a) for (h = l; h--;) this[f + h] = this[a + h]; 11931 if (s && e === c) this.length = c, this.push.apply(this, i); else { 11932 this.length = c + s; 11933 for (h = 0; h < s; ++h) this[e + h] = i[h] 11934 } 11935 } 11936 return r 11937 }; else { 11938 var v = Array.prototype.splice; 11939 Array.prototype.splice = function (e, t) { 11940 return arguments.length ? v.apply(this, [e === void 0 ? 0 : e, t === void 0 ? this.length - e : t].concat(u.call(arguments, 2))) : [] 11941 } 11942 } 11943 Array.isArray || (Array.isArray = function (t) { 11944 return a(t) == "[object Array]" 11945 });
11946 var m = Object("a"), g = m[0] != "a" || !(0 in m); 11947 Array.prototype.forEach || (Array.prototype.forEach = function (t) { 11948 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = arguments[1], s = -1, 11949 o = r.length >>> 0; 11950 if (a(t) != "[object Function]") throw new TypeError; 11951 while (++s < o) s in r && t.call(i, r[s], s, n) 11952 }), Array.prototype.map || (Array.prototype.map = function (t) { 11953 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = Array(i), 11954 o = arguments[1]; 11955 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11956 for (var u = 0; u < i; u++) u in r && (s[u] = t.call(o, r[u], u, n)); 11957 return s 11958 }), Array.prototype.filter || (Array.prototype.filter = function (t) { 11959 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = [], o, 11960 u = arguments[1]; 11961 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11962 for (var f = 0; f < i; f++) f in r && (o = r[f], t.call(u, o, f, n) && s.push(o)); 11963 return s 11964 }), Array.prototype.every || (Array.prototype.every = function (t) { 11965 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 11966 s = arguments[1]; 11967 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11968 for (var o = 0; o < i; o++) if (o in r && !t.call(s, r[o], o, n)) return !1; 11969 return !0 11970 }), Array.prototype.some || (Array.prototype.some = function (t) { 11971 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 11972 s = arguments[1]; 11973 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11974 for (var o = 0; o < i; o++) if (o in r && t.call(s, r[o], o, n)) return !0; 11975 return !1 11976 }), Array.prototype.reduce || (Array.prototype.reduce = function (t) { 11977 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 11978 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11979 if (!i && arguments.length == 1) throw new TypeError("reduce of empty array with no initial value"); 11980 var s = 0, o; 11981 if (arguments.length >= 2) o = arguments[1]; else do { 11982 if (s in r) { 11983 o = r[s++]; 11984 break 11985 } 11986 if (++s >= i) throw new TypeError("reduce of empty array with no initial value") 11987 } while (!0); 11988 for (; s < i; s++) s in r && (o = t.call(void 0, o, r[s], s, n)); 11989 return o 11990 }), Array.prototype.reduceRight || (Array.prototype.reduceRight = function (t) { 11991 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 11992 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 11993 if (!i && arguments.length == 1) throw new TypeError("reduceRight of empty array with no initial value"); 11994 var s, o = i - 1; 11995 if (arguments.length >= 2) s = arguments[1]; else do { 11996 if (o in r) { 11997 s = r[o--]; 11998 break 11999 } 12000 if (--o < 0) throw new TypeError("reduceRight of empty array with no initial value") 12001 } while (!0); 12002 do o in this && (s = t.call(void 0, s, r[o], o, n)); while (o--); 12003 return s 12004 }); 12005 if (!Array.prototype.indexOf || [0, 1].indexOf(1, 2) != -1) Array.prototype.indexOf = function (t) { 12006 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 12007 if (!r) return -1; 12008 var i = 0; 12009 arguments.length > 1 && (i = H(arguments[1])), i = i >= 0 ? i : Math.max(0, r + i); 12010 for (; i < r; i++) if (i in n && n[i] === t) return i; 12011 return -1 12012 }; 12013 if (!Array.prototype.lastIndexOf || [0, 1].lastIndexOf(0, -3) != -1) Array.prototype.lastIndexOf = function (t) { 12014 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 12015 if (!r) return -1; 12016 var i = r - 1; 12017 arguments.length > 1 && (i = Math.min(i, H(arguments[1]))), i = i >= 0 ? i : r - Math.abs(i); 12018 for (; i >= 0; i--) if (i in n && t === n[i]) return i; 12019 return -1 12020 }; 12021 Object.getPrototypeOf || (Object.getPrototypeOf = function (t) { 12022 return t.__proto__ || (t.constructor ? t.constructor.prototype : o) 12023 });
12024 if (!Object.getOwnPropertyDescriptor) { 12025 var y = "Object.getOwnPropertyDescriptor called on a non-object: "; 12026 Object.getOwnPropertyDescriptor = function (t, n) { 12027 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(y + t); 12028 if (!f(t, n)) return; 12029 var r, i, s; 12030 r = {enumerable: !0, configurable: !0}; 12031 if (d) { 12032 var u = t.__proto__; 12033 t.__proto__ = o; 12034 var i = h(t, n), s = p(t, n); 12035 t.__proto__ = u; 12036 if (i || s) return i && (r.get = i), s && (r.set = s), r 12037 } 12038 return r.value = t[n], r 12039 } 12040 } 12041 Object.getOwnPropertyNames || (Object.getOwnPropertyNames = function (t) { 12042 return Object.keys(t) 12043 }); 12044 if (!Object.create) { 12045 var b; 12046 Object.prototype.__proto__ === null ? b = function () { 12047 return {__proto__: null} 12048 } : b = function () { 12049 var e = {}; 12050 for (var t in e) e[t] = null; 12051 return e.constructor = e.hasOwnProperty = e.propertyIsEnumerable = e.isPrototypeOf = e.toLocaleString = e.toString = e.valueOf = e.__proto__ = null, e 12052 }, Object.create = function (t, n) { 12053 var r; 12054 if (t === null) r = b(); else { 12055 if (typeof t != "object") throw new TypeError("typeof prototype[" + typeof t + "] != 'object'"); 12056 var i = function () { 12057 }; 12058 i.prototype = t, r = new i, r.__proto__ = t 12059 } 12060 return n !== void 0 && Object.defineProperties(r, n), r 12061 } 12062 } 12063 if (Object.defineProperty) { 12064 var E = w({}), S = typeof document == "undefined" || w(document.createElement("div")); 12065 if (!E || !S) var x = Object.defineProperty 12066 } 12067 if (!Object.defineProperty || x) { 12068 var T = "Property description must be an object: ", N = "Object.defineProperty called on non-object: ", 12069 C = "getters & setters can not be defined on this javascript engine"; 12070 Object.defineProperty = function (t, n, r) { 12071 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(N + t); 12072 if (typeof r != "object" && typeof r != "function" || r === null) throw new TypeError(T + r); 12073 if (x) try { 12074 return x.call(Object, t, n, r) 12075 } catch (i) { 12076 } 12077 if (f(r, "value")) if (d && (h(t, n) || p(t, n))) { 12078 var s = t.__proto__; 12079 t.__proto__ = o, delete t[n], t[n] = r.value, t.__proto__ = s 12080 } else t[n] = r.value; else { 12081 if (!d) throw new TypeError(C);
12082 f(r, "get") && l(t, n, r.get), f(r, "set") && c(t, n, r.set) 12083 } 12084 return t 12085 } 12086 } 12087 Object.defineProperties || (Object.defineProperties = function (t, n) { 12088 for (var r in n) f(n, r) && Object.defineProperty(t, r, n[r]); 12089 return t 12090 }), Object.seal || (Object.seal = function (t) { 12091 return t 12092 }), Object.freeze || (Object.freeze = function (t) { 12093 return t 12094 }); 12095 try { 12096 Object.freeze(function () { 12097 }) 12098 } catch (k) { 12099 Object.freeze = function (t) { 12100 return function (n) { 12101 return typeof n == "function" ? n : t(n) 12102 } 12103 }(Object.freeze) 12104 } 12105 Object.preventExtensions || (Object.preventExtensions = function (t) { 12106 return t 12107 }), Object.isSealed || (Object.isSealed = function (t) { 12108 return !1 12109 }), Object.isFrozen || (Object.isFrozen = function (t) { 12110 return !1 12111 }), Object.isExtensible || (Object.isExtensible = function (t) { 12112 if (Object(t) === t) throw new TypeError; 12113 var n = ""; 12114 while (f(t, n)) n += "?"; 12115 t[n] = !0; 12116 var r = f(t, n); 12117 return delete t[n], r 12118 }); 12119 if (!Object.keys) { 12120 var L = !0, 12121 A = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], 12122 O = A.length; 12123 for (var M in {toString: null}) L = !1; 12124 Object.keys = function I(e) { 12125 if (typeof e != "object" && typeof e != "function" || e === null) throw new TypeError("Object.keys called on a non-object"); 12126 var I = []; 12127 for (var t in e) f(e, t) && I.push(t); 12128 if (L) for (var n = 0, r = O; n < r; n++) { 12129 var i = A[n]; 12130 f(e, i) && I.push(i) 12131 } 12132 return I 12133 } 12134 } 12135 Date.now || (Date.now = function () { 12136 return (new Date).getTime() 12137 }); 12138 var _ = " \n�\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"; 12139 if (!String.prototype.trim || _.trim()) { 12140 _ = "[" + _ + "]"; 12141 var D = new RegExp("^" + _ + _ + "*"), P = new RegExp(_ + _ + "*$"); 12142 String.prototype.trim = function () { 12143 return String(this).replace(D, "").replace(P, "") 12144 } 12145 } 12146 var F = function (e) { 12147 if (e == null) throw new TypeError("can't convert " + e + " to object"); 12148 return Object(e) 12149 } 12150}) 12151 12152"no use strict"; 12153!function (e) { 12154 function t(e, t) { 12155 var n = e, r = ""; 12156 while (n) { 12157 var i = t[n]; 12158 if (typeof i == "string") return i + r; 12159 if (i) return i.location.replace(/\/*$/, "/") + (r || i.main || i.name); 12160 if (i === !1) return ""; 12161 var s = n.lastIndexOf("/"); 12162 if (s === -1) break; 12163 r = n.substr(s) + r, n = n.slice(0, s) 12164 } 12165 return e 12166 } 12167 12168 if (typeof e.window != "undefined" && e.document) return; 12169 if (e.require && e.define) return; 12170 e.console || (e.console = function () { 12171 var e = Array.prototype.slice.call(arguments, 0); 12172 postMessage({type: "log", data: e}) 12173 }, e.console.error = e.console.warn = e.console.log = e.console.trace = e.console), e.window = e, e.ace = e, e.onerror = function (e, t, n, r, i) { 12174 postMessage({type: "error", data: {message: e, data: i.data, file: t, line: n, col: r, stack: i.stack}}) 12175 }, e.normalizeModule = function (t, n) { 12176 if (n.indexOf("!") !== -1) { 12177 var r = n.split("!"); 12178 return e.normalizeModule(t, r[0]) + "!" + e.normalizeModule(t, r[1]) 12179 } 12180 if (n.charAt(0) == ".") { 12181 var i = t.split("/").slice(0, -1).join("/"); 12182 n = (i ? i + "/" : "") + n; 12183 while (n.indexOf(".") !== -1 && s != n) { 12184 var s = n; 12185 n = n.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "") 12186 } 12187 } 12188 return n 12189 }, e.require = function (r, i) { 12190 i || (i = r, r = null); 12191 if (!i.charAt) throw new Error("worker.js require() accepts only (parentId, id) as arguments"); 12192 i = e.normalizeModule(r, i); 12193 var s = e.require.modules[i]; 12194 if (s) return s.initialized || (s.initialized = !0, s.exports = s.factory().exports
12194), s.exports; 12195 if (!e.require.tlns) return console.log("unable to load " + i); 12196 var o = t(i, e.require.tlns); 12197 return o.slice(-3) != ".js" && (o += ".js"), e.require.id = i, e.require.modules[i] = {}, importScripts(o), e.require(r, i) 12198 }, e.require.modules = {}, e.require.tlns = {}, e.define = function (t, n, r) { 12199 arguments.length == 2 ? (r = n, typeof t != "string" && (n = t, t = e.require.id)) : arguments.length == 1 && (r = t, n = [], t = e.require.id); 12200 if (typeof r != "function") { 12201 e.require.modules[t] = {exports: r, initialized: !0}; 12202 return 12203 } 12204 n.length || (n = ["require", "exports", "module"]); 12205 var i = function (n) { 12206 return e.require(t, n) 12207 }; 12208 e.require.modules[t] = { 12209 exports: {}, factory: function () { 12210 var e = this, t = r.apply(this, n.slice(0, r.length).map(function (t) { 12211 switch (t) { 12212 case"require": 12213 return i; 12214 case"exports": 12215 return e.exports; 12216 case"module": 12217 return e; 12218 default: 12219 return i(t) 12220 } 12221 })); 12222 return t && (e.exports = t), e 12223 } 12224 } 12225 }, e.define.amd = {}, require.tlns = {}, e.initBaseUrls = function (t) { 12226 for (var n in t) require.tlns[n] = t[n] 12227 }, e.initSender = function () { 12228 var n = e.require("ace/lib/event_emitter").EventEmitter, r = e.require("ace/lib/oop"), i = function () { 12229 }; 12230 return function () { 12231 r.implement(this, n), this.callback = function (e, t) { 12232 postMessage({type: "call", id: t, data: e}) 12233 }, this.emit = function (e, t) { 12234 postMessage({type: "event", name: e, data: t}) 12235 } 12236 }.call(i.prototype), new i 12237 }; 12238 var n = e.main = null, r = e.sender = null; 12239 e.onmessage = function (t) { 12240 var i = t.data; 12241 if (i.event && r) r._signal(i.event, i.data); else if (i.command) if (n[i.command]) n[i.command].apply(n, i.args); else { 12242 if (!e[i.command]) throw new Error("Unknown command:" + i.command); 12243 e[i.command].apply(e, i.args) 12244 } else if (i.init) { 12245 e.initBaseUrls(i.tlns), require("ace/lib/es5-shim"), r = e.sender = e.initSender(); 12246 var s = require(i.module)[i.classname]; 12247 n = e.main = new s(r) 12248 } 12249 } 12250}(this), define("ace/lib/oop", [], function (e, t, n) { 12251 "use strict"; 12252 t.inherits = function (e, t) { 12253 e.super_ = t, e.prototype = Object.create(t.prototype, { 12254 constructor: { 12255 value: e, 12256 enumerable: !1, 12257 writable: !0, 12258 configurable: !0 12259 } 12260 }) 12261 }, t.mixin = function (e, t) { 12262 for (var n in t) e[n] = t[n]; 12263 return e 12264 }, t.implement = function (e, n) { 12265 t.mixin(e, n) 12266 } 12267}), define("ace/range", [], function (e, t, n) { 12268 "use strict"; 12269 var r = function (e, t) { 12270 return e.row - t.row || e.column - t.column 12271 }, i = function (e, t, n, r) { 12272 this.start = {row: e, column: t}, this.end = {row: n, column: r} 12273 }; 12274 (function () { 12275 this.isEqual = function (e) { 12276 return this.start.row === e.start.row && this.end.row === e.end.row && this.start.column === e.start.column && this.end.column === e.end.column 12277 }, this.toString = function () { 12278 return "Range: [" + this.start.row + "/" + this.start.column + "] -> [" + this.end.row + "/" + this.end.column + "]" 12279 }, this.contains = function (e, t) { 12280 return this.compare(e, t) == 0 12281 }, this.compareRange = function (e) { 12282 var t, n = e.end, r = e.start; 12283 return t = this.compare(n.row, n.column), t == 1 ? (t = this.compare(r.row, r.column), t == 1 ? 2 : t == 0 ? 1 : 0) : t == -1 ? -2 : (t = this.compare(r.row, r.column), t == -1 ? -1 : t == 1 ? 42 : 0) 12284 }, this.comparePoint = function (e) { 12285 return this.compare(e.row, e.column) 12286 }, this.containsRange = function (e) { 12287 return this.comparePoint(e.start) == 0 && this.comparePoint(e.end) == 0 12288 }, this.intersects = function (e) { 12289 var t = this.compareRange(e); 12290 return t == -1 || t == 0 || t == 1 12291 }, this.isEnd = function (e, t) {
12292 return this.end.row == e && this.end.column == t 12293 }, this.isStart = function (e, t) { 12294 return this.start.row == e && this.start.column == t 12295 }, this.setStart = function (e, t) { 12296 typeof e == "object" ? (this.start.column = e.column, this.start.row = e.row) : (this.start.row = e, this.start.column = t) 12297 }, this.setEnd = function (e, t) { 12298 typeof e == "object" ? (this.end.column = e.column, this.end.row = e.row) : (this.end.row = e, this.end.column = t) 12299 }, this.inside = function (e, t) { 12300 return this.compare(e, t) == 0 ? this.isEnd(e, t) || this.isStart(e, t) ? !1 : !0 : !1 12301 }, this.insideStart = function (e, t) { 12302 return this.compare(e, t) == 0 ? this.isEnd(e, t) ? !1 : !0 : !1 12303 }, this.insideEnd = function (e, t) { 12304 return this.compare(e, t) == 0 ? this.isStart(e, t) ? !1 : !0 : !1 12305 }, this.compare = function (e, t) { 12306 return !this.isMultiLine() && e === this.start.row ? t < this.start.column ? -1 : t > this.end.column ? 1 : 0 : e < this.start.row ? -1 : e > this.end.row ? 1 : this.start.row === e ? t >= this.start.column ? 0 : -1 : this.end.row === e ? t <= this.end.column ? 0 : 1 : 0 12307 }, this.compareStart = function (e, t) { 12308 return this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 12309 }, this.compareEnd = function (e, t) { 12310 return this.end.row == e && this.end.column == t ? 1 : this.compare(e, t) 12311 }, this.compareInside = function (e, t) { 12312 return this.end.row == e && this.end.column == t ? 1 : this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 12313 }, this.clipRows = function (e, t) { 12314 if (this.end.row > t) var n = {row: t + 1, column: 0}; else if (this.end.row < e) var n = { 12315 row: e, 12316 column: 0 12317 }; 12318 if (this.start.row > t) var r = {row: t + 1, column: 0}; else if (this.start.row < e) var r = { 12319 row: e, 12320 column: 0 12321 }; 12322 return i.fromPoints(r || this.start, n || this.end) 12323 }, this.extend = function (e, t) { 12324 var n = this.compare(e, t); 12325 if (n == 0) return this; 12326 if (n == -1) var r = {row: e, column: t}; else var s = {row: e, column: t}; 12327 return i.fromPoints(r || this.start, s || this.end) 12328 }, this.isEmpty = function () { 12329 return this.start.row === this.end.row && this.start.column === this.end.column 12330 }, this.isMultiLine = function () { 12331 return this.start.row !== this.end.row 12332 }, this.clone = function () { 12333 return i.fromPoints(this.start, this.end) 12334 }, this.collapseRows = function () { 12335 return this.end.column == 0 ? new i(this.start.row, 0, Math.max(this.start.row, this.end.row - 1), 0) : new i(this.start.row, 0, this.end.row, 0) 12336 }, this.toScreenRange = function (e) { 12337 var t = e.documentToScreenPosition(this.start), n = e.documentToScreenPosition(this.end); 12338 return new i(t.row, t.column, n.row, n.column) 12339 }, this.moveBy = function (e, t) { 12340 this.start.row += e, this.start.column += t, this.end.row += e, this.end.column += t 12341 } 12342 }).call(i.prototype), i.fromPoints = function (e, t) { 12343 return new i(e.row, e.column, t.row, t.column) 12344 }, i.comparePoints = r, i.comparePoints = function (e, t) { 12345 return e.row - t.row || e.column - t.column 12346 }, t.Range = i 12347}), define("ace/apply_delta", [], function (e, t, n) { 12348 "use strict"; 12349 12350 function r(e, t) { 12351 throw console.log("Invalid Delta:", e), "Invalid Delta: " + t 12352 } 12353 12354 function i(e, t) { 12355 return t.row >= 0 && t.row < e.length && t.column >= 0 && t.column <= e[t.row].length 12356 } 12357 12358 function s(e, t) { 12359 t.action != "insert" && t.action != "remove" && r(t, "delta.action must be 'insert' or 'remove'"), t.lines instanceof Array || r(t, "delta.lines must be an Array"), (!t.start || !t.end) && r(t, "delta.start/end must be an present"); 12360 var n = t.start; 12361 i(e, t.start) || r(t, "delta.start must be contained in document"); 12362 var s = t.end; 12363 t.action == "remove" && !i(e, s) && r(t, "delta.end must contained in document for 'remove' actions"); 12364 var o = s.row - n.row, u = s.column - (o == 0 ? n.column : 0); 12365 (o != t.lines.length - 1 || t.lines[o].length != u) && r(t, "delta.range must match delta lines") 12366 } 12367 12368 t.applyDelta = function (e, t, n) { 12369 var r = t.start.row, i = t.start.column, s = e[r] || ""; 12370 switch (t.action) { 12371 case"insert": 12372 var o = t.lines; 12373 if (o.length === 1) e[r] = s.substring(0, i) + t.lines[0] + s.substring(i); else {
12374 var u = [r, 1].concat(t.lines); 12375 e.splice.apply(e, u), e[r] = s.substring(0, i) + e[r], e[r + t.lines.length - 1] += s.substring(i) 12376 } 12377 break; 12378 case"remove": 12379 var a = t.end.column, f = t.end.row; 12380 r === f ? e[r] = s.substring(0, i) + s.substring(a) : e.splice(r, f - r + 1, s.substring(0, i) + e[f].substring(a)) 12381 } 12382 } 12383}), define("ace/lib/event_emitter", [], function (e, t, n) { 12384 "use strict"; 12385 var r = {}, i = function () { 12386 this.propagationStopped = !0 12387 }, s = function () { 12388 this.defaultPrevented = !0 12389 }; 12390 r._emit = r._dispatchEvent = function (e, t) { 12391 this._eventRegistry || (this._eventRegistry = {}), this._defaultHandlers || (this._defaultHandlers = {}); 12392 var n = this._eventRegistry[e] || [], r = this._defaultHandlers[e]; 12393 if (!n.length && !r) return; 12394 if (typeof t != "object" || !t) t = {}; 12395 t.type || (t.type = e), t.stopPropagation || (t.stopPropagation = i), t.preventDefault || (t.preventDefault = s), n = n.slice(); 12396 for (var o = 0; o < n.length; o++) { 12397 n[o](t, this); 12398 if (t.propagationStopped) break 12399 } 12400 if (r && !t.defaultPrevented) return r(t, this) 12401 }, r._signal = function (e, t) { 12402 var n = (this._eventRegistry || {})[e]; 12403 if (!n) return; 12404 n = n.slice(); 12405 for (var r = 0; r < n.length; r++) n[r](t, this) 12406 }, r.once = function (e, t) { 12407 var n = this; 12408 this.addEventListener(e, function r() { 12409 n.removeEventListener(e, r), t.apply(null, arguments) 12410 }); 12411 if (!t) return new Promise(function (e) { 12412 t = e 12413 }) 12414 }, r.setDefaultHandler = function (e, t) { 12415 var n = this._defaultHandlers; 12416 n || (n = this._defaultHandlers = {_disabled_: {}}); 12417 if (n[e]) { 12418 var r = n[e], i = n._disabled_[e]; 12419 i || (n._disabled_[e] = i = []), i.push(r); 12420 var s = i.indexOf(t); 12421 s != -1 && i.splice(s, 1) 12422 } 12423 n[e] = t 12424 }, r.removeDefaultHandler = function (e, t) { 12425 var n = this._defaultHandlers; 12426 if (!n) return; 12427 var r = n._disabled_[e]; 12428 if (n[e] == t) r && this.setDefaultHandler(e, r.pop()); else if (r) { 12429 var i = r.indexOf(t); 12430 i != -1 && r.splice(i, 1) 12431 } 12432 }, r.on = r.addEventListener = function (e, t, n) { 12433 this._eventRegistry = this._eventRegistry || {}; 12434 var r = this._eventRegistry[e]; 12435 return r || (r = this._eventRegistry[e] = []), r.indexOf(t) == -1 && r[n ? "unshift" : "push"](t), t 12436 }, r.off = r.removeListener = r.removeEventListener = function (e, t) { 12437 this._eventRegistry = this._eventRegistry || {}; 12438 var n = this._eventRegistry[e]; 12439 if (!n) return; 12440 var r = n.indexOf(t); 12441 r !== -1 && n.splice(r, 1) 12442 }, r.removeAllListeners = function (e) { 12443 this._eventRegistry && (this._eventRegistry[e] = []) 12444 }, t.EventEmitter = r 12445}), define("ace/anchor", [], function (e, t, n) { 12446 "use strict"; 12447 var r = e("./lib/oop"), i = e("./lib/event_emitter").EventEmitter, s = t.Anchor = function (e, t, n) { 12448 this.$onChange = this.onChange.bind(this), this.attach(e), typeof n == "undefined" ? this.setPosition(t.row, t.column) : this.setPosition(t, n) 12449 }; 12450 (function () { 12451 function e(e, t, n) { 12452 var r = n ? e.column <= t.column : e.column < t.column; 12453 return e.row < t.row || e.row == t.row && r 12454 } 12455 12456 function t(t, n, r) { 12457 var i = t.action == "insert", s = (i ? 1 : -1) * (t.end.row - t.start.row), 12458 o = (i ? 1 : -1) * (t.end.column - t.start.column), u = t.start, a = i ? u : t.end; 12459 return e(n, u, r) ? {row: n.row, column: n.column} : e(a, n, !r) ? { 12460 row: n.row + s, 12461 column: n.column + (n.row == a.row ? o : 0) 12462 } : {row: u.row, column: u.column} 12463 } 12464 12465 r.implement(this, i), this.getPosition = function () { 12466 return this.$clipPositionToDocument(this.row, this.column) 12467 }, this.getDocument = function () { 12468 return this.document 12469 }, this.$insertRight = !1, this.onChange = function (e) { 12470 if (e.start.row == e.end.row && e.start.row != this.row) return; 12471 if (e.start.row > this.row) return; 12472 var n = t(e, {row: this.row, column: this.column}, this.$insertRight); 12473 this.setPosition(n.row, n.column, !0) 12474 }, this.setPosition = function (e, t, n) { 12475 var r; 12476 n ? r = {row: e, column: t} : r = this.$clipPositionToDocument(e, t); 12477 if (this.row == r.row && this.column == r.column) return; 12478 var i = {row: this.row, column: this.column}; 12479 this.row = r.row, this.column = r.column, this._signal("change", {old: i, value: r}) 12480 }, this.detach = function () { 12481 this.document.removeEventListener("change", this.$onChange) 12482 }, this.attach = function (e) { 12483 this.document = e || this.document, this.document.on("change", this.$onChange) 12484 }, this.$clipPositionToDocument = function (e, t) { 12485 var n = {}; 12486 return e >= this.document.getLength() ? (n.row = Math.max(0, this.document.getLength() - 1), n.column = this.document.getLine(n.row).length) : e < 0 ? (n.row = 0, n.column = 0) : (n.row = e, n.column = Math.min(this.document.getLine(n.row).length, Math.max(0, t))), t < 0 && (n.column = 0), n 12487 } 12488 }).call(s.prototype) 12489}), define("ace/document", [], function (e, t, n) { 12490 "use strict"; 12491 var r = e("./lib/oop"), i = e("./apply_delta").applyDelta, s = e("./lib/event_emitter").EventEmitter, 12492 o = e("./range").Range, u = e("./anchor").Anchor, a = function (e) { 12493 this.$lines = [""], e.length === 0 ? this.$lines = [""] : Array.isArray(e) ? this.insertMergedLines({ 12494 row: 0, 12495 column: 0 12496 }, e) : this.insert({row: 0, column: 0}, e) 12497 }; 12498 (function () { 12499 r.implement(this, s), this.setValue = function (e) { 12500 var t = this.getLength() - 1; 12501 this.remove(new o(0, 0, t, this.getLine(t).length)), this.insert({row: 0, column: 0}, e) 12502 }, this.getValue = function () { 12503 return this.getAllLines().join(this.getNewLineCharacter()) 12504 }, this.createAnchor = function (e, t) { 12505 return new u(this, e, t) 12506 }, "aaa".split(/a/).length === 0 ? this.$split = function (e) { 12507 return e.replace(/\r\n|\r/g, "\n").split("\n") 12508 } : this.$split = function (e) { 12509 return e.split(/\r\n|\r|\n/) 12510 }, this.$detectNewLine = function (e) { 12511 var t = e.match(/^.*?(\r\n|\r|\n)/m); 12512 this.$autoNewLine = t ? t[1] : "\n", this._signal("changeNewLineMode") 12513 }, this.getNewLineCharacter = function () { 12514 switch (this.$newLineMode) { 12515 case"windows": 12516 return "\r\n"; 12517 case"unix": 12518 return "\n"; 12519 default: 12520 return this.$autoNewLine || "\n" 12521 } 12522 }, this.$autoNewLine = "", this.$newLineMode = "auto", this.setNewLineMode = function (e) { 12523 if (this.$newLineMode === e) return; 12524 this.$newLineMode = e, this._signal("changeNewLineMode") 12525 }, this.getNewLineMode = function () { 12526 return this.$newLineMode 12527 }, this.isNewLine = function (e) { 12528 return e == "\r\n" || e == "\r" || e == "\n" 12529 }, this.getLine = function (e) { 12530 return this.$lines[e] || "" 12531 }, this.getLines = function (e, t) { 12532 return this.$lines.slice(e, t + 1) 12533 }, this.getAllLines = function () { 12534 return this.getLines(0, this.getLength()) 12535 }, this.getLength = function () { 12536 return this.$lines.length 12537 }, this.getTextRange = function (e) { 12538 return this.getLinesForRange(e).join(this.getNewLineCharacter()) 12539 }, this.getLinesForRange = function (e) { 12540 var t; 12541 if (e.start.row === e.end.row) t = [this.getLine(e.start.row).substring(e.start.column, e.end.column)]; else { 12542 t = this.getLines(e.start.row, e.end.row), t[0] = (t[0] || "").substring(e.start.column); 12543 var n = t.length - 1; 12544 e.end.row - e.start.row == n && (t[n] = t[n].substring(0, e.end.column)) 12545 } 12546 return t 12547 }, this.insertLines = function (e, t) { 12548 return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."), this.insertFullLines(e, t) 12549 }, this.removeLines = function (e, t) { 12550 return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."), this.removeFullLines(e, t) 12551 }, this.insertNewLine = function (e) { 12552 return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."), this.insertMergedLines(e, ["", ""]) 12553 }, this.insert = function (e, t) { 12554 return this.getLength() <= 1 && this.$detectNewLine(t), this.insertMergedLines(e, this.$split(t)) 12555 }, this.insertInLine = function (e, t) { 12556 var n = this.clippedPos(e.row, e.column), r = this.pos(e.row, e.column + t.length); 12557 return this.applyDelta({start: n, end: r, action: "insert", lines: [t]}, !0), this.clonePos(r) 12558 }, this.clippedPos = function (e, t) { 12559 var n = this.getLength(); 12560 e === undefined ? e = n : e < 0 ? e = 0 : e >= n && (e = n - 1, t = undefined); 12561 var r = this.getLine(e); 12562 return t == undefined && (t = r.length), t = Math.min(Math.max(t, 0), r.length), {row: e, column: t} 12563 }, this.clonePos = function (e) { 12564 return {row: e.row, column: e.column} 12565 }, this.pos = function (e, t) { 12566 return {row: e, column: t} 12567 }, this.$clipPosition = function (e) { 12568 var t = this.getLength(); 12569 return e.row >= t ? (e.row = Math.max(0, t - 1), e.column = this.getLine(t - 1).length) : (e.row = Math.max(0, e.row), e.column = Math.min(Math.max(e.column, 0), this.getLine(e.row).length)), e 12570 }, this.insertFullLines = function (e, t) { 12571 e = Math.min(Math.max(e, 0), this.getLength()); 12572 var n = 0; 12573 e < this.getLength() ? (t = t.concat([""]), n = 0) : (t = [""].concat(t), e--, n = this.$lines[e].length), this.insertMergedLines({ 12574 row: e, 12575 column: n 12576 }, t) 12577 }, this.insertMergedLines = function (e, t) { 12578 var n = this.clippedPos(e.row, e.column), 12579 r = {row: n.row + t.length - 1, column: (t.length == 1 ? n.column : 0) + t[t.length - 1].length}; 12580 return this.applyDelta({start: n, end: r, action: "insert", lines: t}), this.clonePos(r) 12581 }, this.remove = function (e) { 12582 var t = this.clippedPos(e.start.row, e.start.column), n = this.clippedPos(e.end.row, e.end.column); 12583 return this.applyDelta({ 12584 start: t, 12585 end: n, 12586 action: "remove", 12587 lines: this.getLinesForRange({start: t, end: n}) 12588 }), this.clonePos(t) 12589 }, this.removeInLine = function (e, t, n) { 12590 var r = this.clippedPos(e, t), i = this.clippedPos(e, n); 12591 return this.applyDelta({ 12592 start: r, 12593 end: i, 12594 action: "remove", 12595 lines: this.getLinesForRange({start: r, end: i}) 12596 }, !0), this.clonePos(r) 12597 }, this.removeFullLines = function (e, t) { 12598 e = Math.min(Math.max(0, e), this.getLength() - 1), t = Math.min(Math.max(0, t), this.getLength() - 1); 12599 var n = t == this.getLength() - 1 && e > 0, r = t < this.getLength() - 1, i = n ? e - 1 : e, 12600 s = n ? this.getLine(i).length : 0, u = r ? t + 1 : t, a = r ? 0 : this.getLine(u).length, 12601 f = new o(i, s, u, a), l = this.$lines.slice(e, t + 1); 12602 return this.applyDelta({start: f.start, end: f.end, action: "remove", lines: this.getLinesForRange(f)}), l 12603 }, this.removeNewLine = function (e) { 12604 e < this.getLength() - 1 && e >= 0 && this.applyDelta({ 12605 start: this.pos(e, this.getLine(e).length), 12606 end: this.pos(e + 1, 0), 12607 action: "remove", 12608 lines: ["", ""] 12609 }) 12610 }, this.replace = function (e, t) { 12611 e instanceof o || (e = o.fromPoints(e.start, e.end)); 12612 if (t.length === 0 && e.isEmpty()) return e.start; 12613 if (t == this.getTextRange(e)) return e.end; 12614 this.remove(e); 12615 var n; 12616 return t ? n = this.insert(e.start, t) : n = e.start, n 12617 }, this.applyDeltas = function (e) { 12618 for (var t = 0; t < e.length; t++) this.applyDelta(e[t]) 12619 }, this.revertDeltas = function (e) { 12620 for (var t = e.length - 1; t >= 0; t--) this.revertDelta(e[t]) 12621 }, this.applyDelta = function (e, t) { 12622 var n = e.action == "insert"; 12623 if (n ? e.lines.length <= 1 && !e.lines[0] : !o.comparePoints(e.start, e.end)) return; 12624 n && e.lines.length > 2e4 ? this.$splitAndapplyLargeDelta(e, 2e4) : (i(this.$lines, e, t), this._signal("change", e)) 12625 }, this.$splitAndapplyLargeDelta = function (e, t) { 12626 var n = e.lines, r = n.length - t + 1, i = e.start.row, s = e.start.column; 12627 for (var o = 0, u = 0; o < r; o = u) { 12628 u += t - 1; 12629 var a = n.slice(o, u); 12630 a.push(""), this.applyDelta({ 12631 start: this.pos(i + o, s), 12632 end: this.pos(i + u, s = 0), 12633 action: e.action, 12634 lines: a 12635 }, !0) 12636 } 12637 e.lines = n.slice(o), e.start.row = i + o, e.start.column = s, this.applyDelta(e, !0) 12638 }, this.revertDelta = function (e) { 12639 this.applyDelta({ 12640 start: this.clonePos(e.start), 12641 end: this.clonePos(e.end), 12642 action: e.action == "insert" ? "remove" : "insert", 12643 lines: e.lines.slice() 12644 }) 12645 }, this.indexToPosition = function (e, t) { 12646 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length; 12647 for (var i = t || 0, s = n.length; i < s; i++) { 12648 e -= n[i].length + r; 12649 if (e < 0) return {row: i, column: e + n[i].length + r} 12650 } 12651 return {row: s - 1, column: e + n[s - 1].length + r} 12652 }, this.positionToIndex = function (e, t) { 12653 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length, i = 0, 12654 s = Math.min(e.row, n.length); 12655 for (var o = t || 0; o < s; ++o) i += n[o].length + r; 12656 return i + e.column 12657 } 12658 }).call(a.prototype), t.Document = a 12659}), define("ace/lib/lang", [], function (e, t, n) { 12660 "use strict"; 12661 t.last = function (e) { 12662 return e[e.length - 1] 12663 }
12663, t.stringReverse = function (e) { 12664 return e.split("").reverse().join("") 12665 }, t.stringRepeat = function (e, t) { 12666 var n = ""; 12667 while (t > 0) { 12668 t & 1 && (n += e); 12669 if (t >>= 1) e += e 12670 } 12671 return n 12672 }; 12673 var r = /^\s\s*/, i = /\s\s*$/; 12674 t.stringTrimLeft = function (e) { 12675 return e.replace(r, "") 12676 }, t.stringTrimRight = function (e) { 12677 return e.replace(i, "") 12678 }, t.copyObject = function (e) { 12679 var t = {}; 12680 for (var n in e) t[n] = e[n]; 12681 return t 12682 }, t.copyArray = function (e) { 12683 var t = []; 12684 for (var n = 0, r = e.length; n < r; n++) e[n] && typeof e[n] == "object" ? t[n] = this.copyObject(e[n]) : t[n] = e[n]; 12685 return t 12686 }, t.deepCopy = function s(e) { 12687 if (typeof e != "object" || !e) return e; 12688 var t; 12689 if (Array.isArray(e)) { 12690 t = []; 12691 for (var n = 0; n < e.length; n++) t[n] = s(e[n]); 12692 return t 12693 } 12694 if (Object.prototype.toString.call(e) !== "[object Object]") return e; 12695 t = {}; 12696 for (var n in e) t[n] = s(e[n]); 12697 return t 12698 }, t.arrayToMap = function (e) { 12699 var t = {}; 12700 for (var n = 0; n < e.length; n++) t[e[n]] = 1; 12701 return t 12702 }, t.createMap = function (e) { 12703 var t = Object.create(null); 12704 for (var n in e) t[n] = e[n]; 12705 return t 12706 }, t.arrayRemove = function (e, t) { 12707 for (var n = 0; n <= e.length; n++) t === e[n] && e.splice(n, 1) 12708 }, t.escapeRegExp = function (e) { 12709 return e.replace(/([.*+?^${}()|[\]\/\\])/g, "\\$1") 12710 }, t.escapeHTML = function (e) { 12711 return ("" + e).replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<") 12712 }, t.getMatchOffsets = function (e, t) { 12713 var n = []; 12714 return e.replace(t, function (e) { 12715 n.push({offset: arguments[arguments.length - 2], length: e.length}) 12716 }), n 12717 }, t.deferredCall = function (e) { 12718 var t = null, n = function () { 12719 t = null, e() 12720 }, r = function (e) { 12721 return r.cancel(), t = setTimeout(n, e || 0), r 12722 }; 12723 return r.schedule = r, r.call = function () { 12724 return this.cancel(), e(), r 12725 }, r.cancel = function () { 12726 return clearTimeout(t), t = null, r 12727 }, r.isPending = function () { 12728 return t 12729 }, r 12730 }, t.delayedCall = function (e, t) { 12731 var n = null, r = function () { 12732 n = null, e() 12733 }, i = function (e) { 12734 n == null && (n = setTimeout(r, e || t)) 12735 }; 12736 return i.delay = function (e) { 12737 n && clearTimeout(n), n = setTimeout(r, e || t) 12738 }, i.schedule = i, i.call = function () { 12739 this.cancel(), e() 12740 }, i.cancel = function () { 12741 n && clearTimeout(n), n = null 12742 }, i.isPending = function () { 12743 return n 12744 }, i 12745 } 12746}), define("ace/worker/mirror", [], function (e, t, n) { 12747 "use strict"; 12748 var r = e("../range").Range, i = e("../document").Document, s = e("../lib/lang"), o = t.Mirror = function (e) { 12749 this.sender = e; 12750 var t = this.doc = new i(""), n = this.deferredUpdate = s.delayedCall(this.onUpdate.bind(this)), r = this; 12751 e.on("change", function (e) { 12752 var i = e.data; 12753 if (i[0].start) t.applyDeltas(i); else for (var s = 0; s < i.length; s += 2) { 12754 if (Array.isArray(i[s + 1])) var o = { 12755 action: "insert", 12756 start: i[s], 12757 lines: i[s + 1] 12758 }; else var o = {action: "remove", start: i[s], end: i[s + 1]}; 12759 t.applyDelta(o, !0) 12760 } 12761 if (r.$timeout) return n.schedule(r.$timeout); 12762 r.onUpdate() 12763 }) 12764 }; 12765 (function () { 12766 this.$timeout = 500, this.setTimeout = function (e) { 12767 this.$timeout = e 12768 }, this.setValue = function (e) { 12769 this.doc.setValue(e), this.deferredUpdate.schedule(this.$timeout) 12770 }, this.getValue = function (e) { 12771 this.sender.callback(this.doc.getValue(), e) 12772 }, this.onUpdate = function () { 12773 }, this.isPending = function () { 12774 return this.deferredUpdate.isPending() 12775 } 12776 }).call(o.prototype) 12777}), define("ace/mode/javascript/jshint", [], function (e, t, n) { 12778 n.exports = function r(t, n, i) { 12779 function o(u, a) { 12780 if (!n[u]) { 12781 if (!t[u]) { 12782 var f = typeof e == "function" && e; 12783 if (!a && f) return f(u, !0); 12784 if (s) return s(u, !0); 12785 var l = new Error("Cannot find module '" + u + "'"); 12786 throw l.code = "MODULE_NOT_FOUND", l 12787 } 12788 var c = n[u] = {exports: {}}; 12789 t[u][0].call(c.exports, function (e) { 12790 var n = t[u][1][e]; 12791 return o(n ? n : e) 12792 }, c, c.exports, r, t, n, i) 12793 } 12794 return n[u].exports 12795 } 12796 12797 var s = typeof e == "function" && e; 12798 for (var u = 0; u < i.length; u++) o(i[u]); 12799 return o(i[0]) 12800 }({ 12801 "/node_modules/browserify/node_modules/events/events.js": [function (e, t, n) { 12802 function r() { 12803 this._events = this._events || {}, this._maxListeners = this._maxListeners || undefined 12804 } 12805 12806 function i(e) { 12807 return typeof e == "function" 12808 } 12809 12810 function s(e) { 12811 return typeof e == "number" 12812 } 12813 12814 function o(e) { 12815 return typeof e == "object" && e !== null 12816 } 12817 12818 function u(e) { 12819 return e === void 0 12820 } 12821 12822 t.exports = r, r.EventEmitter = r, r.prototype._events = undefined, r.prototype._maxListeners = undefined, r.defaultMaxListeners = 10, r.prototype.setMaxListeners = function (e) { 12823 if (!s(e) || e < 0 || isNaN(e)) throw TypeError("n must be a positive number"); 12824 return this._maxListeners = e, this 12825 }, r.prototype.emit = function (e) { 12826 var t, n, r, s, a, f; 12827 this._events || (this._events = {}); 12828 if (e === "error") if (!this._events.error || o(this._events.error) && !this._events.error.length) throw t = arguments[1], t instanceof Error ? t : TypeError('Uncaught, unspecified "error" event.'); 12829 n = this._events[e]; 12830 if (u(n)) return !1; 12831 if (i(n)) switch (arguments.length) { 12832 case 1: 12833 n.call(this); 12834 break; 12835 case 2: 12836 n.call(this, arguments[1]); 12837 break; 12838 case 3: 12839 n.call(this, arguments[1], arguments[2]); 12840 break; 12841 default: 12842 r = arguments.length, s = new Array(r - 1); 12843 for (a = 1; a < r; a++) s[a - 1] = arguments[a]; 12844 n.apply(this, s) 12845 } else if (o(n)) { 12846 r = arguments.length, s = new Array(r - 1); 12847 for (a = 1; a < r; a++) s[a - 1] = arguments[a]; 12848 f = n.slice(), r = f.length; 12849 for (a = 0; a < r; a++) f[a].apply(this, s) 12850 } 12851 return !0 12852 }, r.prototype.addListener = function (e, t) { 12853 var n; 12854 if (!i(t)) throw TypeError("listener must be a function"); 12855 this._events || (this._events = {}
12855), this._events.newListener && this.emit("newListener", e, i(t.listener) ? t.listener : t), this._events[e] ? o(this._events[e]) ? this._events[e].push(t) : this._events[e] = [this._events[e], t] : this._events[e] = t; 12856 if (o(this._events[e]) && !this._events[e].warned) { 12857 var n; 12858 u(this._maxListeners) ? n = r.defaultMaxListeners : n = this._maxListeners, n && n > 0 && this._events[e].length > n && (this._events[e].warned = !0, console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.", this._events[e].length), typeof console.trace == "function" && console.trace()) 12859 } 12860 return this 12861 }, r.prototype.on = r.prototype.addListener, r.prototype.once = function (e, t) { 12862 function r() { 12863 this.removeListener(e, r), n || (n = !0, t.apply(this, arguments)) 12864 } 12865 12866 if (!i(t)) throw TypeError("listener must be a function"); 12867 var n = !1; 12868 return r.listener = t, this.on(e, r), this 12869 }, r.prototype.removeListener = function (e, t) { 12870 var n, r, s, u; 12871 if (!i(t)) throw TypeError("listener must be a function"); 12872 if (!this._events || !this._events[e]) return this; 12873 n = this._events[e], s = n.length, r = -1; 12874 if (n === t || i(n.listener) && n.listener === t) delete this._events[e], this._events.removeListener && this.emit("removeListener", e, t); else if (o(n)) { 12875 for (u = s; u-- > 0;) if (n[u] === t || n[u].listener && n[u].listener === t) { 12876 r = u; 12877 break 12878 } 12879 if (r < 0) return this; 12880 n.length === 1 ? (n.length = 0, delete this._events[e]) : n.splice(r, 1), this._events.removeListener && this.emit("removeListener", e, t) 12881 } 12882 return this 12883 }, r.prototype.removeAllListeners = function (e) { 12884 var t, n; 12885 if (!this._events) return this; 12886 if (!this._events.removeListener) return arguments.length === 0 ? this._events = {} : this._events[e] && delete this._events[e], this; 12887 if (arguments.length === 0) { 12888 for (t in this._events) { 12889 if (t === "removeListener") continue; 12890 this.removeAllListeners(t) 12891 } 12892 return this.removeAllListeners("removeListener"), this._events = {}, this 12893 } 12894 n = this._events[e]; 12895 if (i(n)) this.removeListener(e, n); else while (n.length) this.removeListener(e, n[n.length - 1]); 12896 return delete this._events[e], this 12897 }, r.prototype.listeners = function (e) { 12898 var t; 12899 return !this._events || !this._events[e] ? t = [] : i(this._events[e]) ? t = [this._events[e]] : t = this._events[e].slice(), t 12900 }, r.listenerCount = function (e, t) { 12901 var n; 12902 return !e._events || !e._events[t] ? n = 0 : i(e._events[t]) ? n = 1 : n = e._events[t].length, n 12903 } 12904 }, {}], 12905 "/node_modules/jshint/data/ascii-identifier-data.js": [function (e, t, n) { 12906 var r = []; 12907 for (var i = 0; i < 128; i++) r[i] = i === 36 || i >= 65 && i <= 90 || i === 95 || i >= 97 && i <= 122; 12908 var s = []; 12909 for (var i = 0; i < 128; i++) s[i] = r[i] || i >= 48 && i <= 57; 12910 t.exports = {asciiIdentifierStartTable: r, asciiIdentifierPartTable: s} 12911 }, {}], 12912 "/node_modules/jshint/lodash.js": [function (e, t, n) { 12913 (function (e) { 12914 (function () { 12915 function $(e, t, n) { 12916 var r = e.length, i = n ? r : -1; 12917 while (n ? i-- : ++i < r) if (t(e[i], i, e)) return i; 12918 return -1 12919 } 12920 12921 function J(e, t, n) { 12922 if (t !== t) return G(e, n); 12923 var r = n - 1, i = e.length; 12924 while (++r < i) if (e[r] === t) return r; 12925 return -1 12926 } 12927 12928 function K(e) { 12929 return typeof e == "function" || !1 12930 } 12931 12932 function Q(e) { 12933 return typeof e == "string" ? e : e == null ? "" : e + "" 12934 } 12935 12936 function G(e, t, n) { 12937 var r = e.length, i = t + (n ? 0 : -1); 12938 while (n ? i-- : ++i < r) { 12939 var s = e[i]; 12940 if (s !== s) return i 12941 } 12942 return -1 12943 } 12944 12945 function Y(e) { 12946 return !!e && typeof e == "object" 12947 } 12948 12949 function Ct() { 12950 } 12951 12952 function Lt(e, t) { 12953 var n = -1, r = e.length; 12954 t || (t = Array(r)); 12955 while (++n < r) t[n] = e[n]; 12956 return t 12957 } 12958 12959 function At(e, t) { 12960 var n = -1, r = e.length; 12961 while (++n < r) if (t(e[n], n, e) === !1) break; 12962 return e 12963 } 12964 12965 function Ot(e, t) { 12966 var n = -1, r = e.length, i = -1, s = []; 12967 while (++n < r) { 12968 var o = e[n]; 12969 t(o, n, e) && (s[++i] = o) 12970 } 12971 return s 12972 } 12973 12974 function Mt(e, t) { 12975 var n = -1, r = e.length, i = Array(r); 12976 while (++n < r) i[n] = t(e[n], n, e); 12977 return i 12978 } 12979 12980 function _t(e) { 12981 var t = -1, n = e.length, r = wt; 12982 while (++t < n) { 12983 var i = e[t]; 12984 i > r && (r = i) 12985 } 12986 return r 12987 } 12988 12989 function Dt(e, t) { 12990 var n = -1, r = e.length; 12991 while (++n < r) if (t(e[n], n, e)) return !0; 12992 return !1 12993 } 12994 12995 function Pt(e, t, n) { 12996 var i = rr(t); 12997 lt.apply(i, bn(t)); 12998 var s = -1, o = i.length; 12999 while (++s < o) { 13000 var u = i[s], a = e[u], f = n(a, t[u], u, e, t); 13001 if ((f === f ? f !== a : a === a) || a === r && !(u in e)) e[u] = f 13002 } 13003 return e 13004 } 13005 13006 function Bt(e, t, n) { 13007 n || (n = {}); 13008 var r = -1, i = t.length; 13009 while (++r < i) { 13010 var s = t[r]; 13011 n[s] = e[s] 13012 } 13013 return n 13014 } 13015 13016 function jt(e, t, n) { 13017 var i = typeof e; 13018 return i == "function" ? t === r ? e : on(e, t, n) : e == null ? lr : i == "object" ? Jt(e) : t === r ? cr(e) : Kt(e, t) 13019 } 13020 13021 function Ft(e, t, n, i, s, u, a) { 13022 var f; 13023 n && (f = s ? n(e, i, s) : n(e)); 13024 if (f !== r) return f; 13025 if (!Jn(e)) return e; 13026 var l = Xn(e); 13027 if (l) { 13028 f = wn(e); 13029 if (!t) return Lt(e, f) 13030 } else { 13031 var h = rt.call(e), p = h == c; 13032 if (!(h == d || h == o || p && !s)) return F[h] ? Sn(e, h, t) : s ? e : {}; 13033 f = En(p ? {} : e); 13034 if (!t) return Ht(f, e) 13035 } 13036 u || (u = []), a || (a = []); 13037 var v = u.length; 13038 while (v--) if (u[v] == e) return a[v]; 13039 return u.push(e), a.push(f), (l ? At : zt)(e, function (r, i) { 13040 f[i] = Ft(r, t, n, i, e, u, a) 13041 }), f 13042 } 13043 13044 function qt(e, t) { 13045 var n = []; 13046 return It(e, function (e, r, i) { 13047 t(e, r, i) && n.push(e) 13048 }), n 13049 } 13050 13051 function Ut(e, t) { 13052 return Rt(e, t, ir) 13053 } 13054 13055 function zt(e, t) { 13056 return Rt(e, t, rr) 13057 } 13058 13059 function Wt(e, t, n) { 13060 if (e == null) return; 13061 n !== r && n in On(e) && (t = [n]); 13062 var i = -1, s = t.length; 13063 while (e != null && ++i < s) var o = e = e[t[i]]; 13064 return o 13065 } 13066 13067 function Xt(e, t, n, r, i, s) { 13068 if (e === t) return e !== 0 || 1 / e == 1 / t; 13069 var o = typeof e, u = typeof t; 13070 return o != "function" && o != "object" && u != "function" && u != "object" || e == null || t == null ? e !== e && t !== t : Vt(e, t, Xt, n, r, i, s) 13071 } 13072 13073 function Vt(e, t, n, r, i, s, a) { 13074 var f = Xn(e), l = Xn(t), c = u, h = u; 13075 f || (c = rt.call(e), c == o ? c = d : c != d && (f = Zn(e))), l || (h = rt.call(t), h == o ? h = d : h != d && (l = Zn(t))); 13076 var p = c == d, v = h == d, m = c == h; 13077 if (m && !f && !p) return dn(e, t, c); 13078 if (!i) { 13079 var g = p && nt.call(e, "__wrapped__"), y = v && nt.call(t, "__wrapped__"); 13080 if (g || y) return n(g ? e.value() : e, y ? t.value() : t, r, i, s, a) 13081 } 13082 if (!m) return !1; 13083 s || (s = []), a || (a = []); 13084 var b = s.length; 13085 while (b--) if (s[b] == e) return a[b] == t; 13086 s.push(e), a.push(t); 13087 var w = (f ? pn : vn)(e, t, n, r, i, s, a); 13088 return s.pop(), a.pop(), w 13089 } 13090 13091 function $t(e, t, n, i, s) { 13092 var o = -1, u = t.length, a = !s; 13093 while (++o < u) if (a && i[o] ? n[o] !== e[t[o]] : !(t[o] in e)) return !1; 13094 o = -1; 13095 while (++o < u) { 13096 var f = t[o], l = e[f], c = n[o]; 13097 if (a && i[o]) var h = l !== r || f in e; else h = s ? s(l, c, f) : r, h === r && (h = Xt(c, l, s, !0)); 13098 if (!h) return !1 13099 } 13100 return !0 13101 } 13102 13103 function Jt(e) { 13104 var t = rr(e), n = t.length; 13105 if (!n) return fr(!0); 13106 if (n == 1) { 13107 var i = t[0], s = e[i]; 13108 if (kn(s)) return function (e) { 13109 return e == null ? !1 : e[i] === s && (s !== r || i in On(e)) 13110 } 13111 } 13112 var o = Array(n), u = Array(n); 13113 while (n--) s = e[t[n]], o[n] = s, u[n] = kn(s); 13114 return function (e) { 13115 return e != null && $t(On(e), t, o, u) 13116 } 13117 } 13118 13119 function Kt(e, t) {
13120 var n = Xn(e), i = Nn(e) && kn(t), s = e + ""; 13121 return e = Mn(e), function (o) { 13122 if (o == null) return !1; 13123 var u = s; 13124 o = On(o); 13125 if ((n || !i) && !(u in o)) { 13126 o = e.length == 1 ? o : Wt(o, en(e, 0, -1)); 13127 if (o == null) return !1; 13128 u = Pn(e), o = On(o) 13129 } 13130 return o[u] === t ? t !== r || u in o : Xt(t, o[u], null, !0) 13131 } 13132 } 13133 13134 function Qt(e, t, n, i, s) { 13135 if (!Jn(e)) return e; 13136 var o = Cn(t.length) && (Xn(t) || Zn(t)); 13137 if (!o) { 13138 var u = rr(t); 13139 lt.apply(u, bn(t)) 13140 } 13141 return At(u || t, function (a, f) { 13142 u && (f = a, a = t[f]); 13143 if (Y(a)) i || (i = []), s || (s = []), Gt(e, t, f, Qt, n, i, s); else { 13144 var l = e[f], c = n ? n(l, a, f, e, t) : r, h = c === r; 13145 h && (c = a), (o || c !== r) && (h || (c === c ? c !== l : l === l)) && (e[f] = c) 13146 } 13147 }), e 13148 } 13149 13150 function Gt(e, t, n, i, s, o, u) { 13151 var a = o.length, f = t[n]; 13152 while (a--) if (o[a] == f) { 13153 e[n] = u[a]; 13154 return 13155 } 13156 var l = e[n], c = s ? s(l, f, n, e, t) : r, h = c === r; 13157 h && (c = f, Cn(f.length) && (Xn(f) || Zn(f)) ? c = Xn(l) ? l : yn(l) ? Lt(l) : [] : Gn(f) || Wn(f) ? c = Wn(l) ? er(l) : Gn(l) ? l : {} : h = !1), o.push(f), u.push(c); 13158 if (h) e[n] = i(c, f, s, o, u); else if (c === c ? c !== l : l === l) e[n] = c 13159 } 13160 13161 function Yt(e) { 13162 return function (t) { 13163 return t == null ? r : t[e] 13164 } 13165 } 13166 13167 function Zt(e) { 13168 var t = e + ""; 13169 return e = Mn(e), function (n) { 13170 return Wt(n, e, t) 13171 } 13172 } 13173 13174 function en(e, t, n) { 13175 var i = -1, s = e.length; 13176 t = t == null ? 0 : +t || 0, t < 0 && (t = -t > s ? 0 : s + t), n = n === r || n > s ? s : +n || 0, n < 0 && (n += s), s = t > n ? 0 : n - t >>> 0, t >>>= 0; 13177 var o = Array(s); 13178 while (++i < s) o[i] = e[i + t]; 13179 return o 13180 } 13181 13182 function tn(e, t) { 13183 var n; 13184 return It(e, function (e, r, i) { 13185 return n = t(e, r, i), !n 13186 }), !!n 13187 } 13188 13189 function nn(e, t) { 13190 var n = -1, r = t.length, i = Array(r); 13191 while (++n < r) i[n] = e[t[n]]; 13192 return i 13193 } 13194 13195 function rn(e, t, n) { 13196 var r = 0, i = e ? e.length : r; 13197 if (typeof t == "number" && t === t && i <= xt) { 13198 while (r < i) { 13199 var s = r + i >>> 1, o = e[s]; 13200 (n ? o <= t : o < t) ? r = s + 1 : i = s 13201 } 13202 return i 13203 } 13204 return sn(e, t, lr, n) 13205 } 13206 13207 function sn(e, t, n, i) { 13208 t = n(t); 13209 var s = 0, o = e ? e.length : 0, u = t !== t, a = t === r; 13210 while (s < o) { 13211 var f = ut((s + o) / 2), l = n(e[f]), c = l === l; 13212 if (u) var h = c || i; else a ? h = c && (i || l !== r) : h = i ? l <= t : l < t; 13213 h ? s = f + 1 : o = f 13214 } 13215 return bt(o, St) 13216 } 13217 13218 function on(e, t, n) { 13219 if (typeof e != "function") return lr; 13220 if (t === r) return e; 13221 switch (n) { 13222 case 1: 13223 return function (n) { 13224 return e.call(t, n) 13225 }; 13226 case 3: 13227 return function (n, r, i) { 13228 return e.call(t, n, r, i) 13229 }; 13230 case 4: 13231 return function (n, r, i, s) { 13232 return e.call(t, n, r, i, s) 13233 }; 13234 case 5: 13235 return function (n, r, i, s, o) { 13236 return e.call(t, n, r, i, s, o) 13237 } 13238 } 13239 return function () { 13240 return e.apply(t, arguments) 13241 } 13242 } 13243 13244 function un(e) { 13245 return ot.call(e, 0) 13246 } 13247 13248 function an(e) { 13249 return Un(function (t, n) { 13250 var r = -1, i = t == null ? 0 : n.length, s = i > 2 && n[i - 2], o = i > 2 && n[2], 13251 u = i > 1 && n[i - 1]; 13252 typeof s == "function" ? (s = on(s, u, 5), i -= 2) : (s = typeof u == "function" ? u : null, i -= s ? 1 : 0), o && Tn(n[0], n[1], o) && (s = i < 3 ? null : s, i = 1); 13253 while (++r < i) { 13254 var a = n[r]; 13255 a && e(t, a, s) 13256 } 13257 return t 13258 }) 13259 } 13260 13261 function fn(e, t) { 13262 return function (n, r) { 13263 var i = n ? yn(n) : 0; 13264 if (!Cn(i)) return e(n, r); 13265 var s = t ? i : -1, o = On(n); 13266 while (t ? s-- : ++s < i) if (r(o[s], s, o) === !1) break; 13267 return n 13268 } 13269 } 13270 13271 function ln(e) { 13272 return function (t, n, r) { 13273 var i = On(t), s = r(t), o = s.length, u = e ? o : -1; 13274 while (e ? u-- : ++u < o) { 13275 var a = s[u]; 13276 if (n(i[a], a, i) === !1) break 13277 } 13278 return t 13279 } 13280 } 13281 13282 function cn(e) { 13283 return function (t, n, r) { 13284 return !t || !t.length ? -1 : (n = mn(n, r, 3), $(t, n, e)) 13285 } 13286 } 13287 13288 function hn(e, t) { 13289 return function (n, i, s) { 13290 return typeof i == "function" && s === r && Xn(n) ? e(n, i) : t(n, on(i, s, 3)) 13291 } 13292 } 13293 13294 function pn(e, t, n, i, s, o, u) { 13295 var a = -1, f = e.length, l = t.length, c = !0; 13296 if (f != l && !(s && l > f)) return !1; 13297 while (c && ++a < f) { 13298 var h = e[a], p = t[a]; 13299 c = r, i && (c = s ? i(p, h, a) : i(h, p, a)); 13300 if (c === r) if (s) { 13301 var d = l; 13302 while (d--) { 13303 p = t[d], c = h && h === p || n(h, p, i, s, o, u); 13304 if (c) break 13305 } 13306 } else c = h && h === p || n(h, p, i, s, o, u) 13307 } 13308 return !!c 13309 } 13310 13311 function dn(e, t, n) { 13312 switch (n) { 13313 case a: 13314 case f: 13315 return +e == +t; 13316 case l: 13317 return e.name == t.name && e.message == t.message; 13318 case p: 13319 return e != +e ? t != +t : e == 0 ? 1 / e == 1 / t : e == +t; 13320 case v: 13321 case g: 13322 return e == t + "" 13323 } 13324 return !1 13325 } 13326 13327 function vn(e, t, n, i, s, o, u) { 13328 var a = rr(e), f = a.length, l = rr(t), c = l.length; 13329 if (f != c && !s) return !1; 13330 var h = s, p = -1; 13331 while (++p < f) { 13332 var d = a[p], v = s ? d in t : nt.call(t, d); 13333 if (v) { 13334 var m = e[d], g = t[d]; 13335 v = r, i && (v = s ? i(g, m, d) : i(m, g, d)), v === r && (v = m && m === g || n(m, g, i, s, o, u)) 13336 } 13337 if (!v) return !1; 13338 h || (h = d == "constructor") 13339 } 13340 if (!h) { 13341 var y = e.constructor, b = t.constructor; 13342 if (y != b && "constructor" in e && "constructor" in t && !(typeof y == "function" && y instanceof y && typeof b == "function" && b instanceof b)) return !1 13343 } 13344 return !0 13345 } 13346 13347 function mn(e, t, n) { 13348 var r = Ct.callback || ar; 13349 return r = r === ar ? jt : r, n ? r(e, t, n) : r 13350 } 13351 13352 function gn(e, t, n) { 13353 var r = Ct.indexOf || Dn; 13354 return r = r === Dn ? J : r, e ? r(e, t, n) : r 13355 } 13356 13357 function wn(e) { 13358 var t = e.length, n = new e.constructor(t); 13359 return t && typeof e[0] == "string" && nt.call(e, "index") && (n.index = e.index, n.input = e.input), n 13360 } 13361 13362 function En(e) { 13363 var t = e.constructor; 13364 return typeof t == "function" && t instanceof t || (t = Object), new t 13365 } 13366 13367 function Sn(e, t, n) { 13368 var r = e.constructor; 13369 switch (t) { 13370 case b: 13371 return un(e); 13372 case a: 13373 case f: 13374 return new r(+e); 13375 case w: 13376 case E: 13377 case S: 13378 case x: 13379 case T: 13380 case N: 13381 case C: 13382 case k: 13383 case L: 13384 var i = e.buffer; 13385 return new r(n ? un(i) : i, e.byteOffset, e.length); 13386 case p: 13387 case g: 13388 return new r(e); 13389 case v: 13390 var s = new r(e.source, H.exec(e)); 13391 s.lastIndex = e.lastIndex 13392 } 13393 return s 13394 } 13395 13396 function xn(e, t) { 13397 return e = +e, t = t == null ? Nt : t, e > -1 && e % 1 == 0 && e < t 13398 } 13399 13400 function Tn(e, t, n) { 13401 if (!Jn(n)) return !1; 13402 var r = typeof t; 13403 if (r == "number") var i = yn(n), s = Cn(i) && xn(t, i); else s = r == "string" && t in n; 13404 if (s) { 13405 var o = n[t]; 13406 return e === e ? e === o : o !== o 13407 } 13408 return !1 13409 } 13410 13411 function Nn(e, t) { 13412 var n = typeof e; 13413 if (n == "string" && O.test(e) || n == "number") return !0; 13414 if (Xn(e)) return !1; 13415 var r = !A.test(e); 13416 return r || t != null && e in On(t) 13417 } 13418 13419 function Cn(e) { 13420 return typeof e == "number" && e > -1 && e % 1 == 0 && e <= Nt 13421 } 13422 13423 function kn(e) { 13424 return e === e && (e === 0 ? 1 / e > 0 : !Jn(e)) 13425 } 13426 13427 function Ln(e) { 13428 var t, n = Ct.support; 13429 if (!Y(e) || rt.call(e) != d || !nt.call(e, "constructor") && (t = e.constructor, typeof t == "function" && !(t instanceof t))) return !1; 13430 var i; 13431 return Ut(e, function (e, t) { 13432 i = t 13433 }), i === r || nt.call(e, i) 13434 } 13435 13436 function An(e) { 13437 var t = ir(e), n = t.length, r = n && e.length, i = Ct.support, 13438 s = r && Cn(r) && (Xn(e) || i.nonEnumArgs && Wn(e)), o = -1, u = []; 13439 while (++o < n) { 13440 var a = t[o]; 13441 (s && xn(a, r) || nt.call(e, a)) && u.push(a) 13442 } 13443 return u 13444 } 13445 13446 function On(e) { 13447 return Jn(e) ? e : Object(e) 13448 } 13449 13450 function Mn(e) { 13451 if (Xn(e)) return e; 13452 var t = []; 13453 return Q(e).replace(M, function (e, n, r, i) { 13454 t.push(r ? i.replace(P, "$1") : n || e) 13455 }), t 13456 } 13457 13458 function Dn(e, t, n) { 13459 var r = e ? e.length : 0; 13460 if (!r) return -1; 13461 if (typeof n == "number") n = n < 0 ? yt(r + n, 0) : n; else if (n) { 13462 var i = rn(e, t), s = e[i]; 13463 return (t === t ? t === s : s !== s) ? i :
13463-1 13464 } 13465 return J(e, t, n || 0) 13466 } 13467 13468 function Pn(e) { 13469 var t = e ? e.length : 0; 13470 return t ? e[t - 1] : r 13471 } 13472 13473 function Hn(e, t, n) { 13474 var r = e ? e.length : 0; 13475 return r ? (n && typeof n != "number" && Tn(e, t, n) && (t = 0, n = r), en(e, t, n)) : [] 13476 } 13477 13478 function Bn(e) { 13479 var t = -1, n = (e && e.length && _t(Mt(e, yn))) >>> 0, r = Array(n); 13480 while (++t < n) r[t] = Mt(e, Yt(t)); 13481 return r 13482 } 13483 13484 function In(e, t, n, r) { 13485 var i = e ? yn(e) : 0; 13486 return Cn(i) || (e = or(e), i = e.length), i ? (typeof n != "number" || r && Tn(t, n, r) ? n = 0 : n = n < 0 ? yt(i + n, 0) : n || 0, typeof e == "string" || !Xn(e) && Yn(e) ? n < i && e.indexOf(t, n) > -1 : gn(e, t, n) > -1) : !1 13487 } 13488 13489 function qn(e, t, n) { 13490 var r = Xn(e) ? Ot : qt; 13491 return t = mn(t, n, 3), r(e, function (e, n, r) { 13492 return !t(e, n, r) 13493 }) 13494 } 13495 13496 function Rn(e, t, n) { 13497 var i = Xn(e) ? Dt : tn; 13498 n && Tn(e, t, n) && (t = null); 13499 if (typeof t != "function" || n !== r) t = mn(t, n, 3); 13500 return i(e, t) 13501 } 13502 13503 function Un(e, t) { 13504 if (typeof e != "function") throw new TypeError(s); 13505 return t = yt(t === r ? e.length - 1 : +t || 0, 0), function () { 13506 var n = arguments, r = -1, i = yt(n.length - t, 0), s = Array(i); 13507 while (++r < i) s[r] = n[t + r]; 13508 switch (t) { 13509 case 0: 13510 return e.call(this, s); 13511 case 1: 13512 return e.call(this, n[0], s); 13513 case 2: 13514 return e.call(this, n[0], n[1], s) 13515 } 13516 var o = Array(t + 1); 13517 r = -1; 13518 while (++r < t) o[r] = n[r]; 13519 return o[t] = s, e.apply(this, o) 13520 } 13521 } 13522 13523 function zn(e, t, n, r) { 13524 return t && typeof t != "boolean" && Tn(e, t, n) ? t = !1 : typeof t == "function" && (r = n, n = t, t = !1), n = typeof n == "function" && on(n, r, 1), Ft(e, t, n) 13525 } 13526 13527 function Wn(e) { 13528 var t = Y(e) ? e.length : r; 13529 return Cn(t) && rt.call(e) == o 13530 } 13531 13532 function Vn(e) { 13533 if (e == null) return !0; 13534 var t = yn(e); 13535 return Cn(t) && (Xn(e) || Yn(e) || Wn(e) || Y(e) && $n(e.splice)) ? !t : !rr(e).length 13536 } 13537 13538 function Jn(e) { 13539 var t = typeof e; 13540 return t == "function" || !!e && t == "object" 13541 } 13542 13543 function Kn(e) { 13544 return e == null ? !1 : rt.call(e) == c ? it.test(tt.call(e)) : Y(e) && B.test(e) 13545 } 13546 13547 function Qn(e) { 13548 return typeof e == "number" || Y(e) && rt.call(e) == p 13549 } 13550 13551 function Yn(e) { 13552 return typeof e == "string" || Y(e) && rt.call(e) == g 13553 } 13554 13555 function Zn(e) { 13556 return Y(e) && Cn(e.length) && !!j[rt.call(e)] 13557 } 13558 13559 function er(e) { 13560 return Bt(e, ir(e)) 13561 } 13562 13563 function nr(e, t) { 13564 if (e == null) return !1; 13565 var n = nt.call(e, t); 13566 return !n && !Nn(t) && (t = Mn(t), e = t.length == 1 ? e : Wt(e, en(t, 0, -1)), t = Pn(t), n = e != null && nt.call(e, t)), n 13567 } 13568 13569 function ir(e) { 13570 if (e == null) return []; 13571 Jn(e) || (e = Object(e)); 13572 var t = e.length; 13573 t = t && Cn(t) && (Xn(e) || kt.nonEnumArgs && Wn(e)) && t || 0; 13574 var n = e.constructor, r = -1, i = typeof n == "function" && n.prototype === e, s = Array(t), 13575 o = t > 0; 13576 while (++r < t) s[r] = r + ""; 13577 for (var u in e) (!o || !xn(u, t)) && (u != "constructor" || !i && !!nt.call(e, u)) && s.push(u); 13578 return s 13579 } 13580 13581 function or(e) { 13582 return nn(e, rr(e)) 13583 } 13584 13585 function ur(e) { 13586 return e = Q(e), e && D.test(e) ? e.replace(_, "\\$&") : e 13587 } 13588 13589 function ar(e, t, n) { 13590 return n && Tn(e, t, n) && (t = null), jt(e, t) 13591 } 13592 13593 function fr(e) { 13594 return function () { 13595 return e 13596 } 13597 } 13598 13599 function lr(e) { 13600 return e 13601 } 13602 13603 function cr(e) { 13604 return Nn(e) ? Yt(e) : Zt(e) 13605 } 13606 13607 var r, i = "3.7.0", s = "Expected a function", o = "[object Arguments]", u = "[object Array]", 13608 a = "[object Boolean]", f = "[object Date]", l = "[object Error]", c = "[object Function]", 13609 h = "[object Map]", p = "[object Number]", d = "[object Object]", v = "[object RegExp]", 13610 m = "[object Set]", g = "[object String]", y = "[object WeakMap]", b = "[object ArrayBuffer]", 13611 w = "[object Float32Array]", E = "[object Float64Array
13611]", S = "[object Int8Array]", 13612 x = "[object Int16Array]", T = "[object Int32Array]", N = "[object Uint8Array]", 13613 C = "[object Uint8ClampedArray]", k = "[object Uint16Array]", L = "[object Uint32Array]", 13614 A = /\.|\[(?:[^[\]]+|(["'])(?:(?!\1)[^\n\\]|\\.)*?)\1\]/, O = /^\w*$/, 13615 M = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g, 13616 _ = /[.*+?^${}()|[\]\/\\]/g, D = RegExp(_.source), P = /\\(\\)?/g, H = /\w*$/, 13617 B = /^\[object .+?Constructor\]$/, j = {}; 13618 j[w] = j[E] = j[S] = j[x] = j[T] = j[N] = j[C] = j[k] = j[L] = !0, j[o] = j[u] = j[b] = j[a] = j[f] = j[l] = j[c] = j[h] = j[p] = j[d] = j[v] = j[m] = j[g] = j[y] = !1; 13619 var F = {}; 13620 F[o] = F[u] = F[b] = F[a] = F[f] = F[w] = F[E] = F[S] = F[x] = F[T] = F[p] = F[d] = F[v] = F[g] = F[N] = F[C] = F[k] = F[L] = !0, F[l] = F[c] = F[h] = F[m] = F[y] = !1; 13621 var I = {"function": !0, object: !0}, q = I[typeof n] && n && !n.nodeType && n, 13622 R = I[typeof t] && t && !t.nodeType && t, 13623 U = q && R && typeof e == "object" && e && e.Object && e, 13624 z = I[typeof self] && self && self.Object && self, 13625 W = I[typeof window] && window && window.Object && window, X = R && R.exports === q && q, 13626 V = U || W !== (this && this.window) && W || z || this, Z = Array.prototype, 13627 et = Object.prototype, tt = Function.prototype.toString, nt = et.hasOwnProperty, 13628 rt = et.toString, 13629 it = RegExp("^" + ur(rt).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"), 13630 st = Kn(st = V.ArrayBuffer) && st, ot = Kn(ot = st && (new st(0)).slice) && ot, ut = Math.floor, 13631 at = Kn(at = Object.getOwnPropertySymbols) && at, ft = Kn(ft = Object.getPrototypeOf) && ft, 13632 lt = Z.push, ct = Kn(Object.preventExtensions = Object.preventExtensions) && ct, 13633 ht = et.propertyIsEnumerable, pt = Kn(pt = V.Uint8Array) && pt, dt = function () { 13634 try { 13635 var e = Kn(e = V.Float64Array) && e, t = new e(new st(10), 0, 1) && e 13636 } catch (n) { 13637 } 13638 return t 13639 }(), vt = function () { 13640 var e = {1: 0}, t = ct && Kn(t = Object.assign) && t; 13641 try { 13642 t(ct(e), "xo") 13643 } catch (n) { 13644 } 13645 return !e[1] && t 13646 }(), mt = Kn(mt = Array.isArray) && mt, gt = Kn(gt = Object.keys) && gt, yt = Math.max, 13647 bt = Math.min, wt = Number.NEGATIVE_INFINITY, Et = Math.pow(2, 32) - 1, St = Et - 1, 13648 xt = Et >>> 1, Tt = dt ? dt.BYTES_PER_ELEMENT : 0, Nt = Math.pow(2, 53) - 1, 13649 kt = Ct.support = {}; 13650 (function (e) { 13651 var t = function () { 13652 this.x = e 13653 }, n = {0: e, length: e}, r = [];
13654 t.prototype = {valueOf: e, y: e}; 13655 for (var i in new t) r.push(i); 13656 kt.funcDecomp = /\bthis\b/.test(function () { 13657 return this 13658 }), kt.funcNames = typeof Function.name == "string"; 13659 try { 13660 kt.nonEnumArgs = !ht.call(arguments, 1) 13661 } catch (s) { 13662 kt.nonEnumArgs = !0 13663 } 13664 })(1, 0); 13665 var Ht = vt || function (e, t) { 13666 return t == null ? e : Bt(t, bn(t), Bt(t, rr(t), e)) 13667 }, It = fn(zt), Rt = ln(); 13668 ot || (un = !st || !pt ? fr(null) : function (e) { 13669 var t = e.byteLength, n = dt ? ut(t / Tt) : 0, r = n * Tt, i = new st(t); 13670 if (n) { 13671 var s = new dt(i, 0, n); 13672 s.set(new dt(e, 0, n)) 13673 } 13674 return t != r && (s = new pt(i, r), s.set(new pt(e, r))), i 13675 }); 13676 var yn = Yt("length"), bn = at ? function (e) { 13677 return at(On(e)) 13678 } : fr([]), _n = cn(!0), jn = Un(Bn), Fn = hn(At, It), Xn = mt || function (e) { 13679 return Y(e) && Cn(e.length) && rt.call(e) == u 13680 }, $n = K(/x/) || pt && !K(pt) ? function (e) { 13681 return rt.call(e) == c 13682 } : K, Gn = ft ? function (e) { 13683 if (!e || rt.call(e) != d) return !1; 13684 var t = e.valueOf, n = Kn(t) && (n = ft(t)) && ft(n); 13685 return n ? e == n || ft(e) == n : Ln(e) 13686 } : Ln, tr = an(function (e, t, n) { 13687 return n ? Pt(e, t, n) : Ht(e, t) 13688 }), rr = gt ? function (e) { 13689 if (e) var t = e.constructor, n = e.length; 13690 return typeof t == "function" && t.prototype === e || typeof e != "function" && Cn(n) ? An(e) : Jn(e) ? gt(e) : [] 13691 } : An, sr = an(Qt); 13692 Ct.assign = tr, Ct.callback = ar, Ct.constant = fr, Ct.forEach = Fn, Ct.keys = rr, Ct.keysIn = ir, Ct.merge = sr, Ct.property = cr, Ct.reject = qn, Ct.restParam = Un, Ct.slice = Hn, Ct.toPlainObject = er, Ct.unzip = Bn, Ct.values = or, Ct.zip = jn, Ct.each = Fn, Ct.extend = tr, Ct.iteratee = ar, Ct.clone = zn, Ct.escapeRegExp = ur, Ct.findLastIndex = _n, Ct.has = nr, Ct.identity = lr, Ct.includes = In, Ct.indexOf = Dn, Ct.isArguments = Wn, Ct.isArray = Xn, Ct.isEmpty = Vn, Ct.isFunction = $n, Ct.isNative = Kn, Ct.isNumber = Qn, Ct.isObject = Jn, Ct.isPlainObject = Gn, Ct.isString = Yn, Ct.isTypedArray = Zn, Ct.last = Pn, Ct.some = Rn, Ct.any = Rn, Ct.contains = In, Ct.include = In, Ct.VERSION = i, q && R ? X ? (R.exports = Ct)._ = Ct : q._ = Ct : V._ = Ct 13693 }).call(this) 13694 }).call(this, typeof global != "undefined" ? global : typeof self != "undefined" ? self : typeof window != "undefined" ? window : {}) 13695 }, {}], 13696 "/node_modules/jshint/src/jshint.js": [function (e, t, n) { 13697 var r = e("../lodash"), i = e("events"), s = e("./vars.js"), o = e("./messages.js"), 13698 u = e("./lex.js").Lexer, a = e("./reg.js"), f = e("./state.js").state, l = e("./style.js"), 13699 c = e("./options.js"), h = e("./scope-manager.js"), p = function () { 13700 "use strict"; 13701 13702 function k(e, t) { 13703 return e = e.trim(), /^[+-]W\d{3}$/g.test(e) ? !0 : c.validNames.indexOf(e) === -1 && t.type !== "jslint" && !r.has(c.removed, e) ? (q("E001", t, e), !1) : !0 13704 } 13705 13706 function L(e) { 13707 return Object.prototype.toString.call(e) === "[object String]" 13708 } 13709 13710 function A(e, t) { 13711 return e ? !e.identifier || e.value !== t ? !1 : !0 : !1 13712 } 13713 13714 function O(e) { 13715 if (!e.reserved) return !1; 13716 var t = e.meta; 13717 if (t && t.isFutureReservedWord && f.inES5()) { 13718 if (!t.es5) return !1; 13719 if (t.strictOnly && !f.option.strict && !f.isStrict()) return !1; 13720 if (e.isProperty) return !1 13721 } 13722 return !0 13723 } 13724 13725 function M(e, t) { 13726 return e.replace(/\{([^{}]*)\}/g, function (e, n) { 13727 var r = t[n]; 13728 return typeof r == "string" || typeof r == "number" ? r : e 13729 }) 13730 } 13731 13732 function D(e, t) { 13733 Object.keys(t).forEach(function (n) { 13734 if (r.has(p.blacklist, n)) return; 13735 e[n] = t[n] 13736 }) 13737 } 13738 13739 function P() { 13740 if (f.option.enforceall) { 13741 for (var e in c.bool.enforcing) f.option[e] === undefined && !c.noenforceall[e] && (f.option[e] = !0); 13742 for (var t in c.bool.relaxing) f.option[t] === undefined && (f.option[t] = !1) 13743 } 13744 } 13745 13746 function H() { 13747 P(), !f.option.esversion && !f.option.moz && (f.option.es3 ? f.option.esversion = 3 : f.option.esnext ? f.option.esversion = 6 : f.option.esversion = 5), f.inES5() && D(S, s.ecmaIdentifiers[5]), f.inES6() && D(S, s.ecmaIdentifiers[6]), f.option.module && (f.option.strict === !0 && (f.option.strict = "global"), f.inES6() || F("W134", f.tokens.next, "module", 6)), f.option.couch && D(S, s.couch), f.option.qunit && D(S, s.qunit), f.option.rhino && D(S, s.rhino), f.option.shelljs && (D(S, s.shelljs), D(S, s.node)), f.option.typed && D(S, s.typed), f.option.phantom && (D(S, s.phantom), f.option.strict === !0 && (f.option.strict = "global")), f.option.prototypejs && D(S, s.prototypejs), f.option.node && (D(S, s.node), D(S, s.typed), f.option.strict === !0 && (f.option.strict = "global")), f.option.devel && D(S, s.devel), f.option.dojo && D(S, s.dojo), f.option.browser && (D(S, s.browser), D(S, s.typed)), f.option.browserify && (D(S, s.browser), D(S, s.typed), D(S, s.browserify), f.option.strict === !0 && (f.option.strict = "global")), f.option.nonstandard && D(S, s.nonstandard), f.option.jasmine && D(S, s.jasmine), f.option.jquery && D(S, s.jquery), f.option.mootools && D(S, s.mootools), f.option.worker && D(S, s.worker), f.option.wsh && D(S, s.wsh), f.option.globalstrict && f.option.strict !== !1 && (f.option.strict = "global"), f.option.yui && D(S, s.yui), f.option.mocha && D(S, s.mocha) 13748 } 13749 13750 function B(e, t, n) { 13751 var r = Math.floor(t / f.lines.length * 100), i = o.errors[e].desc; 13752 throw{ 13753 name: "JSHintError", 13754 line: t, 13755 character: n, 13756 message: i + " (" + r + "% scanned).", 13757 raw: i, 13758 code: e 13759 } 13760 } 13761 13762 function j() { 13763 var e = f.ignoredLines; 13764 if (r.isEmpty(e)) return; 13765 p.errors = r.reject(p.errors, function (t) { 13766 return e[t.line] 13767 }) 13768 } 13769 13770 function F(e, t, n, r, i, s) { 13771 var u, a, l, c; 13772 if (/^W\d{3}$/.test(e)) { 13773 if (f.ignored[e]) return; 13774 c = o.warnings[e] 13775 } else /E\d{3}/.test(e) ? c = o.errors[e] : /I\d{3}/.test(e) && (c = o.info[e]); 13776 return t = t || f.tokens.next || {}, t.id === "(end)" && (t = f.tokens.curr), a = t.line || 0, u = t.from || 0, l = { 13777 id: "(error)", 13778 raw: c.desc, 13779 code: c.code, 13780 evidence: f.lines[a - 1] || "", 13781 line: a, 13782 character: u, 13783 scope: p.scope, 13784 a: n, 13785 b: r, 13786 c: i, 13787 d: s 13788 }, l.reason = M(c.desc, l), p.errors.push(l), j(), p.errors.length >= f.option.maxerr && B("E043", a, u), l 13789 } 13790 13791 function I(e, t, n, r, i, s, o) { 13792 return F(e, {line: t, from: n}, r, i, s, o) 13793 } 13794 13795 function q(e, t, n, r, i, s) { 13796 F(e, t, n, r, i, s) 13797 } 13798 13799 function R(e, t, n, r, i, s, o) { 13800 return q(e, {line: t, from: n}, r, i, s, o) 13801 } 13802 13803 function U(e, t) { 13804 var n; 13805 return n = {id: "(internal)", elem: e, value: t}, p.internals.push(n), n 13806 } 13807 13808 function z() { 13809 var e = f.tokens.next, t = e.body.match(/(-\s+)?[^\s,:]+(?:\s*:\s*(-\s+)?[^\s,]+)?/g) || [], i = {}; 13810 if (e.type === "globals") { 13811 t.forEach(function (n, r) { 13812 n = n.split(":"); 13813 var s = (n[0] || "").trim(), o = (n[1] || "").trim(); 13814 if (s === "-" || !s.length) { 13815 if (r > 0 && r === t.length - 1) return; 13816 q("E002", e); 13817 return 13818 } 13819 s.charAt(0) === "-" ? (s = s.slice(1), o = !1, p.blackl
13819ist[s] = s, delete S[s]) : i[s] = o === "true" 13820 }), D(S, i); 13821 for (var s in i) r.has(i, s) && (n[s] = e) 13822 } 13823 e.type === "exported" && t.forEach(function (n, r) { 13824 if (!n.length) { 13825 if (r > 0 && r === t.length - 1) return; 13826 q("E002", e); 13827 return 13828 } 13829 f.funct["(scope)"].addExported(n) 13830 }), e.type === "members" && (E = E || {}, t.forEach(function (e) { 13831 var t = e.charAt(0), n = e.charAt(e.length - 1); 13832 t === n && (t === '"' || t === "'") && (e = e.substr(1, e.length - 2).replace('\\"', '"')), E[e] = !1 13833 })); 13834 var o = ["maxstatements", "maxparams", "maxdepth", "maxcomplexity", "maxerr", "maxlen", "indent"]; 13835 if (e.type === "jshint" || e.type === "jslint") t.forEach(function (t) { 13836 t = t.split(":"); 13837 var n = (t[0] || "").trim(), i = (t[1] || "").trim(); 13838 if (!k(n, e)) return; 13839 if (o.indexOf(n) >= 0) { 13840 if (i !== "false") { 13841 i = +i; 13842 if (typeof i != "number" || !isFinite(i) || i <= 0 || Math.floor(i) !== i) { 13843 q("E032", e, t[1].trim()); 13844 return 13845 } 13846 f.option[n] = i 13847 } else f.option[n] = n === "indent" ? 4 : !1; 13848 return 13849 } 13850 if (n === "validthis") { 13851 if (f.funct["(global)"]) return void q("E009"); 13852 if (i !== "true" && i !== "false") return void q("E002", e); 13853 f.option.validthis = i === "true"; 13854 return 13855 } 13856 if (n === "quotmark") { 13857 switch (i) { 13858 case"true": 13859 case"false": 13860 f.option.quotmark = i === "true"; 13861 break; 13862 case"double": 13863 case"single": 13864 f.option.quotmark = i; 13865 break; 13866 default: 13867 q("E002", e) 13868 } 13869 return 13870 } 13871 if (n === "shadow") { 13872 switch (i) { 13873 case"true": 13874 f.option.shadow = !0; 13875 break; 13876 case"outer": 13877 f.option.shadow = "outer"; 13878 break; 13879 case"false": 13880 case"inner": 13881 f.option.shadow = "inner"; 13882 break; 13883 default: 13884 q("E002", e) 13885 } 13886 return 13887 } 13888 if (n === "unused") { 13889 switch (i) { 13890 case"true": 13891 f.option.unused = !0; 13892 break; 13893 case"false": 13894 f.option.unused = !1; 13895 break; 13896 case"vars": 13897 case"strict": 13898 f.option.unused = i; 13899 break; 13900 default: 13901 q("E002", e) 13902 } 13903 return 13904 } 13905 if (n === "latedef") { 13906 switch (i) { 13907 case"true": 13908 f.option.latedef = !0; 13909 break; 13910 case"false": 13911 f.option.latedef = !1; 13912 break; 13913 case"nofunc": 13914 f.option.latedef = "nofunc"; 13915 break; 13916 default: 13917 q("E002", e) 13918 } 13919 return 13920 } 13921 if (n === "ignore") { 13922 switch (i) { 13923 case"line": 13924 f.ignoredLines[e.line] = !0, j(); 13925 break; 13926 default: 13927 q("E002", e) 13928 } 13929 return 13930 } 13931 if (n === "strict") { 13932 switch (i) { 13933 case"true": 13934 f.option.strict = !0; 13935 break; 13936 case"false": 13937 f.option.strict = !1; 13938 break; 13939 case"func": 13940 case"global": 13941 case"implied": 13942 f.option.strict = i; 13943 break; 13944 default: 13945 q("E002", e) 13946 } 13947 return 13948 } 13949 n === "module" && (zt(f.funct) || q("E055", f.tokens.next, "module")); 13950 var s = {es3: 3, es5: 5, esnext: 6}; 13951 if (r.has(s, n)) { 13952 switch (i) { 13953 case"true": 13954 f.option.moz = !1, f.option.esversion = s[n]; 13955 break; 13956 case"false": 13957 f.option.moz || (f.option.esversion = 5); 13958 break; 13959 default: 13960 q("E002", e) 13961 } 13962 return 13963 } 13964 if (n === "esversion") { 13965 switch (i) { 13966 case"5": 13967 f.inES5(!0) && F("I003"); 13968 case"3": 13969 case"6": 13970 f.option.moz = !1, f.option.esversion = +i; 13971 break; 13972 case"2015": 13973 f.option.moz = !1, f.option.esversion = 6; 13974 break; 13975 default: 13976 q("E002", e) 13977 } 13978 zt(f.funct) || q("E055", f.tokens.next, "esversion"); 13979 return 13980 } 13981 var u = /^([+-])(W\d{3})$/g.exec(n); 13982 if (u) { 13983 f.ignored[u[2]] = u[1] === "-"; 13984 return 13985 } 13986 var a;
13987 if (i === "true" || i === "false") { 13988 e.type === "jslint" ? (a = c.renamed[n] || n, f.option[a] = i === "true", c.inverted[a] !== undefined && (f.option[a] = !f.option[a])) : f.option[n] = i === "true", n === "newcap" && (f.option["(explicitNewcap)"] = !0); 13989 return 13990 } 13991 q("E002", e) 13992 }), H() 13993 } 13994 13995 function W(e) { 13996 var t = e || 0, n = y.length, r; 13997 if (t < n) return y[t]; 13998 while (n <= t) r = y[n], r || (r = y[n] = b.token()), n += 1; 13999 return !r && f.tokens.next.id === "(end)" ? f.tokens.next : r 14000 } 14001 14002 function X() { 14003 var e = 0, t; 14004 do t = W(e++); while (t.id === "(endline)"); 14005 return t 14006 } 14007 14008 function V(e, t) { 14009 switch (f.tokens.curr.id) { 14010 case"(number)": 14011 f.tokens.next.id === "." && F("W005", f.tokens.curr); 14012 break; 14013 case"-": 14014 (f.tokens.next.id === "-" || f.tokens.next.id === "--") && F("W006"); 14015 break; 14016 case"+": 14017 (f.tokens.next.id === "+" || f.tokens.next.id === "++") && F("W007") 14018 } 14019 e && f.tokens.next.id !== e && (t ? f.tokens.next.id === "(end)" ? q("E019", t, t.id) : q("E020", f.tokens.next, e, t.id, t.line, f.tokens.next.value) : (f.tokens.next.type !== "(identifier)" || f.tokens.next.value !== e) && F("W116", f.tokens.next, e, f.tokens.next.value)), f.tokens.prev = f.tokens.curr, f.tokens.curr = f.tokens.next; 14020 for (; ;) { 14021 f.tokens.next = y.shift() || b.token(), f.tokens.next || B("E041", f.tokens.curr.line); 14022 if (f.tokens.next.id === "(end)" || f.tokens.next.id === "(error)") return; 14023 f.tokens.next.check && f.tokens.next.check(); 14024 if (f.tokens.next.isSpecial) f.tokens.next.type === "falls through" ? f.tokens.curr.caseFallsThrough = !0 : z(); else if (f.tokens.next.id !== "(endline)") break 14025 } 14026 } 14027 14028 function $(e) { 14029 return e.infix || !e.identifier && !e.template && !!e.led 14030 } 14031 14032 function J() { 14033 var e = f.tokens.curr, t = f.tokens.next; 14034 return t.id === ";" || t.id === "}" || t.id === ":" ? !0 : $(t) === $(e) || e.id === "yield" && f.inMoz() ? e.line !== G(t) : !1 14035 } 14036 14037 function K(e) { 14038 return !e.left && e.arity !== "unary" 14039 } 14040 14041 function Q(e, t) { 14042 var n, i = !1, s = !1, o = !1; 14043 f.nameStack.push(), !t && f.tokens.next.value === "let" && W(0).value === "(" && (f.inMoz() || F("W118", f.tokens.next, "let expressions"), o = !0, f.funct["(scope)"].stack(), V("let"), V("("), f.tokens.prev.fud(), V(")")), f.tokens.next.id === "(end)" && q("E006", f.tokens.curr); 14044 var u = f.option.asi && f.tokens.prev.line !== G(f.tokens.curr) && r.contains(["]", ")"], f.tokens.prev.id) && r.contains(["[", "("], f.tokens.curr.id); 14045 u && F("W014", f.tokens.curr, f.tokens.curr.id), V(), t && (f.funct["(verb)"] = f.tokens.curr.value, f.tokens.curr.beginsStmt = !0); 14046 if (t === !0 && f.tokens.curr.fud) n = f.tokens.curr.fud(); else { 14047 f.tokens.curr.nud ? n = f.tokens.curr.nud() : q("E030", f.tokens.curr, f.tokens.curr.id); 14048 while ((e < f.tokens.next.lbp || f.tokens.next.type === "(template)") && !J()) i = f.tokens.curr.value === "Array", s = f.tokens.curr.value === "Object", n && (n.value || n.first && n.first.value) && (n.value !== "
14048new" || n.first && n.first.value && n.first.value === ".") && (i = !1, n.value !== f.tokens.curr.value && (s = !1)), V(), i && f.tokens.curr.id === "(" && f.tokens.next.id === ")" && F("W009", f.tokens.curr), s && f.tokens.curr.id === "(" && f.tokens.next.id === ")" && F("W010", f.tokens.curr), n && f.tokens.curr.led ? n = f.tokens.curr.led(n) : q("E033", f.tokens.curr, f.tokens.curr.id) 14049 } 14050 return o && f.funct["(scope)"].unstack(), f.nameStack.pop(), n 14051 } 14052 14053 function G(e) { 14054 return e.startLine || e.line 14055 } 14056 14057 function Y(e, t) { 14058 e = e || f.tokens.curr, t = t || f.tokens.next, !f.option.laxbreak && e.line !== G(t) && F("W014", t, t.value) 14059 } 14060 14061 function Z(e) { 14062 e = e || f.tokens.curr, e.line !== G(f.tokens.next) && F("E022", e, e.value) 14063 } 14064 14065 function et(e, t) { 14066 e.line !== G(t) && (f.option.laxcomma || (tt.first && (F("I001"), tt.first = !1), F("W014", e, t.value))) 14067 } 14068 14069 function tt(e) { 14070 e = e || {}, e.peek ? et(f.tokens.prev, f.tokens.curr) : (et(f.tokens.curr, f.tokens.next), V(",")); 14071 if (f.tokens.next.identifier && (!e.property || !f.inES5())) switch (f.tokens.next.value) { 14072 case"break": 14073 case"case": 14074 case"catch": 14075 case"continue": 14076 case"default": 14077 case"do": 14078 case"else": 14079 case"finally": 14080 case"for": 14081 case"if": 14082 case"in": 14083 case"instanceof": 14084 case"return": 14085 case"switch": 14086 case"throw": 14087 case"try": 14088 case"var": 14089 case"let": 14090 case"while": 14091 case"with": 14092 return q("E024", f.tokens.next, f.tokens.next.value), !1 14093 } 14094 if (f.tokens.next.type === "(punctuator)") switch (f.tokens.next.value) { 14095 case"}": 14096 case"]": 14097 case",": 14098 if (e.allowTrailing) return !0; 14099 case")": 14100 return q("E024", f.tokens.next, f.tokens.next.value), !1 14101 } 14102 return !0 14103 } 14104 14105 function nt(e, t) { 14106 var n = f.syntax[e]; 14107 if (!n || typeof n != "object") f.syntax[e] = n = {id: e, lbp: t, value: e}; 14108 return n 14109 } 14110 14111 function rt(e) { 14112 var t = nt(e, 0); 14113 return t.delim = !0, t 14114 } 14115 14116 function it(e, t) { 14117 var n = rt(e); 14118 return n.identifier = n.reserved = !0, n.fud = t, n 14119 } 14120 14121 function st(e, t) { 14122 var n = it(e, t); 14123 return n.block = !0, n 14124 } 14125 14126 function ot(e) { 14127 var t = e.id.charAt(0); 14128 if (t >= "a" && t <= "z" || t >= "A" && t <= "Z") e.identifier = e.reserved = !0; 14129 return e 14130 } 14131 14132 function ut(e, t) { 14133 var n = nt(e, 150); 14134 return ot(n), n.nud = typeof t == "function" ? t : function () { 14135 this.arity = "unary", this.right = Q(150); 14136 if (this.id === "++" || this.id === "--") f.option.plusplus ? F("W016", this, this.id) : this.right && (!this.right.identifier || O(this.right)) && this.right.id !== "." && this.right.id !== "[" && F("W017", this), this.right && this.right.isMetaProperty ? q("E031", this) : this.right && this.right.identifier && f.funct["(scope)"].block.modify(this.right.value, this); 14137 return this 14138 }, n 14139 } 14140 14141 function at(e, t) { 14142 var n = rt(e); 14143 return n.type = e, n.nud = t, n 14144 } 14145 14146 function ft(e, t) { 14147 var n = at(e, t); 14148 return n.identifier = !0, n.reserved = !0, n 14149 } 14150 14151 function lt(e, t) { 14152 var n = at(e, t && t.nud || function () { 14153 return this 14154 }); 14155 return t = t || {}, t.isFutureReservedWord = !0, n.value = e, n.identifier = !0, n.reserved = !0, n.meta = t, n 14156 } 14157 14158 function ct(e, t) { 14159 return ft(e, function () { 14160 return typeof t == "function" && t(this), this 14161 }) 14162 } 14163 14164 function ht(e, t, n, r) { 14165 var i = nt(e, n); 14166 return ot(i), i.infix = !0, i.led = function (i) { 14167 return r || Y(f.tokens.prev, f.tokens.curr), (e === "in" || e === "instanceof") && i.id === "!" && F("W018", i, "!"), typeof t == "function" ? t(i, this) : (this.left = i, this.right = Q(n), this) 14168 }, i 14169 } 14170 14171 function pt(e) { 14172 var t = nt(e, 42); 14173 return t.led = function (e) { 14174 return Y(f.tokens.prev, f.tokens.curr), this.left = e, this.right = Xt({ 14175 type: "arrow", 14176 loneArg: e 14177 }), this 14178 }, t 14179 } 14180 14181 function dt(e, t) { 14182 var n = nt(e, 100); 14183 return n.led = function (e) { 14184 Y(f.tokens.prev, f.tokens.curr), this.left = e; 14185 var n = this.right = Q(100); 14186 return A(e, "NaN") || A(n, "NaN") ? F("W019", this) : t && t.apply(this, [e, n]), (!e || !n) && B("E041", f.tokens.curr.line), e.id === "!" && F("W018", e, "!"), n.id === "!" && F("W018", n, "!"), this 14187 }, n 14188 } 14189 14190 function vt(e) { 14191 return e && (e.type === "(number)" && +e.value === 0 || e.type === "(string)" && e.value === "" || e.type === "null" && !f.option.eqnull || e.type === "true" || e.type === "fal
14191se" || e.type === "undefined") 14192 } 14193 14194 function gt(e, t, n) { 14195 var i; 14196 return n.option.notypeof ? !1 : !e || !t ? !1 : (i = n.inES6() ? mt.es6 : mt.es3, t.type === "(identifier)" && t.value === "typeof" && e.type === "(string)" ? !r.contains(i, e.value) : !1) 14197 } 14198 14199 function yt(e, t) { 14200 var n = !1; 14201 return e.type === "this" && t.funct["(context)"] === null ? n = !0 : e.type === "(identifier)" && (t.option.node && e.value === "global" ? n = !0 : t.option.browser && (e.value === "window" || e.value === "document") && (n = !0)), n 14202 } 14203 14204 function bt(e) { 14205 function n(e) { 14206 if (typeof e != "object") return; 14207 return e.right === "prototype" ? e : n(e.left) 14208 } 14209 14210 function r(e) { 14211 while (!e.identifier && typeof e.left == "object") e = e.left; 14212 if (e.identifier && t.indexOf(e.value) >= 0) return e.value 14213 } 14214 14215 var t = ["Array", "ArrayBuffer", "Boolean", "Collator", "DataView", "Date", "DateTimeFormat", "Error", "EvalError", "Float32Array", "Float64Array", "Function", "Infinity", "Intl", "Int16Array", "Int32Array", "Int8Array", "Iterator", "Number", "NumberFormat", "Object", "RangeError", "ReferenceError", "RegExp", "StopIteration", "String", "SyntaxError", "TypeError", "Uint16Array", "Uint32Array", "Uint8Array", "Uint8ClampedArray", "URIError"], 14216 i = n(e); 14217 if (i) return r(i) 14218 } 14219 14220 function wt(e, t, n) { 14221 var r = n && n.allowDestructuring; 14222 t = t || e; 14223 if (f.option.freeze) { 14224 var i = bt(e); 14225 i && F("W121", e, i) 14226 } 14227 return e.identifier && !e.isMetaProperty && f.funct["(scope)"].block.reassign(e.value, e), e.id === "." ? ((!e.left || e.left.value === "arguments" && !f.isStrict()) && F("E031", t), f.nameStack.set(f.tokens.prev), !0) : e.id === "{" || e.id === "[" ? (r && f.tokens.curr.left.destructAssign ? f.tokens.curr.left.destructAssign.forEac
14227h(function (e) { 14228 e.id && f.funct["(scope)"].block.modify(e.id, e.token) 14229 }) : e.id === "{" || !e.left ? F("E031", t) : e.left.value === "arguments" && !f.isStrict() && F("E031", t), e.id === "[" && f.nameStack.set(e.right), !0) : e.isMetaProperty ? (q("E031", t), !0) : e.identifier && !O(e) ? (f.funct["(scope)"].labeltype(e.value) === "exception" && F("W022", e), f.nameStack.set(e), !0) : (e === f.syntax["function"] && F("W023", f.tokens.curr), !1) 14230 } 14231 14232 function Et(e, t, n) { 14233 var r = ht(e, typeof t == "function" ? t : function (e, t) { 14234 t.left = e; 14235 if (e && wt(e, t, {allowDestructuring: !0})) return t.right = Q(10), t; 14236 q("E031", t) 14237 }, n); 14238 return r.exps = !0, r.assign = !0, r 14239 } 14240 14241 function St(e, t, n) { 14242 var r = nt(e, n); 14243 return ot(r), r.led = typeof t == "function" ? t : function (e) { 14244 return f.option.bitwise && F("W016", this, this.id), this.left = e, this.right = Q(n), this 14245 }, r 14246 } 14247 14248 function xt(e) { 14249 return Et(e, function (e, t) { 14250 f.option.bitwise && F("W016", t, t.id); 14251 if (e && wt(e, t)) return t.right = Q(10), t; 14252 q("E031", t) 14253 }, 20) 14254 } 14255 14256 function Tt(e) { 14257 var t = nt(e, 150); 14258 return t.led = function (e) { 14259 return f.option.plusplus ? F("W016", this, this.id) : (!e.identifier || O(e)) && e.id !== "." && e.id !== "[" && F("W017", this), e.isMetaProperty ? q("E031", this) : e && e.identifier && f.funct["(scope)"].block.modify(e.value, e), this.left = e, this 14260 }, t 14261 } 14262 14263 function Nt(e, t, n) { 14264 if (!f.tokens.next.identifier) return; 14265 n || V(); 14266 var r = f.tokens.curr, i = f.tokens.curr.value; 14267 return O(r) ? t && f.inES5() ? i : e && i === "undefined" ? i : (F("W024", f.tokens.curr, f.tokens.curr.id), i) : i 14268 } 14269 14270 function Ct(e, t) { 14271 var n = Nt(e, t, !1); 14272 if (n) return n; 14273 if (f.tokens.next.value === "...") { 14274 f.inES6(!0) || F("W119", f.tokens.next, "spread/rest operator", "6"), V(); 14275 if (pn(f.tokens.next, "...")) { 14276 F("E024", f.tokens.next, "..."); 14277 while (pn(f.tokens.next, "...")) V() 14278 } 14279 if (!f.tokens.next.identifier) { 14280 F("E024", f.tokens.curr, "..."); 14281 return 14282 } 14283 return Ct(e, t) 14284 } 14285 q("E030", f.tokens.next, f.tokens.next.value), f.tokens.next.id !== ";" && V() 14286 } 14287 14288 function kt(e) { 14289 var t = 0, n; 14290 if (f.tokens.next.id !== ";" || e.inBracelessBlock) return; 14291 for (; ;) { 14292 do n = W(t), t += 1; while (n.id !== "(end)" && n.id === "(comment)"); 14293 if (n.reach) return; 14294 if (n.id !== "(endline)") { 14295 if (n.id === "function") { 14296 f.option.latedef === !0 && F("W026", n); 14297 break 14298 } 14299 F("W027", n, n.value, e.value); 14300 break 14301 } 14302 } 14303 } 14304 14305 function Lt() { 14306 if (f.tokens.next.id !== ";") { 14307 if (f.tokens.next.isUnclosed) return V(); 14308 var e = G(f.tokens.next) === f.tokens.curr.line && f.tokens.next.id !== "(end)", 14309 t = pn(f.tokens.next, "}"); 14310 e && !t ? R("E058", f.tokens.curr.line, f.tokens.curr.character) : f.option.asi || (t && !f.option.lastsemic || !e) && I("W033", f.tokens.curr.line, f.tokens.curr.character) 14311 } else V(";") 14312 } 14313 14314 function At() { 14315 var e = g, t, n = f.tokens.next, r = !1; 14316 if (n.id === ";") { 14317 V(";"); 14318 return 14319 } 14320 var i = O(n); 14321 i && n.meta && n.meta.isFutureReservedWord && W().id === ":" && (F("W024", n, n.id), i = !1), n.identifier && !i && W().id === ":" && (V(), V(":"), r = !0, f.funct["(scope)"].stack(), f.funct["(scope)"].block.addBreakLabel(n.value, {token: f.tokens.curr}), !f.tokens.next.labelled && f.tokens.next.value !== "{" && F("W028", f.tokens.next, n.value, f.tokens.next.value), f.tokens.next.label = n.value, n = f.tokens.next); 14322 if (n.id === "{") { 14323 var s = f.funct["(verb)"] === "case" && f.tokens.curr.value === ":"; 14324 _t(!0, !0, !1, !1, s); 14325 return 14326 } 14327 return t = Q(0, !0), t && (!t.identifier || t.value !== "function") && (t.type !== "(punctuator)" || !t.left || !t.left.identifier || t.left.value !== "function") && !f.isStrict() && f.option.strict === "global" && F("E007"), n.block || (!f.o
14327ption.expr && (!t || !t.exps) ? F("W030", f.tokens.curr) : f.option.nonew && t && t.left && t.id === "(" && t.left.id === "new" && F("W031", n), Lt()), g = e, r && f.funct["(scope)"].unstack(), t 14328 } 14329 14330 function Ot() { 14331 var e = [], t; 14332 while (!f.tokens.next.reach && f.tokens.next.id !== "(end)") f.tokens.next.id === ";" ? (t = W(), (!t || t.id !== "(" && t.id !== "[") && F("W032"), V(";")) : e.push(At()); 14333 return e 14334 } 14335 14336 function Mt() { 14337 var e, t, n; 14338 while (f.tokens.next.id === "(string)") { 14339 t = W(0); 14340 if (t.id === "(endline)") { 14341 e = 1; 14342 do n = W(e++); while (n.id === "(endline)"); 14343 if (n.id === ";") t = n; else { 14344 if (n.value === "[" || n.value === ".") break; 14345 (!f.option.asi || n.value === "(") && F("W033", f.tokens.next) 14346 } 14347 } else { 14348 if (t.id === "." || t.id === "[") break; 14349 t.id !== ";" && F("W033", t) 14350 } 14351 V(); 14352 var r = f.tokens.curr.value; 14353 (f.directive[r] || r === "use strict" && f.option.strict === "implied") && F("W034", f.tokens.curr, r), f.directive[r] = !0, t.id === ";" && V(";") 14354 } 14355 f.isStrict() && (f.option["(explicitNewcap)"] || (f.option.newcap = !0), f.option.undef = !0) 14356 } 14357 14358 function _t(e, t, n, i, s) { 14359 var o, u = m, a = g, l, c, h, p; 14360 m = e, c = f.tokens.next; 14361 var d = f.funct["(metrics)"]; 14362 d.nestedBlockDepth += 1, d.verifyMaxNestedBlockDepthPerFunction(); 14363 if (f.tokens.next.id === "{") { 14364 V("{"), f.funct["(scope)"].stack(), h = f.tokens.curr.line; 14365 if (f.tokens.next.id !== "}") { 14366 g += f.option.indent; 14367 while (!e && f.tokens.next.from > g) g += f.option.indent; 14368 if (n) { 14369 l = {}; 14370 for (p in f.directive) r.has(f.directive, p) && (l[p] = f.directive[p]); 14371 Mt(), f.option.strict && f.funct["(context)"]["(global)"] && !l["use strict"] && !f.isStrict() && F("E007") 14372 } 14373 o = Ot(), d.statementCount += o.length, g -= f.option.indent 14374 } 14375 V("}", c), n && (f.funct["(scope)"].validateParams(), l && (f.directive = l)), f.funct["(scope)"].unstack(), g = a 14376 } else if (!e) if (n) { 14377 f.funct["(scope)"].stack(), l = {}, t && !i && !f.inMoz() && q("W118", f.tokens.curr, "function closure expressions"); 14378 if (!t) for (p in f.directive) r.has(f.directive, p) && (l[p] = f.directive[p]); 14379 Q(10), f.option.strict && f.funct["(context)"]["(global)"] && !l["use strict"] && !f.isStrict() && F("E007"), f.funct["(scope)"].unstack() 14380 } else q("E021", f.tokens.next, "{", f.tokens.next.value); else f.funct["(noblockscopedvar)"] = f.tokens.next.id !== "for", f.funct["(scope)"].stack(), (!t || f.option.curly) && F("W116", f.tokens.next, "{", f.tokens.next.value), f.tokens.next.inBracelessBlock = !0, g += f.option.indent, o = [At()], g -= f.option.indent, f.funct["(scope)"].unstack(), delete f.funct["(noblockscopedvar)"]; 14381 switch (f.funct["(verb)"]) { 14382 case"break": 14383 case"continue": 14384 case"return": 14385 case"throw": 14386 if (s) break; 14387 default: 14388 f.funct["(verb)"] = null 14389 } 14390 return m = u, e && f.option.noempty && (!o || o.length === 0) && F("W035", f.tokens.prev), d.nestedBlockDepth -= 1, o 14391 } 14392 14393 function Dt(e) { 14394 E && typeof E[e] != "boolean" && F("W036", f.tokens.curr, e), typeof w[e] == "number" ? w[e] += 1 : w[e] = 1 14395 } 14396 14397 function Bt() { 14398 var e = {}; 14399 e.exps = !0, f.funct["(comparray)"].stack(); 14400 var t = !1; 14401 return f.tokens.next.value !== "for" && (t = !0, f.inMoz() || F("W116", f.tokens.next, "for", f.tokens.next.value), f.funct["(comparray)"].setState("use"), e.right = Q(10)), V("for"), f.tokens.next.value === "each" && (V("each"), f.inMoz() || F("W118", f.tokens.curr, "for each")), V("("), f.funct["(comparray)"].setState("define"), e.left = Q(130), r.contains(["in", "of"], f.tokens.next.value) ? V() : q("E045", f.tokens.curr), f.funct["(comparray)"].setState("generate"), Q(10), V(")"), f.tokens.next.value === "if" && (V("if"), V("("), f.funct["(comparray)"].setState("filter"), e.filter = Q(10), V(")")), t || (f.funct["(comparray)"].setState("use"), e.right = Q(10)), V("]"), f.funct["(comparray)"].unstack(), e 14402 } 14403 14404 function jt() { 14405 return f.funct["(statement)"] && f.funct["(statement)"].type === "class" || f.funct["(context)"] && f.funct["(context)"]["(verb)"] === "class" 14406 } 14407 14408 function Ft(e) { 14409 return e.identifier || e.id === "(string)" || e.id === "(number)" 14410 } 14411 14412 function It(e) { 14413 var t, n = !0; 14414 return typeof e == "object" ? t = e : (n = e, t = Nt(!1, !0, n)), t ? typeof t == "object" && (t.id === "(string)" || t.id === "(identifier)" ? t = t.value : t.id === "(number)" && (t = t.value.toString())) : f.tokens.next.id === "(string)" ? (t = f.tokens.next.value, n || V()) : f.tokens.next.id === "(number)" && (t = f.tokens.next.value.toString(), n || V()), t === "hasOwnProperty" && F("W001"), t 14415 } 14416 14417 function qt(e) { 14418 function h(e) { 14419 f.funct["(scope)"].addParam.apply(f.funct["(scope)"], e) 14420 } 14421 14422 var t, n = [], i, s = [], o, u = !1, a = !1, l = 0, c = e && e.loneArg; 14423 if (c && c.identifier === !0) return f.funct["(scope)"].addParam(c.value, c), { 14424 arity: 1, 14425 params: [c.value] 14426 }; 14427 t = f.tokens.next, (!e || !e.parsedOpening) && V("("); 14428 if (f.tokens.next.id === ")") { 14429 V(")"); 14430 return 14431 } 14432 for (; ;) { 14433 l++; 14434 var p = []; 14435 if (r.contains(["{", "["], f.tokens.next.id)) { 14436 s = Gt(); 14437 for (o in s) o = s[o], o.id && (n.push(o.id), p.push([o.id, o.token])) 14438 } else { 14439 pn(f.tokens.next, "...") && (a = !0), i = Ct(!0); 14440 if (i) n.push(i), p.push([i, f.tokens.curr]); else while (!hn(f.tokens.next, [",", ")"])) V() 14441 } 14442 u && f.tokens.next.id !== "=" && q("W138", f.tokens.current), f.tokens.next.id === "=" && (f.inES6() || F("W119", f.tokens.next, "default parameters", "6"), V("="), u = !0, Q(10)), p.forEach(h); 14443 if (f.tokens.next.id !== ",") return V(")", t), {arity: l, params: n}; 14444 a && F("W131", f.tokens.next), tt() 14445 } 14446 } 14447 14448 function Rt(e, t, n) { 14449 var i = { 14450 "(name)": e, 14451 "(breakage)": 0, 14452 "(loopage)": 0, 14453 "(tokens)": {}, 14454 "(properties)": {}, 14455 "(catch)": !1, 14456 "(global)": !1, 14457 "(line)": null, 14458 "(character)": null, 14459 "(metrics)": null, 14460 "(statement)": null, 14461 "(context)": null, 14462 "(scope)": null, 14463 "(comparray)": null, 14464 "(generator)": null, 14465 "(arrow)": null, 14466 "(params)": null 14467 }; 14468 return t && r.extend(i, { 14469 "(line)": t.line, 14470 "(character)": t.character, 14471 "(metrics)": Vt(t) 14472 }
14472), r.extend(i, n), i["(context)"] && (i["(scope)"] = i["(context)"]["(scope)"], i["(comparray)"] = i["(context)"]["(comparray)"]), i 14473 } 14474 14475 function Ut(e) { 14476 return "(scope)" in e 14477 } 14478 14479 function zt(e) { 14480 return e["(global)"] && !e["(verb)"] 14481 } 14482 14483 function Wt(e) { 14484 function i() { 14485 if (f.tokens.curr.template && f.tokens.curr.tail && f.tokens.curr.context === t) return !0; 14486 var e = f.tokens.next.template && f.tokens.next.tail && f.tokens.next.context === t; 14487 return e && V(), e || f.tokens.next.isUnclosed 14488 } 14489 14490 var t = this.context, n = this.noSubst, r = this.depth; 14491 if (!n) while (!i()) !f.tokens.next.template || f.tokens.next.depth > r ? Q(0) : V(); 14492 return {id: "(template)", type: "(template)", tag: e} 14493 } 14494 14495 function Xt(e) { 14496 var t, n, r, i, s, o, u, a, l = f.option, c = f.ignored; 14497 e && (r = e.name, i = e.statement, s = e.classExprBinding, o = e.type === "generator", u = e.type === "arrow", a = e.ignoreLoopFunc), f.option = Object.create(f.option), f.ignored = Object.create(f.ignored), f.funct = Rt(r || f.nameStack.infer(), f.tokens.next, { 14498 "(statement)": i, 14499 "(context)": f.funct, 14500 "(arrow)": u, 14501 "(generator)": o 14502 }), t = f.funct, n = f.tokens.curr, n.funct = f.funct, v.push(f.funct), f.funct["(scope)"].stack("functionouter"); 14503 var h = r || s; 14504 h && f.funct["(scope)"].block.add(h, s ? "class" : "function", f.tokens.curr, !1), f.funct["(scope)"].stack("functionparams"); 14505 var p = qt(e); 14506 return p ? (f.funct["(params)"] = p.params, f.funct["(metrics)"].arity = p.arity, f.funct["(metrics)"].verifyMaxParametersPerFunction()) : f.funct["(metrics)"].arity = 0, u && (f.inES6(!0) || F("W119", f.tokens.curr, "arrow function syntax (=>)", "6"), e.loneArg || V("=>")), _t(!1, !0, !0, u), !f.option.noyield && o && f.funct["(generator)"] !== "yielded" && F("W124", f.tokens.curr), f.funct["(metrics)"].verifyMaxStatementsPerFunction(), f.funct["(metrics)"].verifyMaxComplexityPerFunction(), f.funct["(unusedOption)"] = f.option.unused, f.option = l, f.ignored = c, f.funct["(last)"] = f.tokens.curr.line, f.funct["(lastcharacter)"] = f.tokens.curr.character, f.funct["(scope)"].unstack(), f.funct["(scope)"].unstack(), f.funct = f.funct["(context)"], !a && !f.option.loopfunc && f.funct["(loopage)"] && t["(isCapturing)"] && F("W083", n), t 14507 } 14508 14509 function Vt(e) { 14510 return { 14511 statementCount: 0, 14512 nestedBlockDepth: -1, 14513 ComplexityCount: 1, 14514 arity: 0, 14515 verifyMaxStatementsPerFunction: function () { 14516 f.option.maxstatements && this.statementCount > f.option.maxstatements && F("W071", e, this.statementCount) 14517 }, 14518 verifyMaxParametersPerFunction: function () { 14519 r.isNumber(f.option.maxparams) && this.arity > f.option.maxparams && F("W072", e, this.arity) 14520 }, 14521 verifyMaxNestedBlockDepthPerFunction: function () { 14522 f.option.maxdepth && this.nestedBlockDepth > 0 && this.nestedBlockDepth === f.option.maxdepth + 1 && F("W073", null, this.nestedBlockDepth) 14523 }, 14524 verifyMaxComplexityPerFunction: function () { 14525 var t = f.option.maxcomplexity, n = this.ComplexityCount; 14526 t && n > t && F("W074", e, n) 14527 } 14528 } 14529 } 14530 14531 function $t() { 14532 f.funct["(metrics)"].ComplexityCount += 1 14533 } 14534 14535 function Jt(e) { 14536 var t, n; 14537 e && (t = e.id, n = e.paren, t === "," && (e = e.exprs[e.exprs.length - 1]) && (t = e.id, n = n || e.paren)); 14538 switch (t) { 14539 case"=": 14540 case"+=": 14541 case"-=": 14542 case"*=": 14543 case"%=": 14544 case"&=": 14545 case"|=": 14546 case"^=": 14547 case"/=": 14548 !n && !f.option.boss && F("W084") 14549 } 14550 } 14551 14552 function Kt(e) { 14553 if (f.inES5()) for (var t in e) e[t] && e[t].setterToken && !e[t].getterToken && F("W078", e[t].setterToken) 14554 } 14555 14556 function Qt(e, t) { 14557 if (pn(f.tokens.next, ".")) { 14558 var n = f.tokens.curr.id; 14559 V("."); 14560 var r = Ct(); 14561 return f.tokens.curr.isMetaProperty = !0, e !== r ? q("E057", f.tokens.prev, n, r) : t(), f.tokens.curr 14562 } 14563 } 14564 14565 function Gt(e) { 14566 var t = e && e.assignment; 14567 return f.inES6() || F("W104", f.tokens.curr, t ? "destructuring assignment" : "destructuring binding", "6"), Yt(e) 14568 } 14569 14570 function Yt(e) { 14571 var t, n = [], r = e && e.openingParsed, i = e && e.assignment, s = i ? {assignment: i} : null, 14572 o = r ? f.tokens.curr : f.tokens.next, u = function () { 14573 var e; 14574 if (hn(f.tokens.next, ["[", "{"])) { 14575 t = Yt(s); 14576 for (var r in t) r = t[r], n.push({id: r.id, token: r.token}) 14577 } else if (pn(f.tokens.next, ",")) n.push({id: null, token: f.tokens.curr}); else { 14578 if (!pn(f.tokens.next, "(")) { 14579 var o = pn(f.tokens.next, "..."); 14580 if (i) { 14581 var a = o ? W(0) : f.tokens.next; 14582 a.identifier || F("E030", a, a.value); 14583 var l = Q(155); 14584 l && (wt(l), l.identifier && (e = l.value)) 14585 } else e = Ct(); 14586 return e && n.push({id: e, token: f.tokens.curr}), o 14587 } 14588 V("("), u(), V(")") 14589 } 14590 return !1 14591 }, a = function () { 14592 var e; 14593 pn(f.tokens.next, "[") ? (V("["), Q(10), V("]"), V(":"), u()) : f.tokens.next.id === "(string)" || f.tokens.next.id === "(number)" ? (V(), V(":"), u()) : (e = Ct(), pn(f.tokens.next, ":") ? (V(":"), u()) : e && (i && wt(f.tokens.curr), n.push({ 14594 id: e, 14595 token: f.tokens.curr 14596 }))) 14597 }; 14598 if (pn(o, "[")) { 14599 r || V("["), pn(f.tokens.next, "]") && F("W137", f.tokens.curr); 14600 var l = !1; 14601 while (!pn(f.tokens.next, "]")) u() && !l && pn(f.tokens.next, ",") && (F("W130", f.tokens.next), l = !0), pn(f.tokens.next, "=") && (pn(f.tokens.prev, "...") ? V("]") : V("="), f.tokens.next.id === "undefined" && F("W080", f.tokens.prev, f.tokens.prev.value), Q(10)), pn(f.tokens.next, "]") || V(","); 14602 V("]") 14603 } else if (pn(o, "{")) { 14604 r || V("{"), pn(f.tokens.next, "}") && F("W137", f.tokens.curr); 14605 while (!pn(f.tokens.next, "}")) { 14606 a(), pn(f.tokens.next, "=") && (V("="), f.tokens.next.id === "undefined" && F("W080", f.tokens.prev, f.tokens.prev.value), Q(10)); 14607 if (!pn(f.tokens.next, "}")) { 14608 V(","); 14609 if (pn(f.tokens.next, "}")) break 14610 } 14611 } 14612 V("}") 14613 } 14614 return n 14615 } 14616 14617 function Zt(e, t) { 14618 var n = t.first; 14619 if (!n) return;
14620 r.zip(e, Array.isArray(n) ? n : [n]).forEach(function (e) { 14621 var t = e[0], n = e[1]; 14622 t && n ? t.first = n : t && t.first && !n && F("W080", t.first, t.first.value) 14623 }) 14624 } 14625 14626 function en(e, t, n) { 14627 var i = n && n.prefix, s = n && n.inexport, o = e === "let", u = e === "const", a, l, c, h; 14628 f.inES6() || F("W104", f.tokens.curr, e, "6"), o && f.tokens.next.value === "(" ? (f.inMoz() || F("W118", f.tokens.next, "let block"), V("("), f.funct["(scope)"].stack(), h = !0) : f.funct["(noblockscopedvar)"] && q("E048", f.tokens.curr, u ? "Const" : "Let"), t.first = []; 14629 for (; ;) { 14630 var p = []; 14631 r.contains(["{", "["], f.tokens.next.value) ? (a = Gt(), l = !1) : (a = [{ 14632 id: Ct(), 14633 token: f.tokens.curr 14634 }], l = !0), !i && u && f.tokens.next.id !== "=" && F("E012", f.tokens.curr, f.tokens.curr.value); 14635 for (var d in a) a.hasOwnProperty(d) && (d = a[d], f.funct["(scope)"].block.isGlobal() && S[d.id] === !1 && F("W079", d.token, d.id), d.id && !f.funct["(noblockscopedvar)"] && (f.funct["(scope)"].addlabel(d.id, { 14636 type: e, 14637 token: d.token 14638 }), p.push(d.token), l && s && f.funct["(scope)"].setExported(d.token.value, d.token))); 14639 f.tokens.next.id === "=" && (V("="), !i && f.tokens.next.id === "undefined" && F("W080", f.tokens.prev, f.tokens.prev.value), !i && W(0).id === "=" && f.tokens.next.identifier && F("W120", f.tokens.next, f.tokens.next.value), c = Q(i ? 120 : 10), l ? a[0].first = c : Zt(p, c)), t.first = t.first.concat(p); 14640 if (f.tokens.next.id !== ",") break; 14641 tt() 14642 } 14643 return h && (V(")"), _t(!0, !0), t.block = !0, f.funct["(scope)"].unstack()), t 14644 } 14645 14646 function sn(e) { 14647 return f.inES6() || F("W104", f.tokens.curr, "class", "6"), e ? (this.name = Ct(), f.funct["(scope)"].addlabel(this.name, { 14648 type: "class", 14649 token: f.tokens.curr 14650 })) : f.tokens.next.identifier && f.tokens.next.value !== "extends" ? (this.name = Ct(), this.namedExpr = !0) : this.name = f.nameStack.infer(), on(this), this 14651 } 14652 14653 function on(e) { 14654 var t = f.inClassBody; 14655 f.tokens.next.value === "extends" && (V("extends"), e.heritage = Q(10)), f.inClassBody = !0, V("{"), e.body = un(e), V("}"), f.inClassBody = t 14656 } 14657 14658 function un(e) { 14659 var t, n, r, i, s = Object.create(null), o = Object.create(null), u; 14660 for (var a = 0; f.tokens.next.id !== "}"; ++a) { 14661 t = f.tokens.next, n = !1, r = !1, i = null; 14662 if (t.id === ";") { 14663 F("W032"), V(";"); 14664 continue 14665 } 14666 t.id === "*" && (r = !0, V("*"), t = f.tokens.next); 14667 if (t.id === "[") t = cn(), u = !0; else { 14668 if (!Ft(t)) { 14669 F("W052", f.tokens.next, f.tokens.next.value || f.tokens.next.type), V(); 14670 continue 14671 } 14672 V(), u = !1; 14673 if (t.identifier && t.value === "static") { 14674 pn(f.tokens.next, "*") && (r = !0, V("*")); 14675 if (Ft(f.tokens.next) || f.tokens.next.id === "[") u = f.tokens.next.id === "[", n = !0, t = f.tokens.next, f.tokens.next.id === "[" ? t = cn() : V() 14676 } 14677 t.identifier && (t.value === "get" || t.value === "set") && (Ft(f.tokens.next) || f.tokens.next.id === "[") && (u = f.tokens.next.id === "[", i = t, t = f.tokens.next, f.tokens.next.id === "[" ? t = cn() : V()) 14678 } 14679 if (!pn(f.tokens.next, "(")) { 14680 q("E054", f.tokens.next, f.tokens.next.value); 14681 while (f.tokens.next.id !== "}" && !pn(f.tokens.next, "(")) V(); 14682 f.tokens.next.value !== "(" && Xt({statement: e}) 14683 } 14684 u || (i ? ln(i.value, n ? o : s, t.value, t, !0, n) : (t.value === "constructor" ? f.nameStack.set(e) : f.nameStack.set(t), fn(n ? o : s, t.value, t, !0, n))); 14685 if (i && t.value === "constructor") { 14686 var l = i.value === "get" ? "class getter method" : "class setter method"; 14687 q("E049", t, l, "constructor") 14688 } else t.value === "prototype" && q("E049", t, "class method", "prototype"); 14689 It(t), Xt({ 14690 statement: e, 14691 type: r ? "generator" : null, 14692 classExprBinding: e.namedExpr ? e.name : null 14693 }) 14694 } 14695 Kt(s) 14696 } 14697 14698 function fn(e, t, n, r, i) { 14699 var s = ["key", "class method", "static class method"]; 14700 s = s[(r || !1) + (i || !1)], n.identifier && (t = n.value), e[t] && t !== "__proto__" ? F("W075", f.tokens.next, s, t) : e[t] = Object.create(null), e[t].basic = !0, e[t].basictkn = n 14701 } 14702 14703 function ln(e, t, n, r, i, s) { 14704 var o = e === "get" ? "getterToken" : "setterToken", u = ""; 14705 i ? (s && (u += "static "), u += e + "ter method") : u = "key", f.tokens.curr.accessorType = e, f.nameStack.set(r), t[n] ? (t[n].basic || t[n][o]) && n !== "__proto__" && F("W075", f.tokens.next, u, n) : t[n] = Object.create(null), t[n][o] = r 14706 } 14707 14708 function cn() { 14709 V("["), f.inES6() || F("W119", f.tokens.curr, "computed property names", "6"); 14710 var e = Q(10); 14711 return V("]"), e 14712 } 14713 14714 function hn(e, t) { 14715 return e.type === "(punctuator)" ? r.contains(t, e.value) : !1 14716 } 14717 14718 function pn(e, t) { 14719 return e.type === "(punctuator)" && e.value === t 14720 } 14721 14722 function dn() { 14723 var e = an(); 14724 e.notJson ? (!f.inES6() && e.isDestAssign && F("W104", f.tokens.curr, "destructuring assignment", "6"), Ot()) : (f.option.laxbreak = !0, f.jsonMode = !0, mn()) 14725 } 14726 14727 function mn() { 14728 function e() { 14729 var e = {}, t = f.tokens.next; 14730 V("{"); 14731 if (f.tokens.next.id !== "}") for (; ;) { 14732 if (f.tokens.next.id === "(end)") q("E026", f.tokens.next, t.line); else { 14733 if (f.tokens.next.id === "}") { 14734 F("W094", f.tokens.curr); 14735 break 14736 } 14737 f.tokens.next.id === "," ? q("E028", f.tokens.next) : f.tokens.next.id !== "(string)" && F("W095", f.tokens.next, f.tokens.next.value) 14738 } 14739 e[f.tokens.next.value] === !0 ? F("W075", f.tokens.next, "key", f.tokens.next.value) : f.tokens.next.value === "__proto__" && !f.option.proto || f.tokens.next.value === "__iterator__" && !f.option.iterator ? F("W096", f.tokens.next, f.tokens.next.value) : e[f.tokens.next.value] = !0, V(), V(":"), mn(); 14740 if (f.tokens.next.id !== ",") break; 14741 V(",") 14742 } 14743 V("}") 14744 } 14745 14746 function t() { 14747 var e = f.tokens.next; 14748 V("["); 14749 if (f.tokens.next.id !== "]") for (; ;) { 14750 if (f.tokens.next.id === "(end)") q("E027", f.tokens.next, e.line); else { 14751 if (f.tokens.next.id === "]") { 14752 F("W094", f.tokens.curr); 14753 break 14754 } 14755 f.tokens.next.id === "," && q("E028", f.tokens.next) 14756 } 14757 mn(); 14758 if (f.tokens.next.id !== ",") break; 14759 V(",") 14760 } 14761 V("]") 14762 } 14763 14764 switch (f.tokens.next.id) { 14765 case"{": 14766 e(); 14767 break; 14768 case"[": 14769 t(); 14770 break; 14771 case"true": 14772 case"false": 14773 case"null": 14774 case"(number)": 14775 case"(string)": 14776 V(); 14777 break; 14778 case"-": 14779 V("-"), V("(number)"); 14780 break; 14781 default: 14782 q("E003", f.tokens.next) 14783 } 14784 } 14785 14786 var e, t = { 14787 "<": !0, 14788 "<=": !0, 14789 "==": !0, 14790 "===": !0, 14791 "!==": !0, 14792 "!=": !0, 14793 ">": !0, 14794 ">=": !0, 14795 "+": !0, 14796 "-": !0, 14797 "*": !0, 14798 "/": !0, 14799 "%": !0 14800 }, n, d = ["closure", "exception", "global", "label", "outer", "unused", "var"], v, m, g, y, b, w, E, S, 14801 x, T, N = [], C = new i.EventEmitter, mt = {}; 14802 mt.legacy = ["xml", "unknown"], mt.es3 = ["undefined", "boolean", "number", "string", "function", "object"], mt.es3 = mt.es3.concat(mt.legacy), mt.es6 = mt.es3.concat("symbol"), at("(number)", function () { 14803 return this 14804 }), at("(string)", function () { 14805 return this 14806 }), f.syntax["(identifier)"] = { 14807 type: "(identifier)", lbp: 0, identifier: !0, nud: function () { 14808 var e = this.value; 14809 return f.tokens.next.id === "=>" ? this : (f.funct["(comparray)"].check(e) || f.funct["(scope)"].block.use(e, f.tokens.curr), this) 14810 }, led: function () { 14811 q("E033", f.tokens.next, f.tokens.next.value) 14812 } 14813 }; 14814 var Pt = {lbp: 0, identifier: !1, template: !0}; 14815 f.syntax["(template)"] = r.extend({ 14816 type: "(template)", 14817 nud: Wt, 14818 led: Wt, 14819 noSubst: !1 14820 }, Pt), f.syntax["(template middle)"] = r.extend({ 14821 type: "(template middle)", 14822 middle: !0, 14823 noSubst: !1 14824 }, Pt), f.syntax["(template tail)"] = r.extend({ 14825 type: "(template tail)", 14826 tail: !0, 14827 noSubst: !1 14828 }, Pt), f.syntax["(no subst template)"] = r.extend({ 14829 type: "(template)", 14830 nud: Wt, 14831 led: Wt, 14832 noSubst: !0, 14833 tail: !0 14834 }, Pt), at("(regexp)", function () { 14835 return this 14836 }), rt("(endline)"), rt("(begin)"), rt("(end)").reach = !0, rt("(error)").reach = !0, rt("}").reach = !0, rt(")"), rt("]"), rt('"').reach = !0, rt("'").reach = !0, rt(";"), rt(":").reach = !0, rt("#"), ft("else"), ft("case").reach = !0, ft("catch"), ft("default").reach = !0, ft("finally"), ct("arguments", function (e) { 14837 f.isStrict() && f.funct["(global)"] && F("E008", e) 14838 }), ct("eval"), ct("false"), ct("Infinity"), ct("null"), ct("this", function (e) { 14839 f.isStrict() && !jt() && !f.option.validthis && (f.funct["(statement)"] && f.funct["(name)"].charAt(0) > "Z" || f.funct["(global)"]) && F("W040", e) 14840 }), ct("true"), ct("undefined"), Et("=", "assign", 20), Et("+=", "assignadd", 20), Et("-=", "assignsub", 20), Et("*=", "assignmult", 20), Et("/=", "assigndiv", 20).nud = function () { 14841 q("E014") 14842 }, Et("%=", "assignmod", 20), xt("&="), xt("|="), xt("^="), xt("<<="), xt(">>="), xt(">>>="), ht(",", function (e, t) { 14843 var n; 14844 t.exprs = [e], f.option.nocomma && F("W127"); 14845 if (!tt({peek: !0})) return t; 14846 for (; ;) { 14847 if (!(n = Q(10))) break; 14848 t.exprs.push(n); 14849 if (f.tokens.next.value !== "," || !tt()) break 14850 } 14851 return t 14852 }, 10, !0), ht("?", function (e, t) { 14853 return $t(), t.left = e, t.right = Q(10), V(":"), t["else"] = Q(10), t 14854 }, 30); 14855 var Ht = 40; 14856 ht("||", function (e, t) { 14857 return $t(), t.left = e, t.right = Q(Ht), t 14858 }, Ht), ht("&&", "and", 50), St("|", "bitor", 70), St("^", "bitxor", 80), St("&", "bitand", 90), dt("==", function (e, t) { 14859 var n = f.option.eqnull && ((e && e.value) === "null" || (t && t.value) === "null"); 14860 switch (!0) { 14861 case!n && f.option.eqeqeq: 14862 this.from = this.character, F("W116", this, "===", "=="); 14863 break; 14864 case vt(e): 14865 F("W041", this, "===", e.value); 14866 break; 14867 case vt(t): 14868 F("W041", this, "===", t.value); 14869 break; 14870 case gt(t, e, f): 14871 F("W122", this, t.value); 14872 break; 14873 case gt(e, t, f): 14874 F("W122", this, e.value) 14875 } 14876 return this 14877 }), dt("===", function (e, t) { 14878 return gt(t, e, f) ? F("W122", this, t.value) : gt(e, t, f) && F("W122", this, e.value), this 14879 }), dt("!=", function (e, t) { 14880 var n = f.option.eqnull && ((e && e.value) === "null" || (t && t.value) === "null"); 14881 return !n && f.option.eqeqeq ? (this.from = this.character, F("W116", this, "!==", "!=")) : vt(e) ? F("W041", this, "!==", e.value) : vt(t) ? F("W041", this, "!==", t.value) : gt(t, e, f) ? F("W122", this, t.value) : gt(e, t, f) && F("W
14881122", this, e.value), this 14882 }), dt("!==", function (e, t) { 14883 return gt(t, e, f) ? F("W122", this, t.value) : gt(e, t, f) && F("W122", this, e.value), this 14884 }), dt("<"), dt(">"), dt("<="), dt(">="), St("<<", "shiftleft", 120), St(">>", "shiftright", 120), St(">>>", "shiftrightunsigned", 120), ht("in", "in", 120), ht("instanceof", "instanceof", 120), ht("+", function (e, t) { 14885 var n; 14886 return t.left = e, t.right = n = Q(130), e && n && e.id === "(string)" && n.id === "(string)" ? (e.value += n.value, e.character = n.character, !f.option.scripturl && a.javascriptURL.test(e.value) && F("W050", e), e) : t 14887 }, 130), ut("+", "num"), ut("+++", function () { 14888 return F("W007"), this.arity = "unary", this.right = Q(150), this 14889 }), ht("+++", function (e) { 14890 return F("W007"), this.left = e, this.right = Q(130), this 14891 }, 130), ht("-", "sub", 130), ut("-", "neg"), ut("---", function () { 14892 return F("W006"), this.arity = "unary", this.right = Q(150), this 14893 }), ht("---", function (e) { 14894 return F("W006"), this.left = e, this.right = Q(130), this 14895 }, 130), ht("*", "mult", 140), ht("/", "div", 140), ht("%", "mod", 140), Tt("++"), ut("++", "preinc"), f.syntax["++"].exps = !0, Tt("--"), ut("--", "predec"), f.syntax["--"].exps = !0, ut("delete", function () { 14896 var e = Q(10); 14897 return e ? (e.id !== "." && e.id !== "[" && F("W051"), this.first = e, e.identifier && !f.isStrict() && (e.forgiveUndef = !0), this) : this 14898 }).exps = !0, ut("~", function () { 14899 return f.option.bitwise && F("W016", this, "~"), this.arity = "unary", this.right = Q(150), this 14900 }), ut("...", function () { 14901 return f.inES6(!0) || F("W119", this, "spread/rest operator", "6"), !f.tokens.next.identifier && f.tokens.next.type !== "(string)" && !hn(f.tokens.next, ["[", "("]) && q("E030", f.tokens.next, f.tokens.next.value), Q(150), this 14902 }), ut("!", function () { 14903 return this.arity = "unary", this.right = Q(150), this.right || B("E041", this.line || 0), t[this.right.id] === !0 && F("W018", this, "!"), this 14904 }), ut("typeof", function () { 14905 var e = Q(150); 14906 return this.first = this.right = e, e || B("E041", this.line || 0, this.character || 0), e.identifier && (e.forgiveUndef = !0), this 14907 }), ut("new", function () { 14908 var e = Qt("target", function () { 14909 f.inES6(!0) || F("W119", f.tokens.prev, "new.target", "6"); 14910 var e, t = f.funct; 14911 while (t) { 14912 e = !t["(global)"]; 14913 if (!t["(arrow)"]) break; 14914 t = t["(context)"] 14915 } 14916 e || F("W136", f.tokens.prev, "new.target") 14917 }); 14918 if (e) return e; 14919 var t = Q(155), n; 14920 if (t && t.id !== "function") if (t.identifier) { 14921 t["new"] = !0; 14922 switch (t.value) { 14923 case"Number": 14924 case"String": 14925 case"Boolean": 14926 case"Math": 14927 case"JSON": 14928 F("W053", f.tokens.prev, t.value); 14929 break; 14930 case"Symbol": 14931 f.inES6() && F("W053", f.tokens.prev, t.value); 14932 break; 14933 case"Function": 14934 f.option.evil || F("W054"); 14935 break; 14936 case"Date": 14937 case"RegExp": 14938 case"this": 14939 break; 14940 default: 14941 t.id !== "function" && (n = t.value.substr(0, 1), f.option.newcap && (n < "A" || n > "Z") && !f.funct["(scope)"].isPredefined(t.value) && F("W055", f.tokens.curr)) 14942 } 14943 } else t.id !== "." && t.id !== "[" && t.id !== "(" && F("W056", f.tokens.curr); else f.option.supernew || F("W057", this); 14944 return f.tokens.next.id !== "(" && !f.option.supernew && F("W058", f.tokens.curr, f.tokens.curr.value), this.first = this.right = t, this 14945 }), f.syntax["new"].exps = !0, ut("void").exps = !0, ht(".", function (e, t) { 14946 var n = Ct(!1, !0); 14947 return typeof n == "string" && Dt(n), t.left = e, t.right = n, n && n === "hasOwnProperty" && f.tokens.next.value === "=" && F("W001"), !e || e.value !== "arguments" || n !== "callee" && n !== "caller" ? !f.option.evil && e && e.value === "document" && (n === "write" || n === "writeln") && F("W060", e) : f.option.noarg ? F("W059", e, n) : f.isStrict() && q("E008"), !f.option.evil && (n === "eval" || n === "execScript") && yt(e, f) && F("W061"), t 14948 }, 160, !0), ht("(", function (e, t) { 14949 f.option.immed && e && !e.immed && e.id === "function" && F("W062"); 14950 var n = 0, r = []; 14951 e && e.type === "(identifier)" && e.value.match(/^[A-Z]([A-Z0-9_$]*[a-z][A-Za-z0-9_$]*)?$/) && "Array Number String Boolean Date Object Error Symbol".indexOf(e.value) === -1 && (e.value === "Math" ? F("W063", e) : f.option.newcap && F("W064", e)); 14952 if (f.tokens.next.id !== ")") for (; ;) { 14953 r[r.length] = Q(10), n += 1; 14954 if (f.tokens.next.id !== ",") break; 14955 tt() 14956 } 14957 return V(")"), typeof e == "object" && (!f.inES5() && e.value === "parseInt" && n === 1 && F("W065", f.tokens.curr), f.option.evil || (e.value === "eval" || e.value === "Function" || e.value === "execScript" ? (F("W061", e), r[0] && [0].id === "(string)" && U(e, r[0].value)) : !r[0] || r[0].id !== "(string)" || e.value !== "setTimeout" && e.value !== "setInterval" ? r[0] && r[0].id === "(string)" && e.value === "." && e.left.value === "window" && (e.right === "setTimeout" || e.right === "setInterval") && (F("W066", e), U(e, r[0].value)) : (F("W066", e), U(e, r[0].value))), !e.identifier && e.id !== "." && e.id !== "[" && e.id !== "=>" && e.id !== "(" && e.id !== "&&" && e.id !== "||" && e.id !== "?" && (!f.inES6() || !e["(name)"]) && F("W067", t)), t.left = e, t 14958 }, 155, !0).exps = !0, ut("(", function () { 14959 var e = f.tokens.next, t, n = -1, r, i, s, o, u = 1, a = f.tokens.curr, l = f.tokens.prev, 14960 c = !f.option.singleGroups; 14961 do e.value === "(" ? u += 1 : e.value === ")" && (u -= 1), n += 1, t = e, e = W(n); while ((u !== 0 || t.value !== ")") && e.value !== ";" && e.type !== "(end)"); 14962 f.tokens.next.id === "function" && (i = f.tokens.next.immed = !0); 14963 if (e.value === "=>") return Xt({type: "arrow", parsedOpening: !0}); 14964 var h = []; 14965 if (f.tokens.next.id !== ")") for (; ;) { 14966 h.push(Q(10)); 14967 if (f.tokens.next.id !== ",") break; 14968 f.option.nocomma && F("W127"), tt() 14969 } 14970 V(")", this), f.option.immed && h[0] && h[0].id === "function" && f.tokens.next.id !== "(" && f.tokens.next.id !== "." && f.tokens.next.id !== "[" && F("W068", this); 14971 if (!h.length) return; 14972 return h.length > 1 ? (r = Object.create(f.syntax[","]), r.exprs = h, s = h[0], o = h[h.length - 1], c || (c = l.assign || l.delim)) : (r = s = o = h[0], c || (c = a.beginsStmt && (r.id === "{" || i || Ut(r)) || i && (!J() || f.tokens.prev.id !== "}") || Ut(r) && !J() || r.id === "{" && l.id === "=>" || r.type === "(number)" && pn(e, ".") && /^\d+$/.test(r.value))), r && (!c && (s.left || s.right || r.exprs) && (c = !K(l) && s.lbp <= l.lbp || !J() && o.lbp < f.tokens.next.lbp), c || F("W126", a), r.paren = !0), r 14973 }), pt("=>"), ht("[", function (e, t) { 14974 var n = Q(10), r; 14975 return n && n.type === "(string)" && (!f.o
14975ption.evil && (n.value === "eval" || n.value === "execScript") && yt(e, f) && F("W061"), Dt(n.value), !f.option.sub && a.identifier.test(n.value) && (r = f.syntax[n.value], (!r || !O(r)) && F("W069", f.tokens.prev, n.value))), V("]", t), n && n.value === "hasOwnProperty" && f.tokens.next.value === "=" && F("W001"), t.left = e, t.right = n, t 14976 }, 160, !0), ut("[", function () { 14977 var e = an(); 14978 if (e.isCompArray) return !f.option.esnext && !f.inMoz() && F("W118", f.tokens.curr, "array comprehension"), Bt(); 14979 if (e.isDestAssign) return this.destructAssign = Gt({openingParsed: !0, assignment: !0}), this; 14980 var t = f.tokens.curr.line !== G(f.tokens.next); 14981 this.first = [], t && (g += f.option.indent, f.tokens.next.from === g + f.option.indent && (g += f.option.indent)); 14982 while (f.tokens.next.id !== "(end)") { 14983 while (f.tokens.next.id === ",") { 14984 if (!f.option.elision) { 14985 if (!!f.inES5()) { 14986 F("W128"); 14987 do V(","); while (f.tokens.next.id === ","); 14988 continue 14989 } 14990 F("W070") 14991 } 14992 V(",") 14993 } 14994 if (f.tokens.next.id === "]") break; 14995 this.first.push(Q(10)); 14996 if (f.tokens.next.id !== ",") break; 14997 tt({allowTrailing: !0}); 14998 if (f.tokens.next.id === "]" && !f.inES5()) { 14999 F("W070", f.tokens.curr); 15000 break 15001 } 15002 } 15003 return t && (g -= f.option.indent), V("]", this), this 15004 }), function (e) { 15005 e.nud = function () { 15006 var e, t, n, r, i, s = !1, o, u = Object.create(null); 15007 e = f.tokens.curr.line !== G(f.tokens.next), e && (g += f.option.indent, f.tokens.next.from === g + f.option.indent && (g += f.option.indent)); 15008 var a = an(); 15009 if (a.isDestAssign) return this.destructAssign = Gt({openingParsed: !0, assignment: !0}), this; 15010 for (; ;) { 15011 if (f.tokens.next.id === "}") break; 15012 o = f.tokens.next.value; 15013 if (!f.tokens.next.identifier || X().id !== "," && X().id !== "}") if (W().id === ":" || o !== "get" && o !== "set") { 15014 f.tokens.next.value === "*" && f.tokens.next.type === "(punctuator)" ? (f.inES6() || F("W104", f.tokens.next, "generator functions", "6"), V("*"), s = !0) : s = !1; 15015 if (f.tokens.next.id === "[") n = cn(), f.nameStack.set(n); else { 15016 f.nameStack.set(f.tokens.next), n = It(), fn(u, n, f.tokens.next); 15017 if (typeof n != "string") break 15018 } 15019 f.tokens.next.value === "(" ? (f.inES6() || F("W104", f.tokens.curr, "concise methods", "6"), Xt({type: s ? "generator" : null})) : (V(":"), Q(10)) 15020 } else V(o), f.inES5() || q("E034"), n = It(), !n && !f.inES6() && q("E035"), n && ln(o, u, n, f.tokens.curr), i = f.tokens.next, t = Xt(), r = t["(params)"], o === "get" && n && r ? F("W076", i, r[0], n) : o === "set" && n && (!r || r.length !== 1) && F("W077", i, n); else f.inES6() || F("W104", f.tokens.next, "object short notation", "6"), n = It(!0), fn(u, n, f.tokens.next), Q(10); 15021 Dt(n); 15022 if (f.tokens.next.id !== ",") break; 15023 tt({ 15024 allowTrailing: !0, 15025 property: !0 15026 }), f.tokens.next.id === "," ? F("W070", f.tokens.curr) : f.tokens.next.id === "}" && !f.inES5() && F("W070", f.tokens.curr) 15027 } 15028 return e && (g -= f.option.indent), V("}", this), Kt(u), this 15029 }, e.fud = function () { 15030 q("E036", f.tokens.curr) 15031 } 15032 }(rt("{")); 15033 var tn = it("const", function (e) { 15034 return en("const", this, e) 15035 }); 15036 tn.exps = !0; 15037 var nn = it("let", function (e) { 15038 return en("let", this, e) 15039 }); 15040 nn.exps = !0; 15041 var rn = it("var", function (e) { 15042 var t = e && e.prefix, n = e && e.inexport, i, o, u, a = e && e.implied, l = !e || !e.ignore; 15043 this.first = []; 15044 for (; ;) { 15045 var c = []; 15046 r.contains(["{", "["], f.tokens.next.value) ? (i = Gt(), o = !1) : (i = [{ 15047 id: Ct(), 15048 token: f.tokens.curr 15049 }], o = !0), (!t || !a) && l && f.option.varstmt && F("W132", this), this.first = this.first.concat(c); 15050 for (var h in i) i.hasOwnProperty(h) && (h = i[h], !a && f.funct["(global)"] && (S[h.id] === !1 ? F("W079", h.token, h.id) : f.option.futurehostile === !1 && (!f.inES5() && s.ecmaIdentifiers[5][h.id] === !1 || !f.inES6() && s.ecmaIdentifiers[6][h.id] === !1) && F("W129", h.token, h.id)), h.id && (a === "for" ? (f.funct["(scope)"].has(h.id) || l && F("W088", h.token, h.id), f.funct["(scope)"].block.use(h.id, h.token)) : (f.funct["(scope)"].addlabel(h.id, { 15051 type: "var", 15052 token: h.token 15053 }), o && n && f.funct["(scope)"].setExported(h.id, h.token)), c.push(h.token))); 15054 f.tokens.next.id === "=" && (f.nameStack.set(f.tokens.curr), V("="), !t && l && !f.funct["(loopage)"] && f.tokens.next.id === "undefined" && F("W080", f.tokens.prev, f.tokens.prev.value), W(0).id === "=" && f.tokens.next.identifier && (!t && l && !f.funct["(params)"] || f.funct["(params)"].indexOf(f.tokens.next.value) === -1) && F("W120", f.tokens.next, f.tokens.next.value), u = Q(t ? 120 : 10), o ? i[0].first = u : Zt(c, u)); 15055 if (f.tokens.next.id !== ",") break; 15056 tt() 15057 } 15058 return this 15059 }); 15060 rn.exps = !0, st("class", function () { 15061 return sn.call(this, !0) 15062 }), st("function", function (e) { 15063 var t = e && e.inexport, n = !1; 15064 f.tokens.next.value === "*" && (V("*"), f.inES6({strict: !0}) ? n = !0 : F("W119", f.tokens.curr, "function*", "6")), m && F("W082", f.tokens.curr); 15065 var r = Nt(); 15066 return f.funct["(scope)"].addlabel(r, { 15067 type: "function", 15068 token: f.tokens.curr 15069 }), r === undefined ? F("W025") : t && f.funct["(scope)"].setExported(r, f.tokens.prev), Xt({ 15070 name: r, 15071 statement: this, 15072 type: n ? "generator" : null, 15073 ignoreLoopFunc: m 15074 }), f.tokens.next.id === "(" && f.tokens.next.line === f.tokens.curr.line && q("E039"), this 15075 }), ut("function", function () { 15076 var e = !1; 15077 f.tokens.next.value === "*" && (f.inES6() || F("W119", f.tokens.curr, "function*", "6"), V("*"), e = !0); 15078 var t = Nt(); 15079 return Xt({name: t, type: e ? "generator" : null}), this 15080 }), st("if", function () { 15081 var e = f.tokens.next; 15082 $t(), f.condition = !0, V("("); 15083 var t = Q(0); 15084 Jt(t); 15085 var n = null; 15086 f.option.forin && f.forinifcheckneeded && (f.forinifcheckneeded = !1, n = f.forinifchecks[f.forinifchecks.length - 1], t.type === "(punctuator)" && t.value === "!" ? n.type = "(negative)" : n.type = "(positive)"), V(")", e), f.condition = !1; 15087 var r = _t(!0, !0); 15088 return n && n.type === "(negative)" && r && r[0] && r[0].type === "(identifier)" && r[0].value === "continue" && (n.type = "(negative-with-continue)"), f.tokens.next.id === "else" && (V("else"), f.tokens.next.id === "if" || f.tokens.next.id === "switch" ? At() : _t(!0, !0)), this 15089 }), st("try", function () { 15090 function t() { 15091 V("catch"), V("("), f.funct["(scope)"].stack("catchparams"); 15092 if (hn(f.tokens.next, ["[", "{"])) { 15093 var e = Gt(); 15094 r.each(e, function (e) { 15095 e.id && f.funct["(scope)"].addParam(e.id, e, "exception") 15096 }) 15097 } else f.tokens.next.type !== "(identifier)" ? F("E030", f.tokens.next, f.tokens.next.value) : f.funct["(scope)"].addParam(Ct(), f.tokens.curr, "exception"); 15098 f.tokens.next.value === "if" && (f.inMoz() || F("W118", f.tokens.curr, "catch filter"), V("if"), Q(0)), V(")"), _t(!1), f.funct["(scope)"].unstack() 15099 } 15100 15101 var e; 15102 _t(!0); 15103 while (f.tokens.next.id === "catch") $t(), e && !f.inMoz() && F("W118", f.tokens.next, "multiple catch blocks"), t(), e = !0; 15104 if (f.tokens.next.id === "finally") { 15105 V("finally"), _t(!0); 15106 return 15107 } 15108 return e || q("E021", f.tokens.next, "catch", f.tokens.next.value), this 15109 }), st("while", function () { 15110 var e = f.tokens.next; 15111 return f.funct["(breakage)"] += 1, f.funct["(loopage)"] += 1, $t(), V("("), Jt(Q(0)), V(")", e), _t(!0, !0), f.funct["(breakage)"] -= 1, f.funct["(loopage)"] -= 1, this 15112 }).labelled = !0, st("with", function () { 15113 var e = f.tokens.next; 15114 return f.isStrict() ? q("E010", f.tokens.curr) : f.option.withstmt || F("W085", f.tokens.curr), V("("), Q(0), V(")", e), _t(!0, !0), this 15115 }), st("switch", function () { 15116 var e = f.tokens.next, t = !1, n = !1; 15117 f.funct["(breakage)"] += 1, V("("), Jt(Q(0)), V(")", e), e = f.tokens.next,
15117V("{"), f.tokens.next.from === g && (n = !0), n || (g += f.option.indent), this.cases = []; 15118 for (; ;) switch (f.tokens.next.id) { 15119 case"case": 15120 switch (f.funct["(verb)"]) { 15121 case"yield": 15122 case"break": 15123 case"case": 15124 case"continue": 15125 case"return": 15126 case"switch": 15127 case"throw": 15128 break; 15129 default: 15130 f.tokens.curr.caseFallsThrough || F("W086", f.tokens.curr, "case") 15131 } 15132 V("case"), this.cases.push(Q(0)), $t(), t = !0, V(":"), f.funct["(verb)"] = "case"; 15133 break; 15134 case"default": 15135 switch (f.funct["(verb)"]) { 15136 case"yield": 15137 case"break": 15138 case"continue": 15139 case"return": 15140 case"throw": 15141 break; 15142 default: 15143 this.cases.length && (f.tokens.curr.caseFallsThrough || F("W086", f.tokens.curr, "default")) 15144 } 15145 V("default"), t = !0, V(":"); 15146 break; 15147 case"}": 15148 n || (g -= f.option.indent), V("}", e), f.funct["(breakage)"] -= 1, f.funct["(verb)"] = undefined; 15149 return; 15150 case"(end)": 15151 q("E023", f.tokens.next, "}"); 15152 return; 15153 default: 15154 g += f.option.indent; 15155 if (t) switch (f.tokens.curr.id) { 15156 case",": 15157 q("E040"); 15158 return; 15159 case":": 15160 t = !1, Ot(); 15161 break; 15162 default: 15163 q("E025", f.tokens.curr); 15164 return 15165 } else { 15166 if (f.tokens.curr.id !== ":") { 15167 q("E021", f.tokens.next, "case", f.tokens.next.value); 15168 return 15169 } 15170 V(":"), q("E024", f.tokens.curr, ":"), Ot() 15171 } 15172 g -= f.option.indent 15173 } 15174 return this 15175 }).labelled = !0, it("debugger", function () { 15176 return f.option.debug || F("W087", this), this 15177 }).exps = !0, function () { 15178 var e = it("do", function () { 15179 f.funct["(breakage)"] += 1, f.funct["(loopage)"] += 1, $t(), this.first = _t(!0, !0), V("while"); 15180 var e = f.tokens.next; 15181 return V("("), Jt(Q(0)), V(")", e), f.funct["(breakage)"] -= 1, f.funct["(loopage)"] -= 1, this 15182 }); 15183 e.labelled = !0, e.exps = !0 15184 }(), st("for", function () { 15185 var e, t = f.tokens.next, n = !1, i = null; 15186 t.value === "each" && (i = t, V("each"), f.inMoz() || F("W118", f.tokens.curr, "for each")), $t(), V("("); 15187 var s, o = 0, u = ["in", "of"], a = 0, l, c; 15188 hn(f.tokens.next, ["{", "["]) && ++a; 15189 do { 15190 s = W(o), ++o, hn(s, ["{", "["]) ? ++a : hn(s, ["}", "]"]) && --a; 15191 if (a < 0) break; 15192 a === 0 && (!l && pn(s, ",") ? l = s : !c && pn(s, "=") && (c = s)) 15193 } while (a > 0 || !r.contains(u, s.value) && s.value !== ";" && s.type !== "(end)"); 15194 if (r.contains(u, s.value)) { 15195 !f.inES6() && s.value === "of" && F("W104", s, "for of", "6"); 15196 var h = !c && !l; 15197 c && q("W133", l, s.value, "initializer is forbidden"), l && q("W133", l, s.value, "more than one ForBinding"), f.tokens.next.id === "var" ? (V("var"), f.tokens.curr.fud({prefix: !0})) : f.tokens.next.id === "let" || f.tokens.next.id === "const" ? (V(f.tokens.next.id), n = !0, f.funct["(scope)"].stack(), f.tokens.curr.fud({prefix: !0})) : Object.create(rn).fud({ 15198 prefix: !0, 15199 implied: "for", 15200 ignore: !h 15201 }), V(s.value), Q(20), V(")", t), s.value === "in" && f.option.forin && (f.forinifcheckneeded = !0, f.forinifchecks === undefined && (f.forinifchecks = []), f.forinifchecks.push({type: "(none)"})), f.funct["(breakage)"] += 1, f.funct["(loopage)"] += 1, e = _t(!0, !0); 15202 if (s.value === "in" && f.option.forin) { 15203 if (f.forinifchecks && f.forinifchecks.length > 0) { 15204 var p = f.forinifchecks.pop(); 15205 (e && e.length > 0 && (typeof e[0] != "object" || e[0].value !== "if") || p.type === "(positive)" && e.length >
15205 1 || p.type === "(negative)") && F("W089", this) 15206 } 15207 f.forinifcheckneeded = !1 15208 } 15209 f.funct["(breakage)"] -= 1, f.funct["(loopage)"] -= 1 15210 } else { 15211 i && q("E045", i); 15212 if (f.tokens.next.id !== ";") if (f.tokens.next.id === "var") V("var"), f.tokens.curr.fud(); else if (f.tokens.next.id === "let") V("let"), n = !0, f.funct["(scope)"].stack(), f.tokens.curr.fud(); else for (; ;) { 15213 Q(0, "for"); 15214 if (f.tokens.next.id !== ",") break; 15215 l() 15216 } 15217 Z(f.tokens.curr), V(";"), f.funct["(loopage)"] += 1, f.tokens.next.id !== ";" && Jt(Q(0)), Z(f.tokens.curr), V(";"), f.tokens.next.id === ";" && q("E021", f.tokens.next, ")", ";"); 15218 if (f.tokens.next.id !== ")") for (; ;) { 15219 Q(0, "for"); 15220 if (f.tokens.next.id !== ",") break; 15221 l() 15222 } 15223 V(")", t), f.funct["(breakage)"] += 1, _t(!0, !0), f.funct["(breakage)"] -= 1, f.funct["(loopage)"] -= 1 15224 } 15225 return n && f.funct["(scope)"].unstack(), this 15226 }).labelled = !0, it("break", function () { 15227 var e = f.tokens.next.value; 15228 return f.option.asi || Z(this), f.tokens.next.id !== ";" && !f.tokens.next.reach && f.tokens.curr.line === G(f.tokens.next) ? (f.funct["(scope)"].funct.hasBreakLabel(e) || F("W090", f.tokens.next, e), this.first = f.tokens.next, V()) : f.funct["(breakage)"] === 0 && F("W052", f.tokens.next, this.value), kt(this), this 15229 }).exps = !0, it("continue", function () { 15230 var e = f.tokens.next.value; 15231 return f.funct["(breakage)"] === 0 && F("W052", f.tokens.next, this.value), f.funct["(loopage)"] || F("W052", f.tokens.next, this.value), f.option.asi || Z(this), f.tokens.next.id !== ";" && !f.tokens.next.reach && f.tokens.curr.line === G(f.tokens.next) && (f.funct["(scope)"].funct.hasBreakLabel(e) || F("W090", f.tokens.next, e), this.first = f.tokens.next, V()), kt(this), this 15232 }).exps = !0, it("return", function () { 15233 return this.line === G(f.tokens.next) ? f.tokens.next.id !== ";" && !f.tokens.next.reach && (this.first = Q(0), this.first && this.first.type === "(punctuator)" && this.first.value === "=" && !this.first.paren && !f.option.boss && I("W093", this.first.line, this.first.character)) : f.tokens.next.type === "(punctuator)" && ["[", "{", "+", "-"].indexOf(f.tokens.next.value) > -1 && Z(this), kt(this), this 15234 }).exps = !0, function (e) { 15235 e.exps = !0, e.lbp = 25 15236 }(ut("yield", function () { 15237 var e = f.tokens.prev; 15238 f.inES6(!0) && !f.funct["(generator)"] ? ("(catch)" !== f.funct["(name)"] || !f.funct["(context)"]["(generator)"]) && q("E046", f.tokens.curr, "yield") : f.inES6() || F("W104", f.tokens.curr, "yield", "6"), f.funct["(generator)"] = "yielded"; 15239 var t = !1; 15240 f.tokens.next.value === "*" && (t = !0, V("*")); 15241 if (this.line === G(f.tokens.next) || !f.inMoz()) { 15242 if (t || f.tokens.next.id !== ";" && !f.option.asi && !f.tokens.next.reach && f.tokens.next.nud) Y(f.tokens.curr, f.tokens.next), this.first = Q(10), this.first.type === "(punctuator)" && this.first.value === "=" && !this.first.paren && !f.option.boss && I("W093", this.first.line, this.first.character); 15243 f.inMoz() && f.tokens.next.id !== ")" && (e.lbp > 30 || !e.assign && !J() || e.id === "yield") && q("E050", this) 15244 } else f.option.asi || Z(this); 15245 return this 15246 })), it("throw", function () { 15247 return Z(this), this.first = Q(20), kt(this), this 15248 }).exps = !0, it("import", function () { 15249 f.inES6() || F("W119", f.tokens.curr, "import", "6"); 15250 if (f.tokens.next.type === "(string)") return V("(string)"), this; 15251 if (f.tokens.next.identifier) { 15252 this.name = Ct(), f.funct["(scope)"].addlabel(this.name, {type: "const", token: f.tokens.curr}); 15253 if (f.tokens.next.value !== ",") return V("from"), V("(string)"), this; 15254 V(",") 15255 } 15256 if (f.tokens.next.id === "*") V("*"), V("as"), f.tokens.next.identifier && (this.name = Ct(), f.funct["(scope)"].addlabel(this.name, { 15257 type: "const", 15258 token: f.tokens.curr 15259 })); else { 15260 V("{"); 15261 for (; ;) { 15262 if (f.tokens.next.value === "}") { 15263 V("}"); 15264 break 15265 } 15266 var e; 15267 f.tokens.next.type === "default" ? (e = "default", V("default")) : e = Ct(), f.tokens.next.value === "as" && (V("as"), e = Ct()), f.funct["(scope)"].addlabel(e, { 15268 type: "const", 15269 token: f.tokens.curr 15270 }); 15271 if (f.tokens.next.value !== ",") { 15272 if (f.tokens.next.value === "}") { 15273 V("}"); 15274 break 15275 } 15276 q("E024", f.tokens.next, f.tokens.next.value); 15277 break 15278 } 15279 V(",") 15280 } 15281 } 15282 return V("from"), V("(string)"), this 15283 }).exps = !0, it("export", function () { 15284 var e = !0, t, n; 15285 f.inES6() || (F("W119", f.tokens.curr, "export", "6"), e = !1), f.funct["(scope)"].block.isGlobal() || (q("E053", f.tokens.curr), e = !1); 15286 if (f.tokens.next.value === "*") return V("*"), V("from"), V("(string)"), this; 15287 if (f.tokens.next.type === "default") { 15288 f.nameStack.set(f.tokens.next), V("default"); 15289 var r = f.tokens.next.id; 15290 if (r === "function" || r === "class") this.block = !0; 15291 return t = W(), Q(10), n = t.value, this.block && (f.funct["(scope)"].addlabel(n, { 15292 type: r, 15293 token: t 15294 }), f.funct["(scope)"].setExported(n, t)), this 15295 } 15296 if (f.tokens.next.value === "{") { 15297 V("{"); 15298 var i = []; 15299 for (; ;) { 15300 f.tokens.next.identifier || q("E030", f.tokens.next, f.tokens.next.value), V(), i.push(f.tokens.curr), f.tokens.next.value === "as" && (V("as"), f.tokens.next.identifier || q("E030", f.tokens.next, f.tokens.next.value), V()); 15301 if (f.tokens.next.value !== ",") { 15302 if (f.tokens.next.value === "}") { 15303 V("}"); 15304 break 15305 } 15306 q("E024", f.tokens.next, f.tokens.next.value); 15307 break 15308 } 15309 V(",") 15310 } 15311 return f.tokens.next.value === "from" ? (V("from"), V("(string)")) : e && i.forEac
15311h(function (e) { 15312 f.funct["(scope)"].setExported(e.value, e) 15313 }), this 15314 } 15315 if (f.tokens.next.id === "var") V("var"), f.tokens.curr.fud({inexport: !0}); else if (f.tokens.next.id === "let") V("let"), f.tokens.curr.fud({inexport: !0}); else if (f.tokens.next.id === "const") V("const"), f.tokens.curr.fud({inexport: !0}); else if (f.tokens.next.id === "function") this.block = !0, V("function"), f.syntax["function"].fud({inexport: !0}); else if (f.tokens.next.id === "class") { 15316 this.block = !0, V("class"); 15317 var s = f.tokens.next; 15318 f.syntax["class"].fud(), f.funct["(scope)"].setExported(s.value, s) 15319 } else q("E024", f.tokens.next, f.tokens.next.value); 15320 return this 15321 }).exps = !0, lt("abstract"), lt("boolean"), lt("byte"), lt("char"), lt("class", { 15322 es5: !0, 15323 nud: sn 15324 }), lt("double"), lt("enum", {es5: !0}), lt("export", {es5: !0}), lt("extends", {es5: !0}), lt("final"), lt("float"), lt("goto"), lt("implements", { 15325 es5: !0, 15326 strictOnly: !0 15327 }), lt("import", {es5: !0}), lt("int"), lt("interface", { 15328 es5: !0, 15329 strictOnly: !0 15330 }), lt("long"), lt("native"), lt("package", {es5: !0, strictOnly: !0}), lt("private", { 15331 es5: !0, 15332 strictOnly: !0 15333 }), lt("protected", {es5: !0, strictOnly: !0}), lt("public", { 15334 es5: !0, 15335 strictOnly: !0 15336 }), lt("short"), lt("static", { 15337 es5: !0, 15338 strictOnly: !0 15339 }), lt("super", {es5: !0}), lt("synchronized"), lt("transient"), lt("volatile"); 15340 var an = function () { 15341 var e, t, n, r = -1, i = 0, s = {}; 15342 hn(f.tokens.curr, ["[", "{"]) && (i += 1); 15343 do { 15344 n = r === -1 ? f.tokens.curr : e, e = r === -1 ? f.tokens.next : W(r), t = W(r + 1), r += 1, hn(e, ["[", "{"]) ? i += 1 : hn(e, ["]", "}"]) && (i -= 1); 15345 if (i === 1 && e.identifier && e.value === "for" && !pn(n, ".")) { 15346 s.isCompArray = !0, s.notJson = !0; 15347 break 15348 } 15349 if (i === 0 && hn(e, ["}", "]"])) { 15350 if (t.value === "=") { 15351 s.isDestAssign = !0, s.notJson = !0; 15352 break 15353 } 15354 if (t.value === ".") { 15355 s.notJson = !0; 15356 break 15357 } 15358 } 15359 pn(e, ";") && (s.isBlock = !0, s.notJson = !0) 15360 } while (i > 0 && e.id !== "(end)"); 15361 return s 15362 }, vn = function () { 15363 function i(e) { 15364 var t = n.variables.filter(function (t) { 15365 if (t.value === e) return t.undef = !1, e 15366 }).length; 15367 return t !== 0 15368 } 15369 15370 function s(e) { 15371 var t = n.variables.filter(function (t) { 15372 if (t.value === e && !t.undef) return t.unused === !0 && (t.unused = !1), e 15373 }).length; 15374 return t === 0 15375 } 15376 15377 var e = function () { 15378 this.mode = "use", this.variables = [] 15379 }, t = [], n; 15380 return { 15381 stack: function () { 15382 n = new e, t.push(n) 15383 }, unstack: function () { 15384 n.variables.filter(function (e) { 15385 e.unused && F("W098", e.token, e.raw_text || e.value), e.undef && f.funct["(scope)"].block.use(e.value, e.token) 15386 }), t.splice(-1, 1), n = t[t.length - 1] 15387 }, setState: function (e) { 15388 r.contains(["use", "define", "generate", "filter"], e) && (n.mode = e) 15389 }, check: function (e) { 15390 if (!n) return; 15391 return n && n.mode === "use" ? (s(e) && n.variables.push({ 15392 funct: f.funct, 15393 token: f.tokens.curr, 15394 value: e, 15395 undef: !0, 15396 unused: !1 15397 }), !0) : n && n.mode === "define" ? (i(e) || n.variables.push({ 15398 funct: f.funct, 15399 token: f.tokens.curr, 15400 value: e, 15401 undef: !1, 15402 unused: !0 15403 }), !0) : n && n.mode === "generate" ? (f.funct["(scope)"].block.use(e, f.tokens.curr), !0) : n && n.mode === "filter" ? (s(e) && f.funct["(scope)"].block.use(e, f.tokens.curr), !0) : !1 15404 } 15405 } 15406 }, gn = function (e) { 15407 return e.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&") 15408 }, yn = function (t, i, o) { 15409 function U(e, t) { 15410 if (!e) return; 15411 !Array.isArray(e) && typeof e == "object" && (e = Object.keys(e)), e.forEach(t) 15412 } 15413 15414 var a, l, c, d, A, O, M = {}, P = {}; 15415 i = r.clone(i), f.reset(), i && i.scope ? p.scope = i.scope : (p.errors = [], p.undefs = [], p.internals = [], p.blackl
15415ist = {}, p.scope = "(main)"), S = Object.create(null), D(S, s.ecmaIdentifiers[3]), D(S, s.reservedVars), D(S, o || {}), n = Object.create(null); 15416 var j = Object.create(null); 15417 if (i) { 15418 U(i.predef || null, function (e) { 15419 var t, n; 15420 e[0] === "-" ? (t = e.slice(1), p.blacklist[t] = t, delete S[t]) : (n = Object.getOwnPropertyDescriptor(i.predef, e), S[e] = n ? n.value : !1) 15421 }), U(i.exported || null, function (e) { 15422 j[e] = !0 15423 }), delete i.predef, delete i.exported, O = Object.keys(i); 15424 for (c = 0; c < O.length; c++) if (/^-W\d{3}$/g.test(O[c])) P[O[c].slice(1)] = !0; else { 15425 var z = O[c]; 15426 M[z] = i[z], (z === "esversion" && i[z] === 5 || z === "es5" && i[z]) && F("I003"), O[c] === "newcap" && i[z] === !1 && (M["(explicitNewcap)"] = !0) 15427 } 15428 } 15429 f.option = M, f.ignored = P, f.option.indent = f.option.indent || 4, f.option.maxerr = f.option.maxerr || 50, g = 1; 15430 var W = h(f, S, j, n); 15431 W.on("warning", function (e) { 15432 F.apply(null, [e.code, e.token].concat(e.data)) 15433 }), W.on("error", function (e) { 15434 q.apply(null, [e.code, e.token].concat(e.data)) 15435 }), f.funct = Rt("(global)", null, { 15436 "(global)": !0, 15437 "(scope)": W, 15438 "(comparray)": vn(), 15439 "(metrics)": Vt(f.tokens.next) 15440 }), v = [f.funct], T = [], x = null, w = {}, E = null, m = !1, y = []; 15441 if (!L(t) && !Array.isArray(t)) return R("E004", 0), !1; 15442 e = { 15443 get isJSON() { 15444 return f.jsonMode 15445 }, getOption: function (e) { 15446 return f.option[e] || null 15447 }, getCache: function (e) { 15448 return f.cache[e] 15449 }, setCache: function (e, t) { 15450 f.cache[e] = t 15451 }, warn: function (e, t) { 15452 I.apply(null, [e, t.line, t.char].concat(t.data)) 15453 }, on: function (e, t) { 15454 e.split(" ").forEach(function (e) { 15455 C.on(e, t) 15456 }.bind(this)) 15457 } 15458 }, C.removeAllListeners(), (N || []).forEach(function (t) { 15459 t(e) 15460 }), f.tokens.prev = f.tokens.curr = f.tokens.next = f.syntax["(begin)"], i && i.ignoreDelimiters && (Array.isArray(i.ignoreDelimiters) || (i.ignoreDelimiters = [i.ignoreDelimiters]), i.ignoreDelimiters.forEach(function (e) { 15461 if (!e.start || !e.end) return; 15462 d = gn(e.start) + "[\\s\\S]*?" + gn(e.end), A = new RegExp(d, "ig"), t = t.replace(A, function (e) { 15463 return e.replace(/./g, " ") 15464 }) 15465 })), b = new u(t), b.on("warning", function (e) { 15466 I.apply(null, [e.code, e.line, e.character].concat(e.data)) 15467 }), b.on("error", function (e) { 15468 R.apply(null, [e.code, e.line, e.character].concat(e.data)) 15469 }), b.on("fatal", function (e) { 15470 B("E041", e.line, e.from) 15471 }), b.on("Identifier", function (e) { 15472 C.emit("Identifier", e) 15473 }), b.on("String", function (e) { 15474 C.emit("String", e) 15475 }), b.on("Number", function (e) { 15476 C.emit("Number", e) 15477 }), b.start(); 15478 for (var X in i) r.has(i, X) && k(X, f.tokens.curr); 15479 H(), D(S, o || {}), tt.first = !0; 15480 try { 15481 V(); 15482 switch (f.tokens.next.id) { 15483 case"{": 15484 case"[": 15485 dn(); 15486 break; 15487 default: 15488 Mt(), f.directive["use strict"] && f.option.strict !== "global" && F("W097", f.tokens.prev), Ot() 15489 } 15490 f.tokens.next.id !== "(end)" && B("E041", f.tokens.curr.line), f.funct["(scope)"].unstack() 15491 } catch ($) { 15492 if (!$ || $.name !== "JSHintError") throw $; 15493 var J = f.tokens.next || {}; 15494 p.errors.push({ 15495 scope: "(main)", 15496 raw: $.raw, 15497 code: $.code, 15498 reason: $.message, 15499 line: $.line || J.line, 15500 character: $.character || J.from 15501 }, null) 15502 } 15503 if (p.scope === "(main)") { 15504 i = i || {}; 15505 for (a = 0; a < p.internals.length; a += 1) l = p.internals[a], i.scope = l.elem, yn(l.value, i, o) 15506 } 15507 return p.errors.length === 0 15508 };
15509 return yn.addModule = function (e) { 15510 N.push(e) 15511 }, yn.addModule(l.register), yn.data = function () { 15512 var e = {functions: [], options: f.option}, t, n, r, i, s, o; 15513 yn.errors.length && (e.errors = yn.errors), f.jsonMode && (e.json = !0); 15514 var u = f.funct["(scope)"].getImpliedGlobals(); 15515 u.length > 0 && (e.implieds = u), T.length > 0 && (e.urls = T), o = f.funct["(scope)"].getUsedOrDefinedGlobals(), o.length > 0 && (e.globals = o); 15516 for (r = 1; r < v.length; r += 1) { 15517 n = v[r], t = {}; 15518 for (i = 0; i < d.length; i += 1) t[d[i]] = []; 15519 for (i = 0; i < d.length; i += 1) t[d[i]].length === 0 && delete t[d[i]]; 15520 t.name = n["(name)"], t.param = n["(params)"], t.line = n["(line)"], t.character = n["(character)"], t.last = n["(last)"], t.lastcharacter = n["(lastcharacter)"], t.metrics = { 15521 complexity: n["(metrics)"].ComplexityCount, 15522 parameters: n["(metrics)"].arity, 15523 statements: n["(metrics)"].statementCount 15524 }, e.functions.push(t) 15525 } 15526 var a = f.funct["(scope)"].getUnuseds(); 15527 a.length > 0 && (e.unused = a); 15528 for (s in w) if (typeof w[s] == "number") { 15529 e.member = w; 15530 break 15531 } 15532 return e 15533 }, yn.jshint = yn, yn 15534 }(); 15535 typeof n == "object" && n && (n.JSHINT = p) 15536 }, { 15537 "../lodash": "/node_modules/jshint/lodash.js", 15538 "./lex.js": "/node_modules/jshint/src/lex.js", 15539 "./messages.js": "/node_modules/jshint/src/messages.js", 15540 "./options.js": "/node_modules/jshint/src/options.js", 15541 "./reg.js": "/node_modules/jshint/src/reg.js", 15542 "./scope-manager.js": "/node_modules/jshint/src/scope-manager.js", 15543 "./state.js": "/node_modules/jshint/src/state.js", 15544 "./style.js": "/node_modules/jshint/src/style.js", 15545 "./vars.js": "/node_modules/jshint/src/vars.js", 15546 events: "/node_modules/browserify/node_modules/events/events.js" 15547 }], 15548 "/node_modules/jshint/src/lex.js": [function (e, t, n) { 15549 "use strict"; 15550 15551 function h() { 15552 var e = []; 15553 return { 15554 push: function (t) { 15555 e.push(t) 15556 }, check: function () { 15557 for (var t = 0; t < e.length; ++t) e[t](); 15558 e.splice(0, e.length) 15559 } 15560 } 15561 } 15562 15563 function p(e) { 15564 var t = e; 15565 typeof t == "string" && (t = t.replace(/\r\n/g, "\n").replace(/\r/g, "\n").split("\n")), t[0] && t[0].substr(0, 2) === "#!" && (t[0].indexOf("node") !== -1 && (o.option.node = !0), t[0] = ""), this.emitter = new i.EventEmitter, this.source = e, this.setLines(t), this.prereg = !0, this.line = 0, this.char = 1, this.from = 1, this.input = "", this.inComment = !1, this.context = [], this.templateStarts = []; 15566 for (var n = 0; n < o.option.indent; n += 1) o.tab += " "; 15567 this.ignoreLinterErrors = !1 15568 } 15569 15570 var r = e("../lodash"), i = e("events"), s = e("./reg.js"), o = e("./state.js").state, 15571 u = e("../data/ascii-identifier-data.js"), a = u.asciiIdentifierStartTable, 15572 f = u.asciiIdentifierPartTable, l = { 15573 Identifier: 1, 15574 Punctuator: 2, 15575 NumericLiteral: 3, 15576 StringLiteral: 4, 15577 Comment: 5, 15578 Keyword: 6, 15579 NullLiteral: 7, 15580 BooleanLiteral: 8, 15581 RegExp: 9, 15582 TemplateHead: 10, 15583 TemplateMiddle: 11, 15584 TemplateTail: 12, 15585 NoSubstTemplate: 13 15586 }, c = {Block: 1, Template: 2}; 15587 p.prototype = { 15588 _lines: [], inContext: function (e) { 15589 return this.context.length > 0 && this.context[this.context.length - 1].type === e 15590 }, pushContext: function (e) { 15591 this.context.push({type: e}) 15592 }, popContext: function () { 15593 return this.context.pop() 15594 }, isContext: function (e) { 15595 return this.context.length > 0 && this.context[this.context.length - 1] === e 15596 }, currentContext: function () { 15597 return this.context.length > 0 && this.context[this.context.length - 1] 15598 }, getLines: function () { 15599 return this._lines = o.lines, this._lines 15600 }, setLines: function (e) { 15601 this._lines = e, o.lines = this._lines 15602 }, peek: function (e) { 15603 return this.input.charAt(e || 0) 15604 }, skip: function (e) { 15605 e = e || 1, this.char += e, this.input = this.input.slice(e) 15606 }, on: function (e, t) { 15607 e.split(" ").forEach(function (e) { 15608 this.emitter.on(e, t) 15609 }.bind(this)) 15610 }, trigger: function () { 15611 this.emitter.emit.apply(this.emitter, Array.prototype.slice.call(arguments)) 15612 }, triggerAsync: function (e, t, n, r) { 15613 n.push(function () { 15614 r() && this.trigger(e, t) 15615 }.bind(this)) 15616 }, scanPunctuator: function () { 15617 var e = this.peek(), t, n, r; 15618 switch (e) { 15619 case".": 15620 if (/^[0-9]$/.test(this.peek(1))) return null; 15621 if (this.peek(1) === "." && this.peek(2) === ".") return {type: l.Punctuator, value: "..."}; 15622 case"(": 15623 case")": 15624 case";": 15625 case",": 15626 case"[": 15627 case"]": 15628 case":": 15629 case"~": 15630 case"?": 15631 return {type: l.Punctuator, value: e}; 15632 case"{": 15633 return this.pushContext(c.Block), {t
15633ype: l.Punctuator, value: e}; 15634 case"}": 15635 return this.inContext(c.Block) && this.popContext(), {type: l.Punctuator, value: e}; 15636 case"#": 15637 return {type: l.Punctuator, value: e}; 15638 case"": 15639 return null 15640 } 15641 return t = this.peek(1), n = this.peek(2), r = this.peek(3), e === ">" && t === ">" && n === ">" && r === "=" ? { 15642 type: l.Punctuator, 15643 value: ">>>=" 15644 } : e === "=" && t === "=" && n === "=" ? { 15645 type: l.Punctuator, 15646 value: "===" 15647 } : e === "!" && t === "=" && n === "=" ? { 15648 type: l.Punctuator, 15649 value: "!==" 15650 } : e === ">" && t === ">" && n === ">" ? { 15651 type: l.Punctuator, 15652 value: ">>>" 15653 } : e === "<" && t === "<" && n === "=" ? { 15654 type: l.Punctuator, 15655 value: "<<=" 15656 } : e === ">" && t === ">" && n === "=" ? { 15657 type: l.Punctuator, 15658 value: ">>=" 15659 } : e === "=" && t === ">" ? { 15660 type: l.Punctuator, 15661 value: e + t 15662 } : e === t && "+-<>&|".indexOf(e) >= 0 ? { 15663 type: l.Punctuator, 15664 value: e + t 15665 } : "<>=!+-*%&|^".indexOf(e) >= 0 ? t === "=" ? { 15666 type: l.Punctuator, 15667 value: e + t 15668 } : {type: l.Punctuator, value: e} : e === "/" ? t === "=" ? { 15669 type: l.Punctuator, 15670 value: "/=" 15671 } : {type: l.Punctuator, value: "/"} : null 15672 }, scanComments: function () { 15673 function u(e, t, n) { 15674 var r = ["jshint", "jslint", "members", "member", "globals", "global", "exported"], i = !1, 15675 u = e + t, a = "plain"; 15676 return n = n || {}, n.isMultiline && (u += "*/"), t = t.replace(/\n/g, " "), e === "/*" && s.fallsThrough.test(t) && (i = !0, a = "falls through"), r.forEach(function (n) { 15677 if (i) return; 15678 if (e === "//" && n !== "jshint") return; 15679 t.charAt(n.length) === " " && t.substr(0, n.length) === n && (i = !0, e += n, t = t.substr(n.length)), !i && t.charAt(0) === " " && t.charAt(n.length + 1) === " " && t.substr(1, n.length) === n && (i = !0, e = e + " " + n, t = t.substr(n.length + 1)); 15680 if (!i) return; 15681 switch (n) { 15682 case"member": 15683 a = "members"; 15684 break; 15685 case"global": 15686 a = "globals"; 15687 break; 15688 default: 15689 var r = t.split(":").map(function (e) { 15690 return e.replace(/^\s+/, "").replace(/\s+$/, "") 15691 }); 15692 if (r.length === 2) switch (r[0]) { 15693 case"ignore": 15694 switch (r[1]) { 15695 case"start": 15696 o.ignoringLinterErrors = !0, i = !1; 15697 break; 15698 case"end": 15699 o.ignoringLinterErrors = !1, i = !1 15700 } 15701 } 15702 a = n 15703 } 15704 }), { 15705 type: l.Comment, 15706 commentType: a, 15707 value: u, 15708 body: t, 15709 isSpecial: i, 15710 isMultiline: n.isMultiline || !1, 15711 isMalformed: n.isMalformed || !1 15712 } 15713 } 15714 15715 var e = this.peek(), t = this.peek(1), n = this.input.substr(2), r = this.line, i = this.char, 15716 o = this; 15717 if (e === "*" && t === "/") return this.trigger("error", { 15718 code: "E018", 15719 line: r, 15720 character: i 15721 }), this.skip(2), null; 15722 if (e !== "/" || t !== "*" && t !== "/") return null; 15723 if (t === "/") return this.skip(this.input.length), u("//", n); 15724 var a = ""; 15725 if (t === "*") { 15726 this.inComment = !0, this.skip(2); 15727 while (this.peek() !== "*" || this.peek(1) !== "/") if (this.peek() === "") { 15728 a += "\n";
15729 if (!this.nextLine()) return this.trigger("error", { 15730 code: "E017", 15731 line: r, 15732 character: i 15733 }), this.inComment = !1, u("/*", a, {isMultiline: !0, isMalformed: !0}) 15734 } else a += this.peek(), this.skip(); 15735 return this.skip(2), this.inComment = !1, u("/*", a, {isMultiline: !0}) 15736 } 15737 }, scanKeyword: function () { 15738 var e = /^[a-zA-Z_$][a-zA-Z0-9_$]*/.exec(this.input), 15739 t = ["if", "in", "do", "var", "for", "new", "try", "let", "this", "else", "case", "void", "with", "enum", "while", "break", "catch", "throw", "const", "yield", "class", "super", "return", "typeof", "delete", "switch", "export", "import", "default", "finally", "extends", "function", "continue", "debugger", "instanceof"]; 15740 return e && t.indexOf(e[0]) >= 0 ? {type: l.Keyword, value: e[0]} : null 15741 }, scanIdentifier: function () { 15742 function i(e) { 15743 return e > 256 15744 } 15745 15746 function s(e) { 15747 return e > 256 15748 } 15749 15750 function o(e) { 15751 return /^[0-9a-fA-F]$/.test(e) 15752 } 15753 15754 function p(e) { 15755 return e.replace(/\\u([0-9a-fA-F]{4})/g, function (e, t) { 15756 return String.fromCharCode(parseInt(t, 16)) 15757 }) 15758 } 15759 15760 var e = "", t = 0, n, r, u = function () { 15761 t += 1; 15762 if (this.peek(t) !== "u") return null; 15763 var e = this.peek(t + 1), n = this.peek(t + 2), r = this.peek(t + 3), i = this.peek(t + 4), u; 15764 return o(e) && o(n) && o(r) && o(i) ? (u = parseInt(e + n + r + i, 16), f[u] || s(u) ? (t += 5, "\\u" + e + n + r + i) : null) : null 15765 }.bind(this), c = function () { 15766 var e = this.peek(t), n = e.charCodeAt(0); 15767 return n === 92 ? u() : n < 128 ? a[n] ? (t += 1, e) : null : i(n) ? (t += 1, e) : null 15768 }.bind(this), h = function () { 15769 var e = this.peek(t), n = e.charCodeAt(0); 15770 return n === 92 ? u() : n < 128 ? f[n] ? (t += 1, e) : null : s(n) ? (t += 1, e) : null 15771 }.bind(this); 15772 r = c(); 15773 if (r === null) return null; 15774 e = r; 15775 for (; ;) { 15776 r = h(); 15777 if (r === null) break; 15778 e += r 15779 } 15780 switch (e) { 15781 case"true": 15782 case"false": 15783 n = l.BooleanLiteral; 15784 break; 15785 case"null": 15786 n = l.NullLiteral; 15787 break; 15788 default: 15789 n = l.Identifier 15790 } 15791 return {type: n, value: p(e), text: e, tokenLength: e.length} 15792 }, scanNumericLiteral: function () { 15793 function f(e) { 15794 return /^[0-9]$/.test(e) 15795 } 15796 15797 function c(e) { 15798 return /^[0-7]$/.test(e) 15799 } 15800 15801 function h(e) { 15802 return /^[01]$/.test(e) 15803 } 15804 15805 function p(e) { 15806 return /^[0-9a-fA-F]$/.test(e) 15807 } 15808 15809 function d(e) { 15810 return e === "$" || e === "_" || e === "\\" || e >= "a" && e <= "z" || e >= "A" && e <= "Z" 15811 } 15812 15813 var e = 0, t = "", n = this.input.length, r = this.peek(e), i, s = f, u = 10, a = !1; 15814 if (r !== "." && !f(r)) return null; 15815 if (r !== ".") { 15816 t = this.peek(e), e += 1, r = this.peek(e); 15817 if (t === "0") { 15818 if (r === "x" || r === "X") s = p, u = 16, e += 1, t += r; 15819 if (r === "o" || r === "O") s = c, u = 8, o.inES6(!0) || this.trigger("warning", { 15820 code: "W119", 15821 line: this.line, 15822 character: this.char, 15823 data: ["Octal integer literal", "6"] 15824 }), e += 1, t += r; 15825 if (r === "b" || r === "B") s = h, u = 2, o.inES6(!0) || this.trigger("warning", { 15826 code: "W119", 15827 line: this.line, 15828 character: this.char, 15829 data: ["Binary integer literal", "6"] 15830 }), e += 1, t += r; 15831 c(r) && (s = c, u = 8, a = !0, i = !1, e += 1, t += r), !c(r) && f(r) && (e += 1, t += r) 15832 } 15833 while (e < n) { 15834 r = this.peek(e); 15835 if (a && f(r)) i = !0; else if (!s(r)) break; 15836 t += r, e += 1 15837 } 15838 if (s !== f) { 15839 if (!a && t.length <= 2) return {type: l.NumericLiteral, value: t, isMalformed: !0}; 15840 if (e < n) { 15841 r = this.peek(e); 15842 if (d(r)) return null 15843 } 15844 return {type: l.NumericLiteral, value: t, base: u, isLegacy: a, isMalformed: !1} 15845 } 15846 } 15847 if (r === ".") { 15848 t += r, e += 1; 15849 while (e < n) { 15850 r = this.peek(e); 15851 if (!f(r)) break; 15852 t += r, e += 1 15853 } 15854 } 15855 if (r === "e" || r === "E") { 15856 t += r, e += 1, r = this.peek(e); 15857 if (r === "+" || r === "-") t += this.peek(e), e += 1; 15858 r = this.peek(e); 15859 if (!f(r)) return null; 15860 t += r, e += 1; 15861 while (e < n) { 15862 r = this.peek(e); 15863 if (!f(r)) break; 15864 t += r, e += 1 15865 } 15866 } 15867 if (e < n) { 15868 r = this.peek(e); 15869 if (d(r)) return null 15870 } 15871 return {type: l.NumericLiteral, value: t, base: u, isMalformed: !isFinite(t)}
15871 15872 }, scanEscapeSequence: function (e) { 15873 var t = !1, n = 1; 15874 this.skip(); 15875 var r = this.peek(); 15876 switch (r) { 15877 case"'": 15878 this.triggerAsync("warning", { 15879 code: "W114", 15880 line: this.line, 15881 character: this.char, 15882 data: ["\\'"] 15883 }, e, function () { 15884 return o.jsonMode 15885 }); 15886 break; 15887 case"b": 15888 r = "\\b"; 15889 break; 15890 case"f": 15891 r = "\\f"; 15892 break; 15893 case"n": 15894 r = "\\n"; 15895 break; 15896 case"r": 15897 r = "\\r"; 15898 break; 15899 case"t": 15900 r = "\\t"; 15901 break; 15902 case"0": 15903 r = "\\0"; 15904 var i = parseInt(this.peek(1), 10); 15905 this.triggerAsync("warning", { 15906 code: "W115", 15907 line: this.line, 15908 character: this.char 15909 }, e, function () { 15910 return i >= 0 && i <= 7 && o.isStrict() 15911 }); 15912 break; 15913 case"u": 15914 var s = this.input.substr(1, 4), u = parseInt(s, 16); 15915 isNaN(u) && this.trigger("warning", { 15916 code: "W052", 15917 line: this.line, 15918 character: this.char, 15919 data: ["u" + s] 15920 }), r = String.fromCharCode(u), n = 5; 15921 break; 15922 case"v": 15923 this.triggerAsync("warning", { 15924 code: "W114", 15925 line: this.line, 15926 character: this.char, 15927 data: ["\\v"] 15928 }, e, function () { 15929 return o.jsonMode 15930 }), r = "\x0b"; 15931 break; 15932 case"x": 15933 var a = parseInt(this.input.substr(1, 2), 16); 15934 this.triggerAsync("warning", { 15935 code: "W114", 15936 line: this.line, 15937 character: this.char, 15938 data: ["\\x-"] 15939 }, e, function () { 15940 return o.jsonMode 15941 }), r = String.fromCharCode(a), n = 3; 15942 break; 15943 case"\\": 15944 r = "\\\\"; 15945 break; 15946 case'"': 15947 r = '\\"'; 15948 break; 15949 case"/": 15950 break; 15951 case"": 15952 t = !0, r = "" 15953 } 15954 return {"char": r, jump: n, allowNewLine: t} 15955 }, scanTemplateLiteral: function (e) { 15956 var t, n = "", r, i = this.line, s = this.char, u = this.templateStarts.length; 15957 if (!o.inES6(!0)) return null; 15958 if (this.peek() === "`") t = l.TemplateHead, this.templateStarts.push({ 15959 line: this.line, 15960 "char": this.char 15961 }), u = this.templateStarts.length, this.skip(1), this.pushContext(c.Template); else { 15962 if (!this.inContext(c.Template) || this.peek() !== "}") return null; 15963 t = l.TemplateMiddle 15964 } 15965 while (this.peek() !== "`") { 15966 while ((r = this.peek()) === "") { 15967 n += "\n";
15968 if (!this.nextLine()) { 15969 var a = this.templateStarts.pop(); 15970 return this.trigger("error", {code: "E052", line: a.line, character: a.char}), { 15971 type: t, 15972 value: n, 15973 startLine: i, 15974 startChar: s, 15975 isUnclosed: !0, 15976 depth: u, 15977 context: this.popContext() 15978 } 15979 } 15980 } 15981 if (r === "$" && this.peek(1) === "{") return n += "${", this.skip(2), { 15982 type: t, 15983 value: n, 15984 startLine: i, 15985 startChar: s, 15986 isUnclosed: !1, 15987 depth: u, 15988 context: this.currentContext() 15989 }; 15990 if (r === "\\") { 15991 var f = this.scanEscapeSequence(e); 15992 n += f.char, this.skip(f.jump) 15993 } else r !== "`" && (n += r, this.skip(1)) 15994 } 15995 return t = t === l.TemplateHead ? l.NoSubstTemplate : l.TemplateTail, this.skip(1), this.templateStarts.pop(), { 15996 type: t, 15997 value: n, 15998 startLine: i, 15999 startChar: s, 16000 isUnclosed: !1, 16001 depth: u, 16002 context: this.popContext() 16003 } 16004 }, scanStringLiteral: function (e) { 16005 var t = this.peek(); 16006 if (t !== '"' && t !== "'") return null; 16007 this.triggerAsync("warning", {code: "W108", line: this.line, character: this.char}, e, function () { 16008 return o.jsonMode && t !== '"' 16009 }); 16010 var n = "", r = this.line, i = this.char, s = !1; 16011 this.skip(); 16012 while (this.peek() !== t) if (this.peek() === "") { 16013 s ? (s = !1, this.triggerAsync("warning", { 16014 code: "W043", 16015 line: this.line, 16016 character: this.char 16017 }, e, function () { 16018 return !o.option.multistr 16019 }), this.triggerAsync("warning", { 16020 code: "W042", 16021 line: this.line, 16022 character: this.char 16023 }, e, function () { 16024 return o.jsonMode && o.option.multistr 16025 })) : this.trigger("warning", {code: "W112", line: this.line, character: this.char}); 16026 if (!this.nextLine()) return this.trigger("error", { 16027 code: "E029", 16028 line: r, 16029 character: i 16030 }), {type: l.StringLiteral, value: n, startLine: r, startChar: i, isUnclosed: !0, quote: t} 16031 } else { 16032 s = !1; 16033 var u = this.peek(), a = 1; 16034 u < " " && this.trigger("warning", { 16035 code: "W113", 16036 line: this.line, 16037 character: this.char, 16038 data: ["<non-printable>"] 16039 }); 16040 if (u === "\\") { 16041 var f = this.scanEscapeSequence(e); 16042 u = f.char, a = f.jump, s = f.allowNewLine 16043 } 16044 n += u, this.skip(a) 16045 } 16046 return this.skip(), { 16047 type: l.StringLiteral, 16048 value: n, 16049 startLine: r, 16050 startChar: i, 16051 isUnclosed: !1, 16052 quote: t 16053 } 16054 }, scanRegExp: function () { 16055 var e = 0, t = this.input.length, n = this.peek(), r = n, i = "", s = [], o = !1, u = !1, a, 16056 f = function () { 16057 n < " " && (o = !0, this.trigger("warning", { 16058 code: "W048", 16059 line: this.line, 16060 character: this.char 16061 })), n === "<" && (o = !0, this.trigger("warning", { 16062 code: "W049", 16063 line: this.line, 16064 character: this.char, 16065 data: [n] 16066 })) 16067 }.bind(this); 16068 if (!this.prereg || n !== "/") return null; 16069 e += 1, a = !1; 16070 while (e < t) { 16071 n = this.peek(e), r += n, i += n; 16072 if (u) { 16073 n === "]" && (this.peek(e - 1) !== "\\" || this.peek(e - 2) === "\\") && (u = !1), n === "\\" && (e += 1, n = this.peek(e), i += n, r += n, f()), e += 1; 16074 continue 16075 } 16076 if (n === "\\") { 16077 e += 1, n = this.peek(e), i += n, r += n, f(); 16078 if (n === "/") { 16079 e += 1; 16080 continue 16081 } 16082 if (n === "[") { 16083 e += 1; 16084 continue 16085 } 16086 } 16087 if (n === "[") { 16088 u = !0, e += 1; 16089 continue 16090 } 16091 if (n === "/") { 16092 i = i.substr(0, i.length - 1), a = !0, e += 1; 16093 break 16094 } 16095 e += 1 16096 } 16097 if (!a) return this.trigger("error", { 16098 code: "E015", 16099 line: this.line, 16100 character: this.from 16101 }), void this.trigger("fatal", {line: this.line, from: this.from}); 16102 while (e < t) { 16103 n = this.peek(e); 16104 if (!/[gim]/.test(n)) break;
16105 s.push(n), r += n, e += 1 16106 } 16107 try { 16108 new RegExp(i, s.join("")) 16109 } catch (c) { 16110 o = !0, this.trigger("error", { 16111 code: "E016", 16112 line: this.line, 16113 character: this.char, 16114 data: [c.message] 16115 }) 16116 } 16117 return {type: l.RegExp, value: r, flags: s, isMalformed: o} 16118 }, scanNonBreakingSpaces: function () { 16119 return o.option.nonbsp ? this.input.search(/(\u00A0)/) : -1 16120 }, scanUnsafeChars: function () { 16121 return this.input.search(s.unsafeChars) 16122 }, next: function (e) { 16123 this.from = this.char; 16124 var t; 16125 if (/\s/.test(this.peek())) { 16126 t = this.char; 16127 while (/\s/.test(this.peek())) this.from += 1, this.skip() 16128 } 16129 var n = this.scanComments() || this.scanStringLiteral(e) || this.scanTemplateLiteral(e); 16130 return n ? n : (n = this.scanRegExp() || this.scanPunctuator() || this.scanKeyword() || this.scanIdentifier() || this.scanNumericLiteral(), n ? (this.skip(n.tokenLength || n.value.length), n) : null) 16131 }, nextLine: function () { 16132 var e; 16133 if (this.line >= this.getLines().length) return !1; 16134 this.input = this.getLines()[this.line], this.line += 1, this.char = 1, this.from = 1; 16135 var t = this.input.trim(), n = function () { 16136 return r.some(arguments, function (e) { 16137 return t.indexOf(e) === 0 16138 }) 16139 }, i = function () { 16140 return r.some(arguments, function (e) { 16141 return t.indexOf(e, t.length - e.length) !== -1 16142 }) 16143 }; 16144 this.ignoringLinterErrors === !0 && !n("/*", "//") && (!this.inComment || !i("*/")) && (this.input = ""), e = this.scanNonBreakingSpaces(), e >= 0 && this.trigger("warning", { 16145 code: "W125", 16146 line: this.line, 16147 character: e + 1 16148 }), this.input = this.input.replace(/\t/g, o.tab), e = this.scanUnsafeChars(), e >= 0 && this.trigger("warning", { 16149 code: "W100", 16150 line: this.line, 16151 character: e 16152 }); 16153 if (!this.ignoringLinterErrors && o.option.maxlen && o.option.maxlen < this.input.length) { 16154 var u = this.inComment || n.call(t, "//") || n.call(t, "/*"), 16155 a = !u || !s.maxlenException.test(t); 16156 a && this.trigger("warning", {code: "W101", line: this.line, character: this.input.length}) 16157 } 16158 return !0 16159 }, start: function () { 16160 this.nextLine() 16161 }, token: function () { 16162 function n(e, t) { 16163 if (!e.reserved) return !1; 16164 var n = e.meta; 16165 if (n && n.isFutureReservedWord && o.inES5()) { 16166 if (!n.es5) return !1; 16167 if (n.strictOnly && !o.option.strict && !o.isStrict()) return !1; 16168 if (t) return !1 16169 } 16170 return !0 16171 } 16172 16173 var e = h(), t, i = function (t, i, s, u) { 16174 var a; 16175 t !== "(endline)" && t !== "(end)" && (this.prereg = !1); 16176 if (t === "(punctuator)") { 16177 switch (i) { 16178 case".": 16179 case")": 16180 case"~": 16181 case"#": 16182 case"]": 16183 case"++": 16184 case"--": 16185 this.prereg = !1; 16186 break; 16187 default: 16188 this.prereg = !0 16189 } 16190 a = Object.create(o.syntax[i] || o.syntax["(error)"]) 16191 } 16192 if (t === "(identifier)") { 16193 if (i === "return" || i === "case" || i === "typeof") this.prereg = !0; 16194 r.has(o.syntax, i) && (a = Object.create(o.syntax[i] || o.syntax["(error)"]), n(a, s && t === "(identifier)") || (a = null)) 16195 } 16196 return a || (a = Object.create(o.syntax[t])), a.identifier = t === "(identifier)", a.type = a.type || t, a.value = i, a.line = this.line, a.character = this.char, a.from = this.from, a.identifier && u && (a.raw_text = u.text || u.value), u && u.startLine && u.startLine !== this.line && (a.startLine = u.startLine), u && u.context && (a.context = u.context), u && u.depth && (a.depth = u.depth), u && u.isUnclosed && (a.isUnclosed = u.isUnclosed), s && a.identifier && (a.isProperty = s), a.check = e.check, a 16197 }.bind(this); 16198 for (; ;) { 16199 if (!this.input.length) return this.nextLine() ? i("(endline)", "") : this.exh
16199austed ? null : (this.exhausted = !0, i("(end)", "")); 16200 t = this.next(e); 16201 if (!t) { 16202 this.input.length && (this.trigger("error", { 16203 code: "E024", 16204 line: this.line, 16205 character: this.char, 16206 data: [this.peek()] 16207 }), this.input = ""); 16208 continue 16209 } 16210 switch (t.type) { 16211 case l.StringLiteral: 16212 return this.triggerAsync("String", { 16213 line: this.line, 16214 "char": this.char, 16215 from: this.from, 16216 startLine: t.startLine, 16217 startChar: t.startChar, 16218 value: t.value, 16219 quote: t.quote 16220 }, e, function () { 16221 return !0 16222 }), i("(string)", t.value, null, t); 16223 case l.TemplateHead: 16224 return this.trigger("TemplateHead", { 16225 line: this.line, 16226 "char": this.char, 16227 from: this.from, 16228 startLine: t.startLine, 16229 startChar: t.startChar, 16230 value: t.value 16231 }), i("(template)", t.value, null, t); 16232 case l.TemplateMiddle: 16233 return this.trigger("TemplateMiddle", { 16234 line: this.line, 16235 "char": this.char, 16236 from: this.from, 16237 startLine: t.startLine, 16238 startChar: t.startChar, 16239 value: t.value 16240 }), i("(template middle)", t.value, null, t); 16241 case l.TemplateTail: 16242 return this.trigger("TemplateTail", { 16243 line: this.line, 16244 "char": this.char, 16245 from: this.from, 16246 startLine: t.startLine, 16247 startChar: t.startChar, 16248 value: t.value 16249 }), i("(template tail)", t.value, null, t); 16250 case l.NoSubstTemplate: 16251 return this.trigger("NoSubstTemplate", { 16252 line: this.line, 16253 "char": this.char, 16254 from: this.from, 16255 startLine: t.startLine, 16256 startChar: t.startChar, 16257 value: t.value 16258 }), i("(no subst template)", t.value, null, t); 16259 case l.Identifier: 16260 this.triggerAsync("Identifier", { 16261 line: this.line, 16262 "char": this.char, 16263 from: this.form, 16264 name: t.value, 16265 raw_name: t.text, 16266 isProperty: o.tokens.curr.id === "." 16267 }, e, function () { 16268 return !0 16269 }); 16270 case l.Keyword: 16271 case l.NullLiteral: 16272 case l.BooleanLiteral: 16273 return i("(identifier)", t.value, o.tokens.curr.id === ".", t); 16274 case l.NumericLiteral: 16275 return t.isMalformed && this.trigger("warning", { 16276 code: "W045", 16277 line: this.line, 16278 character: this.char, 16279 data: [t.value] 16280 }), this.triggerAsync("warning", { 16281 code: "W114", 16282 line: this.line, 16283 character: this.char, 16284 data: ["0x-"] 16285 }, e, function () { 16286 return t.base === 16 && o.jsonMode 16287 }), this.triggerAsync("warning", { 16288 code: "W115", 16289 line: this.line, 16290 character: this.char 16291 }, e, function () { 16292 return o.isStrict() && t.base === 8 && t.isLegacy 16293 }), this.trigger("Number", { 16294 line: this.line, 16295 "char": this.char, 16296 from: this.from, 16297 value: t.value, 16298 base: t.base, 16299 isMalformed: t.malformed 16300 }), i("(number)", t.value); 16301 case l.RegExp: 16302 return i("(regexp)", t.value); 16303 case l.Comment: 16304 o.tokens.curr.comment = !0; 16305 if (t.isSpecial) return { 16306 id: "(comment)", 16307 value: t.value, 16308 body: t.body, 16309 type: t.commentType, 16310 isSpecial: t.isSpecial, 16311 line: this.line, 16312 character: this.char, 16313 from: this.from 16314 }; 16315 break; 16316 case"": 16317 break; 16318 default: 16319 return i("(punctuator)", t.value) 16320 } 16321 } 16322 } 16323 }, n.Lexer = p, n.Context = c 16324 }, { 16325 "../data/ascii-identifier-data.js": "/node_modules/jshint/data/ascii-identifier-data.js", 16326 "../lodash": "/node_modules/jshint/lodash.js", 16327 "./reg.js": "/node_modules/jshint/src/reg.js", 16328 "./state.js": "/node_modules/jshint/src/state.js", 16329 events: "/node_modules/browserify/node_modules/events/events.js" 16330 }], 16331 "/node_modules/jshint/src/messages.js": [function (e, t, n) { 16332 "use strict"; 16333 var r = e("../lodash"), i = { 16334 E001: "Bad option: '{a}'.", 16335 E002: "Bad option value.", 16336 E003: "Expected a JSON value.", 16337 E004: "Input is neither a string nor an array of str
16337ings.", 16338 E005: "Input is empty.", 16339 E006: "Unexpected early end of program.", 16340 E007: 'Missing "use strict" statement.', 16341 E008: "Strict violation.", 16342 E009: "Option 'validthis' can't be used in a global scope.", 16343 E010: "'with' is not allowed in strict mode.", 16344 E011: "'{a}' has already been declared.", 16345 E012: "const '{a}' is initialized to 'undefined'.", 16346 E013: "Attempting to override '{a}' which is a constant.", 16347 E014: "A regular expression literal can be confused with '/='.", 16348 E015: "Unclosed regular expression.", 16349 E016: "Invalid regular expression.", 16350 E017: "Unclosed comment.", 16351 E018: "Unbegun comment.", 16352 E019: "Unmatched '{a}'.", 16353 E020: "Expected '{a}' to match '{b}' from line {c} and instead saw '{d}'.", 16354 E021: "Expected '{a}' and instead saw '{b}'.", 16355 E022: "Line breaking error '{a}'.", 16356 E023: "Missing '{a}'.", 16357 E024: "Unexpected '{a}'.", 16358 E025: "Missing ':' on a case clause.", 16359 E026: "Missing '}' to match '{' from line {a}.", 16360 E027: "Missing ']' to match '[' from line {a}.", 16361 E028: "Illegal comma.", 16362 E029: "Unclosed string.", 16363 E030: "Expected an identifier and instead saw '{a}'.", 16364 E031: "Bad assignment.", 16365 E032: "Expected a small integer or 'false' and instead saw '{a}'.", 16366 E033: "Expected an operator and instead saw '{a}'.", 16367 E034: "get/set are ES5 features.", 16368 E035: "Missing property name.", 16369 E036: "Expected to see a statement and instead saw a block.", 16370 E037: null, 16371 E038: null, 16372 E039: "Function declarations are not invocable. Wrap the whole function invocation in parens.", 16373 E040: "Each value should have its own case label.", 16374 E041: "Unrecoverable syntax error.", 16375 E042: "Stopping.", 16376 E043: "Too many errors.", 16377 E044: null, 16378 E045: "Invalid for each loop.", 16379 E046: "A yield statement shall be within a generator function (with syntax: `function*`)", 16380 E047: null, 16381 E048: "{a} declaration not directly within block.", 16382 E049: "A {a} cannot be named '{b}'.", 16383 E050: "Mozilla requires the yield expression to be parenthesized here.", 16384 E051: null, 16385 E052: "Unclosed template literal.", 16386 E053: "Export declaration must be in global scope.", 16387 E054: "Class properties must be methods. Expected '(' but instead saw '{a}'.", 16388 E055: "The '{a}' option cannot be set after any executable code.", 16389 E056: "'{a}' was used before it was declared, which is illegal for '{b}' variables.", 16390 E057: "Invalid meta property: '{a}.{b}'.", 16391 E058: "Missing semicolon." 16392 }, s = { 16393 W001: "'hasOwnProperty' is a really bad name.", 16394 W002: "Value of '{a}' may be overwritten in IE 8 and earlier.", 16395 W003: "'{a}' was used before it was defined.", 16396 W004: "'{a}' is already defined.", 16397 W005: "A dot following a number can be confused with a decimal point.", 16398 W006: "Confusing minuses.", 16399 W007: "Confusing plusses.", 16400 W008: "A leading decimal point can be confused with a dot: '{a}'.", 16401 W009: "The array literal notation [] is preferable.", 16402 W010: "The object literal notation {} is preferable.", 16403 W011: null, 16404 W012: null, 16405 W013: null, 16406 W014: "Bad line breaking before '{a}'.", 16407 W015: null, 16408 W016: "Unexpected use of '{a}'.", 16409 W017: "Bad operand.", 16410 W018: "Confusing use of '{a}'.", 16411 W019: "Use the isNaN function to compare with NaN.", 16412 W020: "Read only.", 16413 W021: "Reassignment of '{a}', which is is a {b}. Use 'var' or 'let' to declare bindings that may change.", 16414 W022: "Do not assign to the exception parameter.", 16415 W023: "Expected an identifier in an assignment and instead saw a function invocation.", 16416 W024: "Expected an identifier and instead saw '{a}' (a reserved word).", 16417 W025: "Missing name in function declaration.", 16418 W026: "Inner functions should be listed at the top of the outer function.", 16419 W027: "Unreachable '{a}' after '{b}'.", 16420 W028: "Label '{a}' on {b} statement.", 16421 W030: "Expected an assignment or function call and instead saw an expression.", 16422 W031: "Do not use 'new' for side effects.", 16423 W032: "Unnecessary semicolon.", 16424 W033: "Missing semicolon.", 16425 W034: 'Unnecessary directive "{a}".', 16426 W035: "Empty block.", 16427 W036: "Unexpected /*member '{a}'.", 16428 W037: "'{a}' is a statement label.", 16429 W038: "'{a}' used out of scope.", 16430 W039: "'{a}' is not allowed.",
16431 W040: "Possible strict violation.", 16432 W041: "Use '{a}' to compare with '{b}'.", 16433 W042: "Avoid EOL escaping.", 16434 W043: "Bad escaping of EOL. Use option multistr if needed.", 16435 W044: "Bad or unnecessary escaping.", 16436 W045: "Bad number '{a}'.", 16437 W046: "Don't use extra leading zeros '{a}'.", 16438 W047: "A trailing decimal point can be confused with a dot: '{a}'.", 16439 W048: "Unexpected control character in regular expression.", 16440 W049: "Unexpected escaped character '{a}' in regular expression.", 16441 W050: "JavaScript URL.", 16442 W051: "Variables should not be deleted.", 16443 W052: "Unexpected '{a}'.", 16444 W053: "Do not use {a} as a constructor.", 16445 W054: "The Function constructor is a form of eval.", 16446 W055: "A constructor name should start with an uppercase letter.", 16447 W056: "Bad constructor.", 16448 W057: "Weird construction. Is 'new' necessary?", 16449 W058: "Missing '()' invoking a constructor.", 16450 W059: "Avoid arguments.{a}.", 16451 W060: "document.write can be a form of eval.", 16452 W061: "eval can be harmful.", 16453 W062: "Wrap an immediate function invocation in parens to assist the reader in understanding that the expression is the result of a function, and not the function itself.", 16454 W063: "Math is not a function.", 16455 W064: "Missing 'new' prefix when invoking a constructor.", 16456 W065: "Missing radix parameter.", 16457 W066: "Implied eval. Consider passing a function instead of a string.", 16458 W067: "Bad invocation.", 16459 W068: "Wrapping non-IIFE function literals in parens is unnecessary.", 16460 W069: "['{a}'] is better written in dot notation.", 16461 W070: "Extra comma. (it breaks older versions of IE)", 16462 W071: "This function has too many statements. ({a})", 16463 W072: "This function has too many parameters. ({a})", 16464 W073: "Blocks are nested too deeply. ({a})", 16465 W074: "This function's cyclomatic complexity is too high. ({a})", 16466 W075: "Duplicate {a} '{b}'.", 16467 W076: "Unexpected parameter '{a}' in get {b} function.", 16468 W077: "Expected a single parameter in set {a} function.", 16469 W078: "Setter is defined without getter.", 16470 W079: "Redefinition of '{a}'.", 16471 W080: "It's not necessary to initialize '{a}' to 'undefined'.", 16472 W081: null, 16473 W082: "Function declarations should not be placed in blocks. Use a function expression or move the statement to the top of the outer function.", 16474 W083: "Don't make functions within a loop.", 16475 W084: "Assignment in conditional expression", 16476 W085: "Don't use 'with'.", 16477 W086: "Expected a 'break' statement before '{a}'.", 16478 W087: "Forgotten 'debugger' statement?", 16479 W088: "Creating global 'for' variable. Should be 'for (var {a} ...'.", 16480 W089: "The body of a for in should be wrapped in an if statement to filter unwanted properties from the prototype.", 16481 W090: "'{a}' is not a statement label.", 16482 W091: null, 16483 W093: "Did you mean to return a conditional instead of an assignment?", 16484 W094: "Unexpected comma.", 16485 W095: "Expected a string and instead saw {a}.", 16486 W096: "The '{a}' key may produce unexpected results.", 16487 W097: 'Use the function form of "use strict".', 16488 W098: "'{a}' is defined but never used.", 16489 W099: null, 16490 W100: "This character may get silently deleted by one or more browsers.", 16491 W101: "Line is too long.", 16492 W102: null, 16493 W103: "The '{a}' property is deprecated.", 16494 W104: "'{a}' is available in ES{b} (use 'esversion: {b}') or Mozilla JS extensions (use moz).", 16495 W105: "Unexpected {a} in '{b}'.", 16496 W106: "Identifier '{a}' is not in camel case.", 16497 W107: "Script URL.", 16498 W108: "Strings must use doublequote.", 16499 W109: "Strings must use singlequote.", 16500 W110: "Mixed double and single quotes.", 16501 W112: "Unclosed string.", 16502 W113: "Control character in string: {a}.", 16503 W114: "Avoid {a}.", 16504 W115: "Octal literals are not allowed in strict mode.", 16505 W116: "Expected '{a}' and instead saw '{b}'.", 16506 W117: "'{a}' is not defined.", 16507 W118: "'{a}' is only available in Mozilla JavaScript extensions (use moz option).", 16508 W119: "'{a}' is only available in ES{b} (use 'esversion: {b}').", 16509 W120: "You might be leaking a variable ({a}) here.", 16510 W121: "Extending prototype of native object: '{a}'.", 16511 W122: "Invalid typeof value '{a}'", 16512 W123: "'{a}' is already defined in outer scope.", 16513 W124: "A generator function shall contain a yield statement.",
16514 W125: "This line contains non-breaking spaces: http://jshint.com/doc/options/#nonbsp", 16515 W126: "Unnecessary grouping operator.", 16516 W127: "Unexpected use of a comma operator.", 16517 W128: "Empty array elements require elision=true.", 16518 W129: "'{a}' is defined in a future version of JavaScript. Use a different variable name to avoid migration issues.", 16519 W130: "Invalid element after rest element.", 16520 W131: "Invalid parameter after rest parameter.", 16521 W132: "`var` declarations are forbidden. Use `let` or `const` instead.", 16522 W133: "Invalid for-{a} loop left-hand-side: {b}.", 16523 W134: "The '{a}' option is only available when linting ECMAScript {b} code.", 16524 W135: "{a} may not be supported by non-browser environments.", 16525 W136: "'{a}' must be in function scope.", 16526 W137: "Empty destructuring.", 16527 W138: "Regular parameters should not come after default parameters." 16528 }, o = { 16529 I001: "Comma warnings can be turned off with 'laxcomma'.", 16530 I002: null, 16531 I003: "ES5 option is now set per default" 16532 }; 16533 n.errors = {}, n.warnings = {}, n.info = {}, r.each(i, function (e, t) { 16534 n.errors[t] = {code: t, desc: e} 16535 }), r.each(s, function (e, t) { 16536 n.warnings[t] = {code: t, desc: e} 16537 }), r.each(o, function (e, t) { 16538 n.info[t] = {code: t, desc: e} 16539 }) 16540 }, {"../lodash": "/node_modules/jshint/lodash.js"}], 16541 "/node_modules/jshint/src/name-stack.js": [function (e, t, n) { 16542 "use strict"; 16543 16544 function r() { 16545 this._stack = [] 16546 } 16547 16548 Object.defineProperty(r.prototype, "length", { 16549 get: function () { 16550 return this._stack.length 16551 } 16552 }), r.prototype.push = function () { 16553 this._stack.push(null) 16554 }, r.prototype.pop = function () { 16555 this._stack.pop() 16556 }, r.prototype.set = function (e) { 16557 this._stack[this.length - 1] = e 16558 }, r.prototype.infer = function () { 16559 var e = this._stack[this.length - 1], t = "", n; 16560 if (!e || e.type === "class") e = this._stack[this.length - 2]; 16561 return e ? (n = e.type, n !== "(string)" && n !== "(number)" && n !== "(identifier)" && n !== "default" ? "(expression)" : (e.accessorType && (t = e.accessorType + " "), t + e.value)) : "(empty)" 16562 }, t.exports = r 16563 }, {}], 16564 "/node_modules/jshint/src/options.js": [function (e, t, n) { 16565 "use strict"; 16566 n.bool = { 16567 enforcing: { 16568 bitwise: !0, 16569 freeze: !0, 16570 camelcase: !0, 16571 curly: !0, 16572 eqeqeq: !0, 16573 futurehostile: !0, 16574 notypeof: !0, 16575 es3: !0, 16576 es5: !0, 16577 forin: !0, 16578 funcscope: !0, 16579 immed: !0, 16580 iterator: !0, 16581 newcap: !0, 16582 noarg: !0, 16583 nocomma: !0, 16584 noempty: !0, 16585 nonbsp: !0, 16586 nonew: !0, 16587 undef: !0, 16588 singleGroups: !1, 16589 varstmt: !1, 16590 enforceall: !1 16591 }, 16592 relaxing: { 16593 asi: !0, 16594 multistr: !0, 16595 debug: !0, 16596 boss: !0, 16597 evil: !0, 16598 globalstrict: !0, 16599 plusplus: !0, 16600 proto: !0, 16601 scripturl: !0, 16602 sub: !0, 16603 supernew: !0, 16604 laxbreak: !0, 16605 laxcomma: !0, 16606 validthis: !0, 16607 withstmt: !0, 16608 moz: !0, 16609 noyield: !0, 16610 eqnull: !0, 16611 lastsemic: !0, 16612 loopfunc: !0, 16613 expr: !0, 16614 esnext: !0, 16615 elision: !0 16616 }, 16617 environments: { 16618 mootools: !0, 16619 couch: !0, 16620 jasmine: !0, 16621 jquery: !0, 16622 node: !0, 16623 qunit: !0, 16624 rhino: !0, 16625 shelljs: !0, 16626 prototypejs: !0, 16627 yui: !0, 16628 mocha: !0, 16629 module: !0, 16630 wsh: !0, 16631 worker: !0, 16632 nonstandard: !0, 16633 browser: !0, 16634 browserify: !0, 16635 devel: !0, 16636 dojo: !0, 16637 typed: !0, 16638 phantom: !0 16639 }, 16640 obsolete: {onecase: !0, regexp: !0, regexdash: !0} 16641 }, n.val = { 16642 maxlen: !1, 16643 indent: !1, 16644 maxerr: !1, 16645 predef: !1, 16646 globals: !1, 16647 quotmark: !1, 16648 scope: !1, 16649 maxstatements: !1, 16650 maxdepth: !1, 16651 maxparams: !1, 16652 maxcomplexity: !1, 16653 shadow: !1,
16654 strict: !0, 16655 unused: !0, 16656 latedef: !1, 16657 ignore: !1, 16658 ignoreDelimiters: !1, 16659 esversion: 5 16660 }, n.inverted = { 16661 bitwise: !0, 16662 forin: !0, 16663 newcap: !0, 16664 plusplus: !0, 16665 regexp: !0, 16666 undef: !0, 16667 eqeqeq: !0, 16668 strict: !0 16669 }, n.validNames = Object.keys(n.val).concat(Object.keys(n.bool.relaxing)).concat(Object.keys(n.bool.enforcing)).concat(Object.keys(n.bool.obsolete)).concat(Object.keys(n.bool.environments)), n.renamed = { 16670 eqeq: "eqeqeq", 16671 windows: "wsh", 16672 sloppy: "strict" 16673 }, n.removed = { 16674 nomen: !0, 16675 onevar: !0, 16676 passfail: !0, 16677 white: !0, 16678 gcl: !0, 16679 smarttabs: !0, 16680 trailing: !0 16681 }, n.noenforceall = {varstmt: !0, strict: !0} 16682 }, {}], 16683 "/node_modules/jshint/src/reg.js": [function (e, t, n) { 16684 "use strict"; 16685 n.unsafeString = /@cc|<\/?|script|\]\s*\]|<\s*!|</i, n.unsafeChars = /[\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/, n.needEsc = /[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/, n.needEscGlobal = /[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, n.starSlash = /\*\//, n.identifier = /^([a-zA-Z_$][a-zA-Z0-9_$]*)$/, n.javascriptURL = /^(?:javascript|jscript|ecmascript|vbscript|livescript)\s*:/i, n.fallsThrough = /^\s*falls?\sthrough\s*$/, n.maxlenException = /^(?:(?:\/\/|\/\*|\*) ?)?[^ ]+$/ 16686 }, {}], 16687 "/node_modules/jshint/src/scope-manager.js": [function (e, t, n) { 16688 "use strict"; 16689 var r = e("../lodash"), i = e("events"), s = {}, o = function (e, t, n, o) { 16690 function f(e) { 16691 u = { 16692 "(labels)": Object.create(null), 16693 "(usages)": Object.create(null), 16694 "(breakLabels)": Object.create(null), 16695 "(parent)": u, 16696 "(type)": e, 16697 "(params)": e === "functionparams" || e === "catchparams" ? [] : null 16698 }, a.push(u) 16699 } 16700 16701 function v(e, t) { 16702 d.emit("warning", {code: e, token: t, data: r.slice(arguments, 2)}) 16703 } 16704 16705 function m(e, t) { 16706 d.emit("warning", {code: e, token: t, data: r.slice(arguments, 2)}) 16707 } 16708 16709 function g(e) { 16710 u["(usages)"][e] || (u["(usages)"][e] = {"(modified)": [], "(reassigned)": [], "(tokens)": []}) 16711 } 16712 16713 function w() { 16714 if (u["(type)"] === "functionparams") { 16715 E(); 16716 return 16717 } 16718 var e = u["(labels)"]; 16719 for (var t in e) e[t] && e[t]["(type)"] !== "exception" && e[t]["(unused)"] && b(t, e[t]["(token)"], "var") 16720 } 16721 16722 function E() { 16723 var t = u["(params)"]; 16724 if (!t) return; 16725 var n = t.pop(), r; 16726 while (n) { 16727 var i = u["(labels)"][n]; 16728 r = y(e.funct["(unusedOption)"]); 16729 if (n === "undefined") return; 16730 if (i["(unused)"]) b(n, i["(token)"], "param", e.funct["(unusedOption)"]); else if (r === "last-param") return; 16731 n = t.pop() 16732 } 16733 } 16734 16735 function S(e) { 16736 for (var t = a.length - 1; t >= 0; --t) { 16737 var n = a[t]["(labels)"]; 16738 if (n[e]) return n 16739 } 16740 } 16741 16742 function x(e) { 16743 for (var t = a.length - 1; t >= 0; t--) { 16744 var n = a[t];
16745 if (n["(usages)"][e]) return n["(usages)"][e]; 16746 if (n === l) break 16747 } 16748 return !1 16749 } 16750 16751 function T(t, n) { 16752 if (e.option.shadow !== "outer") return; 16753 var r = l["(type)"] === "global", i = u["(type)"] === "functionparams", s = !r; 16754 for (var o = 0; o < a.length; o++) { 16755 var f = a[o]; 16756 !i && a[o + 1] === l && (s = !1), s && f["(labels)"][t] && v("W123", n, t), f["(breakLabels)"][t] && v("W123", n, t) 16757 } 16758 } 16759 16760 function N(t, n, r) { 16761 e.option.latedef && (e.option.latedef === !0 && t === "function" || t !== "function") && v("W003", r, n) 16762 } 16763 16764 var u, a = []; 16765 f("global"), u["(predefined)"] = t; 16766 var l = u, c = Object.create(null), h = Object.create(null), p = [], d = new i.EventEmitter, 16767 y = function (t) { 16768 return t === undefined && (t = e.option.unused), t === !0 && (t = "last-param"), t 16769 }, b = function (e, t, n, r) { 16770 var i = t.line, s = t.from, o = t.raw_text || e; 16771 r = y(r); 16772 var u = {vars: ["var"], "last-param": ["var", "param"], strict: ["var", "param", "last-param"]}; 16773 r && u[r] && u[r].indexOf(n) !== -1 && v("W098", { 16774 line: i, 16775 from: s 16776 }, o), (r || n === "var") && p.push({name: e, line: i, character: s}) 16777 }, C = { 16778 on: function (e, t) { 16779 e.split(" ").forEach(function (e) { 16780 d.on(e, t) 16781 }) 16782 }, isPredefined: function (e) { 16783 return !this.has(e) && r.has(a[0]["(predefined)"], e) 16784 }, stack: function (e) { 16785 var t = u; 16786 f(e), !e && t["(type)"] === "functionparams" && (u["(isFuncBody)"] = !0, u["(context)"] = l, l = u) 16787 }, unstack: function () { 16788 var t = a.length > 1 ? a[a.length - 2] : null, n = u === l, 16789 i = u["(type)"] === "functionparams", f = u["(type)"] === "functionouter", p, d, 16790 g = u["(usages)"], y = u["(labels)"], E = Object.keys(g); 16791 g.__proto__ && E.indexOf("__proto__") === -1 && E.push("__proto__"); 16792 for (p = 0; p < E.length; p++) { 16793 var S = E[p], x = g[S], T = y[S]; 16794 if (T) { 16795 var N = T["(type)"]; 16796 if (T["(useOutsideOfScope)"] && !e.option.funcscope) { 16797 var C = x["(tokens)"]; 16798 if (C) for (d = 0; d < C.length; d++) T["(function)"] === C[d]["(function)"] && m("W038", C[d], S) 16799 } 16800 u["(labels)"][S]["(unused)"] = !1; 16801 if (N === "const" && x["(modified)"]) for (d = 0; d < x["(modified)"].length; d++) m("E013", x["(modified)"][d], S); 16802 if ((N === "function" || N === "class") && x["(reassigned)"]) for (d = 0; d < x["(reassigned)"].length; d++) m("W021", x["(reassigned)"][d], S, N); 16803 continue 16804 } 16805 f && (e.funct["(isCapturing)"] = !0); 16806 if (t) if (!t["(usages)"][S]) t["(usages)"][S] = x, n && (t["(usages)"][S]["(onlyUsedSubFunction)"] = !0); else { 16807 var k = t["(usages)"][S]; 16808 k["(modified)"] = k["(modified)"].concat(x["(modified)"]), k["(tokens)"] = k["(tokens)"].concat(x["(tokens)"]), k["(reassigned)"] = k["(reassigned)"].
16808concat(x["(reassigned)"]), k["(onlyUsedSubFunction)"] = !1 16809 } else if (typeof u["(predefined)"][S] == "boolean") { 16810 delete o[S], c[S] = s; 16811 if (u["(predefined)"][S] === !1 && x["(reassigned)"]) for (d = 0; d < x["(reassigned)"].length; d++) v("W020", x["(reassigned)"][d]) 16812 } else if (x["(tokens)"]) for (d = 0; d < x["(tokens)"].length; d++) { 16813 var L = x["(tokens)"][d]; 16814 L.forgiveUndef || (e.option.undef && !L.ignoreUndef && v("W117", L, S), h[S] ? h[S].line.push(L.line) : h[S] = { 16815 name: S, 16816 line: [L.line] 16817 }) 16818 } 16819 } 16820 t || Object.keys(o).forEach(function (e) { 16821 b(e, o[e], "var") 16822 }); 16823 if (t && !n && !i && !f) { 16824 var A = Object.keys(y); 16825 for (p = 0; p < A.length; p++) { 16826 var O = A[p]; 16827 !y[O]["(blockscoped)"] && y[O]["(type)"] !== "exception" && !this.funct.has(O, {excludeCurrent: !0}) && (t["(labels)"][O] = y[O], l["(type)"] !== "global" && (t["(labels)"][O]["(useOutsideOfScope)"] = !0), delete y[O]) 16828 } 16829 } 16830 w(), a.pop(), n && (l = a[r.findLastIndex(a, function (e) { 16831 return e["(isFuncBody)"] || e["(type)"] === "global" 16832 })]), u = t 16833 }, addParam: function (t, n, i) { 16834 i = i || "param"; 16835 if (i === "exception") { 16836 var s = this.funct.labeltype(t); 16837 s && s !== "exception" && (e.option.node || v("W002", e.tokens.next, t)) 16838 } 16839 r.has(u["(labels)"], t) ? u["(labels)"][t].duplicated = !0 : (T(t, n, i), u["(labels)"][t] = { 16840 "(type)": i, 16841 "(token)": n, 16842 "(unused)": !0 16843 }, u["(params)"].push(t)); 16844 if (r.has(u["(usages)"], t)) { 16845 var o = u["(usages)"][t]; 16846 o["(onlyUsedSubFunction)"] ? N(i, t, n) : v("E056", n, t, i) 16847 } 16848 }, validateParams: function () { 16849 if (l["(type)"] === "global") return; 16850 var t = e.isStrict(), n = l["(parent)"]; 16851 if (!n["(params)"]) return; 16852 n["(params)"].forEach(function (r) { 16853 var i = n["(labels)"][r]; 16854 i && i.duplicated && (t ? v("E011", i["(token)"], r) : e.option.shadow !== !0 && v("W004", i["(token)"], r)) 16855 }) 16856 }, getUsedOrDefinedGlobals: function () { 16857 var e = Object.keys(c); 16858 return c.__proto__ === s && e.indexOf("__proto__") === -1 && e.push("__proto__"), e 16859 }, getImpliedGlobals: function () { 16860 var e = r.values(h), t = !1; 16861 return h.__proto__ && (t = e.some(function (e) { 16862 return e.name === "__proto__" 16863 }), t || e.push(h.__proto__)), e 16864 }, getUnuseds: function () { 16865 return p 16866 }, has: function (e) { 16867 return Boolean(S(e)) 16868 }, labeltype: function (e) { 16869 var t = S(e); 16870 return t ? t[e]["(type)"] : null 16871 }, addExported: function (e) { 16872 var t = a[0]["(labels)"]; 16873 if (r.has(o, e)) delete o[e]; else if (r.has(t, e)) t[e]["(unused)"] = !1; else { 16874 for (var i = 1; i < a.length; i++) { 16875 var s = a[i]; 16876 if (!!s["(type)"]) break; 16877 if (r.has(s["(labels)"], e) && !s["(labels)"][e]["(blockscoped)"]) { 16878 s["(labels)"][e]["(unused)"] = !1; 16879 return 16880 } 16881 } 16882 n[e] = !0 16883 } 16884 }, setExported: function (e, t) { 16885 this.block.use(e, t) 16886 }, addlabel: function (t, i) { 16887 var o = i.type, a = i.token, f = o === "let" || o === "const" || o === "class",
16888 h = (f ? u : l)["(type)"] === "global" && r.has(n, t); 16889 T(t, a, o); 16890 if (f) { 16891 var p = u["(labels)"][t]; 16892 !p && u === l && u["(type)"] !== "global" && (p = !!l["(parent)"]["(labels)"][t]); 16893 if (!p && u["(usages)"][t]) { 16894 var d = u["(usages)"][t]; 16895 d["(onlyUsedSubFunction)"] ? N(o, t, a) : v("E056", a, t, o) 16896 } 16897 p ? v("E011", a, t) : e.option.shadow === "outer" && C.funct.has(t) && v("W004", a, t), C.block.add(t, o, a, !h) 16898 } else { 16899 var m = C.funct.has(t); 16900 !m && x(t) && N(o, t, a), C.funct.has(t, {onlyBlockscoped: !0}) ? v("E011", a, t) : e.option.shadow !== !0 && m && t !== "__proto__" && l["(type)"] !== "global" && v("W004", a, t), C.funct.add(t, o, a, !h), l["(type)"] === "global" && (c[t] = s) 16901 } 16902 }, funct: { 16903 labeltype: function (e, t) { 16904 var n = t && t.onlyBlockscoped, r = t && t.excludeParams, 16905 i = a.length - (t && t.excludeCurrent ? 2 : 1); 16906 for (var s = i; s >= 0; s--) { 16907 var o = a[s]; 16908 if (o["(labels)"][e] && (!n || o["(labels)"][e]["(blockscoped)"])) return o["(labels)"][e]["(type)"]; 16909 var u = r ? a[s - 1] : o; 16910 if (u && u["(type)"] === "functionparams") return null 16911 } 16912 return null 16913 }, hasBreakLabel: function (e) { 16914 for (var t = a.length - 1; t >= 0; t--) { 16915 var n = a[t]; 16916 if (n["(breakLabels)"][e]) return !0; 16917 if (n["(type)"] === "functionparams") return !1 16918 } 16919 return !1 16920 }, has: function (e, t) { 16921 return Boolean(this.labeltype(e, t)) 16922 }, add: function (e, t, n, r) { 16923 u["(labels)"][e] = { 16924 "(type)": t, 16925 "(token)": n, 16926 "(blockscoped)": !1, 16927 "(function)": l, 16928 "(unused)": r 16929 } 16930 } 16931 }, block: { 16932 isGlobal: function () { 16933 return u["(type)"] === "global" 16934 }, use: function (t, n) { 16935 var r = l["(parent)"]; 16936 r && r["(labels)"][t] && r["(labels)"][t]["(type)"] === "param" && (C.funct.has(t, { 16937 excludeParams: !0, 16938 onlyBlockscoped: !0 16939 }) || (r["(labels)"][t]["(unused)"] = !1)), n && (e.ignored.W117 || e.option.undef === !1) && (n.ignoreUndef = !0), g(t), n && (n["(function)"] = l, u["(usages)"][t]["(tokens)"].push(n)) 16940 }, reassign: function (e, t) { 16941 this.modify(e, t), u["(usages)"][e]["(reassigned)"].push(t) 16942 }, modify: function (e, t) { 16943 g(e), u["(usages)"][e]["(modified)"].push(t) 16944 }, add: function (e, t, n, r) { 16945 u["(labels)"][e] = {"(type)": t, "(token)": n, "(blockscoped)": !0, "(unused)": r} 16946 }, addBreakLabel: function (t, n) { 16947 var r = n.token; 16948 C.funct.hasBreakLabel(t) ? v("E011", r, t) : e.option.shadow === "outer" && (C.funct.has(t) ? v("W004", r, t) : T(t, r)), u["(breakLabels)"][t] = r 16949 } 16950 } 16951 }; 16952 return C 16953 }; 16954 t.exports = o 16955 }, { 16956 "../lodash": "/node_modules/jshint/lodash.js", 16957 events: "/node_modules/browserify/node_modules/events/events.js" 16958 }], 16959 "/node_modules/jshint/src/state.js": [function (e, t, n) { 16960 "use strict"; 16961 var r = e("./name-stack.js"), i = { 16962 syntax: {}, isStrict: function () { 16963 return this.directive["use strict"] || this.inClassBody || this.option.module || this.option.strict === "implied" 16964 }, inMoz: function () { 16965 return this.option.moz 16966 }, inES6: function () { 16967 return this.option.moz || this.option.esversion >= 6 16968 }, inES5: function (e) { 16969 return e ? (!this.option.esversion || this.option.esversion === 5) && !this.option.moz : !this.option.esversion || this.option.esversion >= 5 || this.option.moz 16970 }, reset: function () { 16971 this.tokens = { 16972 prev: null, 16973 next: null, 16974 curr: null 16975 }, this.option = {}, this.funct = null, this.ignored = {}, this.directive = {}, this.jsonMode = !1, this.jsonWarnings = [], this.lines = [], this.tab = "", this.cache = {}, this.ignoredLines = {}, this.forinifcheckneeded = !1, this.nameStack = new r, this.inClassBody = !1 16976 } 16977 }; 16978 n.state = i 16979 }, {"./name-stack.js": "/node_modules/jshint/src/name-stack.js"}], 16980 "/node_modules/jshint/src/style.js": [function (e, t, n) { 16981 "use strict"; 16982 n.register = function (e) { 16983 e.on("Identifier", function (n) { 16984 if (e.getOption("proto")) return; 16985 n.name === "__proto__" && e.warn("W103", {line: n.line, "char": n.char, data: [n.name, "6"]}) 16986 }), e.on("Identifier", function (n) { 16987 if (e.getOption("iterator")) return; 16988 n.name === "__iterator__" && e.warn("W103", {line: n.line, "char": n.char, data: [n.name]}) 16989 }), e.on("Identifier", function (n) { 16990 if (!e.getOption("camelcase")) return; 16991 n.name.replace(/^_+|_+$/g, "").indexOf("_") > -1 && !n.name.match(/^[A-Z0-9_]*$/) && e.warn("W106", { 16992 line: n.line, 16993 "char": n.from, 16994 data: [n.name] 16995 }) 16996 }), e.on("String", function (n) { 16997 var r = e.getOption("quotmark"), i; 16998 if (!r) return; 16999 r === "single" && n.quote !== "'" && (i = "W109"), r === "double" && n.quote !== '"' && (i = "W108"), r === !0 && (e.getCache("quotmark") || e.setCac
16999he("quotmark", n.quote), e.getCache("quotmark") !== n.quote && (i = "W110")), i && e.warn(i, { 17000 line: n.line, 17001 "char": n.char 17002 }) 17003 }), e.on("Number", function (n) { 17004 n.value.charAt(0) === "." && e.warn("W008", { 17005 line: n.line, 17006 "char": n.char, 17007 data: [n.value] 17008 }), n.value.substr(n.value.length - 1) === "." && e.warn("W047", { 17009 line: n.line, 17010 "char": n.char, 17011 data: [n.value] 17012 }), /^00+/.test(n.value) && e.warn("W046", {line: n.line, "char": n.char, data: [n.value]}) 17013 }), e.on("String", function (n) { 17014 var r = /^(?:javascript|jscript|ecmascript|vbscript|livescript)\s*:/i; 17015 if (e.getOption("scripturl")) return; 17016 r.test(n.value) && e.warn("W107", {line: n.line, "char": n.char}) 17017 }) 17018 } 17019 }, {}], 17020 "/node_modules/jshint/src/vars.js": [function (e, t, n) { 17021 "use strict"; 17022 n.reservedVars = {arguments: !1, NaN: !1}, n.ecmaIdentifiers = { 17023 3: { 17024 Array: !1, 17025 Boolean: !1, 17026 Date: !1, 17027 decodeURI: !1, 17028 decodeURIComponent: !1, 17029 encodeURI: !1, 17030 encodeURIComponent: !1, 17031 Error: !1, 17032 eval: !1, 17033 EvalError: !1, 17034 Function: !1, 17035 hasOwnProperty: !1, 17036 isFinite: !1, 17037 isNaN: !1, 17038 Math: !1, 17039 Number: !1, 17040 Object: !1, 17041 parseInt: !1, 17042 parseFloat: !1, 17043 RangeError: !1, 17044 ReferenceError: !1, 17045 RegExp: !1, 17046 String: !1, 17047 SyntaxError: !1, 17048 TypeError: !1, 17049 URIError: !1 17050 }, 17051 5: {JSON: !1}, 17052 6: {Map: !1, Promise: !1, Proxy: !1, Reflect: !1, Set: !1, Symbol: !1, WeakMap: !1, WeakSet: !1} 17053 }, n.browser = { 17054 Audio: !1, 17055 Blob: !1, 17056 addEventListener: !1, 17057 applicationCache: !1, 17058 atob: !1, 17059 blur: !1, 17060 btoa: !1, 17061 cancelAnimationFrame: !1, 17062 CanvasGradient: !1, 17063 CanvasPattern: !1, 17064 CanvasRenderingContext2D: !1, 17065 CSS: !1, 17066 clearInterval: !1, 17067 clearTimeout: !1, 17068 close: !1, 17069 closed: !1, 17070 Comment: !1, 17071 CustomEvent: !1, 17072 DOMParser: !1, 17073 defaultStatus: !1, 17074 Document: !1, 17075 document: !1, 17076 DocumentFragment: !1, 17077 Element: !1, 17078 ElementTimeControl: !1, 17079 Event: !1, 17080 event: !1, 17081 fetch: !1, 17082 FileReader: !1, 17083 FormData: !1, 17084 focus: !1, 17085 frames: !1, 17086 getComputedStyle: !1, 17087 HTMLElement: !1, 17088 HTMLAnchorElement: !1, 17089 HTMLBaseElement: !1, 17090 HTMLBlockquoteElement: !1, 17091 HTMLBodyElement: !1, 17092 HTMLBRElement: !1, 17093 HTMLButtonElement: !1, 17094 HTMLCanvasElement: !1, 17095 HTMLCollection: !1, 17096 HTMLDirectoryElement: !1, 17097 HTMLDivElement: !1, 17098 HTMLDListElement: !1, 17099 HTMLFieldSetElement: !1, 17100 HTMLFontElement: !1, 17101 HTMLFormElement: !1, 17102 HTMLFrameElement: !1, 17103 HTMLFrameSetElement: !1, 17104 HTMLHeadElement: !1, 17105 HTMLHeadingElement: !1,
17106 HTMLHRElement: !1, 17107 HTMLHtmlElement: !1, 17108 HTMLIFrameElement: !1, 17109 HTMLImageElement: !1, 17110 HTMLInputElement: !1, 17111 HTMLIsIndexElement: !1, 17112 HTMLLabelElement: !1, 17113 HTMLLayerElement: !1, 17114 HTMLLegendElement: !1, 17115 HTMLLIElement: !1, 17116 HTMLLinkElement: !1, 17117 HTMLMapElement: !1, 17118 HTMLMenuElement: !1, 17119 HTMLMetaElement: !1, 17120 HTMLModElement: !1, 17121 HTMLObjectElement: !1, 17122 HTMLOListElement: !1, 17123 HTMLOptGroupElement: !1, 17124 HTMLOptionElement: !1, 17125 HTMLParagraphElement: !1, 17126 HTMLParamElement: !1, 17127 HTMLPreElement: !1, 17128 HTMLQuoteElement: !1, 17129 HTMLScriptElement: !1, 17130 HTMLSelectElement: !1, 17131 HTMLStyleElement: !1, 17132 HTMLTableCaptionElement: !1, 17133 HTMLTableCellElement: !1, 17134 HTMLTableColElement: !1, 17135 HTMLTableElement: !1, 17136 HTMLTableRowElement: !1, 17137 HTMLTableSectionElement: !1, 17138 HTMLTemplateElement: !1, 17139 HTMLTextAreaElement: !1, 17140 HTMLTitleElement: !1, 17141 HTMLUListElement: !1, 17142 HTMLVideoElement: !1, 17143 history: !1, 17144 Image: !1, 17145 Intl: !1, 17146 length: !1, 17147 localStorage: !1, 17148 location: !1, 17149 matchMedia: !1, 17150 MessageChannel: !1, 17151 MessageEvent: !1, 17152 MessagePort: !1, 17153 MouseEvent: !1, 17154 moveBy: !1, 17155 moveTo: !1, 17156 MutationObserver: !1, 17157 name: !1, 17158 Node: !1, 17159 NodeFilter: !1, 17160 NodeList: !1, 17161 Notification: !1, 17162 navigator: !1, 17163 onbeforeunload: !0, 17164 onblur: !0, 17165 onerror: !0, 17166 onfocus: !0, 17167 onload: !0, 17168 onresize: !0, 17169 onunload: !0, 17170 open: !1, 17171 openDatabase: !1, 17172 opener: !1, 17173 Option: !1, 17174 parent: !1, 17175 performance: !1, 17176 print: !1, 17177 Range: !1, 17178 requestAnimationFrame: !1, 17179 removeEventListener: !1, 17180 resizeBy: !1, 17181 resizeTo: !1, 17182 screen: !1, 17183 scroll: !1, 17184 scrollBy: !1, 17185 scrollTo: !1, 17186 sessionStorage: !1, 17187 setInterval: !1, 17188 setTimeout: !1, 17189 SharedWorker: !1, 17190 status: !1, 17191 SVGAElement: !1, 17192 SVGAltGlyphDefElement: !1, 17193 SVGAltGlyphElement: !1, 17194 SVGAltGlyphItemElement: !1, 17195 SVGAngle: !1, 17196 SVGAnimateColorElement: !1, 17197 SVGAnimateElement: !1, 17198 SVGAnimateMotionElement: !1, 17199 SVGAnimateTransformElement: !1, 17200 SVGAnimatedAngle: !1, 17201 SVGAnimatedBoolean: !1, 17202 SVGAnimatedEnumeration: !1, 17203 SVGAnimatedInteger: !1, 17204 SVGAnimatedLength: !1, 17205 SVGAnimatedLengthList: !1, 17206 SVGAnimatedNumber: !1, 17207 SVGAnimatedNumberList: !1, 17208 SVGAnimatedPathData: !1, 17209 SVGAnimatedPoints: !1, 17210 SVGAnimatedPreserveAspectRatio: !1, 17211 SVGAnimatedRect: !1, 17212 SVGAnimatedString: !1, 17213 SVGAnimatedTransformList: !1, 17214 SVGAnimationElement: !1, 17215 SVGCSSRule: !1, 17216 SVGCircleElement: !1, 17217 SVGClipPathElement: !1, 17218 SVGColor: !1, 17219 SVGColorProfileElement: !1, 17220 SVGColorProfileRule: !1, 17221 SVGComponentTransferFunctionElement: !1, 17222 SVGCursorElement: !1, 17223 SVGDefsElement: !1, 17224 SVGDescElement: !1, 17225 SVGDocument: !1, 17226 SVGElement: !1, 17227 SVGElementInstance: !1, 17228 SVGElementInstanceList: !1, 17229 SVGEllipseElement: !1,
17230 SVGExternalResourcesRequired: !1, 17231 SVGFEBlendElement: !1, 17232 SVGFEColorMatrixElement: !1, 17233 SVGFEComponentTransferElement: !1, 17234 SVGFECompositeElement: !1, 17235 SVGFEConvolveMatrixElement: !1, 17236 SVGFEDiffuseLightingElement: !1, 17237 SVGFEDisplacementMapElement: !1, 17238 SVGFEDistantLightElement: !1, 17239 SVGFEFloodElement: !1, 17240 SVGFEFuncAElement: !1, 17241 SVGFEFuncBElement: !1, 17242 SVGFEFuncGElement: !1, 17243 SVGFEFuncRElement: !1, 17244 SVGFEGaussianBlurElement: !1, 17245 SVGFEImageElement: !1, 17246 SVGFEMergeElement: !1, 17247 SVGFEMergeNodeElement: !1, 17248 SVGFEMorphologyElement: !1, 17249 SVGFEOffsetElement: !1, 17250 SVGFEPointLightElement: !1, 17251 SVGFESpecularLightingElement: !1, 17252 SVGFESpotLightElement: !1, 17253 SVGFETileElement: !1, 17254 SVGFETurbulenceElement: !1, 17255 SVGFilterElement: !1, 17256 SVGFilterPrimitiveStandardAttributes: !1, 17257 SVGFitToViewBox: !1, 17258 SVGFontElement: !1, 17259 SVGFontFaceElement: !1, 17260 SVGFontFaceFormatElement: !1, 17261 SVGFontFaceNameElement: !1, 17262 SVGFontFaceSrcElement: !1, 17263 SVGFontFaceUriElement: !1, 17264 SVGForeignObjectElement: !1, 17265 SVGGElement: !1, 17266 SVGGlyphElement: !1, 17267 SVGGlyphRefElement: !1, 17268 SVGGradientElement: !1, 17269 SVGHKernElement: !1, 17270 SVGICCColor: !1, 17271 SVGImageElement: !1, 17272 SVGLangSpace: !1, 17273 SVGLength: !1, 17274 SVGLengthList: !1, 17275 SVGLineElement: !1, 17276 SVGLinearGradientElement: !1, 17277 SVGLocatable: !1, 17278 SVGMPathElement: !1, 17279 SVGMarkerElement: !1, 17280 SVGMaskElement: !1, 17281 SVGMatrix: !1, 17282 SVGMetadataElement: !1, 17283 SVGMissingGlyphElement: !1, 17284 SVGNumber: !1, 17285 SVGNumberList: !1, 17286 SVGPaint: !1, 17287 SVGPathElement: !1, 17288 SVGPathSeg: !1, 17289 SVGPathSegArcAbs: !1, 17290 SVGPathSegArcRel: !1, 17291 SVGPathSegClosePath: !1, 17292 SVGPathSegCurvetoCubicAbs: !1, 17293 SVGPathSegCurvetoCubicRel: !1, 17294 SVGPathSegCurvetoCubicSmoothAbs: !1, 17295 SVGPathSegCurvetoCubicSmoothRel: !1, 17296 SVGPathSegCurvetoQuadraticAbs: !1, 17297 SVGPathSegCurvetoQuadraticRel: !1, 17298 SVGPathSegCurvetoQuadraticSmoothAbs: !1, 17299 SVGPathSegCurvetoQuadraticSmoothRel: !1, 17300 SVGPathSegLinetoAbs: !1, 17301 SVGPathSegLinetoHorizontalAbs: !1, 17302 SVGPathSegLinetoHorizontalRel: !1, 17303 SVGPathSegLinetoRel: !1, 17304 SVGPathSegLinetoVerticalAbs: !1, 17305 SVGPathSegLinetoVerticalRel: !1, 17306 SVGPathSegList: !1, 17307 SVGPathSegMovetoAbs: !1, 17308 SVGPathSegMovetoRel: !1, 17309 SVGPatternElement: !1, 17310 SVGPoint: !1, 17311 SVGPointList: !1, 17312 SVGPolygonElement: !1, 17313 SVGPolylineElement: !1, 17314 SVGPreserveAspectRatio: !1, 17315 SVGRadialGradientElement: !1, 17316 SVGRect: !1, 17317 SVGRectElement: !1, 17318 SVGRenderingIntent: !1, 17319 SVGSVGElement: !1, 17320 SVGScriptElement: !1, 17321 SVGSetElement: !1, 17322 SVGStopElement: !1, 17323 SVGStringList: !1, 17324 SVGStylable: !1, 17325 SVGStyleElement: !1, 17326 SVGSwitchElement: !1, 17327 SVGSymbolElement: !1, 17328 SVGTRefElement: !1, 17329 SVGTSpanElement: !1, 17330 SVGTests: !1, 17331 SVGTextContentElement: !1, 17332 SVGTextElement: !1, 17333 SVGTextPathElement: !1, 17334 SVGTextPositioningElement: !1, 17335 SVGTitleElement: !1, 17336 SVGTransform: !1, 17337 SVGTransformList: !1, 17338 SVGTransformable: !1, 17339 SVGURIReference: !1, 17340 SVGUnitTypes: !1, 17341 SVGUseElement: !1, 17342 SVGVKernElement: !1, 17343 SVGViewElement: !1, 17344 SVGViewSpec: !1, 17345 SVGZoomAndPan: !1, 17346 Text: !1, 17347 TextDecoder: !1, 17348 TextEncoder: !1, 17349 TimeEvent: !1, 17350 top: !1, 17351 URL: !1, 17352 WebGLActiveInfo: !1, 17353 WebGLBuffer: !1, 17354 WebGLContextEvent: !1, 17355 WebGLFramebuffer: !1, 17356 WebGLProgram: !1, 17357 WebGLRenderbuffer: !1, 17358 WebGLRenderingContext: !1, 17359 WebGLShader: !1, 17360 WebGLShaderPrecisionFormat: !1, 17361 WebGLTexture: !1, 17362 WebGLUniformLocation: !1, 17363 WebSocket: !1, 17364 window: !1, 17365 Window: !1, 17366 Worker: !1, 17367 XDomainRequest: !1, 17368 XMLHttpRequest: !1, 17369 XMLSerializer: !1, 17370 XPathEvaluator: !1, 17371 XPathException: !1, 17372 XPathExpression: !1, 17373 XPathNamespace: !1,
17374 XPathNSResolver: !1, 17375 XPathResult: !1 17376 }, n.devel = { 17377 alert: !1, 17378 confirm: !1, 17379 console: !1, 17380 Debug: !1, 17381 opera: !1, 17382 prompt: !1 17383 }, n.worker = { 17384 importScripts: !0, 17385 postMessage: !0, 17386 self: !0, 17387 FileReaderSync: !0 17388 }, n.nonstandard = {escape: !1, unescape: !1}, n.couch = { 17389 require: !1, 17390 respond: !1, 17391 getRow: !1, 17392 emit: !1, 17393 send: !1, 17394 start: !1, 17395 sum: !1, 17396 log: !1, 17397 exports: !1, 17398 module: !1, 17399 provides: !1 17400 }, n.node = { 17401 __filename: !1, 17402 __dirname: !1, 17403 GLOBAL: !1, 17404 global: !1, 17405 module: !1, 17406 require: !1, 17407 Buffer: !0, 17408 console: !0, 17409 exports: !0, 17410 process: !0, 17411 setTimeout: !0, 17412 clearTimeout: !0, 17413 setInterval: !0, 17414 clearInterval: !0, 17415 setImmediate: !0, 17416 clearImmediate: !0 17417 }, n.browserify = { 17418 __filename: !1, 17419 __dirname: !1, 17420 global: !1, 17421 module: !1, 17422 require: !1, 17423 Buffer: !0, 17424 exports: !0, 17425 process: !0 17426 }, n.phantom = {phantom: !0, require: !0, WebPage: !0, console: !0, exports: !0}, n.qunit = { 17427 asyncTest: !1, 17428 deepEqual: !1, 17429 equal: !1, 17430 expect: !1, 17431 module: !1, 17432 notDeepEqual: !1, 17433 notEqual: !1, 17434 notPropEqual: !1, 17435 notStrictEqual: !1, 17436 ok: !1, 17437 propEqual: !1, 17438 QUnit: !1, 17439 raises: !1, 17440 start: !1, 17441 stop: !1, 17442 strictEqual: !1, 17443 test: !1, 17444 "throws": !1 17445 }, n.rhino = { 17446 defineClass: !1, 17447 deserialize: !1, 17448 gc: !1, 17449 help: !1, 17450 importClass: !1, 17451 importPackage: !1, 17452 java: !1, 17453 load: !1, 17454 loadClass: !1, 17455 Packages: !1, 17456 print: !1, 17457 quit: !1, 17458 readFile: !1, 17459 readUrl: !1, 17460 runCommand: !1, 17461 seal: !1, 17462 serialize: !1, 17463 spawn: !1, 17464 sync: !1, 17465 toint32: !1, 17466 version: !1 17467 }, n.shelljs = { 17468 target: !1, 17469 echo: !1, 17470 exit: !1, 17471 cd: !1, 17472 pwd: !1, 17473 ls: !1, 17474 find: !1, 17475 cp: !1, 17476 rm: !1, 17477 mv: !1, 17478 mkdir: !1, 17479 test: !1, 17480 cat: !1, 17481 sed: !1, 17482 grep: !1, 17483 which: !1, 17484 dirs: !1, 17485 pushd: !1, 17486 popd: !1, 17487 env: !1, 17488 exec: !1, 17489 chmod: !1, 17490 config: !1, 17491 error: !1, 17492 tempdir: !1 17493 }, n.typed = { 17494 ArrayBuffer: !1, 17495 ArrayBufferView: !1, 17496 DataView: !1, 17497 Float32Array: !1, 17498 Float64Array: !1, 17499 Int16Array: !1, 17500 Int32Array: !1, 17501 Int8Array: !1, 17502 Uint16Array: !1, 17503 Uint32Array: !1, 17504 Uint8Array: !1, 17505 Uint8ClampedArray: !1 17506 }, n.wsh = { 17507 ActiveXObject: !0, 17508 Enumerator: !0, 17509 GetObject: !0, 17510 ScriptEngine: !0, 17511 ScriptEngineBuildVersion: !0, 17512 ScriptEngineMajorVersion: !0, 17513 ScriptEngineMinorVersion: !0, 17514 VBArray: !0, 17515 WSH: !0, 17516 WScript: !0, 17517 XDomainRequest: !0 17518 }, n.dojo = {dojo: !1, dijit: !1, dojox: !1, define: !1, require: !1}, n.jquery = { 17519 $: !1, 17520 jQuery: !1 17521 }, n.mootools = { 17522 $: !1, 17523 $$: !1, 17524 Asset: !1, 17525 Browser: !1, 17526 Chain: !1, 17527 Class: !1, 17528 Color: !1,
17529 Cookie: !1, 17530 Core: !1, 17531 Document: !1, 17532 DomReady: !1, 17533 DOMEvent: !1, 17534 DOMReady: !1, 17535 Drag: !1, 17536 Element: !1, 17537 Elements: !1, 17538 Event: !1, 17539 Events: !1, 17540 Fx: !1, 17541 Group: !1, 17542 Hash: !1, 17543 HtmlTable: !1, 17544 IFrame: !1, 17545 IframeShim: !1, 17546 InputValidator: !1, 17547 instanceOf: !1, 17548 Keyboard: !1, 17549 Locale: !1, 17550 Mask: !1, 17551 MooTools: !1, 17552 Native: !1, 17553 Options: !1, 17554 OverText: !1, 17555 Request: !1, 17556 Scroller: !1, 17557 Slick: !1, 17558 Slider: !1, 17559 Sortables: !1, 17560 Spinner: !1, 17561 Swiff: !1, 17562 Tips: !1, 17563 Type: !1, 17564 typeOf: !1, 17565 URI: !1, 17566 Window: !1 17567 }, n.prototypejs = { 17568 $: !1, 17569 $$: !1, 17570 $A: !1, 17571 $F: !1, 17572 $H: !1, 17573 $R: !1, 17574 $break: !1, 17575 $continue: !1, 17576 $w: !1, 17577 Abstract: !1, 17578 Ajax: !1, 17579 Class: !1, 17580 Enumerable: !1, 17581 Element: !1, 17582 Event: !1, 17583 Field: !1, 17584 Form: !1, 17585 Hash: !1, 17586 Insertion: !1, 17587 ObjectRange: !1, 17588 PeriodicalExecuter: !1, 17589 Position: !1, 17590 Prototype: !1, 17591 Selector: !1, 17592 Template: !1, 17593 Toggle: !1, 17594 Try: !1, 17595 Autocompleter: !1, 17596 Builder: !1, 17597 Control: !1, 17598 Draggable: !1, 17599 Draggables: !1, 17600 Droppables: !1,
17601 Effect: !1, 17602 Sortable: !1, 17603 SortableObserver: !1, 17604 Sound: !1, 17605 Scriptaculous: !1 17606 }, n.yui = {YUI: !1, Y: !1, YUI_config: !1}, n.mocha = { 17607 mocha: !1, 17608 describe: !1, 17609 xdescribe: !1, 17610 it: !1, 17611 xit: !1, 17612 context: !1, 17613 xcontext: !1, 17614 before: !1, 17615 after: !1, 17616 beforeEach: !1, 17617 afterEach: !1, 17618 suite: !1, 17619 test: !1, 17620 setup: !1, 17621 teardown: !1, 17622 suiteSetup: !1, 17623 suiteTeardown: !1 17624 }, n.jasmine = { 17625 jasmine: !1, 17626 describe: !1, 17627 xdescribe: !1, 17628 it: !1, 17629 xit: !1, 17630 beforeEach: !1, 17631 afterEach: !1, 17632 setFixtures: !1, 17633 loadFixtures: !1, 17634 spyOn: !1, 17635 expect: !1, 17636 runs: !1, 17637 waitsFor: !1, 17638 waits: !1, 17639 beforeAll: !1, 17640 afterAll: !1, 17641 fail: !1, 17642 fdescribe: !1, 17643 fit: !1, 17644 pending: !1 17645 } 17646 }, {}] 17647 }, {}, ["/node_modules/jshint/src/jshint.js"]) 17648}), define("ace/mode/javascript_worker", [], function (require, exports, module) { 17649 "use strict"; 17650 17651 function startRegex(e) { 17652 return RegExp("^(" + e.join("|") + ")") 17653 } 17654 17655 var oop = require("../lib/oop"), Mirror = require("../worker/mirror").Mirror, 17656 lint = require("./javascript/jshint").JSHINT, 17657 disabledWarningsRe = startRegex(["Bad for in variable '(.+)'.", 'Missing "use strict"']), 17658 errorsRe = startRegex(["Unexpected", "Expected ", "Confusing (plus|minus)", "\\{a\\} unterminated regular expression", "Unclosed ", "Unmatched ", "Unbegun comment", "Bad invocation", "Missing space after", "Missing operator at"]), 17659 infoRe = startRegex(["Expected an assignment", "Bad escapement of EOL", "Unexpected comma", "Unexpected space", "Missing radix parameter.", "A leading decimal point can", "\\['{a}'\\] is better written in dot notation.", "'{a}' used out of scope"]), 17660 JavaScriptWorker = exports.JavaScriptWorker = function (e) { 17661 Mirror.call(this, e), this.setTimeout(500), this.setOptions() 17662 }; 17663 oop.inherits(JavaScriptWorker, Mirror), function () { 17664 this.setOptions = function (e) { 17665 this.options = e || { 17666 esnext: !0, 17667 moz: !0, 17668 devel: !0, 17669 browser: !0, 17670 node: !0, 17671 laxcomma: !0, 17672 laxbreak: !0, 17673 lastsemic: !0, 17674 onevar: !1, 17675 passfail: !1, 17676 maxerr: 100, 17677 expr: !0, 17678 multistr: !0, 17679 globalstrict: !0 17680 }, this.doc.getValue() && this.deferredUpdate.schedule(100) 17681 }, this.changeOptions = function (e) { 17682 oop.mixin(this.options, e), this.doc.getValue() && this.deferredUpdate.schedule(100) 17683 }, this.isValidJS = function (str) { 17684 try { 17685 eval("throw 0;" + str) 17686 } catch (e) { 17687 if (e === 0) return !0 17688 } 17689 return !1 17690 }, this.onUpdate = function () { 17691 var e = this.doc.getValue(); 17692 e = e.replace(/^#!.*\n/, "\n"); 17693 if (!e) return this.sender.emit("annotate", []); 17694 var t = [], n = this.isValidJS(e) ? "warning" : "error"; 17695 lint(e, this.options, this.options.globals); 17696 var r = lint.errors, i = !1; 17697 for (var s = 0; s < r.length; s++) { 17698 var o = r[s]; 17699 if (!o) continue; 17700 var u = o.raw, a = "warning"; 17701 if (u == "Missing semicolon.") { 17702 var f = o.evidence.substr(o.character); 17703 f = f.charAt(f.search(/\S/)), n == "error" && f && /[\w\d{(['"]/.test(f) ? (o.reason = 'Missing ";" before statement', a = "error") : a = "info" 17704 } else { 17705 if (disabledWarningsRe.test(u)) continue; 17706 infoRe.test(u) ? a = "info" : errorsRe.test(u) ? (i = !0, a = n) : u == "'{a}' is not defined." ? a = "warning" : u == "'{a}' is defined but never used." && (a = "info") 17707 } 17708 t.push({row: o.line - 1, column: o.character - 1, text: o.reason, type: a, raw: u}), i 17709 } 17710 this.sender.emit("annotate", t) 17711 } 17712 }.call(JavaScriptWorker.prototype) 17713}), define("ace/lib/es5-shim", [], function (e, t, n) { 17714 function r() { 17715 } 17716 17717 function w(e) { 17718 try { 17719 return Object.defineProperty(e, "sentinel", {}), "sentinel" in e 17720 } catch (t) { 17721 } 17722 } 17723 17724 function H(e) { 17725 return e = +e, e !== e ? e = 0 : e !== 0 && e !== 1 / 0 && e !== -1 / 0 && (e = (e > 0 || -1) * Math.floor(Math.abs(e))), e 17726 } 17727 17728 function B(e) { 17729 var t = typeof e; 17730 return e === null || t === "undefined" || t === "boolean" || t === "number" || t === "string" 17731 } 17732 17733 function j(e) { 17734 var t, n, r; 17735 if (B(e)) return e; 17736 n = e.valueOf; 17737 if (typeof n == "function") { 17738 t = n.call(e); 17739 if (B(t)) return t 17740 } 17741 r = e.toString; 17742 if (typeof r == "function") { 17743 t = r.call(e); 17744 if (B(t)) return t 17745 } 17746 throw new TypeError 17747 } 17748 17749 Function.prototype.bind || (Function.prototype.bind = function (t) { 17750 var n = this; 17751 if (typeof n != "function") throw new TypeError("Function.prototype.bind called on incompatible " + n); 17752 var i = u.call(arguments, 1), s = function () { 17753 if (this instanceof s) { 17754 var e = n.apply(this, i.concat(u.call(arguments))); 17755 return Object(e) === e ? e : this 17756 }
17757 return n.apply(t, i.concat(u.call(arguments))) 17758 }; 17759 return n.prototype && (r.prototype = n.prototype, s.prototype = new r, r.prototype = null), s 17760 }); 17761 var i = Function.prototype.call, s = Array.prototype, o = Object.prototype, u = s.slice, a = i.bind(o.toString), 17762 f = i.bind(o.hasOwnProperty), l, c, h, p, d; 17763 if (d = f(o, "__defineGetter__")) l = i.bind(o.__defineGetter__), c = i.bind(o.__defineSetter__), h = i.bind(o.__lookupGetter__), p = i.bind(o.__lookupSetter__); 17764 if ([1, 2].splice(0).length != 2) if (!function () { 17765 function e(e) { 17766 var t = new Array(e + 2); 17767 return t[0] = t[1] = 0, t 17768 } 17769 17770 var t = [], n; 17771 t.splice.apply(t, e(20)), t.splice.apply(t, e(26)), n = t.length, t.splice(5, 0, "XXX"), n + 1 == t.length; 17772 if (n + 1 == t.length) return !0 17773 }()) Array.prototype.splice = function (e, t) { 17774 var n = this.length; 17775 e > 0 ? e > n && (e = n) : e == void 0 ? e = 0 : e < 0 && (e = Math.max(n + e, 0)), e + t < n || (t = n - e); 17776 var r = this.slice(e, e + t), i = u.call(arguments, 2), s = i.length; 17777 if (e === n) s && this.push.apply(this, i); else { 17778 var o = Math.min(t, n - e), a = e + o, f = a + s - o, l = n - a, c = n - o; 17779 if (f < a) for (var h = 0; h < l; ++h) this[f + h] = this[a + h]; else if (f > a) for (h = l; h--;) this[f + h] = this[a + h]; 17780 if (s && e === c) this.length = c, this.push.apply(this, i); else { 17781 this.length = c + s; 17782 for (h = 0; h < s; ++h) this[e + h] = i[h] 17783 } 17784 } 17785 return r 17786 }; else { 17787 var v = Array.prototype.splice; 17788 Array.prototype.splice = function (e, t) { 17789 return arguments.length ? v.apply(this, [e === void 0 ? 0 : e, t === void 0 ? this.length - e : t].concat(u.call(arguments, 2))) : [] 17790 } 17791 } 17792 Array.isArray || (Array.isArray = function (t) { 17793 return a(t) == "[object Array]" 17794 }); 17795 var m = Object("a"), g = m[0] != "a" || !(0 in m); 17796 Array.prototype.forEach || (Array.prototype.forEach = function (t) { 17797 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = arguments[1], s = -1, 17798 o = r.length >>> 0; 17799 if (a(t) != "[object Function]") throw new TypeError; 17800 while (++s < o) s in r && t.call(i, r[s], s, n) 17801 }), Array.prototype.map || (Array.prototype.map = function (t) { 17802 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = Array(i), 17803 o = arguments[1]; 17804 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 17805 for (var u = 0; u < i; u++) u in r && (s[u] = t.call(o, r[u], u, n)); 17806 return s 17807 }), Array.prototype.filter || (Array.prototype.filter = function (t) { 17808 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = [], o, 17809 u = arguments[1]; 17810 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 17811 for (var f = 0; f < i; f++) f in r && (o = r[f], t.call(u, o, f, n) && s.push(o)); 17812 return s 17813 }), Array.prototype.every || (Array.prototype.every = function (t) { 17814 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 17815 s = arguments[1]; 17816 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 17817 for (var o = 0; o < i; o++) if (o in r && !t.call(s, r[o], o, n)) return !1; 17818 return !0 17819 }), Array.prototype.some || (Array.prototype.some = function (t) { 17820 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 17821 s = arguments[1]; 17822 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 17823 for (var o = 0; o < i; o++) if (o in r && t.call(s, r[o], o, n)) return !0; 17824 return !1 17825 }), Array.prototype.reduce || (Array.prototype.reduce = function (t) { 17826 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 17827 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 17828 if (!i && arguments.length == 1) throw new TypeError("reduce of empty array with
17828no initial value"); 17829 var s = 0, o; 17830 if (arguments.length >= 2) o = arguments[1]; else do { 17831 if (s in r) { 17832 o = r[s++]; 17833 break 17834 } 17835 if (++s >= i) throw new TypeError("reduce of empty array with no initial value") 17836 } while (!0); 17837 for (; s < i; s++) s in r && (o = t.call(void 0, o, r[s], s, n)); 17838 return o 17839 }), Array.prototype.reduceRight || (Array.prototype.reduceRight = function (t) { 17840 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 17841 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 17842 if (!i && arguments.length == 1) throw new TypeError("reduceRight of empty array with no initial value"); 17843 var s, o = i - 1; 17844 if (arguments.length >= 2) s = arguments[1]; else do { 17845 if (o in r) { 17846 s = r[o--]; 17847 break 17848 } 17849 if (--o < 0) throw new TypeError("reduceRight of empty array with no initial value") 17850 } while (!0); 17851 do o in this && (s = t.call(void 0, s, r[o], o, n)); while (o--); 17852 return s 17853 }); 17854 if (!Array.prototype.indexOf || [0, 1].indexOf(1, 2) != -1) Array.prototype.indexOf = function (t) { 17855 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 17856 if (!r) return -1; 17857 var i = 0; 17858 arguments.length > 1 && (i = H(arguments[1])), i = i >= 0 ? i : Math.max(0, r + i); 17859 for (; i < r; i++) if (i in n && n[i] === t) return i; 17860 return -1 17861 }; 17862 if (!Array.prototype.lastIndexOf || [0, 1].lastIndexOf(0, -3) != -1) Array.prototype.lastIndexOf = function (t) { 17863 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 17864 if (!r) return -1; 17865 var i = r - 1; 17866 arguments.length > 1 && (i = Math.min(i, H(arguments[1]))), i = i >= 0 ? i : r - Math.abs(i); 17867 for (; i >= 0; i--) if (i in n && t === n[i]) return i; 17868 return -1 17869 }; 17870 Object.getPrototypeOf || (Object.getPrototypeOf = function (t) { 17871 return t.__proto__ || (t.constructor ? t.constructor.prototype : o) 17872 }); 17873 if (!Object.getOwnPropertyDescriptor) { 17874 var y = "Object.getOwnPropertyDescriptor called on a non-object: "; 17875 Object.getOwnPropertyDescriptor = function (t, n) { 17876 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(y + t); 17877 if (!f(t, n)) return; 17878 var r, i, s; 17879 r = {enumerable: !0, configurable: !0}; 17880 if (d) { 17881 var u = t.__proto__; 17882 t.__proto__ = o; 17883 var i = h(t, n), s = p(t, n); 17884 t.__proto__ = u; 17885 if (i || s) return i && (r.get = i), s && (r.set = s), r 17886 } 17887 return r.value = t[n], r 17888 } 17889 } 17890 Object.getOwnPropertyNames || (Object.getOwnPropertyNames = function (t) { 17891 return Object.keys(t) 17892 }); 17893 if (!Object.create) { 17894 var b; 17895 Object.prototype.__proto__ === null ? b = function () { 17896 return {__proto__: null} 17897 } : b = function () { 17898 var e = {}; 17899 for (var t in e) e[t] = null; 17900 return e.constructor = e.hasOwnProperty = e.propertyIsEnumerable = e.isPrototypeOf = e.toLocaleString = e.toString = e.valueOf = e.__proto__ = null, e 17901 }, Object.create = function (t, n) { 17902 var r; 17903 if (t === null) r = b(); else { 17904 if (typeof t != "object") throw new TypeError("typeof prototype[" + typeof t + "] != 'object'"); 17905 var i = function () { 17906 }; 17907 i.prototype = t, r = new i, r.__proto__ = t 17908 } 17909 return n !== void 0 && Object.defineProperties(r, n), r 17910 } 17911 } 17912 if (Object.defineProperty) { 17913 var E = w({}), S = typeof document == "undefined" || w(document.createElement("div")); 17914 if (!E || !S) var x = Object.defineProperty 17915 } 17916 if (!Object.defineProperty || x) { 17917 var T = "Property description must be an object: ", N = "Object.defineProperty called on non-object: ", 17918 C = "getters & setters can not be defined on this javascript engine"; 17919 Object.defineProperty = function (t, n, r) { 17920 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(N + t); 17921 if (typeof r != "object" && typeof r != "function" || r === null) throw new TypeError(T + r); 17922 if (x) try { 17923 return x.call(Object, t, n, r) 17924 } catch (i) { 17925 } 17926 if (f(r, "value")) if (d && (h(t, n) || p(t, n))) { 17927 var s = t.__proto__; 17928 t.__proto__ = o, delete t[n], t[n] = r.value, t.__proto__ = s 17929 } else t[n] = r.value; else { 17930 if (!d) throw new TypeError(C); 17931 f(r, "get") && l(t, n, r.get), f(r, "set") && c(t, n, r.set) 17932 } 17933 return t 17934 } 17935 } 17936 Object.defineProperties || (Object.defineProperties = function (t, n) { 17937 for (var r in n) f(n, r) && Object.defineProperty(t, r, n[r]); 17938 return t 17939 }), Object.seal || (Object.seal = function (t) { 17940 return t 17941 }), Object.freeze || (Object.freeze = function (t) { 17942 return t 17943 }); 17944 try { 17945 Object.freeze(function () { 17946 }) 17947 } catch (k) { 17948 Object.freeze = function (t) { 17949 return function (n) { 17950 return typeof n == "function" ? n : t(n) 17951 } 17952 }(Object.freeze) 17953 } 17954 Object.preventExtensions || (Object.preventExtensions = function (t) { 17955 return t 17956 }), Object.isSealed || (Object.isSealed = function (t) { 17957 return !1 17958 }), Object.isFrozen || (Object.isFrozen = function (t) { 17959 return !1 17960 }), Object.isExtensible || (Object.isExtensible = function (t) { 17961 if (Object(t) === t) throw new TypeError; 17962 var n = ""; 17963 while (f(t, n)) n += "?"; 17964 t[n] = !0; 17965 var r = f(t, n); 17966 return delete t[n], r 17967 }); 17968 if (!Object.keys) { 17969 var L = !0,
17970 A = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], 17971 O = A.length; 17972 for (var M in {toString: null}) L = !1; 17973 Object.keys = function I(e) { 17974 if (typeof e != "object" && typeof e != "function" || e === null) throw new TypeError("Object.keys called on a non-object"); 17975 var I = []; 17976 for (var t in e) f(e, t) && I.push(t); 17977 if (L) for (var n = 0, r = O; n < r; n++) { 17978 var i = A[n]; 17979 f(e, i) && I.push(i) 17980 } 17981 return I 17982 } 17983 } 17984 Date.now || (Date.now = function () { 17985 return (new Date).getTime() 17986 }); 17987 var _ = " \n\x0b\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"; 17988 if (!String.prototype.trim || _.trim()) { 17989 _ = "[" + _ + "]"; 17990 var D = new RegExp("^" + _ + _ + "*"), P = new RegExp(_ + _ + "*$"); 17991 String.prototype.trim = function () { 17992 return String(this).replace(D, "").replace(P, "") 17993 } 17994 } 17995 var F = function (e) { 17996 if (e == null) throw new TypeError("can't convert " + e + " to object"); 17997 return Object(e) 17998 } 17999}) 18000 18001"no use strict"; 18002!function (e) { 18003 function t(e, t) { 18004 var n = e, r = ""; 18005 while (n) { 18006 var i = t[n]; 18007 if (typeof i == "string") return i + r; 18008 if (i) return i.location.replace(/\/*$/, "/") + (r || i.main || i.name); 18009 if (i === !1) return ""; 18010 var s = n.lastIndexOf("/"); 18011 if (s === -1) break; 18012 r = n.substr(s) + r, n = n.slice(0, s) 18013 } 18014 return e 18015 } 18016 18017 if (typeof e.window != "undefined" && e.document) return; 18018 if (e.require && e.define) return; 18019 e.console || (e.console = function () { 18020 var e = Array.prototype.slice.call(arguments, 0); 18021 postMessage({type: "log", data: e}) 18022 }, e.console.error = e.console.warn = e.console.log = e.console.trace = e.console), e.window = e, e.ace = e, e.onerror = function (e, t, n, r, i) { 18023 postMessage({type: "error", data: {message: e, data: i.data, file: t, line: n, col: r, stack: i.stack}}) 18024 }, e.normalizeModule = function (t, n) { 18025 if (n.indexOf("!") !== -1) { 18026 var r = n.split("!"); 18027 return e.normalizeModule(t, r[0]) + "!" + e.normalizeModule(t, r[1]) 18028 } 18029 if (n.charAt(0) == ".") { 18030 var i = t.split("/").slice(0, -1).join("/"); 18031 n = (i ? i + "/" : "") + n; 18032 while (n.indexOf(".") !== -1 && s != n) { 18033 var s = n; 18034 n = n.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "") 18035 } 18036 } 18037 return n 18038 }, e.require = function (r, i) { 18039 i || (i = r, r = null); 18040 if (!i.charAt) throw new Error("worker.js require() accepts only (parentId, id) as arguments"); 18041 i = e.normalizeModule(r, i); 18042 var s = e.require.modules[i]; 18043 if (s) return s.initialized || (s.initialized = !0, s.exports = s.factory().exports), s.exports; 18044 if (!e.require.tlns) return console.log("unable to load " + i); 18045 var o = t(i, e.require.tlns); 18046 return o.slice(-3) != ".js" && (o += ".js"), e.require.id = i, e.require.modules[i] = {}, importScripts(o), e.require(r, i) 18047 }, e.require.modules = {}, e.require.tlns = {}, e.define = function (t, n, r) { 18048 arguments.length == 2 ? (r = n, typeof t != "string" && (n = t, t = e.require.id)) : arguments.length == 1 && (r = t, n = [], t = e.require.id); 18049 if (typeof r != "function") { 18050 e.require.modules[t] = {exports: r, initialized: !0}; 18051 return 18052 } 18053 n.length || (n = ["require", "exports", "module"]); 18054 var i = function (n) { 18055 return e.require(t, n) 18056 }; 18057 e.require.modules[t] = { 18058 exports: {}, factory: function () { 18059 var e = this, t = r.apply(this, n.slice(0, r.length).map(function (t) { 18060 switch (t) { 18061 case"require": 18062 return i; 18063 case"exports": 18064 return e.exports; 18065 case"module": 18066 return e; 18067 default: 18068 return i(t) 18069 } 18070 })); 18071 return t && (e.exports = t), e 18072 } 18073 } 18074 }, e.define.amd = {}, require.tlns = {}, e.initBaseUrls = function (t) { 18075 for (var n in t) require.tlns[n] = t[n] 18076 }, e.initSender = function () { 18077 var n = e.require("ace/lib/event_emitter").EventEmitter, r = e.require("ace/lib/oop"), i = function () { 18078 }; 18079 return function () { 18080 r.implement(this, n), this.callback = function (e, t) { 18081 postMessage({type: "call", id: t, data: e}) 18082 }, this.emit = function (e, t) { 18083 postMessage({type: "event", name: e, data: t}) 18084 } 18085 }.call(i.prototype), new i 18086 }; 18087 var n = e.main = null, r = e.sender = null; 18088 e.onmessage = function (t) { 18089 var i = t.data; 18090 if (i.event && r) r._signal(i.event, i.data); else if (i.command) if (n[i.command]) n[i.command].apply(n, i.args); else { 18091 if (!e[i.command]) throw new Error("Unknown command:" + i.command); 18092 e[i.command].apply(e, i.args) 18093 } else if (i.init) { 18094 e.initBaseUrls(i.tlns), require("ace/lib/es5-shim"), r = e.sender = e.initSender(); 18095 var s = require(i.module)[i.classname]; 18096 n = e.main = new s(r) 18097 } 18098 } 18099}(this), define("ace/lib/oop", [], function (e, t, n) { 18100 "use strict"; 18101 t.inherits = function (e, t) { 18102 e.super_ = t, e.prototype = Object.create(t.prototype, { 18103 constructor: { 18104 value: e, 18105 enumerable: !1, 18106 writable: !0, 18107 configurable: !0 18108 } 18109 }) 18110 }, t.mixin = function (e, t) { 18111 for (var n in t) e[n] = t[n]; 18112 return e 18113 }, t.implement = function (e, n) { 18114 t.mixin(e, n) 18115 } 18116}), define("ace/range", [], function (e, t, n) { 18117 "use strict"; 18118 var r = function (e, t) { 18119 return e.row - t.row || e.column - t.column 18120 }, i = function (e, t, n, r) { 18121 this.start = {row: e, column: t}, this.end = {row: n, column: r} 18122 }; 18123 (function () { 18124 this.isEqual = function (e) { 18125 return this.start.row === e.start.row && this.end.row
18125=== e.end.row && this.start.column === e.start.column && this.end.column === e.end.column 18126 }, this.toString = function () { 18127 return "Range: [" + this.start.row + "/" + this.start.column + "] -> [" + this.end.row + "/" + this.end.column + "]" 18128 }, this.contains = function (e, t) { 18129 return this.compare(e, t) == 0 18130 }, this.compareRange = function (e) { 18131 var t, n = e.end, r = e.start; 18132 return t = this.compare(n.row, n.column), t == 1 ? (t = this.compare(r.row, r.column), t == 1 ? 2 : t == 0 ? 1 : 0) : t == -1 ? -2 : (t = this.compare(r.row, r.column), t == -1 ? -1 : t == 1 ? 42 : 0) 18133 }, this.comparePoint = function (e) { 18134 return this.compare(e.row, e.column) 18135 }, this.containsRange = function (e) { 18136 return this.comparePoint(e.start) == 0 && this.comparePoint(e.end) == 0 18137 }, this.intersects = function (e) { 18138 var t = this.compareRange(e); 18139 return t == -1 || t == 0 || t == 1 18140 }, this.isEnd = function (e, t) { 18141 return this.end.row == e && this.end.column == t 18142 }, this.isStart = function (e, t) { 18143 return this.start.row == e && this.start.column == t 18144 }, this.setStart = function (e, t) { 18145 typeof e == "object" ? (this.start.column = e.column, this.start.row = e.row) : (this.start.row = e, this.start.column = t) 18146 }, this.setEnd = function (e, t) { 18147 typeof e == "object" ? (this.end.column = e.column, this.end.row = e.row) : (this.end.row = e, this.end.column = t) 18148 }, this.inside = function (e, t) { 18149 return this.compare(e, t) == 0 ? this.isEnd(e, t) || this.isStart(e, t) ? !1 : !0 : !1 18150 }, this.insideStart = function (e, t) { 18151 return this.compare(e, t) == 0 ? this.isEnd(e, t) ? !1 : !0 : !1 18152 }, this.insideEnd = function (e, t) { 18153 return this.compare(e, t) == 0 ? this.isStart(e, t) ? !1 : !0 : !1 18154 }, this.compare = function (e, t) { 18155 return !this.isMultiLine() && e === this.start.row ? t < this.start.column ? -1 : t > this.end.column ? 1 : 0 : e < this.start.row ? -1 : e > this.end.row ? 1 : this.start.row === e ? t >= this.start.column ? 0 : -1 : this.end.row === e ? t <= this.end.column ? 0 : 1 : 0 18156 }, this.compareStart = function (e, t) { 18157 return this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 18158 }, this.compareEnd = function (e, t) { 18159 return this.end.row == e && this.end.column == t ? 1 : this.compare(e, t) 18160 }, this.compareInside = function (e, t) { 18161 return this.end.row == e && this.end.column == t ? 1 : this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 18162 }, this.clipRows = function (e, t) { 18163 if (this.end.row > t) var n = {row: t + 1, column: 0}; else if (this.end.row < e) var n = { 18164 row: e, 18165 column: 0 18166 }; 18167 if (this.start.row > t) var r = {row: t + 1, column: 0}; else if (this.start.row < e) var r = { 18168 row: e, 18169 column: 0 18170 }; 18171 return i.fromPoints(r || this.start, n || this.end) 18172 }, this.extend = function (e, t) { 18173 var n = this.compare(e, t); 18174 if (n == 0) return this; 18175 if (n == -1) var r = {row: e, column: t}; else var s = {row: e, column: t}; 18176 return i.fromPoints(r || this.start, s || this.end) 18177 }, this.isEmpty = function () { 18178 return this.start.row === this.end.row && this.start.column === this.end.column 18179 }, this.isMultiLine = function () { 18180 return this.start.row !== this.end.row 18181 }, this.clone = function () { 18182 return i.fromPoints(this.start, this.end) 18183 }, this.collapseRows = function () { 18184 return this.end.column == 0 ? new i(this.start.row, 0, Math.max(this.start.row, this.end.row - 1), 0) : new i(this.start.row, 0, this.end.row, 0) 18185 }, this.toScreenRange = function (e) { 18186 var t = e.documentToScreenPosition(this.start), n = e.documentToScreenPosition(this.end); 18187 return new i(t.row, t.column, n.row, n.column) 18188 }, this.moveBy = function (e, t) { 18189 this.start.row += e, this.start.column += t, this.end.row += e, this.end.column += t 18190 } 18191 }).call(i.prototype), i.fromPoints = function (e, t) { 18192 return new i(e.row, e.column, t.row, t.column) 18193 }, i.comparePoints = r, i.comparePoints = function (e, t) { 18194 return e.row - t.row || e.column - t.column 18195 }, t.Range = i 18196}), define("ace/apply_delta", [], function (e, t, n) { 18197 "use strict"; 18198 18199 function r(e, t) { 18200 throw console.log("Invalid Delta:", e), "Invalid Delta: " + t 18201 } 18202 18203 function i(e, t) { 18204 return t.row >= 0 && t.row < e.length && t.column >= 0 && t.column <= e[t.row].length 18205 } 18206 18207 function s(e, t) { 18208 t.action != "insert" && t.action != "remove" && r(t, "delta.action must be 'insert' or 'remove'"), t.lines instanceof Array || r(t, "delta.lines must be an Array"), (!t.start || !t.end) && r(t, "delta.start/end must be an present"); 18209 var n = t.start; 18210 i(e, t.start) || r(t, "delta.start must be contained in document"); 18211 var s = t.end; 18212 t.action == "remove" && !i(e, s) && r(t, "delta.end must contained in document for 'remove' actions"); 18213 var o = s.row - n.row, u = s.column - (o == 0 ? n.column : 0); 18214 (o != t.lines.length - 1 || t.lines[o].length != u) && r(t, "delta.range must match delta lines") 18215 } 18216 18217 t.applyDelta = function (e, t, n) { 18218 var r = t.start.row, i = t.start.column, s = e[r] || ""; 18219 switch (t.action) { 18220 case"insert": 18221 var o = t.lines; 18222 if (o.length === 1) e[r] = s.substring(0, i) + t.lines[0] + s.substring(i); else {
18223 var u = [r, 1].concat(t.lines); 18224 e.splice.apply(e, u), e[r] = s.substring(0, i) + e[r], e[r + t.lines.length - 1] += s.substring(i) 18225 } 18226 break; 18227 case"remove": 18228 var a = t.end.column, f = t.end.row; 18229 r === f ? e[r] = s.substring(0, i) + s.substring(a) : e.splice(r, f - r + 1, s.substring(0, i) + e[f].substring(a)) 18230 } 18231 } 18232}), define("ace/lib/event_emitter", [], function (e, t, n) { 18233 "use strict"; 18234 var r = {}, i = function () { 18235 this.propagationStopped = !0 18236 }, s = function () { 18237 this.defaultPrevented = !0 18238 }; 18239 r._emit = r._dispatchEvent = function (e, t) { 18240 this._eventRegistry || (this._eventRegistry = {}), this._defaultHandlers || (this._defaultHandlers = {}); 18241 var n = this._eventRegistry[e] || [], r = this._defaultHandlers[e]; 18242 if (!n.length && !r) return; 18243 if (typeof t != "object" || !t) t = {}; 18244 t.type || (t.type = e), t.stopPropagation || (t.stopPropagation = i), t.preventDefault || (t.preventDefault = s), n = n.slice(); 18245 for (var o = 0; o < n.length; o++) { 18246 n[o](t, this); 18247 if (t.propagationStopped) break 18248 } 18249 if (r && !t.defaultPrevented) return r(t, this) 18250 }, r._signal = function (e, t) { 18251 var n = (this._eventRegistry || {})[e]; 18252 if (!n) return; 18253 n = n.slice(); 18254 for (var r = 0; r < n.length; r++) n[r](t, this) 18255 }, r.once = function (e, t) { 18256 var n = this; 18257 this.addEventListener(e, function r() { 18258 n.removeEventListener(e, r), t.apply(null, arguments) 18259 }); 18260 if (!t) return new Promise(function (e) { 18261 t = e 18262 }) 18263 }, r.setDefaultHandler = function (e, t) { 18264 var n = this._defaultHandlers; 18265 n || (n = this._defaultHandlers = {_disabled_: {}}); 18266 if (n[e]) { 18267 var r = n[e], i = n._disabled_[e]; 18268 i || (n._disabled_[e] = i = []), i.push(r); 18269 var s = i.indexOf(t); 18270 s != -1 && i.splice(s, 1) 18271 } 18272 n[e] = t 18273 }, r.removeDefaultHandler = function (e, t) { 18274 var n = this._defaultHandlers; 18275 if (!n) return; 18276 var r = n._disabled_[e]; 18277 if (n[e] == t) r && this.setDefaultHandler(e, r.pop()); else if (r) { 18278 var i = r.indexOf(t); 18279 i != -1 && r.splice(i, 1) 18280 } 18281 }, r.on = r.addEventListener = function (e, t, n) { 18282 this._eventRegistry = this._eventRegistry || {}; 18283 var r = this._eventRegistry[e]; 18284 return r || (r = this._eventRegistry[e] = []), r.indexOf(t) == -1 && r[n ? "unshift" : "push"](t), t 18285 }, r.off = r.removeListener = r.removeEventListener = function (e, t) { 18286 this._eventRegistry = this._eventRegistry || {}; 18287 var n = this._eventRegistry[e]; 18288 if (!n) return; 18289 var r = n.indexOf(t); 18290 r !== -1 && n.splice(r, 1) 18291 }, r.removeAllListeners = function (e) { 18292 this._eventRegistry && (this._eventRegistry[e] = []) 18293 }, t.EventEmitter = r 18294}), define("ace/anchor", [], function (e, t, n) { 18295 "use strict"; 18296 var r = e("./lib/oop"), i = e("./lib/event_emitter").EventEmitter, s = t.Anchor = function (e, t, n) { 18297 this.$onChange = this.onChange.bind(this), this.attach(e), typeof n == "undefined" ? this.setPosition(t.row, t.column) : this.setPosition(t, n) 18298 }; 18299 (function () { 18300 function e(e, t, n) { 18301 var r = n ? e.column <= t.column : e.column < t.column; 18302 return e.row < t.row || e.row == t.row && r 18303 } 18304 18305 function t(t, n, r) { 18306 var i = t.action == "insert", s = (i ? 1 : -1) * (t.end.row - t.start.row), 18307 o = (i ? 1 : -1) * (t.end.column - t.start.column), u = t.start, a = i ? u : t.end; 18308 return e(n, u, r) ? {row: n.row, column: n.column} : e(a, n, !r) ? { 18309 row: n.row + s, 18310 column: n.column + (n.row == a.row ? o : 0) 18311 } : {row: u.row, column: u.column} 18312 } 18313 18314 r.implement(this, i), this.getPosition = function () { 18315 return this.$clipPositionToDocument(this.row, this.column) 18316 }, this.getDocument = function () { 18317 return this.document 18318 }, this.$insertRight = !1, this.onChange = function (e) { 18319 if (e.start.row == e.end.row && e.start.row != this.row) return; 18320 if (e.start.row > this.row) return; 18321 var n = t(e, {row: this.row, column: this.column}, this.$insertRight); 18322 this.setPosition(n.row, n.column, !0) 18323 }, this.setPosition = function (e, t, n) { 18324 var r; 18325 n ? r = {row: e, column: t} : r = this.$clipPositionToDocument(e, t); 18326 if (this.row == r.row && this.column == r.column) return; 18327 var i = {row: this.row, column: this.column}; 18328 this.row = r.row, this.column = r.column, this._signal("change", {old: i, value: r}) 18329 }, this.detach = function () { 18330 this.document.removeEventListener("change", this.$onChange) 18331 }, this.attach = function (e) { 18332 this.document = e || this.document, this.document.on("change", this.$onChange) 18333 }, this.$clipPositionToDocument = function (e, t) { 18334 var n = {}; 18335 return e >= this.document.getLength() ? (n.row = Math.max(0, this.document.getLength() - 1), n.column = this.document.getLine(n.row).length) : e < 0 ? (n.row = 0, n.column = 0) : (n.row = e, n.column = Math.min(this.document.getLine(n.row).length, Math.max(0, t))), t < 0 && (n.column = 0), n 18336 } 18337 }).call(s.prototype) 18338}), define("ace/document", [], function (e, t, n) { 18339 "use strict"; 18340 var r = e("./lib/oop"), i = e("./apply_delta").applyDelta, s = e("./lib/event_emitter").EventEmitter, 18341 o = e("./range").Range, u = e("./anchor").Anchor, a = function (e) { 18342 this.$lines = [""], e.length === 0 ? this.$lines = [""] : Array.isArray(e) ? this.insertMergedLines({ 18343 row: 0, 18344 column: 0 18345 }, e) : this.insert({row: 0, column: 0}, e) 18346 }; 18347 (function () { 18348 r.implement(this, s), this.setValue = function (e) { 18349 var t = this.getLength() - 1; 18350 this.remove(new o(0, 0, t, this.getLine(t).length)), this.insert({row: 0, column: 0}, e) 18351 }, this.getValue = function () { 18352 return this.getAllLines().join(this.getNewLineCharacter()) 18353 }, this.createAnchor = function (e, t) { 18354 return new u(this, e, t) 18355 }, "aaa".split(/a/).length === 0 ? this.$split = function (e) { 18356 return e.replace(/\r\n|\r/g, "\n").split("\n") 18357 } : this.$split = function (e) { 18358 return e.split(/\r\n|\r|\n/) 18359 }, this.$detectNewLine = function (e) { 18360 var t = e.match(/^.*?(\r\n|\r|\n)/m); 18361 this.$autoNewLine = t ? t[1] : "\n", this._signal("changeNewLineMode") 18362 }, this.getNewLineCharacter = function () { 18363 switch (this.$newLineMode) { 18364 case"windows": 18365 return "\r\n"; 18366 case"unix": 18367 return "\n"; 18368 default: 18369 return this.$autoNewLine || "\n" 18370 } 18371 }, this.$autoNewLine = "", this.$newLineMode = "auto", this.setNewLineMode = function (e) { 18372 if (this.$newLineMode === e) return; 18373 this.$newLineMode = e, this._signal("changeNewLineMode") 18374 }, this.getNewLineMode = function () { 18375 return this.$newLineMode 18376 }, this.isNewLine = function (e) { 18377 return e == "\r\n" || e == "\r" || e == "\n" 18378 }, this.getLine = function (e) { 18379 return this.$lines[e] || "" 18380 }, this.getLines = function (e, t) { 18381 return this.$lines.slice(e, t + 1) 18382 }, this.getAllLines = function () { 18383 return this.getLines(0, this.getLength()) 18384 }, this.getLength = function () { 18385 return this.$lines.length 18386 }, this.getTextRange = function (e) { 18387 return this.getLinesForRange(e).join(this.getNewLineCharacter()) 18388 }, this.getLinesForRange = function (e) { 18389 var t; 18390 if (e.start.row === e.end.row) t = [this.getLine(e.start.row).substring(e.start.column, e.end.column)]; else { 18391 t = this.getLines(e.start.row, e.end.row), t[0] = (t[0] || "").substring(e.start.column); 18392 var n = t.length - 1; 18393 e.end.row - e.start.row == n && (t[n] = t[n].substring(0, e.end.column)) 18394 } 18395 return t 18396 }, this.insertLines = function (e, t) { 18397 return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."), this.insertFullLines(e, t) 18398 }, this.removeLines = function (e, t) { 18399 return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."), this.removeFullLines(e, t) 18400 }, this.insertNewLine = function (e) { 18401 return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."), this.insertMergedLines(e, ["", ""]) 18402 }, this.insert = function (e, t) { 18403 return this.getLength() <= 1 && this.$detectNewLine(t), this.insertMergedLines(e, this.$split(t)) 18404 }, this.insertInLine = function (e, t) { 18405 var n = this.clippedPos(e.row, e.column), r = this.pos(e.row, e.column + t.length); 18406 return this.applyDelta({start: n, end: r, action: "insert", lines: [t]}, !0), this.clonePos(r) 18407 }, this.clippedPos = function (e, t) { 18408 var n = this.getLength(); 18409 e === undefined ? e = n : e < 0 ? e = 0 : e >= n && (e = n - 1, t = undefined); 18410 var r = this.getLine(e); 18411 return t == undefined && (t = r.length), t = Math.min(Math.max(t, 0), r.length), {row: e, column: t} 18412 }, this.clonePos = function (e) { 18413 return {row: e.row, column: e.column} 18414 }, this.pos = function (e, t) { 18415 return {row: e, column: t} 18416 }, this.$clipPosition = function (e) { 18417 var t = this.getLength(); 18418 return e.row >= t ? (e.row = Math.max(0, t - 1), e.column = this.getLine(t - 1).length) : (e.row = Math.max(0, e.row), e.column = Math.min(Math.max(e.column, 0), this.getLine(e.row).length)), e 18419 }, this.insertFullLines = function (e, t) { 18420 e = Math.min(Math.max(e, 0), this.getLength()); 18421 var n = 0; 18422 e < this.getLength() ? (t = t.concat([""]), n = 0) : (t = [""].concat(t), e--, n = this.$lines[e].length), this.insertMergedLines({ 18423 row: e, 18424 column: n 18425 }, t) 18426 }, this.insertMergedLines = function (e, t) { 18427 var n = this.clippedPos(e.row, e.column), 18428 r = {row: n.row + t.length - 1, column: (t.length == 1 ? n.column : 0) + t[t.length - 1].length}; 18429 return this.applyDelta({start: n, end: r, action: "insert", lines: t}), this.clonePos(r) 18430 }, this.remove = function (e) { 18431 var t = this.clippedPos(e.start.row, e.start.column), n = this.clippedPos(e.end.row, e.end.column); 18432 return this.applyDelta({ 18433 start: t, 18434 end: n, 18435 action: "remove", 18436 lines: this.getLinesForRange({start: t, end: n}) 18437 }), this.clonePos(t) 18438 }, this.removeInLine = function (e, t, n) { 18439 var r = this.clippedPos(e, t), i = this.clippedPos(e, n); 18440 return this.applyDelta({ 18441 start: r, 18442 end: i, 18443 action: "remove", 18444 lines: this.getLinesForRange({start: r, end: i}) 18445 }, !0), this.clonePos(r) 18446 }, this.removeFullLines = function (e, t) { 18447 e = Math.min(Math.max(0, e), this.getLength() - 1), t = Math.min(Math.max(0, t), this.getLength() - 1); 18448 var n = t == this.getLength() - 1 && e > 0, r = t < this.getLength() - 1, i = n ? e - 1 : e, 18449 s = n ? this.getLine(i).length : 0, u = r ? t + 1 : t, a = r ? 0 : this.getLine(u).length, 18450 f = new o(i, s, u, a), l = this.$lines.slice(e, t + 1); 18451 return this.applyDelta({start: f.start, end: f.end, action: "remove", lines: this.getLinesForRange(f)}), l 18452 }, this.removeNewLine = function (e) { 18453 e < this.getLength() - 1 && e >= 0 && this.applyDelta({ 18454 start: this.pos(e, this.getLine(e).length), 18455 end: this.pos(e + 1, 0), 18456 action: "remove", 18457 lines: ["", ""] 18458 }) 18459 }, this.replace = function (e, t) { 18460 e instanceof o || (e = o.fromPoints(e.start, e.end)); 18461 if (t.length === 0 && e.isEmpty()) return e.start; 18462 if (t == this.getTextRange(e)) return e.end; 18463 this.remove(e); 18464 var n; 18465 return t ? n = this.insert(e.start, t) : n = e.start, n 18466 }, this.applyDeltas = function (e) { 18467 for (var t = 0; t < e.length; t++) this.applyDelta(e[t]) 18468 }, this.revertDeltas = function (e) { 18469 for (var t = e.length - 1; t >= 0; t--) this.revertDelta(e[t]) 18470 }, this.applyDelta = function (e, t) { 18471 var n = e.action == "insert"; 18472 if (n ? e.lines.length <= 1 && !e.lines[0] : !o.comparePoints(e.start, e.end)) return; 18473 n && e.lines.length > 2e4 ? this.$splitAndapplyLargeDelta(e, 2e4) : (i(this.$lines, e, t), this._signal("change", e)) 18474 }, this.$splitAndapplyLargeDelta = function (e, t) { 18475 var n = e.lines, r = n.length - t + 1, i = e.start.row, s = e.start.column; 18476 for (var o = 0, u = 0; o < r; o = u) { 18477 u += t - 1; 18478 var a = n.slice(o, u); 18479 a.push(""), this.applyDelta({ 18480 start: this.pos(i + o, s), 18481 end: this.pos(i + u, s = 0), 18482 action: e.action, 18483 lines: a 18484 }, !0) 18485 } 18486 e.lines = n.slice(o), e.start.row = i + o, e.start.column = s, this.applyDelta(e, !0) 18487 }, this.revertDelta = function (e) { 18488 this.applyDelta({ 18489 start: this.clonePos(e.start), 18490 end: this.clonePos(e.end), 18491 action: e.action == "insert" ? "remove" : "insert", 18492 lines: e.lines.slice() 18493 }) 18494 }, this.indexToPosition = function (e, t) { 18495 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length; 18496 for (var i = t || 0, s = n.length; i < s; i++) { 18497 e -= n[i].length + r; 18498 if (e < 0) return {row: i, column: e + n[i].length + r} 18499 } 18500 return {row: s - 1, column: e + n[s - 1].length + r} 18501 }, this.positionToIndex = function (e, t) { 18502 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length, i = 0, 18503 s = Math.min(e.row, n.length); 18504 for (var o = t || 0; o < s; ++o) i += n[o].length + r; 18505 return i + e.column 18506 } 18507 }).call(a.prototype), t.Document = a 18508}), define("ace/lib/lang", [], function (e, t, n) { 18509 "use strict"; 18510 t.last = function (e) { 18511 return e[e.length - 1] 18512 }
18512, t.stringReverse = function (e) { 18513 return e.split("").reverse().join("") 18514 }, t.stringRepeat = function (e, t) { 18515 var n = ""; 18516 while (t > 0) { 18517 t & 1 && (n += e); 18518 if (t >>= 1) e += e 18519 } 18520 return n 18521 }; 18522 var r = /^\s\s*/, i = /\s\s*$/; 18523 t.stringTrimLeft = function (e) { 18524 return e.replace(r, "") 18525 }, t.stringTrimRight = function (e) { 18526 return e.replace(i, "") 18527 }, t.copyObject = function (e) { 18528 var t = {}; 18529 for (var n in e) t[n] = e[n]; 18530 return t 18531 }, t.copyArray = function (e) { 18532 var t = []; 18533 for (var n = 0, r = e.length; n < r; n++) e[n] && typeof e[n] == "object" ? t[n] = this.copyObject(e[n]) : t[n] = e[n]; 18534 return t 18535 }, t.deepCopy = function s(e) { 18536 if (typeof e != "object" || !e) return e; 18537 var t; 18538 if (Array.isArray(e)) { 18539 t = []; 18540 for (var n = 0; n < e.length; n++) t[n] = s(e[n]); 18541 return t 18542 } 18543 if (Object.prototype.toString.call(e) !== "[object Object]") return e; 18544 t = {}; 18545 for (var n in e) t[n] = s(e[n]); 18546 return t 18547 }, t.arrayToMap = function (e) { 18548 var t = {}; 18549 for (var n = 0; n < e.length; n++) t[e[n]] = 1; 18550 return t 18551 }, t.createMap = function (e) { 18552 var t = Object.create(null); 18553 for (var n in e) t[n] = e[n]; 18554 return t 18555 }, t.arrayRemove = function (e, t) { 18556 for (var n = 0; n <= e.length; n++) t === e[n] && e.splice(n, 1) 18557 }, t.escapeRegExp = function (e) { 18558 return e.replace(/([.*+?^${}()|[\]\/\\])/g, "\\$1") 18559 }, t.escapeHTML = function (e) { 18560 return ("" + e).replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<") 18561 }, t.getMatchOffsets = function (e, t) { 18562 var n = []; 18563 return e.replace(t, function (e) { 18564 n.push({offset: arguments[arguments.length - 2], length: e.length}) 18565 }), n 18566 }, t.deferredCall = function (e) { 18567 var t = null, n = function () { 18568 t = null, e() 18569 }, r = function (e) { 18570 return r.cancel(), t = setTimeout(n, e || 0), r 18571 }; 18572 return r.schedule = r, r.call = function () { 18573 return this.cancel(), e(), r 18574 }, r.cancel = function () { 18575 return clearTimeout(t), t = null, r 18576 }, r.isPending = function () { 18577 return t 18578 }, r 18579 }, t.delayedCall = function (e, t) { 18580 var n = null, r = function () { 18581 n = null, e() 18582 }, i = function (e) { 18583 n == null && (n = setTimeout(r, e || t)) 18584 }; 18585 return i.delay = function (e) { 18586 n && clearTimeout(n), n = setTimeout(r, e || t) 18587 }, i.schedule = i, i.call = function () { 18588 this.cancel(), e() 18589 }, i.cancel = function () { 18590 n && clearTimeout(n), n = null 18591 }, i.isPending = function () { 18592 return n 18593 }, i 18594 } 18595}), define("ace/worker/mirror", [], function (e, t, n) { 18596 "use strict"; 18597 var r = e("../range").Range, i = e("../document").Document, s = e("../lib/lang"), o = t.Mirror = function (e) { 18598 this.sender = e; 18599 var t = this.doc = new i(""), n = this.deferredUpdate = s.delayedCall(this.onUpdate.bind(this)), r = this; 18600 e.on("change", function (e) { 18601 var i = e.data; 18602 if (i[0].start) t.applyDeltas(i); else for (var s = 0; s < i.length; s += 2) { 18603 if (Array.isArray(i[s + 1])) var o = { 18604 action: "insert", 18605 start: i[s], 18606 lines: i[s + 1] 18607 }; else var o = {action: "remove", start: i[s], end: i[s + 1]}; 18608 t.applyDelta(o, !0) 18609 } 18610 if (r.$timeout) return n.schedule(r.$timeout); 18611 r.onUpdate() 18612 }) 18613 }; 18614 (function () { 18615 this.$timeout = 500, this.setTimeout = function (e) { 18616 this.$timeout = e 18617 }, this.setValue = function (e) { 18618 this.doc.setValue(e), this.deferredUpdate.schedule(this.$timeout) 18619 }, this.getValue = function (e) { 18620 this.sender.callback(this.doc.getValue(), e) 18621 }, this.onUpdate = function () { 18622 }, this.isPending = function () { 18623 return this.deferredUpdate.isPending() 18624 } 18625 }).call(o.prototype) 18626}), define("ace/mode/json/json_parse", [], function (e, t, n) { 18627 "use strict"; 18628 var r, i, s = {'"': '"', "\\": "\\", "/": "/", b: "\b", f: "\f", n: "\n", r: "\r", t: " "}, o, u = function (e) { 18629 throw{name: "SyntaxError", message: e, at: r, text: o} 18630 }, a = function (e) { 18631 return e && e !== i && u("Expected '" + e + "' instead of '" + i + "'"), i = o.charAt(r), r += 1, i 18632 }, f = function () { 18633 var e, t = ""; 18634 i === "-" && (t = "-", a("-")); 18635 while (i >= "0" && i <= "9") t += i, a(); 18636 if (i === ".") { 18637 t += "."; 18638 while (a() && i >= "0" && i <= "9") t += i 18639 } 18640 if (i === "e" || i === "E") { 18641 t += i, a(); 18642 if (i === "-" || i === "+") t += i, a(); 18643 while (i >= "0" && i <= "9") t += i, a() 18644 } 18645 e = +t; 18646 if (!isNaN(e)) return e; 18647 u("Bad number") 18648 }, l = function () { 18649 var e, t, n = "", r; 18650 if (i === '"') while (a()) { 18651 if (i === '"') return a(), n; 18652 if (i === "\\") { 18653 a(); 18654 if (i === "u") { 18655 r = 0; 18656 for (t = 0; t < 4; t += 1) { 18657 e = parseInt(a(), 16); 18658 if (!isFinite(e)) break; 18659 r = r * 16 + e 18660 } 18661 n += String.fromCharCode(r) 18662 } else { 18663 if (typeof s[i] != "string") break; 18664 n += s[i] 18665 } 18666 } else { 18667 if (i == "\n" || i == "\r") break; 18668 n += i 18669 } 18670 } 18671 u("Bad string") 18672 }, c = function () { 18673 while (i && i <= " ") a() 18674 }, h = function () { 18675 switch (i) { 18676 case"t": 18677 return a("t"), a("r"), a("u"), a("e"), !0; 18678 case"f": 18679 return a("f"), a("a"), a("l"), a("s"), a("e"), !1; 18680 case"n": 18681 return a("n"), a("u"), a("l"), a("l"), null 18682 } 18683 u("Unexpected '" + i + "'") 18684 }, p, d = function () { 18685 var e = []; 18686 if (i === "[") { 18687 a("["), c(); 18688 if (i === "]") return a("]"), e; 18689 while (i) { 18690 e.push(p()), c(); 18691 if (i === "]") return a("]"), e; 18692 a(","), c() 18693 } 18694 } 18695 u("Bad array") 18696 }, v = function () { 18697 var e, t = {}; 18698 if (i === "{") { 18699 a("{"), c(); 18700 if (i === "}") return a("}"), t; 18701 while (i) { 18702 e = l(), c(), a(":"), Object.hasOwnProperty.call(t, e) && u('Duplicate key "' + e + '"'), t[e] = p(), c(); 18703 if (i === "}") return a("}"), t; 18704 a(","), c() 18705 } 18706 } 18707 u("Bad object") 18708 }; 18709 return p = function () { 18710 c(); 18711 switch (i) { 18712 case"{": 18713 return v(); 18714 case"[": 18715 return d(); 18716 case'"': 18717 return l(); 18718 case"-": 18719 return f(); 18720 default: 18721 return i >= "0" && i <= "9" ? f() : h() 18722 } 18723 }, function (e, t) { 18724 var n; 18725 return o = e, r = 0, i = " ", n = p(), c(), i && u("Syntax error"), typeof t == "function" ? function s(e, n) { 18726 var r, i, o = e[n]; 18727 if (o && typeof o == "object") for (r in o) Object.hasOwnProperty.call(o, r) && (i = s(o, r), i !== undefined ? o[r] = i : delete o[r]); 18728 return t.call(e, n, o) 18729 }({"": n}, "") : n 18730 } 18731}), define("ace/mode/json_worker", [], function (e, t, n) { 18732 "use strict";
18733 var r = e("../lib/oop"), i = e("../worker/mirror").Mirror, s = e("./json/json_parse"), 18734 o = t.JsonWorker = function (e) { 18735 i.call(this, e), this.setTimeout(200) 18736 }; 18737 r.inherits(o, i), function () { 18738 this.onUpdate = function () { 18739 var e = this.doc.getValue(), t = []; 18740 try { 18741 e && s(e) 18742 } catch (n) { 18743 var r = this.doc.indexToPosition(n.at - 1); 18744 t.push({row: r.row, column: r.column, text: n.message, type: "error"}) 18745 } 18746 this.sender.emit("annotate", t) 18747 } 18748 }.call(o.prototype) 18749}), define("ace/lib/es5-shim", [], function (e, t, n) { 18750 function r() { 18751 } 18752 18753 function w(e) { 18754 try { 18755 return Object.defineProperty(e, "sentinel", {}), "sentinel" in e 18756 } catch (t) { 18757 } 18758 } 18759 18760 function H(e) { 18761 return e = +e, e !== e ? e = 0 : e !== 0 && e !== 1 / 0 && e !== -1 / 0 && (e = (e > 0 || -1) * Math.floor(Math.abs(e))), e 18762 } 18763 18764 function B(e) { 18765 var t = typeof e; 18766 return e === null || t === "undefined" || t === "boolean" || t === "number" || t === "string" 18767 } 18768 18769 function j(e) { 18770 var t, n, r; 18771 if (B(e)) return e; 18772 n = e.valueOf; 18773 if (typeof n == "function") { 18774 t = n.call(e); 18775 if (B(t)) return t 18776 } 18777 r = e.toString; 18778 if (typeof r == "function") { 18779 t = r.call(e); 18780 if (B(t)) return t 18781 } 18782 throw new TypeError 18783 } 18784 18785 Function.prototype.bind || (Function.prototype.bind = function (t) { 18786 var n = this; 18787 if (typeof n != "function") throw new TypeError("Function.prototype.bind called on incompatible " + n); 18788 var i = u.call(arguments, 1), s = function () { 18789 if (this instanceof s) { 18790 var e = n.apply(this, i.concat(u.call(arguments))); 18791 return Object(e) === e ? e : this 18792 } 18793 return n.apply(t, i.concat(u.call(arguments))) 18794 }; 18795 return n.prototype && (r.prototype = n.prototype, s.prototype = new r, r.prototype = null), s 18796 }); 18797 var i = Function.prototype.call, s = Array.prototype, o = Object.prototype, u = s.slice, a = i.bind(o.toString), 18798 f = i.bind(o.hasOwnProperty), l, c, h, p, d; 18799 if (d = f(o, "__defineGetter__")) l = i.bind(o.__defineGetter__), c = i.bind(o.__defineSetter__), h = i.bind(o.__lookupGetter__), p = i.bind(o.__lookupSetter__); 18800 if ([1, 2].splice(0).length != 2) if (!function () { 18801 function e(e) { 18802 var t = new Array(e + 2); 18803 return t[0] = t[1] = 0, t 18804 } 18805 18806 var t = [], n; 18807 t.splice.apply(t, e(20)), t.splice.apply(t, e(26)), n = t.length, t.splice(5, 0, "XXX"), n + 1 == t.length; 18808 if (n + 1 == t.length) return !0 18809 }()) Array.prototype.splice = function (e, t) { 18810 var n = this.length; 18811 e > 0 ? e > n && (e = n) : e == void 0 ? e = 0 : e < 0 && (e = Math.max(n + e, 0)), e + t < n || (t = n - e); 18812 var r = this.slice(e, e + t), i = u.call(arguments, 2), s = i.length; 18813 if (e === n) s && this.push.apply(this, i); else { 18814 var o = Math.min(t, n - e), a = e + o, f = a + s - o, l = n - a, c = n - o; 18815 if (f < a) for (var h = 0; h < l; ++h) this[f + h] = this[a + h]; else if (f > a) for (h = l; h--;) this[f + h] = this[a + h]; 18816 if (s && e === c) this.length = c, this.push.apply(this, i); else { 18817 this.length = c + s; 18818 for (h = 0; h < s; ++h) this[e + h] = i[h] 18819 } 18820 } 18821 return r 18822 }; else { 18823 var v = Array.prototype.splice; 18824 Array.prototype.splice = function (e, t) { 18825 return arguments.length ? v.apply(this, [e === void 0 ? 0 : e, t === void 0 ? this.length - e : t].concat(u.call(arguments, 2))) : [] 18826 } 18827 } 18828 Array.isArray || (Array.isArray = function (t) { 18829 return a(t) == "[object Array]" 18830 }); 18831 var m = Object("a"), g = m[0] != "a" || !(0 in m); 18832 Array.prototype.forEach || (Array.prototype.forEach = function (t) { 18833 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = arguments[1], s = -1, 18834 o = r.length >>> 0; 18835 if (a(t) != "[object Function]") throw new TypeError; 18836 while (++s < o) s in r && t.call(i, r[s], s, n) 18837 }), Array.prototype.map || (Array.prototype.map = function (t) { 18838 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = Array(i), 18839 o = arguments[1]; 18840 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 18841 for (var u = 0; u < i; u++) u in r && (s[u] = t.call(o, r[u], u, n)); 18842 return s 18843 }), Array.prototype.filter || (Array.prototype.filter = function (t) { 18844 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = [], o, 18845 u = arguments[1]; 18846 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 18847 for (var f = 0; f < i; f++) f in r && (o = r[f], t.call(u, o, f, n) && s.push(o)); 18848 return s 18849 }), Array.prototype.every || (Array.prototype.every = function (t) { 18850 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 18851 s = arguments[1]; 18852 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 18853 for (var o = 0; o < i; o++) if (o in r && !t.call(s, r[o], o, n)) return !1; 18854 return !0 18855 }), Array.prototype.some || (Array.prototype.some = function (t) { 18856 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 18857 s = arguments[1]; 18858 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 18859 for (var o = 0; o < i; o++) if (o in r && t.call(s, r[o], o, n)) return !0; 18860 return !1 18861 }), Array.prototype.reduce || (Array.prototype.reduce = function (t) { 18862 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 18863 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 18864 if (!i && arguments.length == 1) throw new TypeError("reduce of empty array with
18864no initial value"); 18865 var s = 0, o; 18866 if (arguments.length >= 2) o = arguments[1]; else do { 18867 if (s in r) { 18868 o = r[s++]; 18869 break 18870 } 18871 if (++s >= i) throw new TypeError("reduce of empty array with no initial value") 18872 } while (!0); 18873 for (; s < i; s++) s in r && (o = t.call(void 0, o, r[s], s, n)); 18874 return o 18875 }), Array.prototype.reduceRight || (Array.prototype.reduceRight = function (t) { 18876 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 18877 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 18878 if (!i && arguments.length == 1) throw new TypeError("reduceRight of empty array with no initial value"); 18879 var s, o = i - 1; 18880 if (arguments.length >= 2) s = arguments[1]; else do { 18881 if (o in r) { 18882 s = r[o--]; 18883 break 18884 } 18885 if (--o < 0) throw new TypeError("reduceRight of empty array with no initial value") 18886 } while (!0); 18887 do o in this && (s = t.call(void 0, s, r[o], o, n)); while (o--); 18888 return s 18889 }); 18890 if (!Array.prototype.indexOf || [0, 1].indexOf(1, 2) != -1) Array.prototype.indexOf = function (t) { 18891 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 18892 if (!r) return -1; 18893 var i = 0; 18894 arguments.length > 1 && (i = H(arguments[1])), i = i >= 0 ? i : Math.max(0, r + i); 18895 for (; i < r; i++) if (i in n && n[i] === t) return i; 18896 return -1 18897 }; 18898 if (!Array.prototype.lastIndexOf || [0, 1].lastIndexOf(0, -3) != -1) Array.prototype.lastIndexOf = function (t) { 18899 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 18900 if (!r) return -1; 18901 var i = r - 1; 18902 arguments.length > 1 && (i = Math.min(i, H(arguments[1]))), i = i >= 0 ? i : r - Math.abs(i); 18903 for (; i >= 0; i--) if (i in n && t === n[i]) return i; 18904 return -1 18905 }; 18906 Object.getPrototypeOf || (Object.getPrototypeOf = function (t) { 18907 return t.__proto__ || (t.constructor ? t.constructor.prototype : o) 18908 }); 18909 if (!Object.getOwnPropertyDescriptor) { 18910 var y = "Object.getOwnPropertyDescriptor called on a non-object: "; 18911 Object.getOwnPropertyDescriptor = function (t, n) { 18912 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(y + t); 18913 if (!f(t, n)) return; 18914 var r, i, s; 18915 r = {enumerable: !0, configurable: !0}; 18916 if (d) { 18917 var u = t.__proto__; 18918 t.__proto__ = o; 18919 var i = h(t, n), s = p(t, n); 18920 t.__proto__ = u; 18921 if (i || s) return i && (r.get = i), s && (r.set = s), r 18922 } 18923 return r.value = t[n], r 18924 } 18925 } 18926 Object.getOwnPropertyNames || (Object.getOwnPropertyNames = function (t) { 18927 return Object.keys(t) 18928 }); 18929 if (!Object.create) { 18930 var b; 18931 Object.prototype.__proto__ === null ? b = function () { 18932 return {__proto__: null} 18933 } : b = function () { 18934 var e = {}; 18935 for (var t in e) e[t] = null; 18936 return e.constructor = e.hasOwnProperty = e.propertyIsEnumerable = e.isPrototypeOf = e.toLocaleString = e.toString = e.valueOf = e.__proto__ = null, e 18937 }, Object.create = function (t, n) { 18938 var r; 18939 if (t === null) r = b(); else { 18940 if (typeof t != "object") throw new TypeError("typeof prototype[" + typeof t + "] != 'object'"); 18941 var i = function () { 18942 }; 18943 i.prototype = t, r = new i, r.__proto__ = t 18944 } 18945 return n !== void 0 && Object.defineProperties(r, n), r 18946 } 18947 } 18948 if (Object.defineProperty) { 18949 var E = w({}), S = typeof document == "undefined" || w(document.createElement("div")); 18950 if (!E || !S) var x = Object.defineProperty 18951 } 18952 if (!Object.defineProperty || x) { 18953 var T = "Property description must be an object: ", N = "Object.defineProperty called on non-object: ", 18954 C = "getters & setters can not be defined on this javascript engine"; 18955 Object.defineProperty = function (t, n, r) { 18956 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(N + t); 18957 if (typeof r != "object" && typeof r != "function" || r === null) throw new TypeError(T + r); 18958 if (x) try { 18959 return x.call(Object, t, n, r) 18960 } catch (i) { 18961 } 18962 if (f(r, "value")) if (d && (h(t, n) || p(t, n))) { 18963 var s = t.__proto__; 18964 t.__proto__ = o, delete t[n], t[n] = r.value, t.__proto__ = s 18965 } else t[n] = r.value; else { 18966 if (!d) throw new TypeError(C); 18967 f(r, "get") && l(t, n, r.get), f(r, "set") && c(t, n, r.set) 18968 } 18969 return t 18970 } 18971 } 18972 Object.defineProperties || (Object.defineProperties = function (t, n) { 18973 for (var r in n) f(n, r) && Object.defineProperty(t, r, n[r]); 18974 return t 18975 }), Object.seal || (Object.seal = function (t) { 18976 return t 18977 }), Object.freeze || (Object.freeze = function (t) { 18978 return t 18979 }); 18980 try { 18981 Object.freeze(function () { 18982 }) 18983 } catch (k) { 18984 Object.freeze = function (t) { 18985 return function (n) { 18986 return typeof n == "function" ? n : t(n) 18987 } 18988 }(Object.freeze) 18989 } 18990 Object.preventExtensions || (Object.preventExtensions = function (t) { 18991 return t 18992 }), Object.isSealed || (Object.isSealed = function (t) { 18993 return !1 18994 }), Object.isFrozen || (Object.isFrozen = function (t) { 18995 return !1 18996 }), Object.isExtensible || (Object.isExtensible = function (t) { 18997 if (Object(t) === t) throw new TypeError; 18998 var n = ""; 18999 while (f(t, n)) n += "?"; 19000 t[n] = !0; 19001 var r = f(t, n); 19002 return delete t[n], r 19003 }); 19004 if (!Object.keys) { 19005 var L = !0,
19006 A = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], 19007 O = A.length; 19008 for (var M in {toString: null}) L = !1; 19009 Object.keys = function I(e) { 19010 if (typeof e != "object" && typeof e != "function" || e === null) throw new TypeError("Object.keys called on a non-object"); 19011 var I = []; 19012 for (var t in e) f(e, t) && I.push(t); 19013 if (L) for (var n = 0, r = O; n < r; n++) { 19014 var i = A[n]; 19015 f(e, i) && I.push(i) 19016 } 19017 return I 19018 } 19019 } 19020 Date.now || (Date.now = function () { 19021 return (new Date).getTime() 19022 }); 19023 var _ = " \n\x0b\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"; 19024 if (!String.prototype.trim || _.trim()) { 19025 _ = "[" + _ + "]"; 19026 var D = new RegExp("^" + _ + _ + "*"), P = new RegExp(_ + _ + "*$"); 19027 String.prototype.trim = function () { 19028 return String(this).replace(D, "").replace(P, "") 19029 } 19030 } 19031 var F = function (e) { 19032 if (e == null) throw new TypeError("can't convert " + e + " to object"); 19033 return Object(e) 19034 } 19035}) 19036 19037"no use strict"; 19038!function (e) { 19039 function t(e, t) { 19040 var n = e, r = ""; 19041 while (n) { 19042 var i = t[n]; 19043 if (typeof i == "string") return i + r; 19044 if (i) return i.location.replace(/\/*$/, "/") + (r || i.main || i.name); 19045 if (i === !1) return ""; 19046 var s = n.lastIndexOf("/"); 19047 if (s === -1) break; 19048 r = n.substr(s) + r, n = n.slice(0, s) 19049 } 19050 return e 19051 } 19052 19053 if (typeof e.window != "undefined" && e.document) return; 19054 if (e.require && e.define) return; 19055 e.console || (e.console = function () { 19056 var e = Array.prototype.slice.call(arguments, 0); 19057 postMessage({type: "log", data: e}) 19058 }, e.console.error = e.console.warn = e.console.log = e.console.trace = e.console), e.window = e, e.ace = e, e.onerror = function (e, t, n, r, i) { 19059 postMessage({type: "error", data: {message: e, data: i.data, file: t, line: n, col: r, stack: i.stack}}) 19060 }, e.normalizeModule = function (t, n) { 19061 if (n.indexOf("!") !== -1) { 19062 var r = n.split("!"); 19063 return e.normalizeModule(t, r[0]) + "!" + e.normalizeModule(t, r[1]) 19064 } 19065 if (n.charAt(0) == ".") { 19066 var i = t.split("/").slice(0, -1).join("/"); 19067 n = (i ? i + "/" : "") + n; 19068 while (n.indexOf(".") !== -1 && s != n) { 19069 var s = n; 19070 n = n.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "") 19071 } 19072 } 19073 return n 19074 }, e.require = function (r, i) { 19075 i || (i = r, r = null); 19076 if (!i.charAt) throw new Error("worker.js require() accepts only (parentId, id) as arguments"); 19077 i = e.normalizeModule(r, i); 19078 var s = e.require.modules[i]; 19079 if (s) return s.initialized || (s.initialized = !0, s.exports = s.factory().exports), s.exports; 19080 if (!e.require.tlns) return console.log("unable to load " + i); 19081 var o = t(i, e.require.tlns); 19082 return o.slice(-3) != ".js" && (o += ".js"), e.require.id = i, e.require.modules[i] = {}, importScripts(o), e.require(r, i) 19083 }, e.require.modules = {}, e.require.tlns = {}, e.define = function (t, n, r) { 19084 arguments.length == 2 ? (r = n, typeof t != "string" && (n = t, t = e.require.id)) : arguments.length == 1 && (r = t, n = [], t = e.require.id); 19085 if (typeof r != "function") { 19086 e.require.modules[t] = {exports: r, initialized: !0}; 19087 return 19088 } 19089 n.length || (n = ["require", "exports", "module"]); 19090 var i = function (n) { 19091 return e.require(t, n) 19092 }; 19093 e.require.modules[t] = { 19094 exports: {}, factory: function () { 19095 var e = this, t = r.apply(this, n.slice(0, r.length).map(function (t) { 19096 switch (t) { 19097 case"require": 19098 return i; 19099 case"exports": 19100 return e.exports; 19101 case"module": 19102 return e; 19103 default: 19104 return i(t) 19105 } 19106 })); 19107 return t && (e.exports = t), e 19108 } 19109 } 19110 }, e.define.amd = {}, require.tlns = {}, e.initBaseUrls = function (t) { 19111 for (var n in t) require.tlns[n] = t[n] 19112 }, e.initSender = function () { 19113 var n = e.require("ace/lib/event_emitter").EventEmitter, r = e.require("ace/lib/oop"), i = function () { 19114 }; 19115 return function () { 19116 r.implement(this, n), this.callback = function (e, t) { 19117 postMessage({type: "call", id: t, data: e}) 19118 }, this.emit = function (e, t) { 19119 postMessage({type: "event", name: e, data: t}) 19120 } 19121 }.call(i.prototype), new i 19122 }; 19123 var n = e.main = null, r = e.sender = null; 19124 e.onmessage = function (t) { 19125 var i = t.data; 19126 if (i.event && r) r._signal(i.event, i.data); else if (i.command) if (n[i.command]) n[i.command].apply(n, i.args); else { 19127 if (!e[i.command]) throw new Error("Unknown command:" + i.command); 19128 e[i.command].apply(e, i.args) 19129 } else if (i.init) { 19130 e.initBaseUrls(i.tlns), require("ace/lib/es5-shim"), r = e.sender = e.initSender(); 19131 var s = require(i.module)[i.classname]; 19132 n = e.main = new s(r) 19133 } 19134 } 19135}(this), define("ace/lib/oop", [], function (e, t, n) { 19136 "use strict"; 19137 t.inherits = function (e, t) { 19138 e.super_ = t, e.prototype = Object.create(t.prototype, { 19139 constructor: { 19140 value: e, 19141 enumerable: !1, 19142 writable: !0, 19143 configurable: !0 19144 } 19145 }) 19146 }, t.mixin = function (e, t) { 19147 for (var n in t) e[n] = t[n]; 19148 return e 19149 }, t.implement = function (e, n) { 19150 t.mixin(e, n) 19151 } 19152}), define("ace/lib/lang", [], function (e, t, n) { 19153 "use strict"; 19154 t.last = function (e) { 19155 return e[e.length - 1] 19156 }
19156, t.stringReverse = function (e) { 19157 return e.split("").reverse().join("") 19158 }, t.stringRepeat = function (e, t) { 19159 var n = ""; 19160 while (t > 0) { 19161 t & 1 && (n += e); 19162 if (t >>= 1) e += e 19163 } 19164 return n 19165 }; 19166 var r = /^\s\s*/, i = /\s\s*$/; 19167 t.stringTrimLeft = function (e) { 19168 return e.replace(r, "") 19169 }, t.stringTrimRight = function (e) { 19170 return e.replace(i, "") 19171 }, t.copyObject = function (e) { 19172 var t = {}; 19173 for (var n in e) t[n] = e[n]; 19174 return t 19175 }, t.copyArray = function (e) { 19176 var t = []; 19177 for (var n = 0, r = e.length; n < r; n++) e[n] && typeof e[n] == "object" ? t[n] = this.copyObject(e[n]) : t[n] = e[n]; 19178 return t 19179 }, t.deepCopy = function s(e) { 19180 if (typeof e != "object" || !e) return e; 19181 var t; 19182 if (Array.isArray(e)) { 19183 t = []; 19184 for (var n = 0; n < e.length; n++) t[n] = s(e[n]); 19185 return t 19186 } 19187 if (Object.prototype.toString.call(e) !== "[object Object]") return e; 19188 t = {}; 19189 for (var n in e) t[n] = s(e[n]); 19190 return t 19191 }, t.arrayToMap = function (e) { 19192 var t = {}; 19193 for (var n = 0; n < e.length; n++) t[e[n]] = 1; 19194 return t 19195 }, t.createMap = function (e) { 19196 var t = Object.create(null); 19197 for (var n in e) t[n] = e[n]; 19198 return t 19199 }, t.arrayRemove = function (e, t) { 19200 for (var n = 0; n <= e.length; n++) t === e[n] && e.splice(n, 1) 19201 }, t.escapeRegExp = function (e) { 19202 return e.replace(/([.*+?^${}()|[\]\/\\])/g, "\\$1") 19203 }, t.escapeHTML = function (e) { 19204 return ("" + e).replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<") 19205 }, t.getMatchOffsets = function (e, t) { 19206 var n = []; 19207 return e.replace(t, function (e) { 19208 n.push({offset: arguments[arguments.length - 2], length: e.length}) 19209 }), n 19210 }, t.deferredCall = function (e) { 19211 var t = null, n = function () { 19212 t = null, e() 19213 }, r = function (e) { 19214 return r.cancel(), t = setTimeout(n, e || 0), r 19215 }; 19216 return r.schedule = r, r.call = function () { 19217 return this.cancel(), e(), r 19218 }, r.cancel = function () { 19219 return clearTimeout(t), t = null, r 19220 }, r.isPending = function () { 19221 return t 19222 }, r 19223 }, t.delayedCall = function (e, t) { 19224 var n = null, r = function () { 19225 n = null, e() 19226 }, i = function (e) { 19227 n == null && (n = setTimeout(r, e || t)) 19228 }; 19229 return i.delay = function (e) { 19230 n && clearTimeout(n), n = setTimeout(r, e || t) 19231 }, i.schedule = i, i.call = function () { 19232 this.cancel(), e() 19233 }, i.cancel = function () { 19234 n && clearTimeout(n), n = null 19235 }, i.isPending = function () { 19236 return n 19237 }, i 19238 } 19239}), define("ace/range", [], function (e, t, n) { 19240 "use strict"; 19241 var r = function (e, t) { 19242 return e.row - t.row || e.column - t.column 19243 }, i = function (e, t, n, r) { 19244 this.start = {row: e, column: t}, this.end = {row: n, column: r} 19245 }; 19246 (function () { 19247 this.isEqual = function (e) { 19248 return this.start.row === e.start.row && this.end.row === e.end.row && this.start.column === e.start.column && this.end.column === e.end.column 19249 }, this.toString = function () { 19250 return "Range: [" + this.start.row + "/" + this.start.column + "] -> [" + this.end.row + "/" + this.end.column + "]" 19251 }, this.contains = function (e, t) { 19252 return this.compare(e, t) == 0 19253 }, this.compareRange = function (e) { 19254 var t, n = e.end, r = e.start; 19255 return t = this.compare(n.row, n.column), t == 1 ? (t = this.compare(r.row, r.column), t == 1 ? 2 : t == 0 ? 1 : 0) : t == -1 ? -2 : (t = this.compare(r.row, r.column), t == -1 ? -1 : t == 1 ? 42 : 0) 19256 }, this.comparePoint = function (e) { 19257 return this.compare(e.row, e.column) 19258 }, this.containsRange = function (e) { 19259 return this.comparePoint(e.start) == 0 && this.comparePoint(e.end) == 0 19260 }, this.intersects = function (e) { 19261 var t = this.compareRange(e); 19262 return t == -1 || t == 0 || t == 1 19263 }, this.isEnd = function (e, t) {
19264 return this.end.row == e && this.end.column == t 19265 }, this.isStart = function (e, t) { 19266 return this.start.row == e && this.start.column == t 19267 }, this.setStart = function (e, t) { 19268 typeof e == "object" ? (this.start.column = e.column, this.start.row = e.row) : (this.start.row = e, this.start.column = t) 19269 }, this.setEnd = function (e, t) { 19270 typeof e == "object" ? (this.end.column = e.column, this.end.row = e.row) : (this.end.row = e, this.end.column = t) 19271 }, this.inside = function (e, t) { 19272 return this.compare(e, t) == 0 ? this.isEnd(e, t) || this.isStart(e, t) ? !1 : !0 : !1 19273 }, this.insideStart = function (e, t) { 19274 return this.compare(e, t) == 0 ? this.isEnd(e, t) ? !1 : !0 : !1 19275 }, this.insideEnd = function (e, t) { 19276 return this.compare(e, t) == 0 ? this.isStart(e, t) ? !1 : !0 : !1 19277 }, this.compare = function (e, t) { 19278 return !this.isMultiLine() && e === this.start.row ? t < this.start.column ? -1 : t > this.end.column ? 1 : 0 : e < this.start.row ? -1 : e > this.end.row ? 1 : this.start.row === e ? t >= this.start.column ? 0 : -1 : this.end.row === e ? t <= this.end.column ? 0 : 1 : 0 19279 }, this.compareStart = function (e, t) { 19280 return this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 19281 }, this.compareEnd = function (e, t) { 19282 return this.end.row == e && this.end.column == t ? 1 : this.compare(e, t) 19283 }, this.compareInside = function (e, t) { 19284 return this.end.row == e && this.end.column == t ? 1 : this.start.row == e && this.start.column == t ? -1 : this.compare(e, t) 19285 }, this.clipRows = function (e, t) { 19286 if (this.end.row > t) var n = {row: t + 1, column: 0}; else if (this.end.row < e) var n = { 19287 row: e, 19288 column: 0 19289 }; 19290 if (this.start.row > t) var r = {row: t + 1, column: 0}; else if (this.start.row < e) var r = { 19291 row: e, 19292 column: 0 19293 }; 19294 return i.fromPoints(r || this.start, n || this.end) 19295 }, this.extend = function (e, t) { 19296 var n = this.compare(e, t); 19297 if (n == 0) return this; 19298 if (n == -1) var r = {row: e, column: t}; else var s = {row: e, column: t}; 19299 return i.fromPoints(r || this.start, s || this.end) 19300 }, this.isEmpty = function () { 19301 return this.start.row === this.end.row && this.start.column === this.end.column 19302 }, this.isMultiLine = function () { 19303 return this.start.row !== this.end.row 19304 }, this.clone = function () { 19305 return i.fromPoints(this.start, this.end) 19306 }, this.collapseRows = function () { 19307 return this.end.column == 0 ? new i(this.start.row, 0, Math.max(this.start.row, this.end.row - 1), 0) : new i(this.start.row, 0, this.end.row, 0) 19308 }, this.toScreenRange = function (e) { 19309 var t = e.documentToScreenPosition(this.start), n = e.documentToScreenPosition(this.end); 19310 return new i(t.row, t.column, n.row, n.column) 19311 }, this.moveBy = function (e, t) { 19312 this.start.row += e, this.start.column += t, this.end.row += e, this.end.column += t 19313 } 19314 }).call(i.prototype), i.fromPoints = function (e, t) { 19315 return new i(e.row, e.column, t.row, t.column) 19316 }, i.comparePoints = r, i.comparePoints = function (e, t) { 19317 return e.row - t.row || e.column - t.column 19318 }, t.Range = i 19319}), define("ace/apply_delta", [], function (e, t, n) { 19320 "use strict"; 19321 19322 function r(e, t) { 19323 throw console.log("Invalid Delta:", e), "Invalid Delta: " + t 19324 } 19325 19326 function i(e, t) { 19327 return t.row >= 0 && t.row < e.length && t.column >= 0 && t.column <= e[t.row].length 19328 } 19329 19330 function s(e, t) { 19331 t.action != "insert" && t.action != "remove" && r(t, "delta.action must be 'insert' or 'remove'"), t.lines instanceof Array || r(t, "delta.lines must be an Array"), (!t.start || !t.end) && r(t, "delta.start/end must be an present"); 19332 var n = t.start; 19333 i(e, t.start) || r(t, "delta.start must be contained in document"); 19334 var s = t.end; 19335 t.action == "remove" && !i(e, s) && r(t, "delta.end must contained in document for 'remove' actions"); 19336 var o = s.row - n.row, u = s.column - (o == 0 ? n.column : 0); 19337 (o != t.lines.length - 1 || t.lines[o].length != u) && r(t, "delta.range must match delta lines") 19338 } 19339 19340 t.applyDelta = function (e, t, n) { 19341 var r = t.start.row, i = t.start.column, s = e[r] || ""; 19342 switch (t.action) { 19343 case"insert": 19344 var o = t.lines; 19345 if (o.length === 1) e[r] = s.substring(0, i) + t.lines[0] + s.substring(i); else {
19346 var u = [r, 1].concat(t.lines); 19347 e.splice.apply(e, u), e[r] = s.substring(0, i) + e[r], e[r + t.lines.length - 1] += s.substring(i) 19348 } 19349 break; 19350 case"remove": 19351 var a = t.end.column, f = t.end.row; 19352 r === f ? e[r] = s.substring(0, i) + s.substring(a) : e.splice(r, f - r + 1, s.substring(0, i) + e[f].substring(a)) 19353 } 19354 } 19355}), define("ace/lib/event_emitter", [], function (e, t, n) { 19356 "use strict"; 19357 var r = {}, i = function () { 19358 this.propagationStopped = !0 19359 }, s = function () { 19360 this.defaultPrevented = !0 19361 }; 19362 r._emit = r._dispatchEvent = function (e, t) { 19363 this._eventRegistry || (this._eventRegistry = {}), this._defaultHandlers || (this._defaultHandlers = {}); 19364 var n = this._eventRegistry[e] || [], r = this._defaultHandlers[e]; 19365 if (!n.length && !r) return; 19366 if (typeof t != "object" || !t) t = {}; 19367 t.type || (t.type = e), t.stopPropagation || (t.stopPropagation = i), t.preventDefault || (t.preventDefault = s), n = n.slice(); 19368 for (var o = 0; o < n.length; o++) { 19369 n[o](t, this); 19370 if (t.propagationStopped) break 19371 } 19372 if (r && !t.defaultPrevented) return r(t, this) 19373 }, r._signal = function (e, t) { 19374 var n = (this._eventRegistry || {})[e]; 19375 if (!n) return; 19376 n = n.slice(); 19377 for (var r = 0; r < n.length; r++) n[r](t, this) 19378 }, r.once = function (e, t) { 19379 var n = this; 19380 this.addEventListener(e, function r() { 19381 n.removeEventListener(e, r), t.apply(null, arguments) 19382 }); 19383 if (!t) return new Promise(function (e) { 19384 t = e 19385 }) 19386 }, r.setDefaultHandler = function (e, t) { 19387 var n = this._defaultHandlers; 19388 n || (n = this._defaultHandlers = {_disabled_: {}}); 19389 if (n[e]) { 19390 var r = n[e], i = n._disabled_[e]; 19391 i || (n._disabled_[e] = i = []), i.push(r); 19392 var s = i.indexOf(t); 19393 s != -1 && i.splice(s, 1) 19394 } 19395 n[e] = t 19396 }, r.removeDefaultHandler = function (e, t) { 19397 var n = this._defaultHandlers; 19398 if (!n) return; 19399 var r = n._disabled_[e]; 19400 if (n[e] == t) r && this.setDefaultHandler(e, r.pop()); else if (r) { 19401 var i = r.indexOf(t); 19402 i != -1 && r.splice(i, 1) 19403 } 19404 }, r.on = r.addEventListener = function (e, t, n) { 19405 this._eventRegistry = this._eventRegistry || {}; 19406 var r = this._eventRegistry[e]; 19407 return r || (r = this._eventRegistry[e] = []), r.indexOf(t) == -1 && r[n ? "unshift" : "push"](t), t 19408 }, r.off = r.removeListener = r.removeEventListener = function (e, t) { 19409 this._eventRegistry = this._eventRegistry || {}; 19410 var n = this._eventRegistry[e]; 19411 if (!n) return; 19412 var r = n.indexOf(t); 19413 r !== -1 && n.splice(r, 1) 19414 }, r.removeAllListeners = function (e) { 19415 this._eventRegistry && (this._eventRegistry[e] = []) 19416 }, t.EventEmitter = r 19417}), define("ace/anchor", [], function (e, t, n) { 19418 "use strict"; 19419 var r = e("./lib/oop"), i = e("./lib/event_emitter").EventEmitter, s = t.Anchor = function (e, t, n) { 19420 this.$onChange = this.onChange.bind(this), this.attach(e), typeof n == "undefined" ? this.setPosition(t.row, t.column) : this.setPosition(t, n) 19421 }; 19422 (function () { 19423 function e(e, t, n) { 19424 var r = n ? e.column <= t.column : e.column < t.column; 19425 return e.row < t.row || e.row == t.row && r 19426 } 19427 19428 function t(t, n, r) { 19429 var i = t.action == "insert", s = (i ? 1 : -1) * (t.end.row - t.start.row), 19430 o = (i ? 1 : -1) * (t.end.column - t.start.column), u = t.start, a = i ? u : t.end; 19431 return e(n, u, r) ? {row: n.row, column: n.column} : e(a, n, !r) ? { 19432 row: n.row + s, 19433 column: n.column + (n.row == a.row ? o : 0) 19434 } : {row: u.row, column: u.column} 19435 } 19436 19437 r.implement(this, i), this.getPosition = function () { 19438 return this.$clipPositionToDocument(this.row, this.column) 19439 }, this.getDocument = function () { 19440 return this.document 19441 }, this.$insertRight = !1, this.onChange = function (e) { 19442 if (e.start.row == e.end.row && e.start.row != this.row) return; 19443 if (e.start.row > this.row) return; 19444 var n = t(e, {row: this.row, column: this.column}, this.$insertRight); 19445 this.setPosition(n.row, n.column, !0) 19446 }, this.setPosition = function (e, t, n) { 19447 var r; 19448 n ? r = {row: e, column: t} : r = this.$clipPositionToDocument(e, t); 19449 if (this.row == r.row && this.column == r.column) return; 19450 var i = {row: this.row, column: this.column}; 19451 this.row = r.row, this.column = r.column, this._signal("change", {old: i, value: r}) 19452 }, this.detach = function () { 19453 this.document.removeEventListener("change", this.$onChange) 19454 }, this.attach = function (e) { 19455 this.document = e || this.document, this.document.on("change", this.$onChange) 19456 }, this.$clipPositionToDocument = function (e, t) { 19457 var n = {}; 19458 return e >= this.document.getLength() ? (n.row = Math.max(0, this.document.getLength() - 1), n.column = this.document.getLine(n.row).length) : e < 0 ? (n.row = 0, n.column = 0) : (n.row = e, n.column = Math.min(this.document.getLine(n.row).length, Math.max(0, t))), t < 0 && (n.column = 0), n 19459 } 19460 }).call(s.prototype) 19461}), define("ace/document", [], function (e, t, n) { 19462 "use strict"; 19463 var r = e("./lib/oop"), i = e("./apply_delta").applyDelta, s = e("./lib/event_emitter").EventEmitter, 19464 o = e("./range").Range, u = e("./anchor").Anchor, a = function (e) { 19465 this.$lines = [""], e.length === 0 ? this.$lines = [""] : Array.isArray(e) ? this.insertMergedLines({ 19466 row: 0, 19467 column: 0 19468 }, e) : this.insert({row: 0, column: 0}, e) 19469 }; 19470 (function () { 19471 r.implement(this, s), this.setValue = function (e) { 19472 var t = this.getLength() - 1; 19473 this.remove(new o(0, 0, t, this.getLine(t).length)), this.insert({row: 0, column: 0}, e) 19474 }, this.getValue = function () { 19475 return this.getAllLines().join(this.getNewLineCharacter()) 19476 }, this.createAnchor = function (e, t) { 19477 return new u(this, e, t) 19478 }, "aaa".split(/a/).length === 0 ? this.$split = function (e) { 19479 return e.replace(/\r\n|\r/g, "\n").split("\n") 19480 } : this.$split = function (e) { 19481 return e.split(/\r\n|\r|\n/) 19482 }, this.$detectNewLine = function (e) { 19483 var t = e.match(/^.*?(\r\n|\r|\n)/m); 19484 this.$autoNewLine = t ? t[1] : "\n", this._signal("changeNewLineMode") 19485 }, this.getNewLineCharacter = function () { 19486 switch (this.$newLineMode) { 19487 case"windows": 19488 return "\r\n"; 19489 case"unix": 19490 return "\n"; 19491 default: 19492 return this.$autoNewLine || "\n" 19493 } 19494 }, this.$autoNewLine = "", this.$newLineMode = "auto", this.setNewLineMode = function (e) { 19495 if (this.$newLineMode === e) return; 19496 this.$newLineMode = e, this._signal("changeNewLineMode") 19497 }, this.getNewLineMode = function () { 19498 return this.$newLineMode 19499 }, this.isNewLine = function (e) { 19500 return e == "\r\n" || e == "\r" || e == "\n" 19501 }, this.getLine = function (e) { 19502 return this.$lines[e] || "" 19503 }, this.getLines = function (e, t) { 19504 return this.$lines.slice(e, t + 1) 19505 }, this.getAllLines = function () { 19506 return this.getLines(0, this.getLength()) 19507 }, this.getLength = function () { 19508 return this.$lines.length 19509 }, this.getTextRange = function (e) { 19510 return this.getLinesForRange(e).join(this.getNewLineCharacter()) 19511 }, this.getLinesForRange = function (e) { 19512 var t; 19513 if (e.start.row === e.end.row) t = [this.getLine(e.start.row).substring(e.start.column, e.end.column)]; else { 19514 t = this.getLines(e.start.row, e.end.row), t[0] = (t[0] || "").substring(e.start.column); 19515 var n = t.length - 1; 19516 e.end.row - e.start.row == n && (t[n] = t[n].substring(0, e.end.column)) 19517 } 19518 return t 19519 }, this.insertLines = function (e, t) { 19520 return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."), this.insertFullLines(e, t) 19521 }, this.removeLines = function (e, t) { 19522 return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."), this.removeFullLines(e, t) 19523 }, this.insertNewLine = function (e) { 19524 return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."), this.insertMergedLines(e, ["", ""]) 19525 }, this.insert = function (e, t) { 19526 return this.getLength() <= 1 && this.$detectNewLine(t), this.insertMergedLines(e, this.$split(t)) 19527 }, this.insertInLine = function (e, t) { 19528 var n = this.clippedPos(e.row, e.column), r = this.pos(e.row, e.column + t.length); 19529 return this.applyDelta({start: n, end: r, action: "insert", lines: [t]}, !0), this.clonePos(r) 19530 }, this.clippedPos = function (e, t) { 19531 var n = this.getLength(); 19532 e === undefined ? e = n : e < 0 ? e = 0 : e >= n && (e = n - 1, t = undefined); 19533 var r = this.getLine(e); 19534 return t == undefined && (t = r.length), t = Math.min(Math.max(t, 0), r.length), {row: e, column: t} 19535 }, this.clonePos = function (e) { 19536 return {row: e.row, column: e.column} 19537 }, this.pos = function (e, t) { 19538 return {row: e, column: t} 19539 }, this.$clipPosition = function (e) { 19540 var t = this.getLength(); 19541 return e.row >= t ? (e.row = Math.max(0, t - 1), e.column = this.getLine(t - 1).length) : (e.row = Math.max(0, e.row), e.column = Math.min(Math.max(e.column, 0), this.getLine(e.row).length)), e 19542 }, this.insertFullLines = function (e, t) { 19543 e = Math.min(Math.max(e, 0), this.getLength()); 19544 var n = 0; 19545 e < this.getLength() ? (t = t.concat([""]), n = 0) : (t = [""].concat(t), e--, n = this.$lines[e].length), this.insertMergedLines({ 19546 row: e, 19547 column: n 19548 }, t) 19549 }, this.insertMergedLines = function (e, t) { 19550 var n = this.clippedPos(e.row, e.column), 19551 r = {row: n.row + t.length - 1, column: (t.length == 1 ? n.column : 0) + t[t.length - 1].length}; 19552 return this.applyDelta({start: n, end: r, action: "insert", lines: t}), this.clonePos(r) 19553 }, this.remove = function (e) { 19554 var t = this.clippedPos(e.start.row, e.start.column), n = this.clippedPos(e.end.row, e.end.column); 19555 return this.applyDelta({ 19556 start: t, 19557 end: n, 19558 action: "remove", 19559 lines: this.getLinesForRange({start: t, end: n}) 19560 }), this.clonePos(t) 19561 }, this.removeInLine = function (e, t, n) { 19562 var r = this.clippedPos(e, t), i = this.clippedPos(e, n); 19563 return this.applyDelta({ 19564 start: r, 19565 end: i, 19566 action: "remove", 19567 lines: this.getLinesForRange({start: r, end: i}) 19568 }, !0), this.clonePos(r) 19569 }, this.removeFullLines = function (e, t) { 19570 e = Math.min(Math.max(0, e), this.getLength() - 1), t = Math.min(Math.max(0, t), this.getLength() - 1); 19571 var n = t == this.getLength() - 1 && e > 0, r = t < this.getLength() - 1, i = n ? e - 1 : e, 19572 s = n ? this.getLine(i).length : 0, u = r ? t + 1 : t, a = r ? 0 : this.getLine(u).length, 19573 f = new o(i, s, u, a), l = this.$lines.slice(e, t + 1); 19574 return this.applyDelta({start: f.start, end: f.end, action: "remove", lines: this.getLinesForRange(f)}), l 19575 }, this.removeNewLine = function (e) { 19576 e < this.getLength() - 1 && e >= 0 && this.applyDelta({ 19577 start: this.pos(e, this.getLine(e).length), 19578 end: this.pos(e + 1, 0), 19579 action: "remove", 19580 lines: ["", ""] 19581 }) 19582 }, this.replace = function (e, t) { 19583 e instanceof o || (e = o.fromPoints(e.start, e.end)); 19584 if (t.length === 0 && e.isEmpty()) return e.start; 19585 if (t == this.getTextRange(e)) return e.end; 19586 this.remove(e); 19587 var n; 19588 return t ? n = this.insert(e.start, t) : n = e.start, n 19589 }, this.applyDeltas = function (e) { 19590 for (var t = 0; t < e.length; t++) this.applyDelta(e[t]) 19591 }, this.revertDeltas = function (e) { 19592 for (var t = e.length - 1; t >= 0; t--) this.revertDelta(e[t]) 19593 }, this.applyDelta = function (e, t) { 19594 var n = e.action == "insert"; 19595 if (n ? e.lines.length <= 1 && !e.lines[0] : !o.comparePoints(e.start, e.end)) return; 19596 n && e.lines.length > 2e4 ? this.$splitAndapplyLargeDelta(e, 2e4) : (i(this.$lines, e, t), this._signal("change", e)) 19597 }, this.$splitAndapplyLargeDelta = function (e, t) { 19598 var n = e.lines, r = n.length - t + 1, i = e.start.row, s = e.start.column; 19599 for (var o = 0, u = 0; o < r; o = u) { 19600 u += t - 1; 19601 var a = n.slice(o, u); 19602 a.push(""), this.applyDelta({ 19603 start: this.pos(i + o, s), 19604 end: this.pos(i + u, s = 0), 19605 action: e.action, 19606 lines: a 19607 }, !0) 19608 } 19609 e.lines = n.slice(o), e.start.row = i + o, e.start.column = s, this.applyDelta(e, !0) 19610 }, this.revertDelta = function (e) { 19611 this.applyDelta({ 19612 start: this.clonePos(e.start), 19613 end: this.clonePos(e.end), 19614 action: e.action == "insert" ? "remove" : "insert", 19615 lines: e.lines.slice() 19616 }) 19617 }, this.indexToPosition = function (e, t) { 19618 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length; 19619 for (var i = t || 0, s = n.length; i < s; i++) { 19620 e -= n[i].length + r; 19621 if (e < 0) return {row: i, column: e + n[i].length + r} 19622 } 19623 return {row: s - 1, column: e + n[s - 1].length + r} 19624 }, this.positionToIndex = function (e, t) { 19625 var n = this.$lines || this.getAllLines(), r = this.getNewLineCharacter().length, i = 0, 19626 s = Math.min(e.row, n.length); 19627 for (var o = t || 0; o < s; ++o) i += n[o].length + r; 19628 return i + e.column 19629 } 19630 }).call(a.prototype), t.Document = a 19631}), define("ace/worker/mirror", [], function (e, t, n) { 19632 "use strict"; 19633 var r = e("../range").Range, i = e("../document").Document, s = e("../lib/lang"), o = t.Mirror = function (e) { 19634 this.sender = e; 19635 var t = this.doc = new i(""), n = this.deferredUpdate = s.delayedCall(this.onUpdate.bind(this)), r = this; 19636 e.on("change", function (e) { 19637 var i = e.data; 19638 if (i[0].start) t.applyDeltas(i); else for (var s = 0; s < i.length; s += 2) {
19639 if (Array.isArray(i[s + 1])) var o = { 19640 action: "insert", 19641 start: i[s], 19642 lines: i[s + 1] 19643 }; else var o = {action: "remove", start: i[s], end: i[s + 1]}; 19644 t.applyDelta(o, !0) 19645 } 19646 if (r.$timeout) return n.schedule(r.$timeout); 19647 r.onUpdate() 19648 }) 19649 }; 19650 (function () { 19651 this.$timeout = 500, this.setTimeout = function (e) { 19652 this.$timeout = e 19653 }, this.setValue = function (e) { 19654 this.doc.setValue(e), this.deferredUpdate.schedule(this.$timeout) 19655 }, this.getValue = function (e) { 19656 this.sender.callback(this.doc.getValue(), e) 19657 }, this.onUpdate = function () { 19658 }, this.isPending = function () { 19659 return this.deferredUpdate.isPending() 19660 } 19661 }).call(o.prototype) 19662}), define("ace/mode/xml/sax", [], function (e, t, n) { 19663 function d() { 19664 } 19665 19666 function v(e, t, n, r, i) { 19667 function s(e) { 19668 if (e > 65535) { 19669 e -= 65536; 19670 var t = 55296 + (e >> 10), n = 56320 + (e & 1023); 19671 return String.fromCharCode(t, n) 19672 } 19673 return String.fromCharCode(e) 19674 } 19675 19676 function o(e) { 19677 var t = e.slice(1, -1); 19678 return t in n ? n[t] : t.charAt(0) === "#" ? s(parseInt(t.substr(1).replace("x", "0x"))) : (i.error("entity not found:" + e), e) 19679 } 19680 19681 function u(t) { 19682 var n = e.substring(v, t).replace(/&#?\w+;/g, o); 19683 h && a(v), r.characters(n, 0, t - v), v = t 19684 } 19685 19686 function a(t, n) { 19687 while (t >= l && (n = c.exec(e))) f = n.index, l = f + n[0].length, h.lineNumber++; 19688 h.columnNumber = t - f + 1 19689 } 19690 19691 var f = 0, l = 0, c = /.+(?:\r\n?|\n)|.*$/g, h = r.locator, p = [{currentNSMap: t}], d = {}, v = 0; 19692 for (; ;) { 19693 var E = e.indexOf("<", v); 19694 if (E < 0) { 19695 if (!e.substr(v).match(/^\s*$/)) { 19696 var N = r.document, C = N.createTextNode(e.substr(v)); 19697 N.appendChild(C), r.currentElement = C 19698 } 19699 return 19700 } 19701 E > v && u(E); 19702 switch (e.charAt(E + 1)) { 19703 case"/": 19704 var k = e.indexOf(">", E + 3), L = e.substring(E + 2, k), A; 19705 if (!(p.length > 1)) { 19706 i.fatalError("end tag name not found for: " + L); 19707 break 19708 } 19709 A = p.pop(); 19710 var O = A.localNSMap; 19711 A.tagName != L && i.fatalError("end tag name: " + L + " does not match the current start tagName: " + A.tagName), r.endElement(A.uri, A.localName, L); 19712 if (O) for (var M in O) r.endPrefixMapping(M); 19713 k++; 19714 break; 19715 case"?": 19716 h && a(E), k = x(e, E, r); 19717 break; 19718 case"!": 19719 h && a(E), k = S(e, E, r, i); 19720 break; 19721 default: 19722 try { 19723 h && a(E); 19724 var _ = new T, k = g(e, E, _, o, i), D = _.length; 19725 if (D && h) { 19726 var P = m(h, {}); 19727 for (var E = 0; E < D; E++) { 19728 var H = _[E]; 19729 a(H.offset), H.offset = m(h, {}) 19730 } 19731 m(P, h) 19732 } 19733 !_.closed && w(e, k, _.tagName, d) && (_.closed = !0, n.nbsp || i.warning("unclosed xml attribute")), y(_, r, p), _.uri === "http://www.w3.org/1999/xhtml" && !_.closed ? k = b(e, k, _.tagName, o, r) : k++ 19734 } catch (B) { 19735 i.error("element parse error: " + B), k = -1 19736 } 19737 } 19738 k < 0 ? u(E + 1) : v = k 19739 } 19740 } 19741 19742 function m(e, t) { 19743 return t.lineNumber = e.lineNumber, t.columnNumber = e.columnNumber, t 19744 } 19745 19746 function g(e, t, n, r, i) { 19747 var s, d, v = ++t, m = o; 19748 for (; ;) { 19749 var g = e.charAt(v); 19750 switch (g) { 19751 case"=": 19752 if (m === u) s = e.slice(t, v), m = f; else { 19753 if (m !== a) throw new Error("attribute equal must after attrName"); 19754 m = f 19755 } 19756 break; 19757 case"'": 19758 case'"': 19759 if (m === f) { 19760 t = v + 1, v = e.indexOf(g, t); 19761 if (!(v > 0)) throw new Error("attribute value no end '" + g + "' match"); 19762 d = e.slice(t, v).replace(/&#?\w+;/g, r), n.add(s, d, t - 1), m = c 19763 } else { 19764 if (m != l) throw new Error('attribute value must after "="'); 19765 d = e.slice(t, v).replace(/&#?\w+;/g, r), n.add(s, d, t), i.warning('attribute "' + s + '" missed start quot(' + g + ")!!"), t = v + 1, m = c 19766 } 19767 break; 19768 case"/": 19769 switch (m) { 19770 case o: 19771 n.setTagName(e.slice(t, v)); 19772 case c: 19773 case h: 19774 case p: 19775 m = p, n.closed = !0; 19776 case l: 19777 case u: 19778 case a: 19779 break; 19780 default: 19781 throw new Error("attribute invalid close char('/')") 19782 } 19783 break; 19784 case"": 19785 i.error("unexpected end of input"); 19786 case">": 19787 switch (m) { 19788 case o: 19789 n.setTagName(e.slice(t, v)); 19790 case c: 19791 case h: 19792 case p: 19793 break; 19794 case l: 19795 case u: 19796 d = e.slice(t, v), d.slice(-1) === "/" && (n.closed = !0, d = d.slice(0, -1)); 19797 case a: 19798 m === a && (d = s), m == l ? (i.warning('attribute "' + d + '" missed quot(")!!'), n.add(s, d.replace(/&#?\w+;/g, r), t)) : (i.warning('attribute "' + d + '" missed value!! "' + d + '" instead!!'), n.add(d, d, t)); 19799 break; 19800 case f: 19801 throw new Error("attribute value missed!!") 19802 } 19803 return v; 19804 case"\u0080": 19805 g = " "; 19806 default: 19807 if (g <= " ") switch (m) { 19808 case o: 19809 n.setTagName(e.slice(t, v)), m = h; 19810 break; 19811 case u: 19812 s = e.slice(t, v), m = a; 19813 break; 19814 case l: 19815 var d = e.slice(t, v).replace(/&#?\w+;/g, r); 19816 i.warning('attribute "' + d + '" missed quot(")!!'), n.add(s, d, t); 19817 case c: 19818 m = h 19819 } else switch (m) { 19820 case a: 19821 i.warning('attribute "' + s + '" missed value!! "' + s + '" instead!!'), n.add(s, s, t), t = v, m = u; 19822 break; 19823 case c: 19824 i.warning('attribute space is required"' + s + '"!!'); 19825 case h: 19826 m = u, t = v; 19827 break; 19828 case f: 19829 m = l, t = v; 19830 break; 19831 case p: 19832 throw new Error("elements closed character '/' and '>' must be connected to") 19833 } 19834 } 19835 v++ 19836 } 19837 } 19838 19839 function y(e, t, n) { 19840 var r = e.tagName, i = null, s = n[n.length - 1].currentNSMap, o = e.length; 19841 while (o--) { 19842 var u = e[o], a = u.qName, f = u.value, l = a.indexOf(":"); 19843 if (l > 0) var c = u.prefix = a.slice(0, l), h = a.slice(l + 1), 19844 p = c === "xmlns" && h; else h = a, c = null, p = a === "xmlns" && ""; 19845 u.localName = h, p !== !1 && (i == null && (i = {}, E(s, s = {})), s[p] = i[p] = f, u.uri = "http://www.w3.org/2000/xmlns/", t.startPrefixMapping(p, f)) 19846 } 19847 var o = e.length; 19848 while (o--) { 19849 u = e[o]; 19850 var c = u.prefix; 19851 c && (c === "xml" && (u.uri = "http://www.w3.org/XML/1998/namespace"), c !== "xmlns" && (u.uri = s[c])) 19852 } 19853 var l = r.indexOf(":"); 19854 l > 0 ? (c = e.prefix = r.slice(0, l), h = e.localName = r.slice(l + 1)) : (c = null, h = e.localName = r); 19855 var d = e.uri = s[c || ""]; 19856 t.startElement(d, h, r, e); 19857 if (e.closed) { 19858 t.endElement(d, h, r); 19859 if (i) for (c in i) t.endPrefixMapping(c) 19860 } else e.currentNSMap = s, e.localNSMap = i, n.push(e) 19861 } 19862 19863 function b(e, t, n, r, i) { 19864 if (/^(?:script|textarea)$/i.test(n)) { 19865 var s = e.indexOf("</" + n + ">", t), o = e.substring(t + 1, s); 19866 if (/[&<]/.test(o)) return /^script$/i.test(n) ? (i.characters(o, 0, o.length), s) : (o = o.replace(/&#?\w+;/g, r), i.characters(o, 0, o.length), s) 19867 } 19868 return t + 1 19869 } 19870 19871 function w(e, t, n, r) { 19872 var i = r[n]; 19873 return i == null && (i = r[n] = e.lastIndexOf("</" + n + ">")), i < t 19874 } 19875 19876 function E(e, t) { 19877 for (var n in e) t[n] = e[n] 19878 } 19879 19880 function S(e, t, n, r) { 19881 var i = e.charAt(t + 2); 19882 switch (i) { 19883 case"-": 19884 if (e.charAt(t + 3) === "-") { 19885 var s = e.indexOf("-->", t + 4); 19886 return s > t ? (n.comment(e, t + 4, s - t - 4), s + 3) : (r.error("Unclosed comment"), -1) 19887 } 19888 return -1; 19889 default: 19890 if (e.substr(t + 3, 6) == "CDATA[") { 19891 var s = e.indexOf("]]>", t + 9); 19892 return n.startCDATA(), n.characters(e, t + 9, s - t - 9), n.endCDATA(), s + 3 19893 } 19894 var o = C(e, t), u = o.length; 19895 if (u > 1 && /!doctype/i.test(o[0][0])) { 19896 var a = o[1][0], f = u > 3 && /^public$/i.test(o[2][0]) && o[3][0], l = u > 4 && o[4][0], 19897 c = o[u - 1]; 19898 return n.startDTD(a, f && f.replace(/^(['"])(.*?)\1$/, "$2"), l && l.replace(/^(['"])(.*?)\1$/, "$2")), n.endDTD(), c.index + c[0].length 19899 } 19900 } 19901 return -1 19902 } 19903 19904 function x(e, t, n) { 19905 var r = e.indexOf("?>", t); 19906 if (r) { 19907 var i = e.substring(t, r).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/); 19908 if (i) { 19909 var s = i[0].length; 19910 return n.processingInstruction(i[1], i[2]), r + 2 19911 } 19912 return -1 19913 } 19914 return -1 19915 } 19916 19917 function T(e) { 19918 } 19919 19920 function N(e, t) { 19921 return e.__proto__ = t, e 19922 } 19923 19924 function C(e, t) { 19925 var n, r = [], i = /'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g; 19926 i.lastIndex = t, i.exec(e); 19927 while (n = i.exec(e)) { 19928 r.push(n); 19929 if (n[1]) return r 19930 } 19931 } 19932 19933 var r = /[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/, 19934 i = new RegExp("[\\-\\.0-9" + r.source.slice(1, -1) + "\u00b7\u0300-\u036f\\ux203F-\u2040]"), 19935 s = new RegExp("^" + r.source + i.source + "*(?::" + r.source + i.source + "*)?$"), o = 0, u = 1, a = 2, f = 3, 19936 l = 4, c = 5, h = 6, p = 7; 19937 return d.prototype = { 19938 parse: function (e, t, n) { 19939 var r = this.domBuilder; 19940 r.startDocument(), E(t, t = {}), v(e, t, n, r, this.errorHandler), r.endDocument() 19941 } 19942 }, T.prototype = { 19943 setTagName: function (e) { 19944 if (!s.test(e)) throw new Error("invalid tagName:" + e); 19945 this.tagName = e 19946 }, add: function (e, t, n) { 19947 if (!s.test(e)) throw new Error("invalid attribute:" + e); 19948 this[this.length++] = {qName: e, value: t, offset: n} 19949 }, length: 0, getLocalName: function (e) { 19950 return this[e].localName 19951 }, getOffset: function (e) { 19952 return this[e].offset 19953 }, getQName: function (e) { 19954 return this[e].qName 19955 }, getURI: function (e) { 19956 return this[e].uri 19957 }, getValue: function (e) { 19958 return this[e].value 19959 } 19960 }, N({}, N.prototype) instanceof N || (N = function (e, t) { 19961 function n() { 19962 } 19963 19964 n.prototype = t, n = new n; 19965 for (t in e) n[t] = e[t]; 19966 return n 19967 }), d 19968}), define("ace/mode/xml/dom", [], function (e, t, n) { 19969 function r(e, t) { 19970 for (var n in e) t[n] = e[n] 19971 } 19972 19973 function i(e, t) { 19974 var n = function () { 19975 }, i = e.prototype; 19976 if (Object.create) { 19977 var s = Object.create(t.prototype); 19978 i.__proto__ = s 19979 } 19980 i instanceof t || (n.prototype = t.prototype, n = new n, r(i, n), e.prototype = i = n), i.constructor != e && (typeof e != "function" && console.error("unknown Class:" + e), i.constructor = e) 19981 } 19982 19983 function B(e, t) { 19984 if (t instanceof Error) var n = t; else n = this, Error.call(this, w[e]), this.message = w[e], Error.captureStackTrace && Error.captureStackTrace(this, B); 19985 return n.code = e, t && (this.message = this.message + ": " + t), n 19986 } 19987 19988 function j() { 19989 } 19990 19991 function F(e, t) { 19992 this._node = e, this._refresh = t, I(this) 19993 } 19994 19995 function I(e) { 19996 var t = e._node._inc || e._node.ownerDocument._inc; 19997 if (e._inc != t) { 19998 var n = e._refresh(e._node); 19999 gt(e, "length", n.length), r(n, e), e._inc = t 20000 } 20001 } 20002 20003 function q() { 20004 } 20005 20006 function R(e, t) { 20007 var n = e.length; 20008 while (n--) if (e[n] === t) return n 20009 } 20010 20011 function U(e, t, n, r) { 20012 r ? t[R(t, r)] = n : t[t.length++] = n; 20013 if (e) { 20014 n.ownerElement = e; 20015 var i = e.ownerDocument; 20016 i && (r && Q(i, e, r), K(i, e, n)) 20017 } 20018 } 20019 20020 function z(e, t, n) { 20021 var r = R(t, n); 20022 if (!(r >= 0)) throw new B(L, new Error); 20023 var i = t.length - 1; 20024 while (r < i) t[r] = t[++r]; 20025 t.length = i; 20026 if (e) { 20027 var s = e.ownerDocument; 20028 s && (Q(s, e, n), n.ownerElement = null) 20029 } 20030 } 20031 20032 function W(e) { 20033 this._features = {}; 20034 if (e) for (var t in e) this._features = e[t] 20035 } 20036 20037 function X() { 20038 } 20039 20040 function V(e) { 20041 return e == "<" && "<" || e == ">" && ">" || e == "&" && "&" || e == '"' && """ || "&#" + e.charCodeAt() + ";" 20042 } 20043 20044 function $(e, t) { 20045 if (t(e)) return !0; 20046 if (e = e.firstChild) do if ($(e, t)) return !0; while (e = e.nextSibling) 20047 } 20048 20049 function J() { 20050 } 20051 20052 function K(e, t, n) { 20053 e && e._inc++; 20054 var r = n.namespaceURI; 20055 r == "http://www.w3.org/2000/xmlns/" && (t._nsMap[n.prefix ? n.localName : ""] = n.value) 20056 } 20057 20058 function Q(e, t, n, r) { 20059 e && e._inc++; 20060 var i = n.namespaceURI; 20061 i == "http://www.w3.org/2000/xmlns/" && delete t._nsMap[n.prefix ? n.localName : ""] 20062 } 20063 20064 function G(e, t, n) { 20065 if (e && e._inc) { 20066 e._inc++; 20067 var r = t.childNodes; 20068 if (n) r[r.length++] = n; else { 20069 var i = t.firstChild, s = 0; 20070 while (i) r[s++] = i, i = i.nextSibling; 20071 r.length = s 20072 } 20073 } 20074 } 20075 20076 function Y(e, t) { 20077 var n = t.previousSibling, r = t.nextSibling; 20078 return n ? n.nextSibling = r : e.firstChild = r, r ? r.previousSibling = n : e.lastChild
20078= n, G(e.ownerDocument, e), t 20079 } 20080 20081 function Z(e, t, n) { 20082 var r = t.parentNode; 20083 r && r.removeChild(t); 20084 if (t.nodeType === g) { 20085 var i = t.firstChild; 20086 if (i == null) return t; 20087 var s = t.lastChild 20088 } else i = s = t; 20089 var o = n ? n.previousSibling : e.lastChild; 20090 i.previousSibling = o, s.nextSibling = n, o ? o.nextSibling = i : e.firstChild = i, n == null ? e.lastChild = s : n.previousSibling = s; 20091 do i.parentNode = e; while (i !== s && (i = i.nextSibling)); 20092 return G(e.ownerDocument || e, e), t.nodeType == g && (t.firstChild = t.lastChild = null), t 20093 } 20094 20095 function et(e, t) { 20096 var n = t.parentNode; 20097 if (n) { 20098 var r = e.lastChild; 20099 n.removeChild(t); 20100 var r = e.lastChild 20101 } 20102 var r = e.lastChild; 20103 return t.parentNode = e, t.previousSibling = r, t.nextSibling = null, r ? r.nextSibling = t : e.firstChild = t, e.lastChild = t, G(e.ownerDocument, e, t), t 20104 } 20105 20106 function tt() { 20107 this._nsMap = {} 20108 } 20109 20110 function nt() { 20111 } 20112 20113 function rt() { 20114 } 20115 20116 function it() { 20117 } 20118 20119 function st() { 20120 } 20121 20122 function ot() { 20123 } 20124 20125 function ut() { 20126 } 20127 20128 function at() { 20129 } 20130 20131 function ft() { 20132 } 20133 20134 function lt() { 20135 } 20136 20137 function ct() { 20138 } 20139 20140 function ht() { 20141 } 20142 20143 function pt() { 20144 } 20145 20146 function dt(e, t) { 20147 switch (e.nodeType) { 20148 case u: 20149 var n = e.attributes, r = n.length, i = e.firstChild, o = e.tagName, h = s === e.namespaceURI; 20150 t.push("<", o); 20151 for (var y = 0; y < r; y++) dt(n.item(y), t); 20152 if (i || h && !/^(?:meta|link|img|br|hr|input|button)$/i.test(o)) { 20153 t.push(">"); 20154 if (h && /^script$/i.test(o)) i && t.push(i.data); else while (i) dt(i, t), i = i.nextSibling; 20155 t.push("</", o, ">") 20156 } else t.push("/>"); 20157 return; 20158 case v: 20159 case g: 20160 var i = e.firstChild; 20161 while (i) dt(i, t), i = i.nextSibling; 20162 return; 20163 case a: 20164 return t.push(" ", e.name, '="', e.value.replace(/[<&"]/g, V), '"'); 20165 case f: 20166 return t.push(e.data.replace(/[<&]/g, V)); 20167 case l: 20168 return t.push("<![CDATA[", e.data, "]]>"); 20169 case d: 20170 return t.push("<!--", e.data, "-->"); 20171 case m: 20172 var b = e.publicId, w = e.systemId; 20173 t.push("<!DOCTYPE ", e.name); 20174 if (b) t.push(' PUBLIC "', b), w && w != "." && t.push('" "', w), t.push('">'); else if (w && w != ".") t.push(' SYSTEM "', w, '">'); else { 20175 var E = e.internalSubset; 20176 E && t.push(" [", E, "]"), t.push(">") 20177 } 20178 return; 20179 case p: 20180 return t.push("<?", e.target, " ", e.data, "?>"); 20181 case c: 20182 return t.push("&", e.nodeName, ";"); 20183 default: 20184 t.push("??", e.nodeName) 20185 } 20186 } 20187 20188 function vt(e, t, n) { 20189 var r; 20190 switch (t.nodeType) { 20191 case u: 20192 r = t.cloneNode(!1), r.ownerDocument = e; 20193 case g: 20194 break; 20195 case a: 20196 n = !0 20197 } 20198 r || (r = t.cloneNode(!1)), r.ownerDocument = e, r.parentNode = null; 20199 if (n) { 20200 var i = t.firstChild; 20201 while (i) r.appendChild(vt(e, i, n)), i = i.nextSibling 20202 } 20203 return r 20204 } 20205 20206 function mt(e, t, n) { 20207 var r = new t.constructor; 20208 for (var i in t) { 20209 var s = t[i]; 20210 typeof s != "object" && s != r[i] && (r[i] = s) 20211 } 20212 t.childNodes && (r.childNodes = new j), r.ownerDocument = e; 20213 switch (r.nodeType) { 20214 case u: 20215 var o = t.attributes, f = r.attributes = new q, l = o.length; 20216 f._ownerElement = r; 20217 for (var c = 0; c < l; c++) r.setAttributeNode(mt(e, o.item(c), !0)); 20218 break; 20219 case a: 20220 n = !0 20221 } 20222 if (n) { 20223 var h = t.firstChild; 20224 while (h) r.appendChild(mt(e, h, n)), h = h.nextSibling 20225 } 20226 return r 20227 } 20228 20229 function gt(e, t, n) { 20230 e[t] = n 20231 } 20232 20233 function yt(e) { 20234 switch (e.nodeType) { 20235 case 1: 20236 case 11: 20237 var t = []; 20238 e = e.firstChild; 20239 while (e) e.nodeType !== 7 && e.nodeType !== 8 && t.push(yt(e)), e = e.nextSibling; 20240 return t.join(""); 20241 default:
20242 return e.nodeValue 20243 } 20244 } 20245 20246 var s = "http://www.w3.org/1999/xhtml", o = {}, u = o.ELEMENT_NODE = 1, a = o.ATTRIBUTE_NODE = 2, 20247 f = o.TEXT_NODE = 3, l = o.CDATA_SECTION_NODE = 4, c = o.ENTITY_REFERENCE_NODE = 5, h = o.ENTITY_NODE = 6, 20248 p = o.PROCESSING_INSTRUCTION_NODE = 7, d = o.COMMENT_NODE = 8, v = o.DOCUMENT_NODE = 9, 20249 m = o.DOCUMENT_TYPE_NODE = 10, g = o.DOCUMENT_FRAGMENT_NODE = 11, y = o.NOTATION_NODE = 12, b = {}, w = {}, 20250 E = b.INDEX_SIZE_ERR = (w[1] = "Index size error", 1), 20251 S = b.DOMSTRING_SIZE_ERR = (w[2] = "DOMString size error", 2), 20252 x = b.HIERARCHY_REQUEST_ERR = (w[3] = "Hierarchy request error", 3), 20253 T = b.WRONG_DOCUMENT_ERR = (w[4] = "Wrong document", 4), 20254 N = b.INVALID_CHARACTER_ERR = (w[5] = "Invalid character", 5), 20255 C = b.NO_DATA_ALLOWED_ERR = (w[6] = "No data allowed", 6), 20256 k = b.NO_MODIFICATION_ALLOWED_ERR = (w[7] = "No modification allowed", 7), 20257 L = b.NOT_FOUND_ERR = (w[8] = "Not found", 8), A = b.NOT_SUPPORTED_ERR = (w[9] = "Not supported", 9), 20258 O = b.INUSE_ATTRIBUTE_ERR = (w[10] = "Attribute in use", 10), 20259 M = b.INVALID_STATE_ERR = (w[11] = "Invalid state", 11), _ = b.SYNTAX_ERR = (w[12] = "Syntax error", 12), 20260 D = b.INVALID_MODIFICATION_ERR = (w[13] = "Invalid modification", 13), 20261 P = b.NAMESPACE_ERR = (w[14] = "Invalid namespace", 14), 20262 H = b.INVALID_ACCESS_ERR = (w[15] = "Invalid access", 15); 20263 B.prototype = Error.prototype, r(b, B), j.prototype = { 20264 length: 0, item: function (e) { 20265 return this[e] || null 20266 } 20267 }, F.prototype.item = function (e) { 20268 return I(this), this[e] 20269 }, i(F, j), q.prototype = { 20270 length: 0, item: j.prototype.item, getNamedItem: function (e) { 20271 var t = this.length; 20272 while (t--) { 20273 var n = this[t]; 20274 if (n.nodeName == e) return n 20275 } 20276 }, setNamedItem: function (e) { 20277 var t = e.ownerElement; 20278 if (t && t != this._ownerElement) throw new B(O); 20279 var n = this.getNamedItem(e.nodeName); 20280 return U(this._ownerElement, this, e, n), n 20281 }, setNamedItemNS: function (e) { 20282 var t = e.ownerElement, n; 20283 if (t && t != this._ownerElement) throw new B(O); 20284 return n = this.getNamedItemNS(e.namespaceURI, e.localName), U(this._ownerElement, this, e, n), n 20285 }, removeNamedItem: function (e) { 20286 var t = this.getNamedItem(e); 20287 return z(this._ownerElement, this, t), t 20288 }, removeNamedItemNS: function (e, t) { 20289 var n = this.getNamedItemNS(e, t); 20290 return z(this._ownerElement, this, n), n 20291 }, getNamedItemNS: function (e, t) { 20292 var n = this.length; 20293 while (n--) { 20294 var r = this[n]; 20295 if (r.localName == t && r.namespaceURI == e) return r 20296 } 20297 return null 20298 } 20299 }, W.prototype = { 20300 hasFeature: function (e, t) { 20301 var n = this._features[e.toLowerCase()]; 20302 return n && (!t || t in n) ? !0 : !1 20303 }, createDocument: function (e, t, n) { 20304 var r = new J; 20305 r.implementation = this, r.childNodes = new j, r.doctype = n, n && r.appendChild(n); 20306 if (t) { 20307 var i = r.createElementNS(e, t); 20308 r.appendChild(i) 20309 } 20310 return r 20311 }, createDocumentType: function (e, t, n) { 20312 var r = new ut; 20313 return r.name = e, r.nodeName = e, r.publicId = t, r.systemId = n, r 20314 } 20315 }, X.prototype = { 20316 firstChild: null, 20317 lastChild: null, 20318 previousSibling: null, 20319 nextSibling: null, 20320 attributes: null, 20321 parentNode: null, 20322 childNodes: null, 20323 ownerDocument: null, 20324 nodeValue: null, 20325 namespaceURI: null, 20326 prefix: null, 20327 localName: null, 20328 insertBefore: function (e, t) { 20329 return Z(this, e, t) 20330 }, 20331 replaceChild: function (e, t) { 20332 this.insertBefore(e, t), t && this.removeChild(t) 20333 }, 20334 removeChild: function (e) { 20335 return Y(this, e) 20336 }, 20337 appendChild: function (e) { 20338 return this.insertBefore(e, null) 20339 }, 20340 hasChildNodes: function () { 20341 return this.firstChild != null 20342 }, 20343 cloneNode: function (e) { 20344 return mt(this.ownerDocument || this, this, e) 20345 }, 20346 normalize: function () { 20347 var e = this.firstChild; 20348 while (e) { 20349 var t = e.nextSibling; 20350 t && t.nodeType == f && e.nodeType == f ? (this.removeChild(t), e.appendData(t.data)) : (e.normalize(), e = t) 20351 } 20352 }, 20353 isSupported: function (e, t) { 20354 return this.ownerDocument.implementation.hasFeature(e, t) 20355 }, 20356 hasAttributes: function () { 20357 return this.attributes.length > 0 20358 }, 20359 lookupPrefix: function (e) { 20360 var t = this; 20361 while (t) { 20362 var n = t._nsMap; 20363 if (n) for (var r in n) if (n[r] == e) return r; 20364 t = t.nodeType == 2 ? t.ownerDocument : t.parentNode 20365 } 20366 return null 20367 }, 20368 lookupNamespaceURI: function (e) { 20369 var t = this; 20370 while (t) { 20371 var n = t._nsMap; 20372 if (n && e in n) return n[e]; 20373 t = t.nodeType == 2 ? t.ownerDocument : t.parentNode 20374 } 20375 return null 20376 }, 20377 isDefaultNamespace: function (e) { 20378 var t = this.lookupPrefix(e); 20379 return t == null 20380 } 20381 }, r(o, X), r(o, X.prototype), J.prototype = { 20382 nodeName: "#document", 20383 nodeType: v, 20384 doctype: null, 20385 documentElement: null, 20386 _inc: 1, 20387 insertBefore: function (e, t) { 20388 if (e.nodeType == g) { 20389 var n = e.firstChild; 20390 while (n) { 20391 var r = n.nextSibling; 20392 this.insertBefore(n, t), n = r 20393 } 20394 return e 20395 } 20396 return this.documentElement == null && e.nodeType == 1 && (this.documentElement = e), Z(this, e, t), e.ownerDocument = this, e 20397 }, 20398 removeChild: function (e) { 20399 return this.documentElement == e && (this.documentElement = null), Y(this, e) 20400 }, 20401 importNode: function (e, t) { 20402 return vt(this, e, t) 20403 }, 20404 getElementById: function (e) { 20405 var t = null; 20406 return $(this.documentElement, function (n) { 20407 if (n.nodeType == 1 && n.getAttribute("id") == e) return t = n, !0 20408 }), t 20409 }, 20410 createElement: function (e) { 20411 var t = new tt; 20412 t.ownerDocument = this, t.nodeName = e, t.tagName = e, t.childNodes = new j; 20413 var n = t.attributes = new q; 20414 return n._ownerElement = t, t 20415 }, 20416 createDocumentFragment: function () { 20417 var e = new ct; 20418 return e.ownerDocument = this, e.childNodes = new j, e 20419 }, 20420 createTextNode: function (e) { 20421 var t = new it; 20422 return t.ownerDocument = this, t.appendData(e), t 20423 }, 20424 createComment: function (e) { 20425 var t = new st; 20426 return t.ownerDocument = this, t.appendData(e), t 20427 }, 20428 createCDATASection: function (e) { 20429 var t = new ot; 20430 return t.ownerDocument = this, t.appendData(e), t 20431 }, 20432 createProcessingInstruction: function (e, t) { 20433 var n = new ht; 20434 return n.ownerDocument = this, n.tagName = n.target = e, n.nodeValue = n.data = t, n 20435 }, 20436 createAttribute: function (e) { 20437 var t = new nt; 20438 return t.ownerDocument = this, t.name = e, t.nodeName = e, t.localName = e, t.specified = !0, t 20439 }, 20440 createEntityReference: function (e) { 20441 var t = new lt; 20442 return t.ownerDocument = this, t.nodeName = e, t 20443 }, 20444 createElementNS: function (e, t) { 20445 var n = new tt, r = t.split(":"), i = n.attributes = new q; 20446 return n.childNodes = new j, n.ownerDocument = this, n.nodeName = t, n.tagName = t, n.namespaceURI = e, r.length == 2 ? (n.prefix = r[0], n.localName = r[1]) : n.localName = t, i._ownerElement = n, n 20447 }, 20448 createAttributeNS: function (e, t) { 20449 var n = new nt, r = t.split(":"); 20450 return n.ownerDocument = this, n.nodeName = t, n.name = t, n.namespaceURI = e, n.specified = !0, r.length == 2 ? (n.prefix = r[0], n.localName = r[1]) : n.localName = t, n 20451 } 20452 }, i(J, X), tt.prototype = { 20453 nodeType: u, hasAttribute: function (e) { 20454 return this.getAttributeNode(e) != null 20455 }, getAttribute: function (e) { 20456 var t = this.getAttributeNode(e); 20457 return t && t.value || "" 20458 }, getAttributeNode: function (e) { 20459 return this.attributes.getNamedItem(e) 20460 }, setAttribute: function (e, t) { 20461 var n = this.ownerDocument.createAttribute(e); 20462 n.value = n.nodeValue = "" + t, this.setAttributeNode(n) 20463 }, removeAttribute: function (e) { 20464 var t = this.getAttributeNode(e); 20465 t && this.removeAttributeNode(t) 20466 }, appendChild: function (e) {
20467 return e.nodeType === g ? this.insertBefore(e, null) : et(this, e) 20468 }, setAttributeNode: function (e) { 20469 return this.attributes.setNamedItem(e) 20470 }, setAttributeNodeNS: function (e) { 20471 return this.attributes.setNamedItemNS(e) 20472 }, removeAttributeNode: function (e) { 20473 return this.attributes.removeNamedItem(e.nodeName) 20474 }, removeAttributeNS: function (e, t) { 20475 var n = this.getAttributeNodeNS(e, t); 20476 n && this.removeAttributeNode(n) 20477 }, hasAttributeNS: function (e, t) { 20478 return this.getAttributeNodeNS(e, t) != null 20479 }, getAttributeNS: function (e, t) { 20480 var n = this.getAttributeNodeNS(e, t); 20481 return n && n.value || "" 20482 }, setAttributeNS: function (e, t, n) { 20483 var r = this.ownerDocument.createAttributeNS(e, t); 20484 r.value = r.nodeValue = "" + n, this.setAttributeNode(r) 20485 }, getAttributeNodeNS: function (e, t) { 20486 return this.attributes.getNamedItemNS(e, t) 20487 }, getElementsByTagName: function (e) { 20488 return new F(this, function (t) { 20489 var n = []; 20490 return $(t, function (r) { 20491 r !== t && r.nodeType == u && (e === "*" || r.tagName == e) && n.push(r) 20492 }), n 20493 }) 20494 }, getElementsByTagNameNS: function (e, t) { 20495 return new F(this, function (n) { 20496 var r = []; 20497 return $(n, function (i) { 20498 i !== n && i.nodeType === u && (e === "*" || i.namespaceURI === e) && (t === "*" || i.localName == t) && r.push(i) 20499 }), r 20500 }) 20501 } 20502 }, J.prototype.getElementsByTagName = tt.prototype.getElementsByTagName, J.prototype.getElementsByTagNameNS = tt.prototype.getElementsByTagNameNS, i(tt, X), nt.prototype.nodeType = a, i(nt, X), rt.prototype = { 20503 data: "", 20504 substringData: function (e, t) { 20505 return this.data.substring(e, e + t) 20506 }, 20507 appendData: function (e) { 20508 e = this.data + e, this.nodeValue = this.data = e, this.length = e.length 20509 }, 20510 insertData: function (e, t) { 20511 this.replaceData(e, 0, t) 20512 }, 20513 appendChild: function (e) { 20514 throw new Error(w[3]) 20515 }, 20516 deleteData: function (e, t) { 20517 this.replaceData(e, t, "") 20518 }, 20519 replaceData: function (e, t, n) { 20520 var r = this.data.substring(0, e), i = this.data.substring(e + t); 20521 n = r + n + i, this.nodeValue = this.data = n, this.length = n.length 20522 } 20523 }, i(rt, X), it.prototype = { 20524 nodeName: "#text", nodeType: f, splitText: function (e) { 20525 var t = this.data, n = t.substring(e); 20526 t = t.substring(0, e), this.data = this.nodeValue = t, this.length = t.length; 20527 var r = this.ownerDocument.createTextNode(n); 20528 return this.parentNode && this.parentNode.insertBefore(r, this.nextSibling), r 20529 } 20530 }, i(it, rt), st.prototype = { 20531 nodeName: "#comment", 20532 nodeType: d 20533 }, i(st, rt), ot.prototype = { 20534 nodeName: "#cdata-section", 20535 nodeType: l 20536 }, i(ot, rt), ut.prototype.nodeType = m, i(ut, X), at.prototype.nodeType = y, i(at, X), ft.prototype.nodeType = h, i(ft, X), lt.prototype.nodeType = c, i(lt, X), ct.prototype.nodeName = "#document-fragment", ct.prototype.nodeType = g, i(ct, X), ht.prototype.nodeType = p, i(ht, X), pt.prototype.serializeToString = function (e) { 20537 var t = []; 20538 return dt(e, t), t.join("") 20539 }, X.prototype.toString = function () { 20540 return pt.prototype.serializeToString(this) 20541 }; 20542 try { 20543 Object.defineProperty && (Object.defineProperty(F.prototype, "length", { 20544 get: function () { 20545 return I(this), this.$$length 20546 } 20547 }), Object.defineProperty(X.prototype, "textContent", { 20548 get: function () { 20549 return yt(this) 20550 }, set: function (e) { 20551 switch (this.nodeType) { 20552 case 1: 20553 case 11: 20554 while (this.firstChild) this.removeChild(this.firstChild); 20555 (e || String(e)) && this.appendChild(this.ownerDocument.createTextNode(e)); 20556 break; 20557 default: 20558 this.data = e, this.value = value, this.nodeValue = e 20559 } 20560 } 20561 }), gt = function (e, t, n) { 20562 e["$$" + t] = n 20563 }) 20564 } catch (bt) { 20565 } 20566 return W 20567}), define("ace/mode/xml/dom-parser", [], function (e, t, n) { 20568 "use strict"; 20569 20570 function s(e) { 20571 this.options = e || {locator: {}} 20572 } 20573 20574 function o(e, t, n) { 20575 function s(t) { 20576 var s = e[t]; 20577 if (!s) if (i) s = e.length == 2 ? function (n) { 20578 e(t, n) 20579 } : e; else { 20580 var o = arguments.length; 20581 while (--o) if (s = e[arguments[o]]) break 20582 } 20583 r[t] = s && function (e) { 20584 s(e + f(n), e, n) 20585 } || function () { 20586 } 20587 } 20588 20589 if (!e) { 20590 if (t instanceof u) return t; 20591 e = t 20592 } 20593 var r = {}, i = e instanceof Function; 20594 return n = n || {}, s("warning", "warn"), s("error", "warn", "warning"), s("fatalError", "warn", "warning", "error"), r 20595 } 20596 20597 function u() { 20598 this.cdata = !1 20599 } 20600 20601 function a(e, t) { 20602 t.lineNumber = e.lineNumber, t.columnNumber = e.columnNumber 20603 } 20604 20605 function f(e) { 20606 if (e) return "\n@" + (e.systemId || "") + "#[line:" + e.lineNumber + ",col:" + e.columnNumber + "]" 20607 } 20608 20609 function l(e, t, n) { 20610 return typeof e == "string" ? e.substr(t, n) : e.length >= t + n || t ? new java.lang.String(e, t, n) + "" : e 20611 } 20612 20613 function c(e, t) { 20614 e.currentElement ? e.currentElement.appendChild(t) : e.document.appendChild(t) 20615 } 20616 20617 var r = e("./sax"), i = e("./dom"); 20618 return s.prototype.parseFromString = function (e, t) { 20619 var n = this.options, i = new r, s = n.domBuilder || new u, a = n.errorHandler, f = n.locator, 20620 l = n.xmlns || {}, c = {lt: "<", gt: ">", amp: "&", quot: '"', apos: "'"}; 20621 return f && s.setDocumentLocator(f), i.errorHandler = o(a, s, f), i.domBuilder = n.domBuilder || s, /\/x?html?$/.test(t) && (c.nbsp = "\u00a0", c.copy = "\u00a9", l[""] = "http://www.w3.org/1999/xhtml"), e ? i.parse(e, l, c) : i.errorHandler.error("invalid document source"), s.document 20622 }, u.prototype = { 20623 startDocument: function () { 20624 this.document = (new i).createDocument(null, null, null), this.locator && (this.document.documentURI = this.locator.systemId) 20625 }, startElement: function (e, t, n, r) { 20626 var i = this.document, s = i.createElementNS(e, n || t), o = r.length; 20627 c(this, s), this.currentElement = s, this.locator && a(this.locator, s); 20628 for (var u = 0; u < o; u++) { 20629 var e = r.getURI(u), f = r.getValue(u), n = r.getQName(u), l = i.createAttributeNS(e, n); 20630 l.getOffset && a(l.getOffset(1), l), l.value = l.nodeValue = f, s.setAttributeNode(l) 20631 } 20632 }, endElement: function (e, t, n) { 20633 var r = this.currentElement, i = r.tagName; 20634 this.currentElement = r.parentNode 20635 }, startPrefixMapping: function (e, t) { 20636 }, endPrefixMapping: function (e) { 20637 }, processingInstruction: function (e, t) { 20638 var n = this.document.createProcessingInstruction(e, t); 20639 this.locator && a(this.locator, n), c(this, n) 20640 }, ignorableWhitespace: function (e, t, n) { 20641 }, characters: function (e, t, n) { 20642 e = l.apply(this, arguments); 20643 if (this.currentElement && e) { 20644 if (this.cdata) { 20645 var r = this.document.createCDATASection(e); 20646 this.currentElement.appendChild(r) 20647 } else { 20648 var r = this.document.createTextNode(e); 20649 this.currentElement.appendChild(r) 20650 } 20651 this.locator && a(this.locator, r) 20652 } 20653 }, skippedEntity: function (e) { 20654 }, endDocument: function () { 20655 this.document.normalize() 20656 }, setDocumentLocator: function (e) { 20657 if (this.locator = e) e.lineNumber = 0 20658 }, comment: function (e, t, n) { 20659 e = l.apply(this, arguments); 20660 var r = this.document.createComment(e); 20661 this.locator && a(this.locator, r), c(this, r) 20662 }, startCDATA: function () { 20663 this.cdata = !0 20664 }, endCDATA: function () { 20665 this.cdata = !1 20666 }, startDTD: function (e, t, n) { 20667 var r = this.document.implementation; 20668 if (r && r.createDocumentType) { 20669 var i = r.createDocumentType(e, t, n); 20670 this.locator && a(this.locator, i), c(this, i) 20671 } 20672 }, warning: function (e) { 20673 console.warn(e, f(this.locator)) 20674 }, error: function (e) { 20675 console.error(e, f(this.locator)) 20676 }, fatalError: function (e) { 20677 throw console.error(e, f(this.locator)), e 20678 } 20679 }, "endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g, function (e) { 20680 u.prototype[e] = function () { 20681 return null 20682 } 20683 }), {DOMParser: s} 20684}), define("ace/mode/xml_worker", [], function (e, t, n) { 20685 "use strict"; 20686 var r = e("../lib/oop"), i = e("../lib/lang"), s = e("../wor
20686ker/mirror").Mirror, 20687 o = e("./xml/dom-parser").DOMParser, u = t.Worker = function (e) { 20688 s.call(this, e), this.setTimeout(400), this.context = null 20689 }; 20690 r.inherits(u, s), function () { 20691 this.setOptions = function (e) { 20692 this.context = e.context 20693 }, this.onUpdate = function () { 20694 var e = this.doc.getValue(); 20695 if (!e) return; 20696 var t = new o, n = []; 20697 t.options.errorHandler = { 20698 fatalError: function (e, t, r) { 20699 n.push({row: r.lineNumber, column: r.columnNumber, text: t, type: "error"}) 20700 }, error: function (e, t, r) { 20701 n.push({row: r.lineNumber, column: r.columnNumber, text: t, type: "error"}) 20702 }, warning: function (e, t, r) { 20703 n.push({row: r.lineNumber, column: r.columnNumber, text: t, type: "warning"}) 20704 } 20705 }, t.parseFromString(e), this.sender.emit("error", n) 20706 } 20707 }.call(u.prototype) 20708}), define("ace/lib/es5-shim", [], function (e, t, n) { 20709 function r() { 20710 } 20711 20712 function w(e) { 20713 try { 20714 return Object.defineProperty(e, "sentinel", {}), "sentinel" in e 20715 } catch (t) { 20716 } 20717 } 20718 20719 function H(e) { 20720 return e = +e, e !== e ? e = 0 : e !== 0 && e !== 1 / 0 && e !== -1 / 0 && (e = (e > 0 || -1) * Math.floor(Math.abs(e))), e 20721 } 20722 20723 function B(e) { 20724 var t = typeof e; 20725 return e === null || t === "undefined" || t === "boolean" || t === "number" || t === "string" 20726 } 20727 20728 function j(e) { 20729 var t, n, r; 20730 if (B(e)) return e; 20731 n = e.valueOf; 20732 if (typeof n == "function") { 20733 t = n.call(e); 20734 if (B(t)) return t 20735 } 20736 r = e.toString; 20737 if (typeof r == "function") { 20738 t = r.call(e); 20739 if (B(t)) return t 20740 } 20741 throw new TypeError 20742 } 20743 20744 Function.prototype.bind || (Function.prototype.bind = function (t) { 20745 var n = this; 20746 if (typeof n != "function") throw new TypeError("Function.prototype.bind called on incompatible " + n); 20747 var i = u.call(arguments, 1), s = function () { 20748 if (this instanceof s) { 20749 var e = n.apply(this, i.concat(u.call(arguments))); 20750 return Object(e) === e ? e : this 20751 } 20752 return n.apply(t, i.concat(u.call(arguments))) 20753 }; 20754 return n.prototype && (r.prototype = n.prototype, s.prototype = new r, r.prototype = null), s 20755 }); 20756 var i = Function.prototype.call, s = Array.prototype, o = Object.prototype, u = s.slice, a = i.bind(o.toString), 20757 f = i.bind(o.hasOwnProperty), l, c, h, p, d; 20758 if (d = f(o, "__defineGetter__")) l = i.bind(o.__defineGetter__), c = i.bind(o.__defineSetter__), h = i.bind(o.__lookupGetter__), p = i.bind(o.__lookupSetter__); 20759 if ([1, 2].splice(0).length != 2) if (!function () { 20760 function e(e) { 20761 var t = new Array(e + 2); 20762 return t[0] = t[1] = 0, t 20763 } 20764 20765 var t = [], n; 20766 t.splice.apply(t, e(20)), t.splice.apply(t, e(26)), n = t.length, t.splice(5, 0, "XXX"), n + 1 == t.length; 20767 if (n + 1 == t.length) return !0 20768 }()) Array.prototype.splice = function (e, t) { 20769 var n = this.length; 20770 e > 0 ? e > n && (e = n) : e == void 0 ? e = 0 : e < 0 && (e = Math.max(n + e, 0)), e + t < n || (t = n - e); 20771 var r = this.slice(e, e + t), i = u.call(arguments, 2), s = i.length; 20772 if (e === n) s && this.push.apply(this, i); else { 20773 var o = Math.min(t, n - e), a = e + o, f = a + s - o, l = n - a, c = n - o; 20774 if (f < a) for (var h = 0; h < l; ++h) this[f + h] = this[a + h]; else if (f > a) for (h = l; h--;) this[f + h] = this[a + h]; 20775 if (s && e === c) this.length = c, this.push.apply(this, i); else { 20776 this.length = c + s; 20777 for (h = 0; h < s; ++h) this[e + h] = i[h] 20778 } 20779 } 20780 return r 20781 }; else { 20782 var v = Array.prototype.splice; 20783 Array.prototype.splice = function (e, t) { 20784 return arguments.length ? v.apply(this, [e === void 0 ? 0 : e, t === void 0 ? this.length - e : t].concat(u.call(arguments, 2))) : [] 20785 } 20786 } 20787 Array.isArray || (Array.isArray = function (t) { 20788 return a(t) == "[object Array]" 20789 }); 20790 var m = Object("a"), g = m[0] != "a" || !(0 in m); 20791 Array.prototype.forEach || (Array.prototype.forEach = function (t) { 20792 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = arguments[1], s = -1, 20793 o = r.length >>> 0; 20794 if (a(t) != "[object Function]") throw new TypeError; 20795 while (++s < o) s in r && t.call(i, r[s], s, n) 20796 }), Array.prototype.map || (Array.prototype.map = function (t) { 20797 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = Array(i), 20798 o = arguments[1]; 20799 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 20800 for (var u = 0; u < i; u++) u in r && (s[u] = t.call(o, r[u], u, n)); 20801 return s 20802 }), Array.prototype.filter || (Array.prototype.filter = function (t) { 20803 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, s = [], o, 20804 u = arguments[1]; 20805 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 20806 for (var f = 0; f < i; f++) f in r && (o = r[f], t.call(u, o, f, n) && s.push(o)); 20807 return s 20808 }), Array.prototype.every || (Array.prototype.every = function (t) { 20809 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 20810 s = arguments[1]; 20811 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 20812 for (var o = 0; o < i; o++) if (o in r && !t.call(s, r[o], o, n)) return !1; 20813 return !0 20814 }), Array.prototype.some || (Array.prototype.some = function (t) { 20815 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0, 20816 s = arguments[1]; 20817 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 20818 for (var o = 0; o < i; o++) if (o in r && t.call(s, r[o], o, n)) return !0; 20819 return !1 20820 }), Array.prototype.reduce || (Array.prototype.reduce = function (t) { 20821 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 20822 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 20823 if (!i && arguments.length == 1) throw new TypeError("reduce of empty array with
20823no initial value"); 20824 var s = 0, o; 20825 if (arguments.length >= 2) o = arguments[1]; else do { 20826 if (s in r) { 20827 o = r[s++]; 20828 break 20829 } 20830 if (++s >= i) throw new TypeError("reduce of empty array with no initial value") 20831 } while (!0); 20832 for (; s < i; s++) s in r && (o = t.call(void 0, o, r[s], s, n)); 20833 return o 20834 }), Array.prototype.reduceRight || (Array.prototype.reduceRight = function (t) { 20835 var n = F(this), r = g && a(this) == "[object String]" ? this.split("") : n, i = r.length >>> 0; 20836 if (a(t) != "[object Function]") throw new TypeError(t + " is not a function"); 20837 if (!i && arguments.length == 1) throw new TypeError("reduceRight of empty array with no initial value"); 20838 var s, o = i - 1; 20839 if (arguments.length >= 2) s = arguments[1]; else do { 20840 if (o in r) { 20841 s = r[o--]; 20842 break 20843 } 20844 if (--o < 0) throw new TypeError("reduceRight of empty array with no initial value") 20845 } while (!0); 20846 do o in this && (s = t.call(void 0, s, r[o], o, n)); while (o--); 20847 return s 20848 }); 20849 if (!Array.prototype.indexOf || [0, 1].indexOf(1, 2) != -1) Array.prototype.indexOf = function (t) { 20850 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 20851 if (!r) return -1; 20852 var i = 0; 20853 arguments.length > 1 && (i = H(arguments[1])), i = i >= 0 ? i : Math.max(0, r + i); 20854 for (; i < r; i++) if (i in n && n[i] === t) return i; 20855 return -1 20856 }; 20857 if (!Array.prototype.lastIndexOf || [0, 1].lastIndexOf(0, -3) != -1) Array.prototype.lastIndexOf = function (t) { 20858 var n = g && a(this) == "[object String]" ? this.split("") : F(this), r = n.length >>> 0; 20859 if (!r) return -1; 20860 var i = r - 1; 20861 arguments.length > 1 && (i = Math.min(i, H(arguments[1]))), i = i >= 0 ? i : r - Math.abs(i); 20862 for (; i >= 0; i--) if (i in n && t === n[i]) return i; 20863 return -1 20864 }; 20865 Object.getPrototypeOf || (Object.getPrototypeOf = function (t) { 20866 return t.__proto__ || (t.constructor ? t.constructor.prototype : o) 20867 }); 20868 if (!Object.getOwnPropertyDescriptor) { 20869 var y = "Object.getOwnPropertyDescriptor called on a non-object: "; 20870 Object.getOwnPropertyDescriptor = function (t, n) { 20871 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(y + t); 20872 if (!f(t, n)) return; 20873 var r, i, s; 20874 r = {enumerable: !0, configurable: !0}; 20875 if (d) { 20876 var u = t.__proto__; 20877 t.__proto__ = o; 20878 var i = h(t, n), s = p(t, n); 20879 t.__proto__ = u; 20880 if (i || s) return i && (r.get = i), s && (r.set = s), r 20881 } 20882 return r.value = t[n], r 20883 } 20884 } 20885 Object.getOwnPropertyNames || (Object.getOwnPropertyNames = function (t) { 20886 return Object.keys(t) 20887 }); 20888 if (!Object.create) { 20889 var b; 20890 Object.prototype.__proto__ === null ? b = function () { 20891 return {__proto__: null} 20892 } : b = function () { 20893 var e = {}; 20894 for (var t in e) e[t] = null; 20895 return e.constructor = e.hasOwnProperty = e.propertyIsEnumerable = e.isPrototypeOf = e.toLocaleString = e.toString = e.valueOf = e.__proto__ = null, e 20896 }, Object.create = function (t, n) { 20897 var r; 20898 if (t === null) r = b(); else { 20899 if (typeof t != "object") throw new TypeError("typeof prototype[" + typeof t + "] != 'object'"); 20900 var i = function () { 20901 }; 20902 i.prototype = t, r = new i, r.__proto__ = t 20903 } 20904 return n !== void 0 && Object.defineProperties(r, n), r 20905 } 20906 } 20907 if (Object.defineProperty) { 20908 var E = w({}), S = typeof document == "undefined" || w(document.createElement("div")); 20909 if (!E || !S) var x = Object.defineProperty 20910 } 20911 if (!Object.defineProperty || x) { 20912 var T = "Property description must be an object: ", N = "Object.defineProperty called on non-object: ", 20913 C = "getters & setters can not be defined on this javascript engine"; 20914 Object.defineProperty = function (t, n, r) { 20915 if (typeof t != "object" && typeof t != "function" || t === null) throw new TypeError(N + t); 20916 if (typeof r != "object" && typeof r != "function" || r === null) throw new TypeError(T + r); 20917 if (x) try { 20918 return x.call(Object, t, n, r) 20919 } catch (i) { 20920 } 20921 if (f(r, "value")) if (d && (h(t, n) || p(t, n))) { 20922 var s = t.__proto__; 20923 t.__proto__ = o, delete t[n], t[n] = r.value, t.__proto__ = s 20924 } else t[n] = r.value; else { 20925 if (!d) throw new TypeError(C); 20926 f(r, "get") && l(t, n, r.get), f(r, "set") && c(t, n, r.set) 20927 } 20928 return t 20929 } 20930 } 20931 Object.defineProperties || (Object.defineProperties = function (t, n) { 20932 for (var r in n) f(n, r) && Object.defineProperty(t, r, n[r]); 20933 return t 20934 }), Object.seal || (Object.seal = function (t) { 20935 return t 20936 }), Object.freeze || (Object.freeze = function (t) { 20937 return t 20938 }); 20939 try { 20940 Object.freeze(function () { 20941 }) 20942 } catch (k) { 20943 Object.freeze = function (t) { 20944 return function (n) { 20945 return typeof n == "function" ? n : t(n) 20946 } 20947 }(Object.freeze) 20948 } 20949 Object.preventExtensions || (Object.preventExtensions = function (t) { 20950 return t 20951 }), Object.isSealed || (Object.isSealed = function (t) { 20952 return !1 20953 }), Object.isFrozen || (Object.isFrozen = function (t) { 20954 return !1 20955 }), Object.isExtensible || (Object.isExtensible = function (t) { 20956 if (Object(t) === t) throw new TypeError; 20957 var n = ""; 20958 while (f(t, n)) n += "?"; 20959 t[n] = !0; 20960 var r = f(t, n); 20961 return delete t[n], r 20962 }); 20963 if (!Object.keys) { 20964 var L = !0,
20965 A = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], 20966 O = A.length; 20967 for (var M in {toString: null}) L = !1; 20968 Object.keys = function I(e) { 20969 if (typeof e != "object" && typeof e != "function" || e === null) throw new TypeError("Object.keys called on a non-object"); 20970 var I = []; 20971 for (var t in e) f(e, t) && I.push(t); 20972 if (L) for (var n = 0, r = O; n < r; n++) { 20973 var i = A[n]; 20974 f(e, i) && I.push(i) 20975 } 20976 return I 20977 } 20978 } 20979 Date.now || (Date.now = function () { 20980 return (new Date).getTime() 20981 }); 20982 var _ = " \n\x0b\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"; 20983 if (!String.prototype.trim || _.trim()) { 20984 _ = "[" + _ + "]"; 20985 var D = new RegExp("^" + _ + _ + "*"), P = new RegExp(_ + _ + "*$"); 20986 String.prototype.trim = function () { 20987 return String(this).replace(D, "").replace(P, "") 20988 } 20989 } 20990 var F = function (e) { 20991 if (e == null) throw new TypeError("can't convert " + e + " to object"); 20992 return Object(e) 20993 } 20994}) 20995 20996define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=t.supportType="align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-justify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index",u=t.supportFunction="rgb|rgba|url|attr|counter|counters",a=t.supportConstant="absolute|after-edge|after|all-scroll|all|alph
20996abetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom",f=t.supportConstantColor="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen",l=t.supportConstantFonts="arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",c=t.numRe="\\-?(?:(?:[0-9]+(?:\\.[0-9]+)?)|(?:\\.[0-9]+))",h=t.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",p=t.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",d=function(){var e=this.createKeywordMapper({"supp
20996ort.function":u,"support.constant":a,"support.type":o,"support.constant.color":f,"support.constant.fonts":l},"text",!0);this.$rules={start:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"ruleset"},{token:"paren.rparen",regex:"\\}"},{token:"string",regex:"@(?!viewport)",next:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"keyword",regex:"%"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant.numeric",regex:c},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"start"},{token:"paren.rparen",regex:"\\}",next:"start"},{token:"string",regex:";",next:"start"},{token:"keyword",regex:"(?:media|supports|document|charset|import|namespace|media|supports|document|page|font|keyframes|viewport|counter-style|font-feature-values|swash|ornaments|annotation|stylistic|styleset|character-variant)"}],comments:[{token:"comment",regex:"\\/\\*",push:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}]}],ruleset:[{regex:"-(webkit|ms|moz|o)-",token:"text"},{token:"punctuation.operator",regex:"[:;]"},{token:"paren.rparen",regex:"\\}",next:"start"},{include:["strings","url","comments"]},{token:["constant.numeric","keyword"],regex:"("+c+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:c},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:h},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:p},{include:"url"},{token:e,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{caseInsensitive:!0}],url:[{token:"support.function",regex:"(?:url(:?-prefix)?|domain|regexp)\\(",push:[{token:"support.function",regex:"\\)",next:"pop"},{defaultToken:"string"}]}],strings:[{token:"string.start",regex:"'",push:[{token:"string.end",regex:"'|$",next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]},{token:"string.start",regex:'"',push:[{token:"string.end",regex:'"|$',next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]}],escapes:[{token:"constant.language.escape",regex:/\\([a-fA-F\d]{1,6}|[^a-fA-F\d])/}]},this.normalizeRules()};r.inherits(d,s),t.CssHighlightRules=d}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/css_completions",["require","exports","module"],function(e,t,n){"use strict";var r={background:{"#$0":1},"background-color":{"#$0":1,transparent:1,fixed:1},"background-image":{"url('/$0')":1},"background-repeat":{repeat:1,"repeat-x":1,"repeat-y":1,"no-repeat":1,inherit:1},"background-position":{bottom:2,center:2,left:2,right:2,top:2,inherit:2},"background-attachment":{scroll:1,fixed:1},"background-size":{cover:1,contain:1},"background-clip":{"border-box":1,"padding-box":1,"content-box":1},"background-origin":{"border-box":1,"padding-box":1,"content-box":1},border:{"solid $0":1,"dashed $0":1,"dotted $0":1,"#$0":1},"border-color":{"#$0":1},"border-style":{solid:2,dashed:2,dotted:2,"double":2,groove:2,hidden:2,inherit:2,inset:2,none:2,outset:2,ridged:2},"border-collapse":{collapse:1,separate:1},bottom:{px:1,em:1,"%":1},clear:{left:1,right:1,both:1,none:1},color:{"#$0":1,"rgb(#$00,0,0)":1},cursor:{"default":1,pointer:1,move:1,text:1,wait:1,help:1,progress:1,"n-resize":1,"ne-resize":1,"e-resize":1,"se-resize":1,"s-resize":1,"sw-resize":1,"w-resize":1,"nw-resize":1},display:{none:1,block:1,inline:1,"inline-block":1,"table-cell":1},"empty-cells":{show:1,hide:1},"float":{left:1,right:1,none:1},"font-family":{Arial:2,"Comic Sans MS":2,Consolas:2,"Courier New":2,Courier:2,Georgia:2,Monospace:2,"Sans-Serif":2,"Segoe UI":2,Tahoma:2,"Times New Roman":2,"Trebuchet MS":2,Verdana:1},"font-size":{px:1,em:1,"%":1},"font-weight":{bold:1,normal:1},"font-style":{italic:1,normal:1},"font-variant":{normal:1,"small-caps":1},height:{px:1,em:1,"%":1},left:{px:1,em:1,"%":1},"letter-spacing":{normal:1},"line-height":{normal:1}
20996,"list-style-type":{none:1,disc:1,circle:1,square:1,decimal:1,"decimal-leading-zero":1,"lower-roman":1,"upper-roman":1,"lower-greek":1,"lower-latin":1,"upper-latin":1,georgian:1,"lower-alpha":1,"upper-alpha":1},margin:{px:1,em:1,"%":1},"margin-right":{px:1,em:1,"%":1},"margin-left":{px:1,em:1,"%":1},"margin-top":{px:1,em:1,"%":1},"margin-bottom":{px:1,em:1,"%":1},"max-height":{px:1,em:1,"%":1},"max-width":{px:1,em:1,"%":1},"min-height":{px:1,em:1,"%":1},"min-width":{px:1,em:1,"%":1},overflow:{hidden:1,visible:1,auto:1,scroll:1},"overflow-x":{hidden:1,visible:1,auto:1,scroll:1},"overflow-y":{hidden:1,visible:1,auto:1,scroll:1},padding:{px:1,em:1,"%":1},"padding-top":{px:1,em:1,"%":1},"padding-right":{px:1,em:1,"%":1},"padding-bottom":{px:1,em:1,"%":1},"padding-left":{px:1,em:1,"%":1},"page-break-after":{auto:1,always:1,avoid:1,left:1,right:1},"page-break-before":{auto:1,always:1,avoid:1,left:1,right:1},position:{absolute:1,relative:1,fixed:1,"static":1},right:{px:1,em:1,"%":1},"table-layout":{fixed:1,auto:1},"text-decoration":{none:1,underline:1,"line-through":1,blink:1},"text-align":{left:1,right:1,center:1,justify:1},"text-transform":{capitalize:1,uppercase:1,lowercase:1,none:1},top:{px:1,em:1,"%":1},"vertical-align":{top:1,bottom:1},visibility:{hidden:1,visible:1},"white-space":{nowrap:1,normal:1,pre:1,"pre-line":1,"pre-wrap":1},width:{px:1,em:1,"%":1},"word-spacing":{normal:1},filter:{"alpha(opacity=$0100)":1},"text-shadow":{"$02px 2px 2px #777":1},"text-overflow":{"ellipsis-word":1,clip:1,ellipsis:1},"-moz-border-radius":1,"-moz-border-radius-topright":1,"-moz-border-radius-bottomright":1,"-moz-border-radius-topleft":1,"-moz-border-radius-bottomleft":1,"-webkit-border-radius":1,"-webkit-border-top-right-radius":1,"-webkit-border-top-left-radius":1,"-webkit-border-bottom-right-radius":1,"-webkit-border-bottom-left-radius":1,"-moz-box-shadow":1,"-webkit-box-shadow":1,transform:{"rotate($00deg)":1,"skew($00deg)":1},"-moz-transform":{"rotate($00deg)":1,"skew($00deg)":1},"-webkit-transform":{"rotate($00deg)":1,"skew($00deg)":1}},i=function(){};(function(){this.completionsDefined=!1,this.defineCompletions=function(){if(document){var e=document.createElement("c").style;for(var t in e){if(typeof e[t]!="string")continue;var n=t.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()});r.hasOwnProperty(n)||(r[n]=1)}}this.completionsDefined=!0},this.getCompletions=function(e,t,n,r){this.completionsDefined||this.defineCompletions();var i=t.getTokenAt(n.row,n.column);if(!i)return[];if(e==="ruleset"){var s=t.getLine(n.row).substr(0,n.column);return/:[^;]+$/.test(s)?(/([\w\-]+):[^:]*$/.test(s),this.getPropertyValueCompletions(e,t,n,r)):this.getPropertyCompletions(e,t,n,r)}return[]},this.getPropertyCompletions=function(e,t,n,i){var s=Object.keys(r);return s.map(function(e){return{caption:e,snippet:e+": $0;",meta:"property",score:1e6}})},this.getPropertyValueCompletions=function(e,t,n,i){var s=t.getLine(n.row).substr(0,n.column),o=(/([\w\-]+):[^:]*$/.exec(s)||{})[1];if(!o)return[];var u=[];return o in r&&typeof r[o]=="object"&&(u=Object.keys(r[o])),u.map(function(e){return{caption:e,snippet:e,meta:"property value",score:1e6}})}}).call(i.prototype),t.CssCompletions=i}),define("ace/mode/behaviour/css",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/mode/behaviour/cstyle","ace/token_iterator"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("./cstyle").CstyleBehaviour,o=e("../../token_iterator").TokenIterator,u=function(){this.inherit(s),this.add("colon","insertion",function(e,t,n,r,i){if(i===":"&&n.selection.isEmpty()){var s=n.getCursorPosition(),u=new o(r,s.row,s.column),a=u.getCurrentToken();a&&a.value.match(/\s+/)&&(a=u.stepBackward());if(a&&a.type==="support.type"){var f=r.doc.getLine(s.row),l=f.substring(s.column,s.column+1);if(l===":")return{text:"",selection:[1,1]};if(/^(\s+[^;]|\s*$)/.test(f.substring(s.column)))return{text:":;",selection:[1,1]}}}}),this.add("colon","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s===":"){var u=n.getCursorPosition(),a=new o(r,u.row,u.column),f=a.getCurrentToken();f&&f.value.match(/\s+/)&&(f=a.stepBackward());if(f&&f.type==="support.type"){var l=r.doc.getLine(i.start.row),c=l.substring(i.end.column,i.end.column+1);if(c===";")return i.end.column++,i}}}),this.add("semicolon","insertion",function(e,t,n,r,i){if(i===";"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row),u=o.substring(s.column,s.column+1);if(u===";")return{text:"",selection:[1,1]}}}),this.add("!important","insertion",function(e,t,n,r,i){if(i==="!"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row);if(/^\s*(;|}|$)/.test(o.substring(s.column)))return{text:"!important",selection:[10,10]}}})};r.inherits(u,s),t.CssBehaviour=u}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
20996,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/css",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/css_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/css_completions","ace/mode/behaviour/css","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./css_highlight_rules").CssHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./css_completions").CssCompletions,f=e("./behaviour/css").CssBehaviour,l=e("./folding/cstyle").FoldMode,c=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new f,this.$completer=new a,this.foldingRules=new l};r.inherits(c,i),function(){this.foldingRules="cStyle",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e).tokens;if(i.length&&i[i.length-1].type=="comment")return r;var s=t.match(/^.*\{\s*$/);return s&&(r+=n),r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.getCompletions=function(e,t,n,r){return this.$completer.getCompletions(e,t,n,r)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/css_worker","Worker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/css"}.call(c.prototype),t.Mode=c}); (function() { 20997 window.require(["ace/mode/css"], function(m) { 20998 if (typeof module == "object" && typeof exports == "object" && module) { 20999 module.exports = m; 21000 } 21001 }); 21002 })(); 21003 21004 21005define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"comment.doc.tag",regex:"@[\\w\\d_]+"},s.getTagRule(),{defaultToken:"comment.doc",caseInsensitive:!0}]}};r.inherits(s,i),s.getTagRule=function(e){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},s.getStartRule=function(e){return{token:"comment.doc",regex:"\\/\\*(?=\\*)",next:e}},s.getEndRule=function(e){return{token:"comment.doc",regex:"\\*\\/",next:e}},t.DocCommentHighlightRules=s}),define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";function a(){var e=o.replace("\\d","\\d\\-"),t={onMatch:function(e,t,n){var r=e.charAt(1)=="/"?2:1;if(r==1)t!=this.nextState?n.unshift(this.next,this.nextState,0):n.unshift(this.next),n[2]++;else if(r==2&&t==this.nextState){n[1]--;if(!n[1]||n[1]<0)n.shift(),n.shift()}return[{type:"meta.tag.punctuation."+(r==1?"":"end-")+"tag-open.xml",value:e.slice(0,r)},{type:"meta.tag.tag-name.xml",value:e.substr(r)}]},regex:"</?"+e+"",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(t);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,t,{include:"reference"},{defaultToken:"string"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(e,t,n){return t==n[0]&&n.shift(),e.length==2&&(n[0]==this.nextState&&n[1]--,(!n[1]||n[1]<0)&&n.splice(0,2)),this.next=n[0]||"start",[{type:this.token,value:e}]},nextState:"jsx"},n,f("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:e},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]}
21005,t],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function f(e){return[{token:"comment",regex:/\/\*/,next:[i.getTagRule(),{token:"comment",regex:"\\*\\/",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[i.getTagRule(),{token:"comment",regex:"$|^",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var r=e("../lib/oop"),i=e("./doc_comment_highlight_rules").DocCommentHighlightRules,s=e("./text_highlight_rules").TextHighlightRules,o="[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*",u=function(e){var t=this.createKeywordMapper({"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|function|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},"identifier"),n="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",r="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)";this.$rules={no_regex:[i.getStartRule("doc-start"),f("no_regex"),{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["storage.type","punctuation.operator","support.function","punctuation.operator","entity.name.function","text","keyword.operator"],regex:"("+o+")(\\.)(prototype)(\\.)("+o+")(\\s*)(=)",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s+)(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","entity.name.function","text","paren.lparen"],regex:"(function)(\\s+)("+o+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:"from(?=\\s*('|\"))"},{token:"keyword",regex:"(?:"+n+")\\b",next:"start"},{token:["support.constant"],regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/},{token:t,regex:o},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~\/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/}
21005,{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:o},{regex:"",token:"empty",next:"no_regex"}],start:[i.getStartRule("doc-start"),f("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/}
21005,{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],function_arguments:[{token:"variable.parameter",regex:o},{token:"punctuation.operator",regex:"[, ]+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]};if(!e||!e.noES6)this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(e,t,n){this.next=e=="{"?this.nextState:"";if(e=="{"&&n.length)n.unshift("start",t);else if(e=="}"&&n.length){n.shift(),this.next=n.shift();if(this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1)return"paren.quasi.end"}return e=="{"?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:r},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]}),(!e||e.jsx!=0)&&a.call(this);this.embedRules(i,"doc-",[i.getEndRule("no_regex")]),this.normalizeRules()};r.inherits(u,s),t.JavaScriptHighlightRules=u}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
21005,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./javascript_highlight_rules").JavaScriptHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./behaviour/cstyle").CstyleBehaviour,f=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new a,this.foldingRules=new f};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e),s=i.tokens,o=i.state;if(s.length&&s[s.length-1].type=="comment")return r;if(e=="start"||e=="no_regex"){var u=t.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);u&&(r+=n)}else if(e=="doc-start"){if(o=="start"||o=="no_regex")return"";var u=t.match(/^\s*(\/?)\*/);u&&(u[1]&&(r+=" "),r+="* ")}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/javascript"}.call(l.prototype),t.Mode=l}),define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=t.supportType="align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-ju
21005stify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index",u=t.supportFunction="rgb|rgba|url|attr|counter|counters",a=t.supportConstant="absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom",f=t.supportConstantColor="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen",l=t.supportConstantFonts="arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",c=t.numRe="\\-?(?:(?:[0-9]+(?:\\.[0-9]+)?)|(?:\\.[0-9]+))",h=t.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",p=t.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",d=function(){var e=this.createKeywordMapper({"supp
21005ort.function":u,"support.constant":a,"support.type":o,"support.constant.color":f,"support.constant.fonts":l},"text",!0);this.$rules={start:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"ruleset"},{token:"paren.rparen",regex:"\\}"},{token:"string",regex:"@(?!viewport)",next:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"keyword",regex:"%"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant.numeric",regex:c},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"start"},{token:"paren.rparen",regex:"\\}",next:"start"},{token:"string",regex:";",next:"start"},{token:"keyword",regex:"(?:media|supports|document|charset|import|namespace|media|supports|document|page|font|keyframes|viewport|counter-style|font-feature-values|swash|ornaments|annotation|stylistic|styleset|character-variant)"}],comments:[{token:"comment",regex:"\\/\\*",push:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}]}],ruleset:[{regex:"-(webkit|ms|moz|o)-",token:"text"},{token:"punctuation.operator",regex:"[:;]"},{token:"paren.rparen",regex:"\\}",next:"start"},{include:["strings","url","comments"]},{token:["constant.numeric","keyword"],regex:"("+c+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:c},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:h},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:p},{include:"url"},{token:e,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{caseInsensitive:!0}],url:[{token:"support.function",regex:"(?:url(:?-prefix)?|domain|regexp)\\(",push:[{token:"support.function",regex:"\\)",next:"pop"},{defaultToken:"string"}]}],strings:[{token:"string.start",regex:"'",push:[{token:"string.end",regex:"'|$",next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]},{token:"string.start",regex:'"',push:[{token:"string.end",regex:'"|$',next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]}],escapes:[{token:"constant.language.escape",regex:/\\([a-fA-F\d]{1,6}|[^a-fA-F\d])/}]},this.normalizeRules()};r.inherits(d,s),t.CssHighlightRules=d}),define("ace/mode/css_completions",["require","exports","module"],function(e,t,n){"use strict";var r={background:{"#$0":1},"background-color":{"#$0":1,transparent:1,fixed:1},"background-image":{"url('/$0')":1},"background-repeat":{repeat:1,"repeat-x":1,"repeat-y":1,"no-repeat":1,inherit:1},"background-position":{bottom:2,center:2,left:2,right:2,top:2,inherit:2},"background-attachment":{scroll:1,fixed:1},"background-size":{cover:1,contain:1},"background-clip":{"border-box":1,"padding-box":1,"content-box":1},"background-origin":{"border-box":1,"padding-box":1,"content-box":1},border:{"solid $0":1,"dashed $0":1,"dotted $0":1,"#$0":1},"border-color":{"#$0":1},"border-style":{solid:2,dashed:2,dotted:2,"double":2,groove:2,hidden:2,inherit:2,inset:2,none:2,outset:2,ridged:2},"border-collapse":{collapse:1,separate:1},bottom:{px:1,em:1,"%":1},clear:{left:1,right:1,both:1,none:1},color:{"#$0":1,"rgb(#$00,0,0)":1},cursor:{"default":1,pointer:1,move:1,text:1,wait:1,help:1,progress:1,"n-resize":1,"ne-resize":1,"e-resize":1,"se-resize":1,"s-resize":1,"sw-resize":1,"w-resize":1,"nw-resize":1},display:{none:1,block:1,inline:1,"inline-block":1,"table-cell":1},"empty-cells":{show:1,hide:1},"float":{left:1,right:1,none:1},"font-family":{Arial:2,"Comic Sans MS":2,Consolas:2,"Courier New":2,Courier:2,Georgia:2,Monospace:2,"Sans-Serif":2,"Segoe UI":2,Tahoma:2,"Times New Roman":2,"Trebuchet MS":2,Verdana:1},"font-size":{px:1,em:1,"%":1},"font-weight":{bold:1,normal:1},"font-style":{italic:1,normal:1},"font-variant":{normal:1,"small-caps":1},height:{px:1,em:1,"%":1},left:{px:1,em:1,"%":1},"letter-spacing":{normal:1},"line-height":{normal:1}
21005,"list-style-type":{none:1,disc:1,circle:1,square:1,decimal:1,"decimal-leading-zero":1,"lower-roman":1,"upper-roman":1,"lower-greek":1,"lower-latin":1,"upper-latin":1,georgian:1,"lower-alpha":1,"upper-alpha":1},margin:{px:1,em:1,"%":1},"margin-right":{px:1,em:1,"%":1},"margin-left":{px:1,em:1,"%":1},"margin-top":{px:1,em:1,"%":1},"margin-bottom":{px:1,em:1,"%":1},"max-height":{px:1,em:1,"%":1},"max-width":{px:1,em:1,"%":1},"min-height":{px:1,em:1,"%":1},"min-width":{px:1,em:1,"%":1},overflow:{hidden:1,visible:1,auto:1,scroll:1},"overflow-x":{hidden:1,visible:1,auto:1,scroll:1},"overflow-y":{hidden:1,visible:1,auto:1,scroll:1},padding:{px:1,em:1,"%":1},"padding-top":{px:1,em:1,"%":1},"padding-right":{px:1,em:1,"%":1},"padding-bottom":{px:1,em:1,"%":1},"padding-left":{px:1,em:1,"%":1},"page-break-after":{auto:1,always:1,avoid:1,left:1,right:1},"page-break-before":{auto:1,always:1,avoid:1,left:1,right:1},position:{absolute:1,relative:1,fixed:1,"static":1},right:{px:1,em:1,"%":1},"table-layout":{fixed:1,auto:1},"text-decoration":{none:1,underline:1,"line-through":1,blink:1},"text-align":{left:1,right:1,center:1,justify:1},"text-transform":{capitalize:1,uppercase:1,lowercase:1,none:1},top:{px:1,em:1,"%":1},"vertical-align":{top:1,bottom:1},visibility:{hidden:1,visible:1},"white-space":{nowrap:1,normal:1,pre:1,"pre-line":1,"pre-wrap":1},width:{px:1,em:1,"%":1},"word-spacing":{normal:1},filter:{"alpha(opacity=$0100)":1},"text-shadow":{"$02px 2px 2px #777":1},"text-overflow":{"ellipsis-word":1,clip:1,ellipsis:1},"-moz-border-radius":1,"-moz-border-radius-topright":1,"-moz-border-radius-bottomright":1,"-moz-border-radius-topleft":1,"-moz-border-radius-bottomleft":1,"-webkit-border-radius":1,"-webkit-border-top-right-radius":1,"-webkit-border-top-left-radius":1,"-webkit-border-bottom-right-radius":1,"-webkit-border-bottom-left-radius":1,"-moz-box-shadow":1,"-webkit-box-shadow":1,transform:{"rotate($00deg)":1,"skew($00deg)":1},"-moz-transform":{"rotate($00deg)":1,"skew($00deg)":1},"-webkit-transform":{"rotate($00deg)":1,"skew($00deg)":1}},i=function(){};(function(){this.completionsDefined=!1,this.defineCompletions=function(){if(document){var e=document.createElement("c").style;for(var t in e){if(typeof e[t]!="string")continue;var n=t.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()});r.hasOwnProperty(n)||(r[n]=1)}}this.completionsDefined=!0},this.getCompletions=function(e,t,n,r){this.completionsDefined||this.defineCompletions();var i=t.getTokenAt(n.row,n.column);if(!i)return[];if(e==="ruleset"){var s=t.getLine(n.row).substr(0,n.column);return/:[^;]+$/.test(s)?(/([\w\-]+):[^:]*$/.test(s),this.getPropertyValueCompletions(e,t,n,r)):this.getPropertyCompletions(e,t,n,r)}return[]},this.getPropertyCompletions=function(e,t,n,i){var s=Object.keys(r);return s.map(function(e){return{caption:e,snippet:e+": $0;",meta:"property",score:1e6}})},this.getPropertyValueCompletions=function(e,t,n,i){var s=t.getLine(n.row).substr(0,n.column),o=(/([\w\-]+):[^:]*$/.exec(s)||{})[1];if(!o)return[];var u=[];return o in r&&typeof r[o]=="object"&&(u=Object.keys(r[o])),u.map(function(e){return{caption:e,snippet:e,meta:"property value",score:1e6}})}}).call(i.prototype),t.CssCompletions=i}),define("ace/mode/behaviour/css",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/mode/behaviour/cstyle","ace/token_iterator"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("./cstyle").CstyleBehaviour,o=e("../../token_iterator").TokenIterator,u=function(){this.inherit(s),this.add("colon","insertion",function(e,t,n,r,i){if(i===":"&&n.selection.isEmpty()){var s=n.getCursorPosition(),u=new o(r,s.row,s.column),a=u.getCurrentToken();a&&a.value.match(/\s+/)&&(a=u.stepBackward());if(a&&a.type==="support.type"){var f=r.doc.getLine(s.row),l=f.substring(s.column,s.column+1);if(l===":")return{text:"",selection:[1,1]};if(/^(\s+[^;]|\s*$)/.test(f.substring(s.column)))return{text:":;",selection:[1,1]}}}}),this.add("colon","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s===":"){var u=n.getCursorPosition(),a=new o(r,u.row,u.column),f=a.getCurrentToken();f&&f.value.match(/\s+/)&&(f=a.stepBackward());if(f&&f.type==="support.type"){var l=r.doc.getLine(i.start.row),c=l.substring(i.end.column,i.end.column+1);if(c===";")return i.end.column++,i}}}),this.add("semicolon","insertion",function(e,t,n,r,i){if(i===";"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row),u=o.substring(s.column,s.column+1);if(u===";")return{text:"",selection:[1,1]}}}),this.add("!important","insertion",function(e,t,n,r,i){if(i==="!"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row);if(/^\s*(;|}|$)/.test(o.substring(s.column)))return{text:"!important",selection:[10,10]}}})};r.inherits(u,s),t.CssBehaviour=u}),define("ace/mode/css",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/css_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/wor
21005ker_client","ace/mode/css_completions","ace/mode/behaviour/css","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./css_highlight_rules").CssHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./css_completions").CssCompletions,f=e("./behaviour/css").CssBehaviour,l=e("./folding/cstyle").FoldMode,c=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new f,this.$completer=new a,this.foldingRules=new l};r.inherits(c,i),function(){this.foldingRules="cStyle",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e).tokens;if(i.length&&i[i.length-1].type=="comment")return r;var s=t.match(/^.*\{\s*$/);return s&&(r+=n),r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.getCompletions=function(e,t,n,r){return this.$completer.getCompletions(e,t,n,r)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/css_worker","Worker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/css"}.call(c.prototype),t.Mode=c}),define("ace/mode/xml_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(e){var t="[_:a-zA-Z\u00c0-\uffff][-_:.a-zA-Z0-9\u00c0-\uffff]*";this.$rules={start:[{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\[",next:"cdata"},{token:["punctuation.instruction.xml","keyword.instruction.xml"],regex:"(<\\?)("+t+")",next:"processing_instruction"},{token:"comment.start.xml",regex:"<\\!--",next:"comment"},{token:["xml-pe.doctype.xml","xml-pe.doctype.xml"],regex:"(<\\!)(DOCTYPE)(?=[\\s])",next:"doctype",caseInsensitive:!0},{include:"tag"},{token:"text.end-tag-open.xml",regex:"</"},{token:"text.tag-open.xml",regex:"<"},{include:"reference"},{defaultToken:"text.xml"}],processing_instruction:[{token:"entity.other.attribute-name.decl-attribute-name.xml",regex:t},{token:"keyword.operator.decl-attribute-equals.xml",regex:"="},{include:"whitespace"},{include:"string"},{token:"punctuation.xml-decl.xml",regex:"\\?>",next:"start"}],doctype:[{include:"whitespace"},{include:"string"},{token:"xml-pe.doctype.xml",regex:">",next:"start"},{token:"xml-pe.xml",regex:"[-_a-zA-Z0-9:]+"},{token:"punctuation.int-subset",regex:"\\[",push:"int_subset"}],int_subset:[{token:"text.xml",regex:"\\s+"},{token:"punctuation.int-subset.xml",regex:"]",next:"pop"},{token:["punctuation.markup-decl.xml","keyword.markup-decl.xml"],regex:"(<\\!)("+t+")",push:[{token:"text",regex:"\\s+"},{token:"punctuation.markup-decl.xml",regex:">",next:"pop"},{include:"string"}]}],cdata:[{token:"string.cdata.xml",regex:"\\]\\]>",next:"start"},{token:"text.xml",regex:"\\s+"},{token:"text.xml",regex:"(?:[^\\]]|\\](?!\\]>))+"}],comment:[{token:"comment.end.xml",regex:"-->",next:"start"},{defaultToken:"comment.xml"}],reference:[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],attr_reference:[{token:"constant.language.escape.reference.attribute-value.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],tag:[{token:["meta.tag.punctuation.tag-open.xml","meta.tag.punctuation.end-tag-open.xml","meta.tag.tag-name.xml"],regex:"(?:(<)|(</))((?:"+t+":)?"+t+")",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}],tag_whitespace:[{token:"text.tag-whitespace.xml",regex:"\\s+"}],whitespace:[{token:"text.whitespace.xml",regex:"\\s+"}],string:[{token:"string.xml",regex:"'",push:[{token:"string.xml",regex:"'",next:"pop"},{defaultToken:"string.xml"}]},{token:"string.xml",regex:'"',push:[{token:"string.xml",regex:'"',next:"pop"},{defaultToken:"string.xml"}]}],attributes:[{token:"entity.other.attribute-name.xml",regex:t},{token:"keyword.operator.attribute-equals.xml",regex:"="},{include:"tag_whitespace"},{include:"attribute_value"}],attribute_value:[{token:"string.attribute-value.xml",regex:"'",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]}]},this.constructor===s&&this.normalizeRules()};(function(){this.embedTagRules=function(e,t,n){this.$rules.tag.unshift({token:["meta.tag.punctuation.tag-open.xml","meta.tag."+n+".tag-name.xml"],regex:"(<)("+n+"(?=\\s|>|$))",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:t+"start"}]}),this.$rules[n+"-end"]=[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start",onMatch:function(e,t,n){return n.splice(0),this.token}}],this.embedRules(e,t,[{token:["meta.tag.punctuation.end-tag-open.xml","meta.tag."+n+".tag-name.xml"],regex:"(</)("+n+"(?=\\s|>|$))",next:n+"-end"},{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\["},{token:"string.cdata.xml",regex:"\\]\\]>"}])}}).call(i.prototype),r.inherits(s,i),t.XmlHighlightRules=s}),define("ace/mode/html_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/css_highlight_rules","ace/mode/javascript_highlight_rules","ace/mode/xml_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./css_highlight_rules").CssHighlightRules,o=e("./javascript_highlight_rules").JavaScriptHighlightRules,u=e("./xml_highlight_rules").XmlHighlightRules,a=i.createMap({a:"anchor",button:"form",form:"form",img:"image",input:"form",label:"form",option:"form",script:"script",select:"form",textarea:"form",style:"style",table:"table",tbody:"table",td:"table",tfoot:"table",th:"table",tr:"table"}),f=function(){u.call(this),this.addRules({attributes:[{include:"tag_whitespace"},{token:"entity.other.attribute-name.xml",regex:"[-_a-zA-Z0-9:.]+"},{token:"keyword.operator.attribute-equals.xml",regex:"=",push:[{include:"tag_whitespace"},{token:"string.unquoted.attribute-value.html",regex:"[^<>='\"`\\s]+",next:"pop"},{token:"empty",regex:"",next:"pop"}]},{include:"attribute_value"}],tag:[{token:function(e,t){var n=a[t];return["meta.tag.punctuation."+(e=="<"?"":"end-")+"tag-open.xml","meta.tag"+(n?"."+n:"")+".tag-name.xml"]},regex:"(</?)([-_a-zA-Z0-9:.]+)",next:"tag_stuff"}],tag_stuff:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}),this.embedTagRules(s,"css-","style"),this.embedTagRules((new o({jsx:!1})).getRules(),"js-","script"),this.constructor===f&&this.normalizeRules()};r.inherits(f,u),t.HtmlHighlightRules=f}),define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";function u(e,t){return e&&e.type.lastIndexOf(t+".xml")>-1}var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),a=function(){this.add("str
21005ing_dquotes","insertion",function(e,t,n,r,i){if(i=='"'||i=="'"){var o=i,a=r.doc.getTextRange(n.getSelectionRange());if(a!==""&&a!=="'"&&a!='"'&&n.getWrapBehavioursEnabled())return{text:o+a+o,selection:!1};var f=n.getCursorPosition(),l=r.doc.getLine(f.row),c=l.substring(f.column,f.column+1),h=new s(r,f.row,f.column),p=h.getCurrentToken();if(c==o&&(u(p,"attribute-value")||u(p,"string")))return{text:"",selection:[1,1]};p||(p=h.stepBackward());if(!p)return;while(u(p,"tag-whitespace")||u(p,"whitespace"))p=h.stepBackward();var d=!c||c.match(/\s/);if(u(p,"attribute-equals")&&(d||c==">")||u(p,"decl-attribute-equals")&&(d||c=="?"))return{text:o+o,selection:[1,1]}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&(s=='"'||s=="'")){var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==s)return i.end.column++,i}}),this.add("autoclosing","insertion",function(e,t,n,r,i){if(i==">"){var o=n.getSelectionRange().start,a=new s(r,o.row,o.column),f=a.getCurrentToken()||a.stepBackward();if(!f||!(u(f,"tag-name")||u(f,"tag-whitespace")||u(f,"attribute-name")||u(f,"attribute-equals")||u(f,"attribute-value")))return;if(u(f,"reference.attribute-value"))return;if(u(f,"attribute-value")){var l=a.getCurrentTokenColumn()+f.value.length;if(o.column<l)return;if(o.column==l){var c=a.stepForward();if(c&&u(c,"attribute-value"))return;a.stepBackward()}}if(/^\s*>/.test(r.getLine(o.row).slice(o.column)))return;while(!u(f,"tag-name")){f=a.stepBackward();if(f.value=="<"){f=a.stepForward();break}}var h=a.getCurrentTokenRow(),p=a.getCurrentTokenColumn();if(u(a.stepBackward(),"end-tag-open"))return;var d=f.value;h==o.row&&(d=d.substring(0,o.column-p));if(this.voidElements.hasOwnProperty(d.toLowerCase()))return;return{text:"></"+d+">",selection:[1,1]}}}),this.add("autoindent","insertion",function(e,t,n,r,i){if(i=="\n"){var o=n.getCursorPosition(),u=r.getLine(o.row),a=new s(r,o.row,o.column),f=a.getCurrentToken();if(f&&f.type.indexOf("tag-close")!==-1){if(f.value=="/>")return;while(f&&f.type.indexOf("tag-name")===-1)f=a.stepBackward();if(!f)return;var l=f.value,c=a.getCurrentTokenRow();f=a.stepBackward();if(!f||f.type.indexOf("end-tag")!==-1)return;if(this.voidElements&&!this.voidElements[l]){var h=r.getTokenAt(o.row,o.column+1),u=r.getLine(c),p=this.$getIndent(u),d=p+r.getTabString();return h&&h.value==="</"?{text:"\n"+d+"\n"+p,selection:[1,d.length,1,d.length]}:{text:"\n"+d}}}}})};r.inherits(a,i),t.XmlBehaviour=a}),define("ace/mode/folding/mixed",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("./fold_mode").FoldMode,s=t.FoldMode=function(e,t){this.defaultMode=e,this.subModes=t};r.inherits(s,i),function(){this.$getMode=function(e){typeof e!="string"&&(e=e[0]);for(var t in this.subModes)if(e.indexOf(t)===0)return this.subModes[t];return null},this.$tryMode=function(e,t,n,r){var i=this.$getMode(e);return i?i.getFoldWidget(t,n,r):""},this.getFoldWidget=function(e,t,n){return this.$tryMode(e.getState(n-1),e,t,n)||this.$tryMode(e.getState(n),e,t,n)||this.defaultMode.getFoldWidget(e,t,n)},this.getFoldWidgetRange=function(e,t,n){var r=this.$getMode(e.getState(n-1));if(!r||!r.getFoldWidget(e,t,n))r=this.$getMode(e.getState(n));if(!r||!r.getFoldWidget(e,t,n))r=this.defaultMode;return r.getFoldWidgetRange(e,t,n)}}.call(s.prototype)}),define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/range","ace/mode/folding/fold_mode","ace/token_iterator"],function(e,t,n){"use strict";function l(e,t){return e.type.lastIndexOf(t+".xml")>-1}var r=e("../../lib/oop"),i=e("../../lib/lang"),s=e("../../range").Range,o=e("./fold_mode").FoldMode,u=e("../../token_iterator").TokenIterator,a=t.FoldMode=function(e,t){o.call(this),this.voidElements=e||{},this.optionalEndTags=r.mixin({},this.voidElements),t&&r.mixin(this.optionalEndTags,t)};r.inherits(a,o);var f=function(){this.tagName="",this.closing=!1,this.selfClosing=!1,this.start={row:0,column:0},this.end={row:0,column:0}};(function(){this.getFoldWidget=function(e,t,n){var r=this._getFirstTagInLine(e,n);return r?r.closing||!r.tagName&&r.selfClosing?t=="markbeginend"?"end":"":!r.tagName||r.selfClosing||this.voidElements.hasOwnProperty(r.tagName.toLowerCase())?"":this._findEndTagInLine(e,n,r.tagName,r.end.column)?"":"start":this.getCommentFoldWidget(e,n)},this.getCommentFoldWidget=function(e,t){return/comment/.test(e.getState(t))&&/<!-/.test(e.getLine(t))?"start":""},this._getFirstTagInLine=function(e,t){var n=e.getTokens(t),r=new f;for(var i=0;i<n.length;i++){var s=n[i];if(l(s,"tag-open")){r.end.column=r.start.column+s.value.length,r.closing=l(s,"end-tag-open"),s=n[++i];if(!s)return null;r.tagName=s.value,r.end.column+=s.value.length;for(i++;i<n.length;i++){s=n[i],r.end.column+=s.value.length;if(l(s,"tag-close")){r.selfClosing=s.value=="/>";break}}return r}if(l(s,"tag-close"))return r.selfClosing=s.value=="/>",r;r.start.column+=s.value.length}return null},this._findEndTagInLine=function(e,t,n,r){var i=e.getTokens(t),s=0;for(var o=0;o<i.length;o++){var u=i[o];s+=u.value.length;if(s<r)continue;if(l(u,"end-tag-open")){u=i[o+1];if(u&&u.value==n)return!0}}return!1},this._readTagForward=function(e){var t=e.getCurrentToken();if(!t)return null;var n=new f;do if(l(t,"tag-open"))n.closing=l(t,"end-tag-open"),n.start.row=e.getCurrentTokenRow(),n.start.column=e.getCurrentTokenColumn();else if(l(t,"tag-name"))n.tagName=t.value;else if(l(t,"tag-close"))return n.selfClosing=t.value=="/>",n.end.row=e.getCurrentTokenRow(),n.end.column=e.getCurrentTokenColumn()+t.value.length,e.stepForward(),n;while(t=e.stepForward());return null},this._readTagBackward=function(e){var t=e.getCurrentToken();if(!t)return null;var n=new f;do{if(l(t,"tag-open"))return n.closing=l(t,"end-tag-open"),n.start.row=e.getCurrentTokenRow(),n.start.column=e.getCurrentTokenColumn(),e.stepBackward(),n;l(t,"tag-name")?n.tagName=t.value:l(t,"tag-close")&&(n.selfClosing=t.value=="/>",n.end.row=e.getCurrentTokenRow(),n.end.column=e.getCurrentTokenColumn()+t.value.length)}while(t=e.stepBackward());return null},this._pop=function(e,t){while(e.length){var n=e[e.length-1];if(!t||n.tagName==t.tagName)return e.pop();if(this.optionalEndTags.hasOwnProperty(n.tagName)){e.pop();continue}return null}},this.getFoldWidgetRange=function(e,t,n){var r=this._getFirstTagInLine(e,n);if(!r)return this.getCommentFoldWidget(e,n)&&e.getCommentFoldRange(n,e.getLine(n).length);var i=r.closing||r.selfClosing,o=[],a;if(!i){var f=new u(e,n,r.start.column),l={row:n,column:r.start.column+r.tagName.length+2};r.start.row==r.end.row&&(l.column=r.end.column);while(a=this._readTagForward(f)){if(a.selfClosing){if(!o.length)return a.start.column+=a.tagName.length+2,a.end.column-=2,s.fromPoints(a.start,a.end);continue}if(a.closing){this._pop(o,a);if(o.length==0)return s.fromPoints(l,a.start)}else o.push(a)}}else{var f=new u(e,n,r.end.column),c={row:n,column:r.start.column};while(a=this._readTagBackward(f)){if(a.selfClosing){if(!o.length)return a.start.column+=a.tagName.length+2,a.end.column-=2,s.fromPoints(a.start,a.end);continue}if(!a.closing){this._pop(o,a);if(o.length==0)return a.start.column+=a.tagName.length+2,a.start.row==a.end.row&&a.start.column<a.end.column&&(a.start.column=a.end.column),s.fromPoints(a.start,c)}else o.push(a)}}}}).call(a.prototype)}),define("ace/mode/folding/html",["require","exports","module","ace/lib/oop","ace/mode/folding/mixed","ace/mode/folding/xml","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("./mixed").FoldMode,s=e("./xml").FoldMode,o=e("./cstyle").FoldMode,u=t.FoldMode=function(e,t){i.call(this,new s(e,t),{"js-":new o,"css-":new o})};r.inherits(u,i)}),define("ace/mode/html_completions",["require","exports","module","ace/token_iterator"],function(e,t,n){"use strict";function f(e,t){return e.type.lastIndexOf(t+".xml")>-1}function l(e,t){var n=new r(e,t.row,t.column),i=n.getCurrentToken();while(i&&!f(i,"tag-name"))i=n.stepBackward();if(i)return i.value}function c(e,t){var n=new r(e,t.row,t.column),i=n.getCurrentToken();while(i&&!f(i,"attribute-name"))i=n.stepBackward();if(i)return i.value}var r=e("../token_iterator").TokenIterator,i=["accesskey","class","contenteditable","contextmenu","dir","draggable","dropzone","hidden","id","inert","itemid","itemprop","itemref","itemscope","itemtype","lang","spellcheck","style","tabindex","title","translate"],s=["onabort","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncontextmenu","oncuechange","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onload","onloadeddata","onloadedmetadata","onloadstart","onmousedown","onmousemove","onmouseout","onmouseover","onmouseup","onmousewheel","onpause","onplay","onplaying","on
21005progress","onratechange","onreset","onscroll","onseeked","onseeking","onselect","onshow","onstalled","onsubmit","onsuspend","ontimeupdate","onvolumechange","onwaiting"],o=i.concat(s),u={a:{href:1,target:{_blank:1,top:1},ping:1,rel:{nofollow:1,alternate:1,author:1,bookmark:1,help:1,license:1,next:1,noreferrer:1,prefetch:1,prev:1,search:1,tag:1},media:1,hreflang:1,type:1},abbr:{},address:{},area:{shape:1,coords:1,href:1,hreflang:1,alt:1,target:1,media:1,rel:1,ping:1,type:1},article:{pubdate:1},aside:{},audio:{src:1,autobuffer:1,autoplay:{autoplay:1},loop:{loop:1},controls:{controls:1},muted:{muted:1},preload:{auto:1,metadata:1,none:1}},b:{},base:{href:1,target:1},bdi:{},bdo:{},blockquote:{cite:1},body:{onafterprint:1,onbeforeprint:1,onbeforeunload:1,onhashchange:1,onmessage:1,onoffline:1,onpopstate:1,onredo:1,onresize:1,onstorage:1,onundo:1,onunload:1},br:{},button:{autofocus:1,disabled:{disabled:1},form:1,formaction:1,formenctype:1,formmethod:1,formnovalidate:1,formtarget:1,name:1,value:1,type:{button:1,submit:1}},canvas:{width:1,height:1},caption:{},cite:{},code:{},col:{span:1},colgroup:{span:1},command:{type:1,label:1,icon:1,disabled:1,checked:1,radiogroup:1,command:1},data:{},datalist:{},dd:{},del:{cite:1,datetime:1},details:{open:1},dfn:{},dialog:{open:1},div:{},dl:{},dt:{},em:{},embed:{src:1,height:1,width:1,type:1},fieldset:{disabled:1,form:1,name:1},figcaption:{},figure:{},footer:{},form:{"accept-charset":1,action:1,autocomplete:1,enctype:{"multipart/form-data":1,"application/x-www-form-urlencoded":1},method:{get:1,post:1},name:1,novalidate:1,target:{_blank:1,top:1}},h1:{},h2:{},h3:{},h4:{},h5:{},h6:{},head:{},header:{},hr:{},html:{manifest:1},i:{},iframe:{name:1,src:1,height:1,width:1,sandbox:{"allow-same-origin":1,"allow-top-navigation":1,"allow-forms":1,"allow-scripts":1},seamless:{seamless:1}},img:{alt:1,src:1,height:1,width:1,usemap:1,ismap:1},input:{type:{text:1,password:1,hidden:1,checkbox:1,submit:1,radio:1,file:1,button:1,reset:1,image:31,color:1,date:1,datetime:1,"datetime-local":1,email:1,month:1,number:1,range:1,search:1,tel:1,time:1,url:1,week:1},accept:1,alt:1,autocomplete:{on:1,off:1},autofocus:{autofocus:1},checked:{checked:1},disabled:{disabled:1},form:1,formaction:1,formenctype:{"application/x-www-form-urlencoded":1,"multipart/form-data":1,"text/plain":1},formmethod:{get:1,post:1},formnovalidate:{formnovalidate:1},formtarget:{_blank:1,_self:1,_parent:1,_top:1},height:1,list:1,max:1,maxlength:1,min:1,multiple:{multiple:1},name:1,pattern:1,placeholder:1,readonly:{readonly:1},required:{required:1},size:1,src:1,step:1,width:1,files:1,value:1},ins:{cite:1,datetime:1},kbd:{},keygen:{autofocus:1,challenge:{challenge:1},disabled:{disabled:1},form:1,keytype:{rsa:1,dsa:1,ec:1},name:1},label:{form:1,"for":1},legend:{},li:{value:1},link:{href:1,hreflang:1,rel:{stylesheet:1,icon:1},media:{all:1,screen:1,print:1},type:{"text/css":1,"image/png":1,"image/jpeg":1,"image/gif":1},sizes:1},main:{},map:{name:1},mark:{},math:{},menu:{type:1,label:1},meta:{"http-equiv":{"content-type":1},name:{description:1,keywords:1},content:{"text/html; charset=UTF-8":1},charset:1},meter:{value:1,min:1,max:1,low:1,high:1,optimum:1},nav:{},noscript:{href:1},object:{param:1,data:1,type:1,height:1,width:1,usemap:1,name:1,form:1,classid:1},ol:{start:1,reversed:1},optgroup:{disabled:1,label:1},option:{disabled:1,selected:1,label:1,value:1},output:{"for":1,form:1,name:1},p:{},param:{name:1,value:1},pre:{},progress:{value:1,max:1},q:{cite:1},rp:{},rt:{},ruby:{},s:{},samp:{},script:{charset:1,type:{"text/javascript":1},src:1,defer:1,async:1},select:{autofocus:1,disabled:1,form:1,multiple:{multiple:1},name:1,size:1,readonly:{readonly:1}},small:{},source:{src:1,type:1,media:1},span:{},strong:{},style:{type:1,media:{all:1,screen:1,print:1},scoped:1},sub:{},sup:{},svg:{},table:{summary:1},tbody:{},td:{headers:1,rowspan:1,colspan:1},textarea:{autofocus:{autofocus:1},disabled:{disabled:1},form:1,maxlength:1,name:1,placeholder:1,readonly:{readonly:1},required:{required:1},rows:1,cols:1,wrap:{on:1,off:1,hard:1,soft:1}},tfoot:{},th:{headers:1,rowspan:1,colspan:1,scope:1},thead:{},time:{datetime:1},title:{},tr:{},track:{kind:1,src:1,srclang:1,label:1,"default":1},section:{},summary:{},u:{},ul:{},"var":{},video:{src:1,autobuffer:1,autoplay:{autoplay:1},loop:{loop:1}
21005,controls:{controls:1},width:1,height:1,poster:1,muted:{muted:1},preload:{auto:1,metadata:1,none:1}},wbr:{}},a=Object.keys(u),h=function(){};(function(){this.getCompletions=function(e,t,n,r){var i=t.getTokenAt(n.row,n.column);if(!i)return[];if(f(i,"tag-name")||f(i,"tag-open")||f(i,"end-tag-open"))return this.getTagCompletions(e,t,n,r);if(f(i,"tag-whitespace")||f(i,"attribute-name"))return this.getAttributeCompletions(e,t,n,r);if(f(i,"attribute-value"))return this.getAttributeValueCompletions(e,t,n,r);var s=t.getLine(n.row).substr(0,n.column);return/&[a-z]*$/i.test(s)?this.getHTMLEntityCompletions(e,t,n,r):[]},this.getTagCompletions=function(e,t,n,r){return a.map(function(e){return{value:e,meta:"tag",score:1e6}})},this.getAttributeCompletions=function(e,t,n,r){var i=l(t,n);if(!i)return[];var s=o;return i in u&&(s=s.concat(Object.keys(u[i]))),s.map(function(e){return{caption:e,snippet:e+'="$0"',meta:"attribute",score:1e6}})},this.getAttributeValueCompletions=function(e,t,n,r){var i=l(t,n),s=c(t,n);if(!i)return[];var o=[];return i in u&&s in u[i]&&typeof u[i][s]=="object"&&(o=Object.keys(u[i][s])),o.map(function(e){return{caption:e,snippet:e,meta:"attribute value",score:1e6}})},this.getHTMLEntityCompletions=function(e,t,n,r){var i=["Aacute;","aacute;","Acirc;","acirc;","acute;","AElig;","aelig;","Agrave;","agrave;","alefsym;","Alpha;","alpha;","amp;","and;","ang;","Aring;","aring;","asymp;","Atilde;","atilde;","Auml;","auml;","bdquo;","Beta;","beta;","brvbar;","bull;","cap;","Ccedil;","ccedil;","cedil;","cent;","Chi;","chi;","circ;","clubs;","cong;","copy;","crarr;","cup;","curren;","Dagger;","dagger;","dArr;","darr;","deg;","Delta;","delta;","diams;","divide;","Eacute;","eacute;","Ecirc;","ecirc;","Egrave;","egrave;","empty;","emsp;","ensp;","Epsilon;","epsilon;","equiv;","Eta;","eta;","ETH;","eth;","Euml;","euml;","euro;","exist;","fnof;","forall;","frac12;","frac14;","frac34;","frasl;","Gamma;","gamma;","ge;","gt;","hArr;","harr;","hearts;","hellip;","Iacute;","iacute;","Icirc;","icirc;","iexcl;","Igrave;","igrave;","image;","infin;","int;","Iota;","iota;","iquest;","isin;","Iuml;","iuml;","Kappa;","kappa;","Lambda;","lambda;","lang;","laquo;","lArr;","larr;","lceil;","ldquo;","le;","lfloor;","lowast;","loz;","lrm;","lsaquo;","lsquo;","lt;","macr;","mdash;","micro;","middot;","minus;","Mu;","mu;","nabla;","nbsp;","ndash;","ne;","ni;","not;","notin;","nsub;","Ntilde;","ntilde;","Nu;","nu;","Oacute;","oacute;","Ocirc;","ocirc;","OElig;","oelig;","Ograve;","ograve;","oline;","Omega;","omega;","Omicron;","omicron;","oplus;","or;","ordf;","ordm;","Oslash;","oslash;","Otilde;","otilde;","otimes;","Ouml;","ouml;","para;","part;","permil;","perp;","Phi;","phi;","Pi;","pi;","piv;","plusmn;","pound;","Prime;","prime;","prod;","prop;","Psi;","psi;","quot;","radic;","rang;","raquo;","rArr;","rarr;","rceil;","rdquo;","real;","reg;","rfloor;","Rho;","rho;","rlm;","rsaquo;","rsquo;","sbquo;","Scaron;","scaron;","sdot;","sect;","shy;","Sigma;","sigma;","sigmaf;","sim;","spades;","sub;","sube;","sum;","sup;","sup1;","sup2;","sup3;","supe;","szlig;","Tau;","tau;","there4;","Theta;","theta;","thetasym;","thinsp;","THORN;","thorn;","tilde;","times;","trade;","Uacute;","uacute;","uArr;","uarr;","Ucirc;","ucirc;","Ugrave;","ugrave;","uml;","upsih;","Upsilon;","upsilon;","Uuml;","uuml;","weierp;","Xi;","xi;","Yacute;","yacute;","yen;","Yuml;","yuml;","Zeta;","zeta;","zwj;","zwnj;"];return i.map(function(e){return{caption:e,snippet:e,meta:"html entity",score:1e6}})}}).call(h.prototype),t.HtmlCompletions=h}),define("ace/mode/html",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/javascript","ace/mode/css","ace/mode/html_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/html","ace/mode/html_completions","ace/worker/worker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text").Mode,o=e("./javascript").Mode,u=e("./css").Mode,a=e("./html_highlight_rules").HtmlHighlightRules,f=e("./behaviour/xml").XmlBehaviour,l=e("./folding/html").FoldMode,c=e("./html_completions").HtmlCompletions,h=e("../wor
21005ker/worker_client").WorkerClient,p=["area","base","br","col","embed","hr","img","input","keygen","link","meta","menuitem","param","source","track","wbr"],d=["li","dt","dd","p","rt","rp","optgroup","option","colgroup","td","th"],v=function(e){this.fragmentContext=e&&e.fragmentContext,this.HighlightRules=a,this.$behaviour=new f,this.$completer=new c,this.createModeDelegates({"js-":o,"css-":u}),this.foldingRules=new l(this.voidElements,i.arrayToMap(d))};r.inherits(v,s),function(){this.blockComment={start:"<!--",end:"-->"},this.voidElements=i.arrayToMap(p),this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.checkOutdent=function(e,t,n){return!1},this.getCompletions=function(e,t,n,r){return this.$completer.getCompletions(e,t,n,r)},this.createWorker=function(e){if(this.constructor!=v)return;var t=new h(["ace"],"ace/mode/html_worker","Worker");return t.attachToDocument(e.getDocument()),this.fragmentContext&&t.call("setOptions",[{context:this.fragmentContext}]),t.on("error",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/html"}.call(v.prototype),t.Mode=v}); (function() { 21006 window.require(["ace/mode/html"], function(m) { 21007 if (typeof module == "object" && typeof exports == "object" && module) { 21008 module.exports = m; 21009 } 21010 }); 21011 })(); 21012 21013 21014define("ace/mode/hxl_highlight_rules", ["require", "exports", "module", "ace/lib/oop", "ace/mode/text_highlight_rules"], function (e, t, n) { 21015 "use strict"; 21016 var r = e("../lib/oop"), i = e("./text_highlight_rules").TextHighlightRules, s = function () { 21017 var e = "\\b(?:WARNING|FIXME|HACK|BUG|COMPENSATION|BARLA)\\b", t = "TODO", n = /https?:\/\/[^\s]+/, 21018 r = "@[a-zA-Z0-9]+", i = "[A-Z]+-[0-9]+", s = this.createKeywordMapper({ 21019 keyword: "this|super|root|forkey|forval|parent", 21020 "keyword.control": "if|else|do|while|for|break|continue|switch|case|default|return|instanceof|try|throw2|catch2|finally", 21021 "variable.language": "loc|in|out|cfg|data|tmp|init|src|dest", 21022 "variable.language.invalid.illegal": "catch|throw|env", 21023 "support.function": "log|log3|log5|log7|log9|logAll|warning|warning3|warning5|warning7|warning9|error|error3|error5|error7|error9|errorNoStack|info|info3|info5|info7|info9|java|compile|exec|stack|trace|coalesce", 21024 "storage.type.support.function": "bool|int|long|decimal|float|double|string|date|time|dateTime|path", 21025 "constant.language": "null|NULL|empty|EMPTY", 21026 "constant.language.boolean": "true|false" 21027 }, "unknown"); 21028 this.$rules = { 21029 start: [{token: "comment.line", regex: "\\/\\/", next: "singlelineComment"}, { 21030 token: "comment.block", 21031 regex: "\\/\\*", 21032 next: "multilineComment" 21033 }, {token: "string.triple", regex: "'''", next: "tripleQuotedString"}, { 21034 token: "string.single", 21035 regex: "[']", 21036 next: "singleQuotedString" 21037 }, {token: "string.double", regex: '"', next: "doubleQuotedString"}, { 21038 token: "constant.numeric", 21039 regex: "[-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]\\d+)?)?(L|l|F|f|D|d|bd|BD)?\\b" 21040 }, { 21041 token: ["identifier.tree.separator", "identifier.tree"], 21042 regex: "(/)([\\w]+)" 21043 }, {token: "support.function.module", regex: "\\$\\$?", push: "operationCall"}, { 21044 token: "keyword.operator", 21045 regex: "=\\[\\]|!|%|/|\\*|\\-|\\+|\\.|&|~|\\^|<<|>>|==|=|:=|!=|<=|>=|>|<|&&|\\|\\||\\?|\\:" 21046 }, {token: "lparen", regex: "[[({]"}, {token: "rparen", regex: "[\\])}]"}, { 21047 token: "support.function.agent", 21048 regex: "(\\w+)(\\.\\w+)+" 21049 }, {token: s, regex: "[a-zA-Z_][a-zA-Z0-9_]*\\b"}], 21050 multilineComment: [{token: "comment", regex: ".*?\\*\\/", next: "start"}, { 21051 token: "comment.documentation", 21052 regex: e 21053 }, {token: "comment.documentation.alternative", regex: t}, { 21054 token: "comment.documentation.mention", 21055 regex: r 21056 }, {token: "comment.markup.underline.link", regex: n}, { 21057 token: "comment.documentation.issue", 21058 regex: i 21059 }, {defaultToken: "comment"}], 21060 singlelineComment: [{token: "", regex: "^", next: "start"}, { 21061 token: "comment.documentation", 21062 regex: e 21063 }, {token: "comment.documentation.alternative", regex: t}, { 21064 token: "comment.documentation.mention", 21065 regex: r 21066 }, {token: "comment.markup.underline.link", regex: n}, { 21067 token: "comment.documentation.issue", 21068 regex: i 21069 }, {defaultToken: "comment.line"}], 21070 singleQuotedString: [{token: "variable.parameter", regex: "%%.*?%%"}, { 21071 token: "string.escaped", 21072 regex: "[\\\\]." 21073 }, {token: "string.single", regex: "[']", next: "start"}, {defaultToken: "string.single"}], 21074 doubleQuotedString: [{token: "variable.parameter", regex: "%%.*?%%"}, { 21075 token: "string.escaped", 21076 regex: "[\\\\]." 21077 }, {token: "string.double", regex: '["]', next: "start"}, {defaultToken: "string.double"}], 21078 tripleQuotedString: [{token: "string.triple", regex: "'''", next: "start"}, { 21079 token: "variable.parameter", 21080 regex: "%%.*?%%" 21081 }, {defaultToken: "string.triple"}], 21082 operationCall: [{ 21083 token: function (e, t) { 21084 return ["keyword.operator", "support.function.operation"] 21085 }, regex: "(\\.)([\\w]+)", next: "start" 21086 }, {token: "keyword.operator", regex: "\\.", next: "start"}, { 21087 token: s, 21088 regex: "[a-zA-Z_][a-zA-Z0-9_]*\\b" 21089 }, {include: "start"}] 21090 }, this.normalizeRules() 21091 }; 21092 r.inherits(s, i), t.HxlHighlightRules = s 21093}), define("ace/mode/behaviour/hxl", ["require", "exports", "module", "ace/lib/oop", "ace/mode/behaviour", "ace/mode/behaviour/cstyle", "ace/token_iterator"], function (e, t, n) { 21094 "use strict"; 21095 var r = e("../../lib/oop"), i = e("../behaviour").Behaviour, s = e("./cstyle").CstyleBehaviour, 21096 o = e("../../token_iterator").TokenIterator, u = function () { 21097 this.inherit(s), this.add("slash", "insertion", function (e, t, n, r, i) { 21098 if (i === "/") { 21099 var s = n.getCursorPosition(), o = r.doc.getLine(s.row), u = o.substring(s.column, s.column - 1) + i, 21100 a = n.session.getTokenAt(s.row, s.column); 21101 return u === "//" || a && a.type.indexOf("comment") !== -1 || setTimeout(function () { 21102 n.execCommand("startAutocomplete") 21103 }, 1), {text: "/", selection: [1, 1]} 21104 } 21105 }), this.add("tripleApostrophe", "insertion", function (e, t, n, r, i) { 21106 if (i === "'") { 21107 var s = n.getCursorPosition(), o = r.doc.getLine(s.row), u = o.substring(s.column, s.column - 2) + i; 21108 if (u === "'''") return {text: "''''", selection: [1, 1]} 21109 } 21110 }) 21111 }; 21112 r.inherits(u, s), t.HxlBehaviour = u 21113}), define("ace/mode/folding/cstyle", ["require", "exports", "module", "ace/lib/oop", "ace/range", "ace/mode/folding/fold_mode"], function (e, t, n) { 21114 "use strict"; 21115 var r = e("../../lib/oop"), i = e("../../range").Range, s = e("./fold_mode").FoldMode, 21116 o = t.FoldMode = function (e) { 21117 e && (this.foldingStartMarker = new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/, "|" + e.start)), this.foldingStopMarker = new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/, "|" + e.end))) 21118 }; 21119 r.inherits(o, s), function () { 21120 this.foldingStartMarker = /(\{|\[)[^\}\]]*$|^\s*(\/\*)/, this.foldingStopMarker = /^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/, this.singleLineBlockCommentRe = /^\s*(\/\*).*\*\/\s*$/, this.tripleStarBlockCommentRe = /^\s*(\/\*\*\*).*\*\/\s*$/, this.startRegionRe = /^\s*(\/\*|\/\/)#?region\b/, this._getFoldWidgetBase = this.getFoldWidget, this.getFoldWidget = function (e, t, n) { 21121 var r = e.getLine(n); 21122 if (this.singleLineBlockCommentRe.test(r) && !this.startRegionRe.test(r) && !this.tripleStarBlockCommentRe.test(r)) return ""; 21123 var i = this._getFoldWidgetBase(e, t, n); 21124 return !i && this.startRegionRe.test(r) ? "start" : i 21125 }, this.getFoldWidgetRange = function (e, t, n, r) { 21126 var i = e.getLine(n); 21127 if (this.startRegionRe.test(i)) return this.getCommentRegionBlock(e, i, n); 21128 var s = i.match(this.foldingStartMarker); 21129 if (s) { 21130 var o = s.index; 21131 if (s[1]) return this.openingBracketBlock(e, s[1], n, o); 21132 var u = e.getCommentFoldRange(n, o + s[0].length, 1); 21133 return u && !u.isMultiLine() && (r ? u = this.get
21133SectionRange(e, n) : t != "all" && (u = null)), u 21134 } 21135 if (t === "markbegin") return; 21136 var s = i.match(this.foldingStopMarker); 21137 if (s) { 21138 var o = s.index + s[0].length; 21139 return s[1] ? this.closingBracketBlock(e, s[1], n, o) : e.getCommentFoldRange(n, o, -1) 21140 } 21141 }, this.getSectionRange = function (e, t) { 21142 var n = e.getLine(t), r = n.search(/\S/), s = t, o = n.length; 21143 t += 1; 21144 var u = t, a = e.getLength(); 21145 while (++t < a) { 21146 n = e.getLine(t); 21147 var f = n.search(/\S/); 21148 if (f === -1) continue; 21149 if (r > f) break; 21150 var l = this.getFoldWidgetRange(e, "all", t); 21151 if (l) { 21152 if (l.start.row <= s) break; 21153 if (l.isMultiLine()) t = l.end.row; else if (r == f) break 21154 } 21155 u = t 21156 } 21157 return new i(s, o, u, e.getLine(u).length) 21158 }, this.getCommentRegionBlock = function (e, t, n) { 21159 var r = t.search(/\s*$/), s = e.getLength(), o = n, u = /^\s*(?:\/\*|\/\/|--)#?(end)?region\b/, a = 1; 21160 while (++n < s) { 21161 t = e.getLine(n); 21162 var f = u.exec(t); 21163 if (!f) continue; 21164 f[1] ? a-- : a++; 21165 if (!a) break 21166 } 21167 var l = n; 21168 if (l > o) return new i(o, r, l, t.length) 21169 } 21170 }.call(o.prototype) 21171}), define("ace/mode/matching_brace_outdent", ["require", "exports", "module", "ace/range"], function (e, t, n) { 21172 "use strict"; 21173 var r = e("../range").Range, i = function () { 21174 }; 21175 (function () { 21176 this.checkOutdent = function (e, t) { 21177 return /^\s+$/.test(e) ? /^\s*\}/.test(t) : !1 21178 }, this.autoOutdent = function (e, t) { 21179 var n = e.getLine(t), i = n.match(/^(\s*\})/); 21180 if (!i) return 0; 21181 var s = i[1].length, o = e.findMatchingBracket({row: t, column: s}); 21182 if (!o || o.row == t) return 0; 21183 var u = this.$getIndent(e.getLine(o.row)); 21184 e.replace(new r(t, 0, t, s - 1), u) 21185 }, this.$getIndent = function (e) { 21186 return e.match(/^\s*/)[0] 21187 } 21188 }).call(i.prototype), t.MatchingBraceOutdent = i 21189}
21189), define("ace/mode/hxl_completions", ["require", "exports", "module", "ace/token_iterator"], function (e, t, n) { 21190 "use strict"; 21191 var r = e("../token_iterator").TokenIterator, i = function () { 21192 }; 21193 (function () { 21194 function e(e, t) { 21195 return e && e.hasOwnProperty(t) ? e[t] : undefined 21196 } 21197 21198 function t(e) { 21199 return e.value === "/" && e.type !== "comment.line" 21200 } 21201 21202 function n(e) { 21203 return e.type === "identifier.tree" || e.type === "variable.language" 21204 } 21205 21206 function i(e) { 21207 return e.type === "variable.language" 21208 } 21209 21210 function s() { 21211 var e = { 21212 data: {pattern: {name: 0, attr: 0, items: {subitem: {name: 0, value: 0}}}}, 21213 cfg: {name: 0}, 21214 "in": {expand: 0, type: {tailor: 0, file: 0}}, 21215 out: {output: 0} 21216 }; 21217 if (window.hyperix && window.hyperix.__autocomplete__) var t = window.hyperix.__autocomplete__; else var t = e; 21218 return t 21219 } 21220 21221 function o(e, s, o) { 21222 var a = s.getTokenAt(o.row, o.column), f = new r(s, 0, 0), l = f.getCurrentToken(), c = !1, h = [], p = []; 21223 while (l) c ? n(l) ? a !== l && h.push(l.value) : t(l) || (c = !1, p.push(h), h = []) : i(l) && (c = !0, h.push(l.value)), l = f.stepForward(); 21224 return u(p) 21225 } 21226 21227 function u(e) { 21228 var t = {}; 21229 return e.forEach(function (e) { 21230 var n = t; 21231 for (var r = 0; r < e.length; r++) n.hasOwnProperty(e[r]) ? n = n[e[r]] : (n[e[r]] = {}, n = n[e[r]]) 21232 }), t 21233 } 21234 21235 this.identifierRegexps = [/[a-zA-Z_0-9\-\u00A2-\uFFFF]/], this.getCompletions = function (e, t, n, r, i) { 21236 var s = this.getKeywordCompletions(e, t, n, r), o = this.getPathsCompletions(e, t, n, r), 21237 u = this.getOperationCompletions(e, t, n, r), a = this.getAgentsCompletions(e, t, n, r), 21238 f = [].concat(s, o, u, a); 21239 i(null, f) 21240 }, this.getPathsCompletions = function (u, a, f, l) { 21241 var c = new r(a, f.row, f.column), h = c.getCurrentToken(), p = [], d = !0; 21242 h && (n(h) ? h = c.stepBackward() : t(h) && (d = !0)); 21243 while (h && (t(h) || n(h))) n(h) && p.unshift(h.value), i(h) && (d = !1), h = c.stepBackward(); 21244 var v = s(), m = o(u, a, f), g = p.reduce(e, v), y = p.reduce(e, m); 21245 if (g && !d) { 21246 var b = Object.keys(g).map(function (e) { 21247 return {caption: e, snippet: e, meta: "id", score: 800} 21248 }); 21249 return b 21250 } 21251 if (y && !d) { 21252 var b = Object.keys(y).map(function (e) { 21253 return {caption: e, snippet: e, meta: "id", score: 900} 21254 }); 21255 return b 21256 } 21257 return [] 21258 }, this.getKeywordCompletions = function (e, t, n, r) { 21259 var i = t.$mode.$keywordList.map(function (e) { 21260 return {caption: e, snippet: e, score: 500, meta: "keyword"} 21261 }); 21262 return i 21263 }, this.getOperationList = function () { 21264 var e = { 21265 getDisplayContent: { 21266 "in": { 21267 urlPath: 0, 21268 urlContext: 0, 21269 paramTree: 0, 21270 sessionTree: 0, 21271 attrKey: 0, 21272 attrData: 0, 21273 rowData: 0, 21274 rowErrors: 0 21275 }, out: {content: 0, attrData: 0, rowData: 0, rowErrors: 0} 21276 }, 21277 getEditContent: {"in": {}, out: {}}, 21278 getHiddenContent: {"in": {}, out: {}}, 21279 _getContent: {"in": {}, out: {}} 21280 }; 21281 if (window.hyperix && window.hyperix.__autocomplete__ && window.hyperix.__autocomplete__.this) var t = window.hyperix.__autocomplete__.this; else var t = e; 21282 return t 21283 }, this.getOperationCompletions = function (e, t, n, i) { 21284 var s = this.getOperationList(), o = new r(t, n.row, n.column), u = o.getCurrentToken(); 21285 u && u.type === "support.function.operation" && (u = o.stepBackward()); 21286 if (u && u.type === "keyword.operator" && u.value === ".") { 21287 u = o.stepBackward(); 21288 if (u && u.type === "keyword" && u.value === "this") { 21289 u = o.stepBackward(); 21290 if (u && u.type === "support.function.module" && u.value === "$") { 21291 var a = Object.keys(s).map(function (e) { 21292 var t = s[e].hasOwnProperty("in") ? Object.keys(s[e].in).map(function (e) { 21293 return " /" + e + "<br>" 21294 }).join("") : ""; 21295 t !== "" && (t = "<hr><i>Input Constraints:</i><br>" + t); 21296 var n = s[e].hasOwnProperty("out") ? Object.keys(s[e].out).map(function (e) { 21297 return " /" + e + "<br>" 21298 }).join("") : ""; 21299 n !== "" && (n = "<hr><i>Output Constraints:</i><br>" + n); 21300 if (t !== "" && n !== "") var r = "Operation <b>" + e + "</b>"; else var r = ""; 21301 if (r !== "") var i = r + t + n; else i = null; 21302 return {caption: e, snippet: e, meta: "operation", docHTML: i, score: 1e3} 21303 }); 21304 return a 21305 } 21306 } 21307 } 21308 }, this.getAgentsCompletions = function (e, t, n, r) { 21309 return [] 21310 } 21311 }).call(i.prototype), t.HxlCompletions = i 21312}), define("ace/mode/hxl", ["require", "exports", "module", "ace/lib/oop", "ace/mode/text", "ace/mode/hxl_highlight_rules", "ace/worker/wor
21312ker_client", "ace/mode/behaviour/hxl", "ace/mode/folding/cstyle", "ace/mode/matching_brace_outdent", "ace/mode/hxl_completions"], function (e, t, n) { 21313 var r = e("../lib/oop"), i = e("./text").Mode, s = e("./hxl_highlight_rules").HxlHighlightRules, 21314 o = e("../worker/worker_client").WorkerClient, u = e("./behaviour/hxl").HxlBehaviour, 21315 a = e("./folding/cstyle").FoldMode, f = e("./matching_brace_outdent").MatchingBraceOutdent, 21316 l = e("./hxl_completions").HxlCompletions, c = function () { 21317 this.HighlightRules = s, this.foldingRules = new a, this.$behaviour = new u, this.$outdent = new f, this.completer = new l; 21318 var e = new s; 21319 this.$keywordList = e.$keywordList 21320 }; 21321 r.inherits(c, i), function () { 21322 this.lineCommentStart = "//", this.blockComment = {start: "/*", end: "*/"}, this.createWorker = function (e) { 21323 var t = new o(["ace"], "ace/mode/hxl_worker", "HxlWorker"); 21324 return t.attachToDocument(e.getDocument()), t.on("lint", function (t) { 21325 e.setAnnotations(t.data) 21326 }), t.on("terminate", function () { 21327 e.clearAnnotations() 21328 }), t.call("changeOptions", [{ 21329 host: window.location.origin, 21330 // TODO 21331 // project: hyperix.constant.HYPERIX_IDE_URL, 21332 project: "/hyperix/ide/app", 21333 service: "codeValidationPage/_validate", 21334 parameter: "sourceCode" 21335 }]), t 21336 }, this.$id = "ace/mode/hxl" 21337 }.call(c.prototype), t.Mode = c 21338}) 21339 21340define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"comment.doc.tag",regex:"@[\\w\\d_]+"},s.getTagRule(),{defaultToken:"comment.doc",caseInsensitive:!0}]}};r.inherits(s,i),s.getTagRule=function(e){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},s.getStartRule=function(e){return{token:"comment.doc",regex:"\\/\\*(?=\\*)",next:e}},s.getEndRule=function(e){return{token:"comment.doc",regex:"\\*\\/",next:e}},t.DocCommentHighlightRules=s}),define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";function a(){var e=o.replace("\\d","\\d\\-"),t={onMatch:function(e,t,n){var r=e.charAt(1)=="/"?2:1;if(r==1)t!=this.nextState?n.unshift(this.next,this.nextState,0):n.unshift(this.next),n[2]++;else if(r==2&&t==this.nextState){n[1]--;if(!n[1]||n[1]<0)n.shift(),n.shift()}return[{type:"meta.tag.punctuation."+(r==1?"":"end-")+"tag-open.xml",value:e.slice(0,r)},{type:"meta.tag.tag-name.xml",value:e.substr(r)}]},regex:"</?"+e+"",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(t);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,t,{include:"reference"},{defaultToken:"string"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(e,t,n){return t==n[0]&&n.shift(),e.length==2&&(n[0]==this.nextState&&n[1]--,(!n[1]||n[1]<0)&&n.splice(0,2)),this.next=n[0]||"start",[{type:this.token,value:e}]},nextState:"jsx"},n,f("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:e},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},t],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}
21340function f(e){return[{token:"comment",regex:/\/\*/,next:[i.getTagRule(),{token:"comment",regex:"\\*\\/",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[i.getTagRule(),{token:"comment",regex:"$|^",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var r=e("../lib/oop"),i=e("./doc_comment_highlight_rules").DocCommentHighlightRules,s=e("./text_highlight_rules").TextHighlightRules,o="[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*",u=function(e){var t=this.createKeywordMapper({"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|function|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},"identifier"),n="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",r="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)";this.$rules={no_regex:[i.getStartRule("doc-start"),f("no_regex"),{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["storage.type","punctuation.operator","support.function","punctuation.operator","entity.name.function","text","keyword.operator"],regex:"("+o+")(\\.)(prototype)(\\.)("+o+")(\\s*)(=)",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s+)(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","entity.name.function","text","paren.lparen"],regex:"(function)(\\s+)("+o+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:"from(?=\\s*('|\"))"},{token:"keyword",regex:"(?:"+n+")\\b",next:"start"},{token:["support.constant"],regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/},{token:t,regex:o},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~\/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/}
21340,{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:o},{regex:"",token:"empty",next:"no_regex"}],start:[i.getStartRule("doc-start"),f("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/}
21340,{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],function_arguments:[{token:"variable.parameter",regex:o},{token:"punctuation.operator",regex:"[, ]+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]};if(!e||!e.noES6)this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(e,t,n){this.next=e=="{"?this.nextState:"";if(e=="{"&&n.length)n.unshift("start",t);else if(e=="}"&&n.length){n.shift(),this.next=n.shift();if(this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1)return"paren.quasi.end"}return e=="{"?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:r},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]}),(!e||e.jsx!=0)&&a.call(this);this.embedRules(i,"doc-",[i.getEndRule("no_regex")]),this.normalizeRules()};r.inherits(u,s),t.JavaScriptHighlightRules=u}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
21340,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./javascript_highlight_rules").JavaScriptHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./behaviour/cstyle").CstyleBehaviour,f=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new a,this.foldingRules=new f};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e),s=i.tokens,o=i.state;if(s.length&&s[s.length-1].type=="comment")return r;if(e=="start"||e=="no_regex"){var u=t.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);u&&(r+=n)}else if(e=="doc-start"){if(o=="start"||o=="no_regex")return"";var u=t.match(/^\s*(\/?)\*/);u&&(u[1]&&(r+=" "),r+="* ")}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/javascript"}.call(l.prototype),t.Mode=l}),define("ace/mode/java_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./doc_comment_highlight_rules").DocCommentHighlightRules,s=e("./text_highlight_rules").TextHighlightRules,o=function(){var e="abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while|var",t="null|Infinity|NaN|undefined",n="AbstractMethodError|AssertionError|ClassCircularityError|ClassFormatError|Deprecated|EnumConstantNotPresentException|ExceptionInInitializerError|IllegalAccessError|IllegalThreadStateException|InstantiationError|InternalError|NegativeArraySizeException|NoSuchFieldError|Override|Process|ProcessBuilder|SecurityManager|StringIndexOutOfBoundsException|SuppressWarnings|TypeNotPresentException|UnknownError|UnsatisfiedLinkError|UnsupportedClassVersionError|VerifyError|InstantiationException|IndexOutOfBoundsException|ArrayIndexOutOfBoundsException|CloneNotSupportedException|NoSuchFieldException|IllegalArgumentException|NumberFormatException|SecurityException|Void|InheritableThreadLocal|IllegalStateException|InterruptedException|NoSuchMethodException|IllegalAccessException|UnsupportedOperationException|Enum|StrictMath|Package|Compiler|Readable|Runtime|StringBuilder|Math|IncompatibleClassChangeError|NoSuchMethodError|ThreadLocal|RuntimePermission|ArithmeticException|NullPointerException|Long|Integer|Short|Byte|Double|Number|Float|Character|Boolean|StackTraceElement|Appendable|StringBuffer|Iterable|ThreadGroup|Runnable|Thread|IllegalMonitorStateException|StackOverflowError|OutOfMemoryError|VirtualMachineError|ArrayStoreException|ClassCastException|LinkageError|NoClassDefFoundError|ClassNotFoundException|RuntimeException|Exception|ThreadDeath|Error|Throwable|System|ClassLoader|Cloneable|Class|CharSequence|Comparable|String|Object",r=this.createKeywordMapper({"variable.language":"this",keyword:e,"constant.language":t,"supp
21340ort.function":n},"identifier");this.$rules={start:[{token:"comment",regex:"\\/\\/.*$"},i.getStartRule("doc-start"),{token:"comment",regex:"\\/\\*",next:"comment"},{token:"string",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'},{token:"string",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F][0-9a-fA-F_]*|[bB][01][01_]*)[LlSsDdFfYy]?\b/},{token:"constant.numeric",regex:/[+-]?\d[\d_]*(?:(?:\.[\d_]*)?(?:[eE][+-]?[\d_]+)?)?[LlSsDdFfYy]?\b/},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{regex:"(open(?:\\s+))?module(?=\\s*\\w)",token:"keyword",next:[{regex:"{",token:"paren.lparen",next:[{regex:"}",token:"paren.rparen",next:"start"},{regex:"\\b(requires|transitive|exports|opens|to|uses|provides|with)\\b",token:"keyword"}]},{token:"text",regex:"\\s+"},{token:"identifier",regex:"\\w+"},{token:"punctuation.operator",regex:"."},{token:"text",regex:"\\s+"},{regex:"",next:"start"}]},{token:r,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"!|\\$|%|&|\\*|\\-\\-|\\-|\\+\\+|\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\|\\||\\?\\:|\\*=|%=|\\+=|\\-=|&=|\\^=|\\b(?:in|instanceof|new|delete|typeof|void)"},{token:"lparen",regex:"[[({]"},{token:"rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],comment:[{token:"comment",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]},this.embedRules(i,"doc-",[i.getEndRule("start")]),this.normalizeRules()};r.inherits(o,s),t.JavaHighlightRules=o}),define("ace/mode/folding/java",["require","exports","module","ace/lib/oop","ace/mode/folding/cstyle","ace/range"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("./cstyle").FoldMode,s=e("../../range").Range,o=t.FoldMode=function(){};r.inherits(o,i),function(){this.importRegex=/^import /,this.getCStyleFoldWidget=this.getFoldWidget,this.getFoldWidget=function(e,t,n){if(t==="markbegin"){var r=e.getLine(n);if(this.importRegex.test(r))if(n==0||!this.importRegex.test(e.getLine(n-1)))return"start"}return this.getCStyleFoldWidget(e,t,n)},this.getCstyleFoldWidgetRange=this.getFoldWidgetRange,this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n),o=i.match(this.importRegex);if(!o||t!=="markbegin")return this.getCstyleFoldWidgetRange(e,t,n,r);var u=o[0].length,a=e.getLength(),f=n,l=n;while(++n<a){var i=e.getLine(n);if(i.match(/^\s*$/))continue;if(!i.match(this.importRegex))break;l=n}if(l>f){var c=e.getLine(l).length;return new s(f,u,l,c)}}}.call(o.prototype)}),define("ace/mode/java",["require","exports","module","ace/lib/oop","ace/mode/javascript","ace/mode/java_highlight_rules","ace/mode/folding/java"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./javascript").Mode,s=e("./java_highlight_rules").JavaHighlightRules,o=e("./folding/java").FoldMode,u=function(){i.call(this),this.HighlightRules=s,this.foldingRules=new o};r.inherits(u,i),function(){this.createWorker=function(e){return null},this.$id="ace/mode/java"}.call(u.prototype),t.Mode=u}); (function() { 21341 window.require(["ace/mode/java"], function(m) { 21342 if (typeof module == "object" && typeof exports == "object" && module) { 21343 module.exports = m; 21344 } 21345 }); 21346 })(); 21347 21348 21349define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"comment.doc.tag",regex:"@[\\w\\d_]+"},s.getTagRule(),{defaultToken:"comment.doc",caseInsensitive:!0}]}};r.inherits(s,i),s.getTagRule=function(e){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},s.getStartRule=function(e){return{token:"comment.doc",regex:"\\/\\*(?=\\*)",next:e}},s.getEndRule=function(e){return{token:"comment.doc",regex:"\\*\\/",next:e}},t.DocCommentHighlightRules=s}),define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";function a(){var e=o.replace("\\d","\\d\\-"),t={onMatch:function(e,t,n){var r=e.charAt(1)=="/"?2:1;if(r==1)t!=this.nextState?n.unshift(this.next,this.nextState,0):n.unshift(this.next),n[2]++;else if(r==2&&t==this.nextState){n[1]--;if(!n[1]||n[1]<0)n.shift(),n.shift()}return[{type:"meta.tag.punctuation."+(r==1?"":"end-")+"tag-open.xml",value:e.slice(0,r)},{type:"meta.tag.tag-name.xml",value:e.substr(r)}]},regex:"</?"+e+"",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(t);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,t,{include:"reference"},{defaultToken:"string"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(e,t,n){return t==n[0]&&n.shift(),e.length==2&&(n[0]==this.nextState&&n[1]--,(!n[1]||n[1]<0)&&n.splice(0,2)),this.next=n[0]||"start",[{type:this.token,value:e}]},nextState:"jsx"},n,f("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:e},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]}
21349,t],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function f(e){return[{token:"comment",regex:/\/\*/,next:[i.getTagRule(),{token:"comment",regex:"\\*\\/",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[i.getTagRule(),{token:"comment",regex:"$|^",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var r=e("../lib/oop"),i=e("./doc_comment_highlight_rules").DocCommentHighlightRules,s=e("./text_highlight_rules").TextHighlightRules,o="[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*",u=function(e){var t=this.createKeywordMapper({"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|function|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},"identifier"),n="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",r="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)";this.$rules={no_regex:[i.getStartRule("doc-start"),f("no_regex"),{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["storage.type","punctuation.operator","support.function","punctuation.operator","entity.name.function","text","keyword.operator"],regex:"("+o+")(\\.)(prototype)(\\.)("+o+")(\\s*)(=)",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s+)(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","entity.name.function","text","paren.lparen"],regex:"(function)(\\s+)("+o+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:"from(?=\\s*('|\"))"},{token:"keyword",regex:"(?:"+n+")\\b",next:"start"},{token:["support.constant"],regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/},{token:t,regex:o},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~\/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/}
21349,{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:o},{regex:"",token:"empty",next:"no_regex"}],start:[i.getStartRule("doc-start"),f("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/}
21349,{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],function_arguments:[{token:"variable.parameter",regex:o},{token:"punctuation.operator",regex:"[, ]+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]};if(!e||!e.noES6)this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(e,t,n){this.next=e=="{"?this.nextState:"";if(e=="{"&&n.length)n.unshift("start",t);else if(e=="}"&&n.length){n.shift(),this.next=n.shift();if(this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1)return"paren.quasi.end"}return e=="{"?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:r},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]}),(!e||e.jsx!=0)&&a.call(this);this.embedRules(i,"doc-",[i.getEndRule("no_regex")]),this.normalizeRules()};r.inherits(u,s),t.JavaScriptHighlightRules=u}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
21349,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./javascript_highlight_rules").JavaScriptHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./behaviour/cstyle").CstyleBehaviour,f=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new a,this.foldingRules=new f};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e),s=i.tokens,o=i.state;if(s.length&&s[s.length-1].type=="comment")return r;if(e=="start"||e=="no_regex"){var u=t.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);u&&(r+=n)}else if(e=="doc-start"){if(o=="start"||o=="no_regex")return"";var u=t.match(/^\s*(\/?)\*/);u&&(u[1]&&(r+=" "),r+="* ")}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/javascript"}.call(l.prototype),t.Mode=l}); (function() { 21350 window.require(["ace/mode/javascript"], function(m) { 21351 if (typeof module == "object" && typeof exports == "object" && module) { 21352 module.exports = m; 21353 } 21354 }); 21355 })(); 21356 21357 21358define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"text",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"comment",regex:"\\/\\/.*$"},{token:"comment.start",regex:"\\/\\*",next:"comment"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],comment:[{token:"comment.end",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]}};r.inherits(s,i),t.JsonHighlightRules=s}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
21358,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./json_highlight_rules").JsonHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("./behaviour/cstyle").CstyleBehaviour,a=e("./folding/cstyle").FoldMode,f=e("../worker/worker_client").WorkerClient,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(l,i),function(){this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t);if(e=="start"){var i=t.match(/^.*[\{\(\[]\s*$/);i&&(r+=n)}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new f(["ace"],"ace/mode/json_worker","JsonWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/json"}.call(l.prototype),t.Mode=l}); (function() { 21359 window.require(["ace/mode/json"], function(m) { 21360 if (typeof module == "object" && typeof exports == "object" && module) { 21361 module.exports = m; 21362 } 21363 }); 21364 })(); 21365 21366 21367define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=t.supportType="align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-ju
21367stify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index",u=t.supportFunction="rgb|rgba|url|attr|counter|counters",a=t.supportConstant="absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom",f=t.supportConstantColor="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen",l=t.supportConstantFonts="arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",c=t.numRe="\\-?(?:(?:[0-9]+(?:\\.[0-9]+)?)|(?:\\.[0-9]+))",h=t.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",p=t.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",d=function(){var e=this.createKeywordMapper({"supp
21367ort.function":u,"support.constant":a,"support.type":o,"support.constant.color":f,"support.constant.fonts":l},"text",!0);this.$rules={start:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"ruleset"},{token:"paren.rparen",regex:"\\}"},{token:"string",regex:"@(?!viewport)",next:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"keyword",regex:"%"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant.numeric",regex:c},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"start"},{token:"paren.rparen",regex:"\\}",next:"start"},{token:"string",regex:";",next:"start"},{token:"keyword",regex:"(?:media|supports|document|charset|import|namespace|media|supports|document|page|font|keyframes|viewport|counter-style|font-feature-values|swash|ornaments|annotation|stylistic|styleset|character-variant)"}],comments:[{token:"comment",regex:"\\/\\*",push:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}]}],ruleset:[{regex:"-(webkit|ms|moz|o)-",token:"text"},{token:"punctuation.operator",regex:"[:;]"},{token:"paren.rparen",regex:"\\}",next:"start"},{include:["strings","url","comments"]},{token:["constant.numeric","keyword"],regex:"("+c+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:c},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:h},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:p},{include:"url"},{token:e,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{caseInsensitive:!0}],url:[{token:"support.function",regex:"(?:url(:?-prefix)?|domain|regexp)\\(",push:[{token:"support.function",regex:"\\)",next:"pop"},{defaultToken:"string"}]}],strings:[{token:"string.start",regex:"'",push:[{token:"string.end",regex:"'|$",next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]},{token:"string.start",regex:'"',push:[{token:"string.end",regex:'"|$',next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]}],escapes:[{token:"constant.language.escape",regex:/\\([a-fA-F\d]{1,6}|[^a-fA-F\d])/}]},this.normalizeRules()};r.inherits(d,s),t.CssHighlightRules=d}),define("ace/mode/less_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules","ace/mode/css_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=e("./css_highlight_rules"),o=function(){var e="@import|@media|@font-face|@keyframes|@-webkit-keyframes|@supports|@charset|@plugin|@namespace|@document|@page|@viewport|@-ms-viewport|or|and|when|not",t=e.split("|"),n=s.supportType.split("|"),r=this.createKeywordMapper({"support.constant":s.supportConstant,keyword:e,"support.constant.color":s.supportConstantColor,"support.constant.fonts":s.supportConstantFonts},"identifier",!0),i="\\-?(?:(?:[0-9]+)|(?:[0-9]*\\.[0-9]+))";this.$rules={start:[{token:"comment",regex:"\\/\\/.*$"},{token:"comment",regex:"\\/\\*",next:"comment"},{token:"string",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'},{token:"string",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:["constant.numeric","keyword"],regex:"("+i+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vm|vw|%)"},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:"constant.numeric",regex:i},{token:["support.function","paren.lparen","string","paren.rparen"],regex:"(url)(\\()(.*)(\\))"},{token:["support.function","paren.lparen"],regex:"(:extend|[a-z0-9_\\-]+)(\\()"},{token:function(e){return t.indexOf(e.toLowerCase())>-1?"keyword":"variable"},regex:"[@\\$][a-z0-9_\\-@\\$]*\\b"},{token:"variable",regex:"[@\\$]\\{[a-z0-9_\\-@\\$]*\\}"},{token:function(e,t){return n.indexOf(e.toLowerCase())>
21367-1?["support.type.property","text"]:["support.type.unknownProperty","text"]},regex:"([a-z0-9-_]+)(\\s*:)"},{token:"keyword",regex:"&"},{token:r,regex:"\\-?[@a-z_][@a-z0-9_\\-]*"},{token:"variable.language",regex:"#[a-z0-9-_]+"},{token:"variable.language",regex:"\\.[a-z0-9-_]+"},{token:"variable.language",regex:":[a-z_][a-z0-9-_]*"},{token:"constant",regex:"[a-z0-9-_]+"},{token:"keyword.operator",regex:"<|>|<=|>=|=|!=|-|%|\\+|\\*"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"},{caseInsensitive:!0}],comment:[{token:"comment",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]},this.normalizeRules()};r.inherits(o,i),t.LessHighlightRules=o}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/behaviour/css",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/mode/behaviour/cstyle","ace/token_iterator"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("./cstyle").CstyleBehaviour,o=e("../../token_iterator").TokenIterator,u=function(){this.inherit(s),this.add("colon","insertion",function(e,t,n,r,i){if(i===":"&&n.selection.isEmpty()){var s=n.getCursorPosition(),u=new o(r,s.row,s.column),a=u.getCurrentToken();a&&a.value.match(/\s+/)&&(a=u.stepBackward());if(a&&a.type==="support.type"){var f=r.doc.getLine(s.row),l=f.substring(s.column,s.column+1);if(l===":")return{text:"",selection:[1,1]};if(/^(\s+[^;]|\s*$)/.test(f.substring(s.column)))return{text:":;",selection:[1,1]}}}}),this.add("colon","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s===":"){var u=n.getCursorPosition(),a=new o(r,u.row,u.column),f=a.getCurrentToken();f&&f.value.match(/\s+/)&&(f=a.stepBackward());if(f&&f.type==="support.type"){var l=r.doc.getLine(i.start.row),c=l.substring(i.end.column,i.end.column+1);if(c===";")return i.end.column++,i}}}),this.add("semicolon","insertion",function(e,t,n,r,i){if(i===";"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row),u=o.substring(s.column,s.column+1);if(u===";")return{text:"",selection:[1,1]}}}),this.add("!important","insertion",function(e,t,n,r,i){if(i==="!"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row);if(/^\s*(;|}|$)/.test(o.substring(s.column)))return{text:"!important",selection:[10,10]}}})};r.inherits(u,s),t.CssBehaviour=u}),define("ace/mode/css_completions",["require","exports","module"],function(e,t,n){"use strict";var r={background:{"#$0":1},"background-color":{"#$0":1,transparent:1,fixed:1},"background-image":{"url('/$0')":1},"background-repeat":{repeat:1,"repeat-x":1,"repeat-y":1,"no-repeat":1,inherit:1},"background-position":{bottom:2,center:2,left:2,right:2,top:2,inherit:2},"background-attachment":{scroll:1,fixed:1},"background-size":{cover:1,contain:1},"background-clip":{"border-box":1,"padding-box":1,"content-box":1},"background-origin":{"border-box":1,"padding-box":1,"content-box":1},border:{"solid $0":1,"dashed $0":1,"dotted $0":1,"#$0":1},"border-color":{"#$0":1},"border-style":{solid:2,dashed:2,dotted:2,"double":2,groove:2,hidden:2,inherit:2,inset:2,none:2,outset:2,ridged:2},"border-collapse":{collapse:1,separate:1},bottom:{px:1,em:1,"%":1},clear:{left:1,right:1,both:1,none:1},color:{"#$0":1,"rgb(#$00,0,0)":1},cursor:{"default":1,pointer:1,move:1,text:1,wait:1,help:1,progress:1,"n-resize":1,"ne-resize":1,"e-resize":1,"se-resize":1,"s-resize":1,"sw-resize":1,"w-resize":1,"nw-resize":1},display:{none:1,block:1,inline:1,"inline-block":1,"table-cell":1},"empty-cells":{show:1,hide:1},"float":{left:1,right:1,none:1},"font-family":{Arial:2,"Comic Sans MS":2,Consolas:2,"Courier New":2,Courier:2,Georgia:2,Monospace:2,"Sans-Serif":2,"Segoe UI":2,Tahoma:2,"Times New Roman":2,"Trebuchet MS":2,Verdana:1},"font-size":{px:1,em:1,"%":1},"font-weight":{bold:1,normal:1},"font-style":{italic:1,normal:1},"font-variant":{normal:1,"small-caps":1},height:{px:1,em:1,"%":1},left:{px:1,em:1,"%":1},"letter-spacing":{normal:1},"line-height":{normal:1}
21367,"list-style-type":{none:1,disc:1,circle:1,square:1,decimal:1,"decimal-leading-zero":1,"lower-roman":1,"upper-roman":1,"lower-greek":1,"lower-latin":1,"upper-latin":1,georgian:1,"lower-alpha":1,"upper-alpha":1},margin:{px:1,em:1,"%":1},"margin-right":{px:1,em:1,"%":1},"margin-left":{px:1,em:1,"%":1},"margin-top":{px:1,em:1,"%":1},"margin-bottom":{px:1,em:1,"%":1},"max-height":{px:1,em:1,"%":1},"max-width":{px:1,em:1,"%":1},"min-height":{px:1,em:1,"%":1},"min-width":{px:1,em:1,"%":1},overflow:{hidden:1,visible:1,auto:1,scroll:1},"overflow-x":{hidden:1,visible:1,auto:1,scroll:1},"overflow-y":{hidden:1,visible:1,auto:1,scroll:1},padding:{px:1,em:1,"%":1},"padding-top":{px:1,em:1,"%":1},"padding-right":{px:1,em:1,"%":1},"padding-bottom":{px:1,em:1,"%":1},"padding-left":{px:1,em:1,"%":1},"page-break-after":{auto:1,always:1,avoid:1,left:1,right:1},"page-break-before":{auto:1,always:1,avoid:1,left:1,right:1},position:{absolute:1,relative:1,fixed:1,"static":1},right:{px:1,em:1,"%":1},"table-layout":{fixed:1,auto:1},"text-decoration":{none:1,underline:1,"line-through":1,blink:1},"text-align":{left:1,right:1,center:1,justify:1},"text-transform":{capitalize:1,uppercase:1,lowercase:1,none:1},top:{px:1,em:1,"%":1},"vertical-align":{top:1,bottom:1},visibility:{hidden:1,visible:1},"white-space":{nowrap:1,normal:1,pre:1,"pre-line":1,"pre-wrap":1},width:{px:1,em:1,"%":1},"word-spacing":{normal:1},filter:{"alpha(opacity=$0100)":1},"text-shadow":{"$02px 2px 2px #777":1},"text-overflow":{"ellipsis-word":1,clip:1,ellipsis:1},"-moz-border-radius":1,"-moz-border-radius-topright":1,"-moz-border-radius-bottomright":1,"-moz-border-radius-topleft":1,"-moz-border-radius-bottomleft":1,"-webkit-border-radius":1,"-webkit-border-top-right-radius":1,"-webkit-border-top-left-radius":1,"-webkit-border-bottom-right-radius":1,"-webkit-border-bottom-left-radius":1,"-moz-box-shadow":1,"-webkit-box-shadow":1,transform:{"rotate($00deg)":1,"skew($00deg)":1},"-moz-transform":{"rotate($00deg)":1,"skew($00deg)":1},"-webkit-transform":{"rotate($00deg)":1,"skew($00deg)":1}},i=function(){};(function(){this.completionsDefined=!1,this.defineCompletions=function(){if(document){var e=document.createElement("c").style;for(var t in e){if(typeof e[t]!="string")continue;var n=t.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()});r.hasOwnProperty(n)||(r[n]=1)}}this.completionsDefined=!0},this.getCompletions=function(e,t,n,r){this.completionsDefined||this.defineCompletions();var i=t.getTokenAt(n.row,n.column);if(!i)return[];if(e==="ruleset"){var s=t.getLine(n.row).substr(0,n.column);return/:[^;]+$/.test(s)?(/([\w\-]+):[^:]*$/.test(s),this.getPropertyValueCompletions(e,t,n,r)):this.getPropertyCompletions(e,t,n,r)}return[]},this.getPropertyCompletions=function(e,t,n,i){var s=Object.keys(r);return s.map(function(e){return{caption:e,snippet:e+": $0;",meta:"property",score:1e6}})},this.getPropertyValueCompletions=function(e,t,n,i){var s=t.getLine(n.row).substr(0,n.column),o=(/([\w\-]+):[^:]*$/.exec(s)||{})[1];if(!o)return[];var u=[];return o in r&&typeof r[o]=="object"&&(u=Object.keys(r[o])),u.map(function(e){return{caption:e,snippet:e,meta:"property value",score:1e6}})}}).call(i.prototype),t.CssCompletions=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
21367,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/less",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/less_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/css","ace/mode/css_completions","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./less_highlight_rules").LessHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("./behaviour/css").CssBehaviour,a=e("./css_completions").CssCompletions,f=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new u,this.$completer=new a,this.foldingRules=new f};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e).tokens;if(i.length&&i[i.length-1].type=="comment")return r;var s=t.match(/^.*\{\s*$/);return s&&(r+=n),r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.getCompletions=function(e,t,n,r){return this.$completer.getCompletions("ruleset",t,n,r)},this.$id="ace/mode/less"}.call(l.prototype),t.Mode=l}); (function() { 21368 window.require(["ace/mode/less"], function(m) { 21369 if (typeof module == "object" && typeof exports == "object" && module) { 21370 module.exports = m; 21371 } 21372 }); 21373 })(); 21374 21375 21376define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=t.supportType="align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-ju
21376stify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index",u=t.supportFunction="rgb|rgba|url|attr|counter|counters",a=t.supportConstant="absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom",f=t.supportConstantColor="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen",l=t.supportConstantFonts="arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",c=t.numRe="\\-?(?:(?:[0-9]+(?:\\.[0-9]+)?)|(?:\\.[0-9]+))",h=t.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",p=t.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",d=function(){var e=this.createKeywordMapper({"supp
21376ort.function":u,"support.constant":a,"support.type":o,"support.constant.color":f,"support.constant.fonts":l},"text",!0);this.$rules={start:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"ruleset"},{token:"paren.rparen",regex:"\\}"},{token:"string",regex:"@(?!viewport)",next:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"keyword",regex:"%"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant.numeric",regex:c},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"start"},{token:"paren.rparen",regex:"\\}",next:"start"},{token:"string",regex:";",next:"start"},{token:"keyword",regex:"(?:media|supports|document|charset|import|namespace|media|supports|document|page|font|keyframes|viewport|counter-style|font-feature-values|swash|ornaments|annotation|stylistic|styleset|character-variant)"}],comments:[{token:"comment",regex:"\\/\\*",push:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}]}],ruleset:[{regex:"-(webkit|ms|moz|o)-",token:"text"},{token:"punctuation.operator",regex:"[:;]"},{token:"paren.rparen",regex:"\\}",next:"start"},{include:["strings","url","comments"]},{token:["constant.numeric","keyword"],regex:"("+c+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:c},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:h},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:p},{include:"url"},{token:e,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{caseInsensitive:!0}],url:[{token:"support.function",regex:"(?:url(:?-prefix)?|domain|regexp)\\(",push:[{token:"support.function",regex:"\\)",next:"pop"},{defaultToken:"string"}]}],strings:[{token:"string.start",regex:"'",push:[{token:"string.end",regex:"'|$",next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]},{token:"string.start",regex:'"',push:[{token:"string.end",regex:'"|$',next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]}],escapes:[{token:"constant.language.escape",regex:/\\([a-fA-F\d]{1,6}|[^a-fA-F\d])/}]},this.normalizeRules()};r.inherits(d,s),t.CssHighlightRules=d}),define("ace/mode/scss_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules","ace/mode/css_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=e("./css_highlight_rules"),u=function(){var e=i.arrayToMap(o.supportType.split("|")),t=i.arrayToMap("hsl|hsla|rgb|rgba|url|attr|counter|counters|abs|adjust_color|adjust_hue|alpha|join|blue|ceil|change_color|comparable|complement|darken|desaturate|floor|grayscale|green|hue|if|invert|join|length|lighten|lightness|mix|nth|opacify|opacity|percentage|quote|red|round|saturate|saturation|scale_color|transparentize|type_of|unit|unitless|unquote".split("|")),n=i.arrayToMap(o.supportConstant.split("|")),r=i.arrayToMap(o.supportConstantColor.split("|")),s=i.arrayToMap("@mixin|@extend|@include|@import|@media|@debug|@warn|@if|@for|@each|@while|@else|@font-face|@-webkit-keyframes|if|and|!default|module|def|end|declare".split("|")),u=i.arrayToMap("a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdo|big|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|dir|div|dl|dt|em|embed|fieldset|figcaption|figure|font|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|img|input|ins|keygen|kbd|label|legend|li|link|map|mark|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|u|ul|var|video|wbr|xmp".split("|")),a="\\-?(?:(?:[0-9]+)|(?:[0-9]*\\.[0-9]+))";
21376this.$rules={start:[{token:"comment",regex:"\\/\\/.*$"},{token:"comment",regex:"\\/\\*",next:"comment"},{token:"string",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'},{token:"string",regex:'["].*\\\\$',next:"qqstring"},{token:"string",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"string",regex:"['].*\\\\$",next:"qstring"},{token:"constant.numeric",regex:a+"(?:ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:"constant.numeric",regex:a},{token:["support.function","string","support.function"],regex:"(url\\()(.*)(\\))"},{token:function(i){return e.hasOwnProperty(i.toLowerCase())?"support.type":s.hasOwnProperty(i)?"keyword":n.hasOwnProperty(i)?"constant.language":t.hasOwnProperty(i)?"support.function":r.hasOwnProperty(i.toLowerCase())?"support.constant.color":u.hasOwnProperty(i.toLowerCase())?"variable.language":"text"},regex:"\\-?[@a-z_][@a-z0-9_\\-]*"},{token:"variable",regex:"[a-z_\\-$][a-z0-9_\\-$]*\\b"},{token:"variable.language",regex:"#[a-z0-9-_]+"},{token:"variable.language",regex:"\\.[a-z0-9-_]+"},{token:"variable.language",regex:":[a-z0-9-_]+"},{token:"constant",regex:"[a-z0-9-_]+"},{token:"keyword.operator",regex:"<|>|<=|>=|==|!=|-|%|#|\\+|\\$|\\+|\\*"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"},{caseInsensitive:!0}],comment:[{token:"comment",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}],qqstring:[{token:"string",regex:'(?:(?:\\\\.)|(?:[^"\\\\]))*?"',next:"start"},{token:"string",regex:".+"}],qstring:[{token:"string",regex:"(?:(?:\\\\.)|(?:[^'\\\\]))*?'",next:"start"},{token:"string",regex:".+"}]}};r.inherits(u,s),t.ScssHighlightRules=u}),define("ace/mode/sass_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/scss_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./scss_highlight_rules").ScssHighlightRules,o=function(){s.call(this);var e=this.$rules.start;e[1].token=="comment"&&(e.splice(1,1,{onMatch:function(e,t,n){return n.unshift(this.next,-1,e.length-2,t),"comment"},regex:/^\s*\/\*/,next:"comment"},{token:"error.invalid",regex:"/\\*|[{;}]"},{token:"support.type",regex:/^\s*:[\w\-]+\s/}),this.$rules.comment=[{regex:/^\s*/,onMatch:function(e,t,n){return n[1]===-1&&(n[1]=Math.max(n[2],e.length-1)),e.length<=n[1]?(n.shift(),n.shift(),n.shift(),this.next=n.shift(),"text"):(this.next="","comment")},next:"start"},{defaultToken:"comment"}])};r.inherits(o,s),t.SassHighlightRules=o}),define("ace/mode/folding/coffee",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("./fold_mode").FoldMode,s=e("../../range").Range,o=t.FoldMode=function(){};r.inherits(o,i),function(){this.getFoldWidgetRange=function(e,t,n){var r=this.indentationBlock(e,n);if(r)return r;var i=/\S/,o=e.getLine(n),u=o.search(i);if(u==-1||o[u]!="#")return;var a=o.length,f=e.getLength(),l=n,c=n;while(++n<f){o=e.getLine(n);var h=o.search(i);if(h==-1)continue;if(o[h]!="#")break;c=n}if(c>l){var p=e.getLine(c).length;return new s(l,a,c,p)}},this.getFoldWidget=function(e,t,n){var r=e.getLine(n),i=r.search(/\S/),s=e.getLine(n+1),o=e.getLine(n-1),u=o.search(/\S/),a=s.search(/\S/);if(i==-1)return e.foldWidgets[n-1]=u!=-1&&u<a?"start":"","";if(u==-1){if(i==a&&r[i]=="#"&&s[i]=="#")return e.foldWidgets[n-1]="",e.foldWidgets[n+1]="","start"}else if(u==i&&r[i]=="#"&&o[i]=="#"&&e.getLine(n-2).search(/\S/)==-1)return e.foldWidgets[n-1]="start",e.foldWidgets[n+1]="","";return u!=-1&&u<i?e.foldWidgets[n-1]="start":e.foldWidgets[n-1]="",i<a?"start":""}}.call(o.prototype)}),define("ace/mode/sass",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/sass_highlight_rules","ace/mode/folding/coffee"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./sass_highlight_rules").SassHighlightRules,o=e("./folding/coffee").FoldMode,u=function(){this.HighlightRules=s,this.foldingRules=new o,this.$behaviour=this.$defaultBehaviour};r.inherits(u,i),function(){this.lineCommentStart="//",this.$id="ace/mode/sass"}.call(u.prototype),t.Mode=u}); (function() { 21377 window.require(["ace/mode/sass"], function(m) { 21378 if (typeof module == "object" && typeof exports == "object" && module) { 21379 module.exports = m; 21380 } 21381 }); 21382 })(); 21383 21384 21385define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=t.supportType="align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-ju
21385stify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index",u=t.supportFunction="rgb|rgba|url|attr|counter|counters",a=t.supportConstant="absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom",f=t.supportConstantColor="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen",l=t.supportConstantFonts="arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",c=t.numRe="\\-?(?:(?:[0-9]+(?:\\.[0-9]+)?)|(?:\\.[0-9]+))",h=t.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",p=t.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",d=function(){var e=this.createKeywordMapper({"supp
21385ort.function":u,"support.constant":a,"support.type":o,"support.constant.color":f,"support.constant.fonts":l},"text",!0);this.$rules={start:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"ruleset"},{token:"paren.rparen",regex:"\\}"},{token:"string",regex:"@(?!viewport)",next:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"keyword",regex:"%"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant.numeric",regex:c},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"start"},{token:"paren.rparen",regex:"\\}",next:"start"},{token:"string",regex:";",next:"start"},{token:"keyword",regex:"(?:media|supports|document|charset|import|namespace|media|supports|document|page|font|keyframes|viewport|counter-style|font-feature-values|swash|ornaments|annotation|stylistic|styleset|character-variant)"}],comments:[{token:"comment",regex:"\\/\\*",push:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}]}],ruleset:[{regex:"-(webkit|ms|moz|o)-",token:"text"},{token:"punctuation.operator",regex:"[:;]"},{token:"paren.rparen",regex:"\\}",next:"start"},{include:["strings","url","comments"]},{token:["constant.numeric","keyword"],regex:"("+c+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:c},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:h},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:p},{include:"url"},{token:e,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{caseInsensitive:!0}],url:[{token:"support.function",regex:"(?:url(:?-prefix)?|domain|regexp)\\(",push:[{token:"support.function",regex:"\\)",next:"pop"},{defaultToken:"string"}]}],strings:[{token:"string.start",regex:"'",push:[{token:"string.end",regex:"'|$",next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]},{token:"string.start",regex:'"',push:[{token:"string.end",regex:'"|$',next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]}],escapes:[{token:"constant.language.escape",regex:/\\([a-fA-F\d]{1,6}|[^a-fA-F\d])/}]},this.normalizeRules()};r.inherits(d,s),t.CssHighlightRules=d}),define("ace/mode/scss_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules","ace/mode/css_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=e("./css_highlight_rules"),u=function(){var e=i.arrayToMap(o.supportType.split("|")),t=i.arrayToMap("hsl|hsla|rgb|rgba|url|attr|counter|counters|abs|adjust_color|adjust_hue|alpha|join|blue|ceil|change_color|comparable|complement|darken|desaturate|floor|grayscale|green|hue|if|invert|join|length|lighten|lightness|mix|nth|opacify|opacity|percentage|quote|red|round|saturate|saturation|scale_color|transparentize|type_of|unit|unitless|unquote".split("|")),n=i.arrayToMap(o.supportConstant.split("|")),r=i.arrayToMap(o.supportConstantColor.split("|")),s=i.arrayToMap("@mixin|@extend|@include|@import|@media|@debug|@warn|@if|@for|@each|@while|@else|@font-face|@-webkit-keyframes|if|and|!default|module|def|end|declare".split("|")),u=i.arrayToMap("a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdo|big|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|dir|div|dl|dt|em|embed|fieldset|figcaption|figure|font|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|img|input|ins|keygen|kbd|label|legend|li|link|map|mark|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|u|ul|var|video|wbr|xmp".split("|")),a="\\-?(?:(?:[0-9]+)|(?:[0-9]*\\.[0-9]+))";
21385this.$rules={start:[{token:"comment",regex:"\\/\\/.*$"},{token:"comment",regex:"\\/\\*",next:"comment"},{token:"string",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'},{token:"string",regex:'["].*\\\\$',next:"qqstring"},{token:"string",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"string",regex:"['].*\\\\$",next:"qstring"},{token:"constant.numeric",regex:a+"(?:ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:"constant.numeric",regex:a},{token:["support.function","string","support.function"],regex:"(url\\()(.*)(\\))"},{token:function(i){return e.hasOwnProperty(i.toLowerCase())?"support.type":s.hasOwnProperty(i)?"keyword":n.hasOwnProperty(i)?"constant.language":t.hasOwnProperty(i)?"support.function":r.hasOwnProperty(i.toLowerCase())?"support.constant.color":u.hasOwnProperty(i.toLowerCase())?"variable.language":"text"},regex:"\\-?[@a-z_][@a-z0-9_\\-]*"},{token:"variable",regex:"[a-z_\\-$][a-z0-9_\\-$]*\\b"},{token:"variable.language",regex:"#[a-z0-9-_]+"},{token:"variable.language",regex:"\\.[a-z0-9-_]+"},{token:"variable.language",regex:":[a-z0-9-_]+"},{token:"constant",regex:"[a-z0-9-_]+"},{token:"keyword.operator",regex:"<|>|<=|>=|==|!=|-|%|#|\\+|\\$|\\+|\\*"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"},{caseInsensitive:!0}],comment:[{token:"comment",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}],qqstring:[{token:"string",regex:'(?:(?:\\\\.)|(?:[^"\\\\]))*?"',next:"start"},{token:"string",regex:".+"}],qstring:[{token:"string",regex:"(?:(?:\\\\.)|(?:[^'\\\\]))*?'",next:"start"},{token:"string",regex:".+"}]}};r.inherits(u,s),t.ScssHighlightRules=u}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/behaviour/css",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/mode/behaviour/cstyle","ace/token_iterator"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("./cstyle").CstyleBehaviour,o=e("../../token_iterator").TokenIterator,u=function(){this.inherit(s),this.add("colon","insertion",function(e,t,n,r,i){if(i===":"&&n.selection.isEmpty()){var s=n.getCursorPosition(),u=new o(r,s.row,s.column),a=u.getCurrentToken();a&&a.value.match(/\s+/)&&(a=u.stepBackward());if(a&&a.type==="support.type"){var f=r.doc.getLine(s.row),l=f.substring(s.column,s.column+1);if(l===":")return{text:"",selection:[1,1]};if(/^(\s+[^;]|\s*$)/.test(f.substring(s.column)))return{text:":;",selection:[1,1]}}}}),this.add("colon","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s===":"){var u=n.getCursorPosition(),a=new o(r,u.row,u.column),f=a.getCurrentToken();f&&f.value.match(/\s+/)&&(f=a.stepBackward());if(f&&f.type==="support.type"){var l=r.doc.getLine(i.start.row),c=l.substring(i.end.column,i.end.column+1);if(c===";")return i.end.column++,i}}}),this.add("semicolon","insertion",function(e,t,n,r,i){if(i===";"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row),u=o.substring(s.column,s.column+1);if(u===";")return{text:"",selection:[1,1]}}}),this.add("!important","insertion",function(e,t,n,r,i){if(i==="!"&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row);if(/^\s*(;|}|$)/.test(o.substring(s.column)))return{text:"!important",selection:[10,10]}}})};r.inherits(u,s),t.CssBehaviour=u}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
21385,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/scss",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/scss_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/css","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./scss_highlight_rules").ScssHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("./behaviour/css").CssBehaviour,a=e("./folding/cstyle").FoldMode,f=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(f,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e).tokens;if(i.length&&i[i.length-1].type=="comment")return r;var s=t.match(/^.*\{\s*$/);return s&&(r+=n),r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.$id="ace/mode/scss"}.call(f.prototype),t.Mode=f}); (function() { 21386 window.require(["ace/mode/scss"], function(m) { 21387 if (typeof module == "object" && typeof exports == "object" && module) { 21388 module.exports = m; 21389 } 21390 }); 21391 })(); 21392 21393 21394define("ace/mode/xml_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(e){var t="[_:a-zA-Z\u00c0-\uffff][-_:.a-zA-Z0-9\u00c0-\uffff]*";this.$rules={start:[{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\[",next:"cdata"},{token:["punctuation.instruction.xml","keyword.instruction.xml"],regex:"(<\\?)("+t+")",next:"processing_instruction"},{token:"comment.start.xml",regex:"<\\!--",next:"comment"},{token:["xml-pe.doctype.xml","xml-pe.doctype.xml"],regex:"(<\\!)(DOCTYPE)(?=[\\s])",next:"doctype",caseInsensitive:!0},{include:"tag"},{token:"text.end-tag-open.xml",regex:"</"},{token:"text.tag-open.xml",regex:"<"},{include:"reference"},{defaultToken:"text.xml"}],processing_instruction:[{token:"entity.other.attribute-name.decl-attribute-name.xml",regex:t},{token:"keyword.operator.decl-attribute-equals.xml",regex:"="},{include:"whitespace"},{include:"string"},{token:"punctuation.xml-decl.xml",regex:"\\?>",next:"start"}],doctype:[{include:"whitespace"},{include:"string"},{token:"xml-pe.doctype.xml",regex:">",next:"start"},{token:"xml-pe.xml",regex:"[-_a-zA-Z0-9:]+"},{token:"punctuation.int-subset",regex:"\\[",push:"int_subset"}],int_subset:[{token:"text.xml",regex:"\\s+"},{token:"punctuation.int-subset.xml",regex:"]",next:"pop"},{token:["punctuation.markup-decl.xml","keyword.markup-decl.xml"],regex:"(<\\!)("+t+")",push:[{token:"text",regex:"\\s+"},{token:"punctuation.markup-decl.xml",regex:">",next:"pop"},{include:"string"}]}],cdata:[{token:"string.cdata.xml",regex:"\\]\\]>",next:"start"},{token:"text.xml",regex:"\\s+"},{token:"text.xml",regex:"(?:[^\\]]|\\](?!\\]>))+"}],comment:[{token:"comment.end.xml",regex:"-->",next:"start"},{defaultToken:"comment.xml"}],reference:[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],attr_reference:[{token:"constant.language.escape.reference.attribute-value.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],tag:[{token:["meta.tag.punctuation.tag-open.xml","meta.tag.punctuation.end-tag-open.xml","meta.tag.tag-name.xml"],regex:"(?:(<)|(</))((?:"+t+":)?"+t+")",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}],tag_whitespace:[{token:"text.tag-whitespace.xml",regex:"\\s+"}
21394],whitespace:[{token:"text.whitespace.xml",regex:"\\s+"}],string:[{token:"string.xml",regex:"'",push:[{token:"string.xml",regex:"'",next:"pop"},{defaultToken:"string.xml"}]},{token:"string.xml",regex:'"',push:[{token:"string.xml",regex:'"',next:"pop"},{defaultToken:"string.xml"}]}],attributes:[{token:"entity.other.attribute-name.xml",regex:t},{token:"keyword.operator.attribute-equals.xml",regex:"="},{include:"tag_whitespace"},{include:"attribute_value"}],attribute_value:[{token:"string.attribute-value.xml",regex:"'",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]}]},this.constructor===s&&this.normalizeRules()};(function(){this.embedTagRules=function(e,t,n){this.$rules.tag.unshift({token:["meta.tag.punctuation.tag-open.xml","meta.tag."+n+".tag-name.xml"],regex:"(<)("+n+"(?=\\s|>|$))",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:t+"start"}]}),this.$rules[n+"-end"]=[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start",onMatch:function(e,t,n){return n.splice(0),this.token}}],this.embedRules(e,t,[{token:["meta.tag.punctuation.end-tag-open.xml","meta.tag."+n+".tag-name.xml"],regex:"(</)("+n+"(?=\\s|>|$))",next:n+"-end"},{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\["},{token:"string.cdata.xml",regex:"\\]\\]>"}])}}).call(i.prototype),r.inherits(s,i),t.XmlHighlightRules=s}),define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";function u(e,t){return e&&e.type.lastIndexOf(t+".xml")>-1}var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),a=function(){this.add("string_dquotes","insertion",function(e,t,n,r,i){if(i=='"'||i=="'"){var o=i,a=r.doc.getTextRange(n.getSelectionRange());if(a!==""&&a!=="'"&&a!='"'&&n.getWrapBehavioursEnabled())return{text:o+a+o,selection:!1};var f=n.getCursorPosition(),l=r.doc.getLine(f.row),c=l.substring(f.column,f.column+1),h=new s(r,f.row,f.column),p=h.getCurrentToken();if(c==o&&(u(p,"attribute-value")||u(p,"string")))return{text:"",selection:[1,1]};p||(p=h.stepBackward());if(!p)return;while(u(p,"tag-whitespace")||u(p,"whitespace"))p=h.stepBackward();var d=!c||c.match(/\s/);if(u(p,"attribute-equals")&&(d||c==">")||u(p,"decl-attribute-equals")&&(d||c=="?"))return{text:o+o,selection:[1,1]}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&(s=='"'||s=="'")){var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==s)return i.end.column++,i}}),this.add("autoclosing","insertion",function(e,t,n,r,i){if(i==">"){var o=n.getSelectionRange().start,a=new s(r,o.row,o.column),f=a.getCurrentToken()||a.stepBackward();if(!f||!(u(f,"tag-name")||u(f,"tag-whitespace")||u(f,"attribute-name")||u(f,"attribute-equals")||u(f,"attribute-value")))return;if(u(f,"reference.attribute-value"))return;if(u(f,"attribute-value")){var l=a.getCurrentTokenColumn()+f.value.length;if(o.column<l)return;if(o.column==l){var c=a.stepForward();if(c&&u(c,"attribute-value"))return;a.stepBackward()}}if(/^\s*>/.test(r.getLine(o.row).slice(o.column)))return;while(!u(f,"tag-name")){f=a.stepBackward();if(f.value=="<"){f=a.stepForward();break}}var h=a.getCurrentTokenRow(),p=a.getCurrentTokenColumn();if(u(a.stepBackward(),"end-tag-open"))return;var d=f.value;h==o.row&&(d=d.substring(0,o.column-p));if(this.voidElements.hasOwnProperty(d.toLowerCase()))return;return{text:"></"+d+">",selection:[1,1]}}}),this.add("autoindent","insertion",function(e,t,n,r,i){if(i=="\n"){var o=n.getCursorPosition(),u=r.getLine(o.row),a=new s(r,o.row,o.column),f=a.getCurrentToken();if(f&&f.type.indexOf("tag-close")!==-1){if(f.value=="/>")return;while(f&&f.type.indexOf("tag-name")===-1)f=a.stepBackward();if(!f)return;var l=f.value,c=a.getCurrentTokenRow();f=a.stepBackward();if(!f||f.type.indexOf("end-tag")!==-1)return;if(this.voidElements&&!this.voidElements[l]){var h=r.getTokenAt(o.row,o.column+1),u=r.getLine(c),p=this.$getIndent(u),d=p+r.getTabString();return h&&h.value==="</"?{text:"\n"+d+"\n"+p,selection:[1,d.length,1,d.length]}:{text:"\n"+d}}}}})};r.inherits(a,i),t.XmlBehaviour=a}),define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/range","ace/mode/folding/fold_mode","ace/token_iterator"],function(e,t,n){"use strict";function l(e,t){return e.type.lastIndexOf(t+".xml")>-1}var r=e("../../lib/oop"),i=e("../../lib/lang"),s=e("../../range").Range,o=e("./fold_mode").FoldMode,u=e("../../token_iterator").TokenIterator,a=t.FoldMode=function(e,t){o.call(this),this.voidElements=e||{},this.optionalEndTags=r.mixin({},this.voidElements),t&&r.mixin(this.optionalEndTags,t)};r.inherits(a,o);var f=function(){this.tagName="",this.closing=!1,this.selfClosing=!1,this.start={row:0,column:0},this.end={row:0,column:0}};(function(){this.getFoldWidget=function(e,t,n){var r=this._getFirstTagInLine(e,n);return r?r.closing||!r.tagName&&r.selfClosing?t=="markbeginend"?"end":"":!r.tagName||r.selfClosing||this.voidElements.hasOwnProperty(r.tagName.toLowerCase())?"":this._findEndTagInLine(e,n,r.tagName,r.end.column)?"":"start":this.getCommentFoldWidget(e,n)},this.getCommentFoldWidget=function(e,t){return/comment/.test(e.getState(t))&&/<!-/.test(e.getLine(t))?"start":""},this._getFirstTagInLine=function(e,t){var n=e.getTokens(t),r=new f;for(var i=0;i<n.length;i++){var s=n[i];if(l(s,"tag-open")){r.end.column=r.start.column+s.value.length,r.closing=l(s,"end-tag-open"),s=n[++i];if(!s)return null;r.tagName=s.value,r.end.column+=s.value.length;for(i++;i<n.length;i++){s=n[i],r.end.column+=s.value.length;if(l(s,"tag-close")){r.selfClosing=s.value=="/>";break}}return r}if(l(s,"tag-close"))return r.selfClosing=s.value=="/>",r;r.start.column+=s.value.length}return null},this._findEndTagInLine=function(e,t,n,r){var i=e.getTokens(t),s=0;for(var o=0;o<i.length;o++){var u=i[o];s+=u.value.length;if(s<r)continue;if(l(u,"end-tag-open")){u=i[o+1];if(u&&u.value==n)return!0}}return!1},this._readTagForward=function(e){var t=e.getCurrentToken();if(!t)return null;var n=new f;do if(l(t,"tag-open"))n.closing=l(t,"end-tag-open"),n.start.row=e.getCurrentTokenRow(),n.start.column=e.getCurrentTokenColumn();else if(l(t,"tag-name"))n.tagName=t.value;else if(l(t,"tag-close"))return n.selfClosing=t.value=="/>",n.end.row=e.getCurrentTokenRow(),n.end.column=e.getCurrentTokenColumn()+t.value.length,e.stepForward(),n;while(t=e.stepForward());return null},this._readTagBackward=function(e){var t=e.getCurrentToken();if(!t)return null;var n=new f;do{if(l(t,"tag-open"))return n.closing=l(t,"end-tag-open"),n.start.row=e.getCurrentTokenRow(),n.start.column=e.getCurrentTokenColumn(),e.stepBackward(),n;l(t,"tag-name")?n.tagName=t.value:l(t,"tag-close")&&(n.selfClosing=t.value=="/>",n.end.row=e.getCurrentTokenRow(),n.end.column=e.getCurrentTokenColumn()+t.value.length)}while(t=e.stepBackward());return null},this._pop=function(e,t){while(e.length){var n=e[e.length-1];if(!t||n.tagName==t.tagName)return e.pop();if(this.optionalEndTags.hasOwnProperty(n.tagName)){e.pop();continue}return null}},this.getFoldWidgetRange=function(e,t,n){var r=this._getFirstTagInLine(e,n);if(!r)return this.getCommentFoldWidget(e,n)&&e.getCommentFoldRange(n,e.getLine(n).length);var i=r.closing||r.selfClosing,o=[],a;if(!i){var f=new u(e,n,r.start.column),l={row:n,column:r.start.column+r.tagName.length+2};r.start.row==r.end.row&&(l.column=r.end.column);while(a=this._readTagForward(f)){if(a.selfClosing){if(!o.length)return a.start.column+=a.tagName.length+2,a.end.column-=2,s.fromPoints(a.start,a.end);continue}if(a.closing){this._pop(o,a);if(o.length==0)return s.fromPoints(l,a.start)}else o.push(a)}}else{var f=new u(e,n,r.end.column),c={row:n,column:r.start.column};while(a=this._readTagBackward(f)){if(a.selfClosing){if(!o.length)return a.start.column+=a.tagName.length+2,a.end.column-=2,s.fromPoints(a.start,a.end);continue}if(!a.closing){this._pop(o,a);if(o.length==0)return a.start.column+=a.tagName.length+2,a.start.row==a.end.row&&a.start.column<a.end.column&&(a.start.column=a.end.column),s.fromPoints(a.start,c)}else o.push(a)}}}}).call(a.prototype)}),define("ace/mode/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/xml_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/xml","ace/worker/wor
21394ker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text").Mode,o=e("./xml_highlight_rules").XmlHighlightRules,u=e("./behaviour/xml").XmlBehaviour,a=e("./folding/xml").FoldMode,f=e("../worker/worker_client").WorkerClient,l=function(){this.HighlightRules=o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(l,s),function(){this.voidElements=i.arrayToMap([]),this.blockComment={start:"<!--",end:"-->"},this.createWorker=function(e){var t=new f(["ace"],"ace/mode/xml_worker","Worker");return t.attachToDocument(e.getDocument()),t.on("error",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/xml"}.call(l.prototype),t.Mode=l}),define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"comment.doc.tag",regex:"@[\\w\\d_]+"},s.getTagRule(),{defaultToken:"comment.doc",caseInsensitive:!0}]}};r.inherits(s,i),s.getTagRule=function(e){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},s.getStartRule=function(e){return{token:"comment.doc",regex:"\\/\\*(?=\\*)",next:e}},s.getEndRule=function(e){return{token:"comment.doc",regex:"\\*\\/",next:e}},t.DocCommentHighlightRules=s}),define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";function a(){var e=o.replace("\\d","\\d\\-"),t={onMatch:function(e,t,n){var r=e.charAt(1)=="/"?2:1;if(r==1)t!=this.nextState?n.unshift(this.next,this.nextState,0):n.unshift(this.next),n[2]++;else if(r==2&&t==this.nextState){n[1]--;if(!n[1]||n[1]<0)n.shift(),n.shift()}return[{type:"meta.tag.punctuation."+(r==1?"":"end-")+"tag-open.xml",value:e.slice(0,r)},{type:"meta.tag.tag-name.xml",value:e.substr(r)}]},regex:"</?"+e+"",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(t);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,t,{include:"reference"},{defaultToken:"string"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(e,t,n){return t==n[0]&&n.shift(),e.length==2&&(n[0]==this.nextState&&n[1]--,(!n[1]||n[1]<0)&&n.splice(0,2)),this.next=n[0]||"start",[{type:this.token,value:e}]},nextState:"jsx"},n,f("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:e},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},t],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function f(e){return[{token:"comment",regex:/\/\*/,next:[i.getTagRule(),{token:"comment",regex:"\\*\\/",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[i.getTagRule(),{token:"comment",regex:"$|^",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var r=e("../lib/oop"),i=e("./doc_comment_highlight_rules").DocCommentHighlightRules,s=e("./text_highlight_rules").TextHighlightRules,o="[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*",u=function(e){var t=this.createKeywordMapper({"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|function|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},"identifier"),n="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",r="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)";this.$rules={no_regex:[i.getStartRule("doc-start"),f("no_regex"),{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"}
21394,{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["storage.type","punctuation.operator","support.function","punctuation.operator","entity.name.function","text","keyword.operator"],regex:"("+o+")(\\.)(prototype)(\\.)("+o+")(\\s*)(=)",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s+)(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","entity.name.function","text","paren.lparen"],regex:"(function)(\\s+)("+o+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:"from(?=\\s*('|\"))"},{token:"keyword",regex:"(?:"+n+")\\b",next:"start"},{token:["support.constant"],regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/},{token:t,regex:o},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~\/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/},{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|
21394Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:o},{regex:"",token:"empty",next:"no_regex"}],start:[i.getStartRule("doc-start"),f("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/},{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],function_arguments:[{token:"variable.parameter",regex:o},{token:"punctuation.operator",regex:"[, ]+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]};if(!e||!e.noES6)this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(e,t,n){this.next=e=="{"?this.nextState:"";if(e=="{"&&n.length)n.unshift("start",t);else if(e=="}"&&n.length){n.shift(),this.next=n.shift();if(this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1)return"paren.quasi.end"}return e=="{"?"paren.lparen":"paren.rparen"},nextState:"start"}
21394,{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:r},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]}),(!e||e.jsx!=0)&&a.call(this);this.embedRules(i,"doc-",[i.getEndRule("no_regex")]),this.normalizeRules()};r.inherits(u,s),t.JavaScriptHighlightRules=u}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}}
21394,this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./javascript_highlight_rules").JavaScriptHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./behaviour/cstyle").CstyleBehaviour,f=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new a,this.foldingRules=new f};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e),s=i.tokens,o=i.state;if(s.length&&s[s.length-1].type=="comment")return r;if(e=="start"||e=="no_regex"){var u=t.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);u&&(r+=n)}else if(e=="doc-start"){if(o=="start"||o=="no_regex")return"";var u=t.match(/^\s*(\/?)\*/);u&&(u[1]&&(r+=" "),r+="* ")}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/javascript"}.call(l.prototype),t.Mode=l}),define("ace/mode/svg_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/javascript_highlight_rules","ace/mode/xml_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./javascript_highlight_rules").JavaScriptHighlightRules,s=e("./xml_highlight_rules").XmlHighlightRules,o=function(){s.call(this),this.embedTagRules(i,"js-","script"),this.normalizeRules()};r.inherits(o,s),t.SvgHighlightRules=o}),define("ace/mode/folding/mixed",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("./fold_mode").FoldMode,s=t.FoldMode=function(e,t){this.defaultMode=e,this.subModes=t};r.inherits(s,i),function(){this.$getMode=function(e){typeof e!="string"&&(e=e[0]);for(var t in this.subModes)if(e.indexOf(t)===0)return this.subModes[t];return null},this.$tryMode=function(e,t,n,r){var i=this.$getMode(e);return i?i.getFoldWidget(t,n,r):""},this.getFoldWidget=function(e,t,n){return this.$tryMode(e.getState(n-1),e,t,n)||this.$tryMode(e.getState(n),e,t,n)||this.defaultMode.getFoldWidget(e,t,n)},this.getFoldWidgetRange=function(e,t,n){var r=this.$getMode(e.getState(n-1));if(!r||!r.getFoldWidget(e,t,n))r=this.$getMode(e.getState(n));if(!r||!r.getFoldWidget(e,t,n))r=this.defaultMode;return r.getFoldWidgetRange(e,t,n)}}.call(s.prototype)}),define("ace/mode/svg",["require","exports","module","ace/lib/oop","ace/mode/xml","ace/mode/javascript","ace/mode/svg_highlight_rules","ace/mode/folding/mixed","ace/mode/folding/xml","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./xml").Mode,s=e("./javascript").Mode,o=e("./svg_highlight_rules").SvgHighlightRules,u=e("./folding/mixed").FoldMode,a=e("./folding/xml").FoldMode,f=e("./folding/cstyle").FoldMode,l=function(){i.call(this),this.HighlightRules=o,this.createModeDelegates({"js-":s}),this.foldingRules=new u(new a,{"js-":new f})};r.inherits(l,i),function(){this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.$id="ace/mode/svg"}.call(l.prototype),t.Mode=l}); (function() { 21395 window.require(["ace/mode/svg"], function(m) { 21396 if (typeof module == "object" && typeof exports == "object" && module) { 21397 module.exports = m; 21398 } 21399 }); 21400 })(); 21401 21402 21403define("ace/mode/sql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e="select|insert|update|delete|from|where|and|or|group|by|order|limit|offset|having|as|case|when|then|else|end|type|left|right|join|on|outer|desc|asc|union|create|table|primary|key|if|foreign|not|references|default|null|inner|cross|natural|database|drop|grant",t="true|false",n="avg|count|first|last|max|min|sum|ucase|lcase|mid|len|round|rank|now|format|coalesce|ifnull|isnull|nvl",r="int|numeric|decimal|date|varchar|char|bigint|float|double|bit|binary|text|set|timestamp|money|real|number|integer",i=this.createKeywordMapper({"supp
21403ort.function":n,keyword:e,"constant.language":t,"storage.type":r},"identifier",!0);this.$rules={start:[{token:"comment",regex:"--.*$"},{token:"comment",start:"/\\*",end:"\\*/"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"string",regex:"`.*?`"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:i,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"text",regex:"\\s+"}]},this.normalizeRules()};r.inherits(s,i),t.SqlHighlightRules=s}),define("ace/mode/sql",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/sql_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./sql_highlight_rules").SqlHighlightRules,o=function(){this.HighlightRules=s,this.$behaviour=this.$defaultBehaviour};r.inherits(o,i),function(){this.lineCommentStart="--",this.$id="ace/mode/sql"}.call(o.prototype),t.Mode=o}); (function() { 21404 window.require(["ace/mode/sql"], function(m) { 21405 if (typeof module == "object" && typeof exports == "object" && module) { 21406 module.exports = m; 21407 } 21408 }); 21409 })(); 21410 21411 21412define("ace/mode/xml_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(e){var t="[_:a-zA-Z\u00c0-\uffff][-_:.a-zA-Z0-9\u00c0-\uffff]*";this.$rules={start:[{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\[",next:"cdata"},{token:["punctuation.instruction.xml","keyword.instruction.xml"],regex:"(<\\?)("+t+")",next:"processing_instruction"},{token:"comment.start.xml",regex:"<\\!--",next:"comment"},{token:["xml-pe.doctype.xml","xml-pe.doctype.xml"],regex:"(<\\!)(DOCTYPE)(?=[\\s])",next:"doctype",caseInsensitive:!0},{include:"tag"},{token:"text.end-tag-open.xml",regex:"</"},{token:"text.tag-open.xml",regex:"<"},{include:"reference"},{defaultToken:"text.xml"}],processing_instruction:[{token:"entity.other.attribute-name.decl-attribute-name.xml",regex:t},{token:"keyword.operator.decl-attribute-equals.xml",regex:"="},{include:"whitespace"},{include:"string"},{token:"punctuation.xml-decl.xml",regex:"\\?>",next:"start"}],doctype:[{include:"whitespace"},{include:"string"},{token:"xml-pe.doctype.xml",regex:">",next:"start"},{token:"xml-pe.xml",regex:"[-_a-zA-Z0-9:]+"},{token:"punctuation.int-subset",regex:"\\[",push:"int_subset"}],int_subset:[{token:"text.xml",regex:"\\s+"},{token:"punctuation.int-subset.xml",regex:"]",next:"pop"},{token:["punctuation.markup-decl.xml","keyword.markup-decl.xml"],regex:"(<\\!)("+t+")",push:[{token:"text",regex:"\\s+"},{token:"punctuation.markup-decl.xml",regex:">",next:"pop"},{include:"string"}]}],cdata:[{token:"string.cdata.xml",regex:"\\]\\]>",next:"start"},{token:"text.xml",regex:"\\s+"},{token:"text.xml",regex:"(?:[^\\]]|\\](?!\\]>))+"}],comment:[{token:"comment.end.xml",regex:"-->",next:"start"},{defaultToken:"comment.xml"}],reference:[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],attr_reference:[{token:"constant.language.escape.reference.attribute-value.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],tag:[{token:["meta.tag.punctuation.tag-open.xml","meta.tag.punctuation.end-tag-open.xml","meta.tag.tag-name.xml"],regex:"(?:(<)|(</))((?:"+t+":)?"+t+")",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}],tag_whitespace:[{token:"text.tag-whitespace.xml",regex:"\\s+"}],whitespace:[{token:"text.whitespace.xml",regex:"\\s+"}],string:[{token:"string.xml",regex:"'",push:[{token:"string.xml",regex:"'",next:"pop"},{defaultToken:"string.xml"}]},{token:"string.xml",regex:'"',push:[{token:"string.xml",regex:'"',next:"pop"},{defaultToken:"string.xml"}]}],attributes:[{token:"entity.other.attribute-name.xml",regex:t},{token:"keyword.operator.attribute-equals.xml",regex:"="},{include:"tag_whitespace"},{include:"attribute_value"}],attribute_value:[{token:"string.attribute-value.xml",regex:"'",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]}]},this.constructor===s&&this.normalizeRules()};(function(){this.embedTagRules=function(e,t,n){this.$rules.tag.unshift({token:["meta.tag.punctuation.tag-open.xml","meta.tag."+n+".tag-name.xml"],regex:"(<)("+n+"(?=\\s|>|$))",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:t+"start"}]}),this.$rules[n+"-end"]=[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start",onMatch:function(e,t,n){return n.splice(0),this.token}}],this.embedRules(e,t,[{token:["meta.tag.punctuation.end-tag-open.xml","meta.tag."+n+".tag-name.xml"],regex:"(</)("+n+"(?=\\s|>|$))",next:n+"-end"},{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\["},{token:"string.cdata.xml",regex:"\\]\\]>"}])}}).call(i.prototype),r.inherits(s,i),t.XmlHighlightRules=s}),define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";function u(e,t){return e&&e.type.lastIndexOf(t+".xml")>-1}var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),a=function(){this.add("str
21412ing_dquotes","insertion",function(e,t,n,r,i){if(i=='"'||i=="'"){var o=i,a=r.doc.getTextRange(n.getSelectionRange());if(a!==""&&a!=="'"&&a!='"'&&n.getWrapBehavioursEnabled())return{text:o+a+o,selection:!1};var f=n.getCursorPosition(),l=r.doc.getLine(f.row),c=l.substring(f.column,f.column+1),h=new s(r,f.row,f.column),p=h.getCurrentToken();if(c==o&&(u(p,"attribute-value")||u(p,"string")))return{text:"",selection:[1,1]};p||(p=h.stepBackward());if(!p)return;while(u(p,"tag-whitespace")||u(p,"whitespace"))p=h.stepBackward();var d=!c||c.match(/\s/);if(u(p,"attribute-equals")&&(d||c==">")||u(p,"decl-attribute-equals")&&(d||c=="?"))return{text:o+o,selection:[1,1]}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&(s=='"'||s=="'")){var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==s)return i.end.column++,i}}),this.add("autoclosing","insertion",function(e,t,n,r,i){if(i==">"){var o=n.getSelectionRange().start,a=new s(r,o.row,o.column),f=a.getCurrentToken()||a.stepBackward();if(!f||!(u(f,"tag-name")||u(f,"tag-whitespace")||u(f,"attribute-name")||u(f,"attribute-equals")||u(f,"attribute-value")))return;if(u(f,"reference.attribute-value"))return;if(u(f,"attribute-value")){var l=a.getCurrentTokenColumn()+f.value.length;if(o.column<l)return;if(o.column==l){var c=a.stepForward();if(c&&u(c,"attribute-value"))return;a.stepBackward()}}if(/^\s*>/.test(r.getLine(o.row).slice(o.column)))return;while(!u(f,"tag-name")){f=a.stepBackward();if(f.value=="<"){f=a.stepForward();break}}var h=a.getCurrentTokenRow(),p=a.getCurrentTokenColumn();if(u(a.stepBackward(),"end-tag-open"))return;var d=f.value;h==o.row&&(d=d.substring(0,o.column-p));if(this.voidElements.hasOwnProperty(d.toLowerCase()))return;return{text:"></"+d+">",selection:[1,1]}}}),this.add("autoindent","insertion",function(e,t,n,r,i){if(i=="\n"){var o=n.getCursorPosition(),u=r.getLine(o.row),a=new s(r,o.row,o.column),f=a.getCurrentToken();if(f&&f.type.indexOf("tag-close")!==-1){if(f.value=="/>")return;while(f&&f.type.indexOf("tag-name")===-1)f=a.stepBackward();if(!f)return;var l=f.value,c=a.getCurrentTokenRow();f=a.stepBackward();if(!f||f.type.indexOf("end-tag")!==-1)return;if(this.voidElements&&!this.voidElements[l]){var h=r.getTokenAt(o.row,o.column+1),u=r.getLine(c),p=this.$getIndent(u),d=p+r.getTabString();return h&&h.value==="</"?{text:"\n"+d+"\n"+p,selection:[1,d.length,1,d.length]}:{text:"\n"+d}}}}})};r.inherits(a,i),t.XmlBehaviour=a}),define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/range","ace/mode/folding/fold_mode","ace/token_iterator"],function(e,t,n){"use strict";function l(e,t){return e.type.lastIndexOf(t+".xml")>-1}var r=e("../../lib/oop"),i=e("../../lib/lang"),s=e("../../range").Range,o=e("./fold_mode").FoldMode,u=e("../../token_iterator").TokenIterator,a=t.FoldMode=function(e,t){o.call(this),this.voidElements=e||{},this.optionalEndTags=r.mixin({},this.voidElements),t&&r.mixin(this.optionalEndTags,t)};r.inherits(a,o);var f=function(){this.tagName="",this.closing=!1,this.selfClosing=!1,this.start={row:0,column:0},this.end={row:0,column:0}};(function(){this.getFoldWidget=function(e,t,n){var r=this._getFirstTagInLine(e,n);return r?r.closing||!r.tagName&&r.selfClosing?t=="markbeginend"?"end":"":!r.tagName||r.selfClosing||this.voidElements.hasOwnProperty(r.tagName.toLowerCase())?"":this._findEndTagInLine(e,n,r.tagName,r.end.column)?"":"start":this.getCommentFoldWidget(e,n)},this.getCommentFoldWidget=function(e,t){return/comment/.test(e.getState(t))&&/<!-/.test(e.getLine(t))?"start":""},this._getFirstTagInLine=function(e,t){var n=e.getTokens(t),r=new f;for(var i=0;i<n.length;i++){var s=n[i];if(l(s,"tag-open")){r.end.column=r.start.column+s.value.length,r.closing=l(s,"end-tag-open"),s=n[++i];if(!s)return null;r.tagName=s.value,r.end.column+=s.value.length;for(i++;i<n.length;i++){s=n[i],r.end.column+=s.value.length;if(l(s,"tag-close")){r.selfClosing=s.value=="/>";break}}return r}if(l(s,"tag-close"))return r.selfClosing=s.value=="/>",r;r.start.column+=s.value.length}return null},this._findEndTagInLine=function(e,t,n,r){var i=e.getTokens(t),s=0;for(var o=0;o<i.length;o++){var u=i[o];s+=u.value.length;if(s<r)continue;if(l(u,"end-tag-open")){u=i[o+1];if(u&&u.value==n)return!0}}return!1},this._readTagForward=function(e){var t=e.getCurrentToken();if(!t)return null;var n=new f;do if(l(t,"tag-open"))n.closing=l(t,"end-tag-open"),n.start.row=e.getCurrentTokenRow(),n.start.column=e.getCurrentTokenColumn();else if(l(t,"tag-name"))n.tagName=t.value;else if(l(t,"tag-close"))return n.selfClosing=t.value=="/>",n.end.row=e.getCurrentTokenRow(),n.end.column=e.getCurrentTokenColumn()+t.value.length,e.stepForward(),n;while(t=e.stepForward());return null},this._readTagBackward=function(e){var t=e.getCurrentToken();if(!t)return null;var n=new f;do{if(l(t,"tag-open"))return n.closing=l(t,"end-tag-open"),n.start.row=e.getCurrentTokenRow(),n.start.column=e.getCurrentTokenColumn(),e.stepBackward(),n;l(t,"tag-name")?n.tagName=t.value:l(t,"tag-close")&&(n.selfClosing=t.value=="/>",n.end.row=e.getCurrentTokenRow(),n.end.column=e.getCurrentTokenColumn()+t.value.length)}while(t=e.stepBackward());return null},this._pop=function(e,t){while(e.length){var n=e[e.length-1];if(!t||n.tagName==t.tagName)return e.pop();if(this.optionalEndTags.hasOwnProperty(n.tagName)){e.pop();continue}return null}},this.getFoldWidgetRange=function(e,t,n){var r=this._getFirstTagInLine(e,n);if(!r)return this.getCommentFoldWidget(e,n)&&e.getCommentFoldRange(n,e.getLine(n).length);var i=r.closing||r.selfClosing,o=[],a;if(!i){var f=new u(e,n,r.start.column),l={row:n,column:r.start.column+r.tagName.length+2};r.start.row==r.end.row&&(l.column=r.end.column);while(a=this._readTagForward(f)){if(a.selfClosing){if(!o.length)return a.start.column+=a.tagName.length+2,a.end.column-=2,s.fromPoints(a.start,a.end);continue}if(a.closing){this._pop(o,a);if(o.length==0)return s.fromPoints(l,a.start)}else o.push(a)}}else{var f=new u(e,n,r.end.column),c={row:n,column:r.start.column};while(a=this._readTagBackward(f)){if(a.selfClosing){if(!o.length)return a.start.column+=a.tagName.length+2,a.end.column-=2,s.fromPoints(a.start,a.end);continue}if(!a.closing){this._pop(o,a);if(o.length==0)return a.start.column+=a.tagName.length+2,a.start.row==a.end.row&&a.start.column<a.end.column&&(a.start.column=a.end.column),s.fromPoints(a.start,c)}else o.push(a)}}}}).call(a.prototype)}),define("ace/mode/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/xml_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/xml","ace/worker/wor
21412ker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text").Mode,o=e("./xml_highlight_rules").XmlHighlightRules,u=e("./behaviour/xml").XmlBehaviour,a=e("./folding/xml").FoldMode,f=e("../worker/worker_client").WorkerClient,l=function(){this.HighlightRules=o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(l,s),function(){this.voidElements=i.arrayToMap([]),this.blockComment={start:"<!--",end:"-->"},this.createWorker=function(e){var t=new f(["ace"],"ace/mode/xml_worker","Worker");return t.attachToDocument(e.getDocument()),t.on("error",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/xml"}.call(l.prototype),t.Mode=l}); (function() { 21413 window.require(["ace/mode/xml"], function(m) { 21414 if (typeof module == "object" && typeof exports == "object" && module) { 21415 module.exports = m; 21416 } 21417 }); 21418 })(); 21419 21420 21421define("ace/mode/plain_text",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/text_highlight_rules","ace/mode/behaviour"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./text_highlight_rules").TextHighlightRules,o=e("./behaviour").Behaviour,u=function(){this.HighlightRules=s,this.$behaviour=new o};r.inherits(u,i),function(){this.type="text",this.getNextLineIndent=function(e,t,n){return""},this.$id="ace/mode/plain_text"}.call(u.prototype),t.Mode=u}); (function() { 21422 window.require(["ace/mode/plain_text"], function(m) { 21423 if (typeof module == "object" && typeof exports == "object" && module) { 21424 module.exports = m; 21425 } 21426 }); 21427 })(); 21428
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.