Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/notifications.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoas Schilling <213943+nickvergessen@users.noreply.github.com>2020-05-04 12:13:00 +0300
committerGitHub <noreply@github.com>2020-05-04 12:13:00 +0300
commit062ceb3ebe81249a1b2ab507cf4d1d8be8fc96c1 (patch)
treebbd5bc7f2ed623af48c0a751bbd900c9fd1e7e99
parenta97d1660b87814bd5e098917d77bfefbd1b97cc4 (diff)
parent4fb364b26b244018834229fec1a31fd3cd3c7c91 (diff)
Merge pull request #632 from nextcloud/dependabot/npm_and_yarn/vue-loader-15.9.2v19.0.0beta7v19.0.0RC1
Bump vue-loader from 15.9.1 to 15.9.2
-rw-r--r--js/notifications.js2
-rw-r--r--js/notifications.js.map2
-rw-r--r--package-lock.json56
-rw-r--r--package.json2
4 files changed, 46 insertions, 16 deletions
diff --git a/js/notifications.js b/js/notifications.js
index 2fbfafd..78ae981 100644
--- a/js/notifications.js
+++ b/js/notifications.js
@@ -11,7 +11,7 @@ var a=Object.freeze({});function r(e){return null==e}function s(e){return null!=
* Copyright(c) 2015 Andreas Lubbe
* Copyright(c) 2015 Tiancheng "Timothy" Gu
* MIT Licensed
- */var a=/["'&<>]/;e.exports=function(e){var t,n=""+e,r=a.exec(n);if(!r)return n;var s="",i=0,o=0;for(i=r.index;i<n.length;i++){switch(n.charCodeAt(i)){case 34:t="&quot;";break;case 38:t="&amp;";break;case 39:t="&#39;";break;case 60:t="&lt;";break;case 62:t="&gt;";break;default:continue}o!==i&&(s+=n.substring(o,i)),o=i+1,s+=t}return o!==i?s+n.substring(o,i):s}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){var a=n(31),r=n(33);e.exports=function(e){return a(r(e))}},function(e,t,n){var a,r,s,i=n(216),o=n(1),l=n(6),u=n(10),d=n(5),c=n(36),m=n(24),_=o.WeakMap;if(i){var p=new _,f=p.get,h=p.has,y=p.set;a=function(e,t){return y.call(p,e,t),t},r=function(e){return f.call(p,e)||{}},s=function(e){return h.call(p,e)}}else{var M=c("state");m[M]=!0,a=function(e,t){return u(e,M,t),t},r=function(e){return d(e,M)?e[M]:{}},s=function(e){return d(e,M)}}e.exports={set:a,get:r,has:s,enforce:function(e){return s(e)?r(e):a(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t){e.exports={}},function(e,t,n){var a=n(219),r=n(1),s=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?s(a[e])||s(r[e]):a[e]&&a[e][t]||r[e]&&r[e][t]}},function(e,t,n){var a=n(39),r=Math.min;e.exports=function(e){return e>0?r(a(e),9007199254740991):0}},function(e,t,n){var a=n(33);e.exports=function(e){return Object(a(e))}},function(e,t){var n,a,r=e.exports={};function s(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function o(e){if(n===setTimeout)return setTimeout(e,0);if((n===s||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:s}catch(e){n=s}try{a="function"==typeof clearTimeout?clearTimeout:i}catch(e){a=i}}();var l,u=[],d=!1,c=-1;function m(){d&&l&&(d=!1,l.length?u=l.concat(u):c=-1,u.length&&_())}function _(){if(!d){var e=o(m);d=!0;for(var t=u.length;t;){for(l=u,u=[];++c<t;)l&&l[c].run();c=-1,t=u.length}l=null,d=!1,function(e){if(a===clearTimeout)return clearTimeout(e);if((a===i||!a)&&clearTimeout)return a=clearTimeout,clearTimeout(e);try{a(e)}catch(t){try{return a.call(null,e)}catch(t){return a.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function f(){}r.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new p(e,t)),1!==u.length||d||o(_)},p.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=f,r.addListener=f,r.once=f,r.off=f,r.removeListener=f,r.removeAllListeners=f,r.emit=f,r.prependListener=f,r.prependOnceListener=f,r.listeners=function(e){return[]},r.binding=function(e){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(e){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},function(e,t,n){var a=n(304);"string"==typeof a&&(a=[[e.i,a,""]]),a.locals&&(e.exports=a.locals);(0,n(309).default)("acc59688",a,!0,{})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.subscribe=function(e,t){s.subscribe(e,t)},t.unsubscribe=function(e,t){s.unsubscribe(e,t)},t.emit=function(e,t){s.emit(e,t)};var a=n(246),r=n(248);var s=(void 0!==window.OC&&window.OC._eventBus&&void 0===window._nc_event_bus&&(console.warn("found old event bus instance at OC._eventBus. Update your version!"),window._nc_event_bus=window.OC._eventBus),void 0!==window._nc_event_bus?new a.ProxyBus(window._nc_event_bus):window._nc_event_bus=new r.SimpleBus)},function(e,t,n){var a=n(3),r=n(32),s="".split;e.exports=a((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==r(e)?s.call(e,""):Object(e)}:Object},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){var a=n(6);e.exports=function(e,t){if(!a(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!a(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!a(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!a(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var a=n(1),r=n(10);e.exports=function(e,t){try{r(a,e,t)}catch(n){a[e]=t}return t}},function(e,t,n){var a=n(52),r=n(38),s=a("keys");e.exports=function(e){return s[e]||(s[e]=r(e))}},function(e,t){e.exports=!1},function(e,t){var n=0,a=Math.random();e.exports=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++n+a).toString(36)}},function(e,t){var n=Math.ceil,a=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?a:n)(e)}},function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){var a=n(243);e.exports=function(e,t,n){if(a(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,a){return e.call(t,n,a)};case 3:return function(n,a,r){return e.call(t,n,a,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){var a,r=n(12),s=n(254),i=n(40),o=n(24),l=n(255),u=n(49),d=n(36),c=d("IE_PROTO"),m=function(){},_=function(e){return"<script>"+e+"<\/script>"},p=function(){try{a=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;p=a?function(e){e.write(_("")),e.close();var t=e.parentWindow.Object;return e=null,t}(a):((t=u("iframe")).style.display="none",l.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(_("document.F=Object")),e.close(),e.F);for(var n=i.length;n--;)delete p.prototype[i[n]];return p()};o[c]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(m.prototype=r(e),n=new m,m.prototype=null,n[c]=e):n=p(),void 0===t?n:s(n,t)}},function(e,t,n){"use strict";var a=n(15),r=n(256),s=n(76),i=n(77),o=n(44),l=n(10),u=n(17),d=n(2),c=n(37),m=n(18),_=n(75),p=_.IteratorPrototype,f=_.BUGGY_SAFARI_ITERATORS,h=d("iterator"),y=function(){return this};e.exports=function(e,t,n,d,_,M,v){r(n,t,d);var g,L,Y,T=function(e){if(e===_&&x)return x;if(!f&&e in D)return D[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},k=t+" Iterator",w=!1,D=e.prototype,b=D[h]||D["@@iterator"]||_&&D[_],x=!f&&b||T(_),S="Array"==t&&D.entries||b;if(S&&(g=s(S.call(new e)),p!==Object.prototype&&g.next&&(c||s(g)===p||(i?i(g,p):"function"!=typeof g[h]&&l(g,h,y)),o(g,k,!0,!0),c&&(m[k]=y))),"values"==_&&b&&"values"!==b.name&&(w=!0,x=function(){return b.call(this)}),c&&!v||D[h]===x||l(D,h,x),m[t]=x,_)if(L={values:T("values"),keys:M?x:T("keys"),entries:T("entries")},v)for(Y in L)(f||w||!(Y in D))&&u(D,Y,L[Y]);else a({target:t,proto:!0,forced:f||w},L);return L}},function(e,t,n){var a=n(9).f,r=n(5),s=n(2)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,s)&&a(e,s,{configurable:!0,value:t})}},function(e,t,n){var a={};a[n(2)("toStringTag")]="z",e.exports="[object z]"===String(a)},function(e,t,n){var a=n(8),r=n(47),s=n(21),i=n(22),o=n(34),l=n(5),u=n(48),d=Object.getOwnPropertyDescriptor;t.f=a?d:function(e,t){if(e=i(e),t=o(t,!0),u)try{return d(e,t)}catch(e){}if(l(e,t))return s(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";var a={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,s=r&&!a.call({1:2},1);t.f=s?function(e){var t=r(this,e);return!!t&&t.enumerable}:a},function(e,t,n){var a=n(8),r=n(3),s=n(49);e.exports=!a&&!r((function(){return 7!=Object.defineProperty(s("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){var a=n(1),r=n(6),s=a.document,i=r(s)&&r(s.createElement);e.exports=function(e){return i?s.createElement(e):{}}},function(e,t,n){var a=n(51),r=Function.toString;"function"!=typeof a.inspectSource&&(a.inspectSource=function(e){return r.call(e)}),e.exports=a.inspectSource},function(e,t,n){var a=n(1),r=n(35),s=a["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=s},function(e,t,n){var a=n(37),r=n(51);(e.exports=function(e,t){return r[e]||(r[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.6.5",mode:a?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){var a=n(5),r=n(22),s=n(221).indexOf,i=n(24);e.exports=function(e,t){var n,o=r(e),l=0,u=[];for(n in o)!a(i,n)&&a(o,n)&&u.push(n);for(;t.length>l;)a(o,n=t[l++])&&(~s(u,n)||u.push(n));return u}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var a=n(3),r=/#|\.prototype\./,s=function(e,t){var n=o[i(e)];return n==u||n!=l&&("function"==typeof t?a(t):!!t)},i=s.normalize=function(e){return String(e).replace(r,".").toLowerCase()},o=s.data={},l=s.NATIVE="N",u=s.POLYFILL="P";e.exports=s},function(e,t,n){var a=n(53),r=n(40);e.exports=Object.keys||function(e){return a(e,r)}},function(e,t,n){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),a=0;a<n.length;a++)n[a]=arguments[a];return e.apply(t,n)}}},function(e,t,n){"use strict";var a=n(4);function r(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,n){if(!t)return e;var s;if(n)s=n(t);else if(a.isURLSearchParams(t))s=t.toString();else{var i=[];a.forEach(t,(function(e,t){null!=e&&(a.isArray(e)?t+="[]":e=[e],a.forEach(e,(function(e){a.isDate(e)?e=e.toISOString():a.isObject(e)&&(e=JSON.stringify(e)),i.push(r(t)+"="+r(e))})))})),s=i.join("&")}if(s){var o=e.indexOf("#");-1!==o&&(e=e.slice(0,o)),e+=(-1===e.indexOf("?")?"?":"&")+s}return e}},function(e,t,n){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},function(e,t,n){"use strict";(function(t){var a=n(4),r=n(230),s={"Content-Type":"application/x-www-form-urlencoded"};function i(e,t){!a.isUndefined(e)&&a.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var o,l={adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==t&&"[object process]"===Object.prototype.toString.call(t))&&(o=n(61)),o),transformRequest:[function(e,t){return r(t,"Accept"),r(t,"Content-Type"),a.isFormData(e)||a.isArrayBuffer(e)||a.isBuffer(e)||a.isStream(e)||a.isFile(e)||a.isBlob(e)?e:a.isArrayBufferView(e)?e.buffer:a.isURLSearchParams(e)?(i(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):a.isObject(e)?(i(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return e>=200&&e<300}};l.headers={common:{Accept:"application/json, text/plain, */*"}},a.forEach(["delete","get","head"],(function(e){l.headers[e]={}})),a.forEach(["post","put","patch"],(function(e){l.headers[e]=a.merge(s)})),e.exports=l}).call(this,n(28))},function(e,t,n){"use strict";var a=n(4),r=n(231),s=n(58),i=n(233),o=n(236),l=n(237),u=n(62);e.exports=function(e){return new Promise((function(t,d){var c=e.data,m=e.headers;a.isFormData(c)&&delete m["Content-Type"];var _=new XMLHttpRequest;if(e.auth){var p=e.auth.username||"",f=e.auth.password||"";m.Authorization="Basic "+btoa(p+":"+f)}var h=i(e.baseURL,e.url);if(_.open(e.method.toUpperCase(),s(h,e.params,e.paramsSerializer),!0),_.timeout=e.timeout,_.onreadystatechange=function(){if(_&&4===_.readyState&&(0!==_.status||_.responseURL&&0===_.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in _?o(_.getAllResponseHeaders()):null,a={data:e.responseType&&"text"!==e.responseType?_.response:_.responseText,status:_.status,statusText:_.statusText,headers:n,config:e,request:_};r(t,d,a),_=null}},_.onabort=function(){_&&(d(u("Request aborted",e,"ECONNABORTED",_)),_=null)},_.onerror=function(){d(u("Network Error",e,null,_)),_=null},_.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),d(u(t,e,"ECONNABORTED",_)),_=null},a.isStandardBrowserEnv()){var y=n(238),M=(e.withCredentials||l(h))&&e.xsrfCookieName?y.read(e.xsrfCookieName):void 0;M&&(m[e.xsrfHeaderName]=M)}if("setRequestHeader"in _&&a.forEach(m,(function(e,t){void 0===c&&"content-type"===t.toLowerCase()?delete m[t]:_.setRequestHeader(t,e)})),a.isUndefined(e.withCredentials)||(_.withCredentials=!!e.withCredentials),e.responseType)try{_.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&_.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&_.upload&&_.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){_&&(_.abort(),d(e),_=null)})),void 0===c&&(c=null),_.send(c)}))}},function(e,t,n){"use strict";var a=n(232);e.exports=function(e,t,n,r,s){var i=new Error(e);return a(i,t,n,r,s)}},function(e,t,n){"use strict";var a=n(4);e.exports=function(e,t){t=t||{};var n={},r=["url","method","params","data"],s=["headers","auth","proxy"],i=["baseURL","url","transformRequest","transformResponse","paramsSerializer","timeout","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","maxContentLength","validateStatus","maxRedirects","httpAgent","httpsAgent","cancelToken","socketPath"];a.forEach(r,(function(e){void 0!==t[e]&&(n[e]=t[e])})),a.forEach(s,(function(r){a.isObject(t[r])?n[r]=a.deepMerge(e[r],t[r]):void 0!==t[r]?n[r]=t[r]:a.isObject(e[r])?n[r]=a.deepMerge(e[r]):void 0!==e[r]&&(n[r]=e[r])})),a.forEach(i,(function(a){void 0!==t[a]?n[a]=t[a]:void 0!==e[a]&&(n[a]=e[a])}));var o=r.concat(s).concat(i),l=Object.keys(t).filter((function(e){return-1===o.indexOf(e)}));return a.forEach(l,(function(a){void 0!==t[a]?n[a]=t[a]:void 0!==e[a]&&(n[a]=e[a])})),n}},function(e,t,n){"use strict";function a(e){this.message=e}a.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},a.prototype.__CANCEL__=!0,e.exports=a},function(e,t,n){"use strict";var a=n(15),r=n(66);a({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var a=n(67).forEach,r=n(245),s=n(71),i=r("forEach"),o=s("forEach");e.exports=i&&o?[].forEach:function(e){return a(this,e,arguments.length>1?arguments[1]:void 0)}},function(e,t,n){var a=n(41),r=n(31),s=n(27),i=n(26),o=n(68),l=[].push,u=function(e){var t=1==e,n=2==e,u=3==e,d=4==e,c=6==e,m=5==e||c;return function(_,p,f,h){for(var y,M,v=s(_),g=r(v),L=a(p,f,3),Y=i(g.length),T=0,k=h||o,w=t?k(_,Y):n?k(_,0):void 0;Y>T;T++)if((m||T in g)&&(M=L(y=g[T],T,v),e))if(t)w[T]=M;else if(M)switch(e){case 3:return!0;case 5:return y;case 6:return T;case 2:l.call(w,y)}else if(d)return!1;return c?-1:u||d?d:w}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},function(e,t,n){var a=n(6),r=n(69),s=n(2)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?a(n)&&null===(n=n[s])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},function(e,t,n){var a=n(32);e.exports=Array.isArray||function(e){return"Array"==a(e)}},function(e,t,n){var a=n(3);e.exports=!!Object.getOwnPropertySymbols&&!a((function(){return!String(Symbol())}))},function(e,t,n){var a=n(8),r=n(3),s=n(5),i=Object.defineProperty,o={},l=function(e){throw e};e.exports=function(e,t){if(s(o,e))return o[e];t||(t={});var n=[][e],u=!!s(t,"ACCESSORS")&&t.ACCESSORS,d=s(t,0)?t[0]:l,c=s(t,1)?t[1]:void 0;return o[e]=!!n&&!r((function(){if(u&&!a)return!0;var e={length:-1};u?i(e,1,{enumerable:!0,get:l}):e[1]=1,n.call(e,d,c)}))}},function(e,t,n){var a=n(3),r=n(2),s=n(73),i=r("species");e.exports=function(e){return s>=51||!a((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){var a,r,s=n(1),i=n(251),o=s.process,l=o&&o.versions,u=l&&l.v8;u?r=(a=u.split("."))[0]+a[1]:i&&(!(a=i.match(/Edge\/(\d+)/))||a[1]>=74)&&(a=i.match(/Chrome\/(\d+)/))&&(r=a[1]),e.exports=r&&+r},function(e,t,n){"use strict";var a=n(22),r=n(253),s=n(18),i=n(23),o=n(43),l=i.set,u=i.getterFor("Array Iterator");e.exports=o(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:a(e),index:0,kind:t})}),(function(){var e=u(this),t=e.target,n=e.kind,a=e.index++;return!t||a>=t.length?(e.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:a,done:!1}:"values"==n?{value:t[a],done:!1}:{value:[a,t[a]],done:!1}}),"values"),s.Arguments=s.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var a,r,s,i=n(76),o=n(10),l=n(5),u=n(2),d=n(37),c=u("iterator"),m=!1;[].keys&&("next"in(s=[].keys())?(r=i(i(s)))!==Object.prototype&&(a=r):m=!0),null==a&&(a={}),d||l(a,c)||o(a,c,(function(){return this})),e.exports={IteratorPrototype:a,BUGGY_SAFARI_ITERATORS:m}},function(e,t,n){var a=n(5),r=n(27),s=n(36),i=n(257),o=s("IE_PROTO"),l=Object.prototype;e.exports=i?Object.getPrototypeOf:function(e){return e=r(e),a(e,o)?e[o]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){var a=n(12),r=n(258);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,s){return a(n),r(s),t?e.call(n,s):n.__proto__=s,n}}():void 0)},function(e,t,n){var a=n(24),r=n(6),s=n(5),i=n(9).f,o=n(38),l=n(261),u=o("meta"),d=0,c=Object.isExtensible||function(){return!0},m=function(e){i(e,u,{value:{objectID:"O"+ ++d,weakData:{}}})},_=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!s(e,u)){if(!c(e))return"F";if(!t)return"E";m(e)}return e[u].objectID},getWeakData:function(e,t){if(!s(e,u)){if(!c(e))return!0;if(!t)return!1;m(e)}return e[u].weakData},onFreeze:function(e){return l&&_.REQUIRED&&c(e)&&!s(e,u)&&m(e),e}};a[u]=!0},function(e,t,n){var a=n(12),r=n(262),s=n(26),i=n(41),o=n(263),l=n(264),u=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,d,c){var m,_,p,f,h,y,M,v=i(t,n,d?2:1);if(c)m=e;else{if("function"!=typeof(_=o(e)))throw TypeError("Target is not iterable");if(r(_)){for(p=0,f=s(e.length);f>p;p++)if((h=d?v(a(M=e[p])[0],M[1]):v(e[p]))&&h instanceof u)return h;return new u(!1)}m=_.call(e)}for(y=m.next;!(M=y.call(m)).done;)if("object"==typeof(h=l(m,v,M.value,d))&&h&&h instanceof u)return h;return new u(!1)}).stop=function(e){return new u(!0,e)}},function(e,t,n){var a=n(45),r=n(32),s=n(2)("toStringTag"),i="Arguments"==r(function(){return arguments}());e.exports=a?r:function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),s))?n:i?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},function(e,t){e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},function(e,t){e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.HandlebarsEnvironment=d;var r=n(7),s=a(n(13)),i=n(84),o=n(286),l=a(n(85)),u=n(86);t.VERSION="4.7.6";t.COMPILER_REVISION=8;t.LAST_COMPATIBLE_COMPILER_REVISION=7;t.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};function d(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},i.registerDefaultHelpers(this),o.registerDefaultDecorators(this)}d.prototype={constructor:d,logger:l.default,log:l.default.log,registerHelper:function(e,t){if("[object Object]"===r.toString.call(e)){if(t)throw new s.default("Arg not supported with multiple helpers");r.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if("[object Object]"===r.toString.call(e))r.extend(this.partials,e);else{if(void 0===t)throw new s.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if("[object Object]"===r.toString.call(e)){if(t)throw new s.default("Arg not supported with multiple decorators");r.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){u.resetLoggedProperties()}};var c=l.default.log;t.log=c,t.createFrame=r.createFrame,t.logger=l.default},function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.registerDefaultHelpers=function(e){r.default(e),s.default(e),i.default(e),o.default(e),l.default(e),u.default(e),d.default(e)},t.moveHelperToHooks=function(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])};var r=a(n(279)),s=a(n(280)),i=a(n(281)),o=a(n(282)),l=a(n(283)),u=a(n(284)),d=a(n(285))},function(e,t,n){"use strict";t.__esModule=!0;var a=n(7),r={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){if("string"==typeof e){var t=a.indexOf(r.methodMap,e.toLowerCase());e=t>=0?t:parseInt(e,10)}return e},log:function(e){if(e=r.lookupLevel(e),"undefined"!=typeof console&&r.lookupLevel(r.level)<=e){var t=r.methodMap[e];console[t]||(t="log");for(var n=arguments.length,a=Array(n>1?n-1:0),s=1;s<n;s++)a[s-1]=arguments[s];console[t].apply(console,a)}}};t.default=r,e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.createProtoAccessControl=function(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var n=Object.create(null);return n.__proto__=!1,{properties:{whitelist:a.createNewLookupObject(n,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:a.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}},t.resultIsAllowed=function(e,t,n){return i("function"==typeof e?t.methods:t.properties,n)},t.resetLoggedProperties=function(){Object.keys(s).forEach((function(e){delete s[e]}))};var a=n(288),r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(85)),s=Object.create(null);function i(e,t){return void 0!==e.whitelist[t]?!0===e.whitelist[t]:void 0!==e.defaultValue?e.defaultValue:(function(e){!0!==s[e]&&(s[e]=!0,r.log("error",'Handlebars: Access has been denied to resolve the property "'+e+'" because it is not an "own property" of its parent.\nYou can add a runtime option to disable the check or this warning:\nSee https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details'))}(t),!1)}},function(e,t,n){!function(e){"use strict";e.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,t,n){return e<12?n?"vm":"VM":n?"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ôre 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||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},r={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},s=function(e){return function(t,n,s,i){var o=a(t),l=r[e][a(t)];return 2===o&&(l=l[n?0:1]),l.replace(/%d/i,t)}},i=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];e.defineLocale("ar",{months:i,monthsShort:i,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,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:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:s("s"),ss:s("s"),m:s("m"),mm:s("m"),h:s("h"),hh:s("h"),d:s("d"),dd:s("d"),M:s("M"),MM:s("M"),y:s("y"),yy:s("y")},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-dz",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"أح_إث_ثلا_أر_خم_جم_سب".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-kw",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},n=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},a={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},r=function(e){return function(t,r,s,i){var o=n(t),l=a[e][n(t)];return 2===o&&(l=l[r?0:1]),l.replace(/%d/i,t)}},s=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];e.defineLocale("ar-ly",{months:s,monthsShort:s,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,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:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:r("s"),ss:r("s"),m:r("m"),mm:r("m"),h:r("h"),hh:r("h"),d:r("d"),dd:r("d"),M:r("M"),MM:r("M"),y:r("y"),yy:r("y")},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};e.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};e.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əsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".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ün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyə",ss:"%d saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(e){return/^(gündüz|axşam)$/.test(e)},meridiem:function(e,t,n){return e<4?"gecə":e<12?"səhər":e<17?"gündüz":"axşam"},dayOfMonthOrdinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(e){if(0===e)return e+"-ıncı";var n=e%10;return e+(t[n]||t[e%100-n]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a,r;return"m"===n?t?"хвіліна":"хвіліну":"h"===n?t?"гадзіна":"гадзіну":e+" "+(a=+e,r={ss:t?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:t?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:t?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}e.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".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:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:t,mm:t,h:t,hh:t,d:"дзень",dd:t,M:"месяц",MM:t,y:"год",yy:t},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(e){return/^(дня|вечара)$/.test(e)},meridiem:function(e,t,n){return e<4?"ночы":e<12?"раніцы":e<17?"дня":"вечара"},dayOfMonthOrdinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e%10!=2&&e%10!=3||e%100==12||e%100==13?e+"-ы":e+"-і";case"D":return e+"-га";default:return e}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".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:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,n=e%100;return 0===e?e+"-ев":0===n?e+"-ен":n>10&&n<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des".split("_"),weekdays:"Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Ntɛ_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ɛrɛ] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm"},calendar:{sameDay:"[Bi lɛrɛ] LT",nextDay:"[Sini lɛrɛ] LT",nextWeek:"dddd [don lɛrɛ] LT",lastDay:"[Kunu lɛrɛ] LT",lastWeek:"dddd [tɛmɛnen lɛrɛ] LT",sameElse:"L"},relativeTime:{future:"%s kɔnɔ",past:"a bɛ %s bɔ",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"lɛrɛ kelen",hh:"lɛrɛ %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},n={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};e.defineLocale("bn",{months:"জানুয়ারী_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপ্র_মে_জুন_জুল_আগ_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),weekdaysMin:"রবি_সোম_মঙ্গ_বুধ_বৃহঃ_শুক্র_শনি".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:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",ss:"%d সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(e){return e.replace(/[১২৩৪৫৬৭৮৯০]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/রাত|সকাল|দুপুর|বিকাল|রাত/,meridiemHour:function(e,t){return 12===e&&(e=0),"রাত"===t&&e>=4||"দুপুর"===t&&e<5||"বিকাল"===t?e+12:e},meridiem:function(e,t,n){return e<4?"রাত":e<10?"সকাল":e<17?"দুপুর":e<20?"বিকাল":"রাত"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},n={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};e.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".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:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",ss:"%d སྐར་ཆ།",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(e){return e.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,meridiemHour:function(e,t){return 12===e&&(e=0),"མཚན་མོ"===t&&e>=4||"ཉིན་གུང"===t&&e<5||"དགོང་དག"===t?e+12:e},meridiem:function(e,t,n){return e<4?"མཚན་མོ":e<10?"ཞོགས་ཀས":e<17?"ཉིན་གུང":e<20?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){return e+" "+function(e,t){return 2===t?function(e){var t={m:"v",b:"v",d:"z"};return void 0===t[e.charAt(0)]?e:t[e.charAt(0)]+e.substring(1)}(e):e}({mm:"munutenn",MM:"miz",dd:"devezh"}[n],e)}e.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ù",ss:"%d eilenn",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:function(e){switch(function e(t){return t>9?e(t%10):t}(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}},dayOfMonthOrdinalParse:/\d{1,2}(añ|vet)/,ordinal:function(e){return e+(1===e?"añ":"vet")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a=e+" ";switch(n){case"ss":return a+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return t?"jedna minuta":"jedne minute";case"mm":return a+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return a+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return a+=1===e?"dan":"dana";case"MM":return a+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return a+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}e.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_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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čer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ca",{months:{standalone:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de març_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ç_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à 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í %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d 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|è|a)/,ordinal:function(e,t){var n=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"è";return"w"!==t&&"W"!==t||(n="a"),e+n},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),n="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),a=[/^led/i,/^úno/i,/^bře/i,/^dub/i,/^kvě/i,/^(čvn|červen$|června)/i,/^(čvc|červenec|července)/i,/^srp/i,/^zář/i,/^říj/i,/^lis/i,/^pro/i],r=/^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;function s(e){return e>1&&e<5&&1!=~~(e/10)}function i(e,t,n,a){var r=e+" ";switch(n){case"s":return t||a?"pár sekund":"pár sekundami";case"ss":return t||a?r+(s(e)?"sekundy":"sekund"):r+"sekundami";case"m":return t?"minuta":a?"minutu":"minutou";case"mm":return t||a?r+(s(e)?"minuty":"minut"):r+"minutami";case"h":return t?"hodina":a?"hodinu":"hodinou";case"hh":return t||a?r+(s(e)?"hodiny":"hodin"):r+"hodinami";case"d":return t||a?"den":"dnem";case"dd":return t||a?r+(s(e)?"dny":"dní"):r+"dny";case"M":return t||a?"měsíc":"měsícem";case"MM":return t||a?r+(s(e)?"měsíce":"měsíců"):r+"měsíci";case"y":return t||a?"rok":"rokem";case"yy":return t||a?r+(s(e)?"roky":"let"):r+"lety"}}e.defineLocale("cs",{months:t,monthsShort:n,monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_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ítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:i,ss:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(e){return e+(/сехет$/i.exec(e)?"рен":/ҫул$/i.exec(e)?"тан":"ран")},past:"%s каялла",s:"пӗр-ик ҫеккунт",ss:"%d ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},dayOfMonthOrdinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 ôl",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 t="";return e>20?t=40===e||50===e||60===e||80===e||100===e?"fed":"ain":e>0&&(t=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][e]),e+t},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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øndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".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å dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få 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åned",MM:"%d måneder",y:"et år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_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:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Feb._März_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:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.defineLocale("de-ch",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_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:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],n=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"];e.defineLocale("dv",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".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:/މކ|މފ/,isPM:function(e){return"މފ"===e},meridiem:function(e,t,n){return e<12?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",ss:"d% ސިކުންތު",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:7,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(e,t){return e?"string"==typeof t&&/D/.test(t.substring(0,t.indexOf("MMMM")))?this._monthsGenitiveEl[e.month()]:this._monthsNominativeEl[e.month()]:this._monthsNominativeEl},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(e,t,n){return e>11?n?"μμ":"ΜΜ":n?"πμ":"ΠΜ"},isPM:function(e){return"μ"===(e+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/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:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(e,t){var n,a=this._calendarEl[e],r=t&&t.hours();return((n=a)instanceof Function||"[object Function]"===Object.prototype.toString.call(n))&&(a=a.apply(t)),a.replace("{}",r%12==1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",ss:"%d δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},dayOfMonthOrdinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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",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:"[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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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",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:"[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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_ĵa_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,t,n){return e>11?n?"p.t.m.":"P.T.M.":n?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"antaŭ %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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".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ñana 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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".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ñana 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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".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ñana 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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={s:["mõne sekundi","mõni sekund","paar sekundit"],ss:[e+"sekundi",e+"sekundit"],m:["ühe minuti","üks minut"],mm:[e+" minuti",e+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[e+" tunni",e+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[e+" kuu",e+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[e+" aasta",e+" aastat"]};return t?r[n][2]?r[n][2]:r[n][1]:a?r[n][0]:r[n][1]}e.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".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äna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:"%d päeva",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},n={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};e.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".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:/قبل از ظهر|بعد از ظهر/,isPM:function(e){return/بعد از ظهر/.test(e)},meridiem:function(e,t,n){return e<12?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چند ثانیه",ss:"ثانیه d%",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(e){return e.replace(/[۰-۹]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},dayOfMonthOrdinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),n=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",t[7],t[8],t[9]];function a(e,a,r,s){var i="";switch(r){case"s":return s?"muutaman sekunnin":"muutama sekunti";case"ss":return s?"sekunnin":"sekuntia";case"m":return s?"minuutin":"minuutti";case"mm":i=s?"minuutin":"minuuttia";break;case"h":return s?"tunnin":"tunti";case"hh":i=s?"tunnin":"tuntia";break;case"d":return s?"päivän":"päivä";case"dd":i=s?"päivän":"päivää";break;case"M":return s?"kuukauden":"kuukausi";case"MM":i=s?"kuukauden":"kuukautta";break;case"y":return s?"vuoden":"vuosi";case"yy":i=s?"vuoden":"vuotta"}return i=function(e,a){return e<10?a?n[e]:t[e]:e}(e,s)+" "+i}e.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_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änään] [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äästä",past:"%s sitten",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fo",{months:"januar_februar_mars_apríl_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ánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_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:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaður",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".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’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] 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,t){switch(t){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".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’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] 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,t){switch(t){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")}}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".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’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] 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,t){switch(t){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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),n="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");e.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)?n[e.month()]:t[e.month()]:t},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:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien minút",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||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ga",{months:["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Méitheamh","Iúil","Lúnasa","Meán Fómhair","Deaireadh Fómhair","Samhain","Nollaig"],monthsShort:["Eaná","Feab","Márt","Aibr","Beal","Méit","Iúil","Lúna","Meán","Deai","Samh","Noll"],monthsParseExact:!0,weekdays:["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Satharn"],weekdaysShort:["Dom","Lua","Mái","Céa","Déa","hAo","Sat"],weekdaysMin:["Do","Lu","Má","Ce","Dé","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árach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inné aig] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s ó shin",s:"cúpla soicind",ss:"%d soicind",m:"nóiméad",mm:"%d nóiméad",h:"uair an chloig",hh:"%d uair an chloig",d:"lá",dd:"%d lá",M:"mí",MM:"%d mí",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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("gd",{months:["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd"],monthsShort:["Faoi","Gear","Màrt","Gibl","Cèit","Ògmh","Iuch","Lùn","Sult","Dàmh","Samh","Dùbh"],monthsParseExact:!0,weekdays:["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],weekdaysShort:["Did","Dil","Dim","Dic","Dia","Dih","Dis"],weekdaysMin:["Dò","Lu","Mà","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àireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-dè 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ìos",MM:"%d mìosan",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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),weekdaysShort:"dom._lun._mar._mér._xov._ven._sáb.".split("_"),weekdaysMin:"do_lu_ma_mé_xo_ve_sá".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()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.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:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(e,t){switch(t){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,t){return 12===e&&(e=0),"rati"===t?e<4?e:e+12:"sokalli"===t?e:"donparam"===t?e>12?e:e+12:"sanje"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"rati":e<12?"sokalli":e<16?"donparam":e<20?"sanje":"rati"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"૧",2:"૨",3:"૩",4:"૪",5:"૫",6:"૬",7:"૭",8:"૮",9:"૯",0:"૦"},n={"૧":"1","૨":"2","૩":"3","૪":"4","૫":"5","૬":"6","૭":"7","૮":"8","૯":"9","૦":"0"};e.defineLocale("gu",{months:"જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર".split("_"),monthsShort:"જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.".split("_"),monthsParseExact:!0,weekdays:"રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર".split("_"),weekdaysShort:"રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ".split("_"),weekdaysMin:"ર_સો_મં_બુ_ગુ_શુ_શ".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:"[આજ] LT",nextDay:"[કાલે] LT",nextWeek:"dddd, LT",lastDay:"[ગઇકાલે] LT",lastWeek:"[પાછલા] dddd, LT",sameElse:"L"},relativeTime:{future:"%s મા",past:"%s પેહલા",s:"અમુક પળો",ss:"%d સેકંડ",m:"એક મિનિટ",mm:"%d મિનિટ",h:"એક કલાક",hh:"%d કલાક",d:"એક દિવસ",dd:"%d દિવસ",M:"એક મહિનો",MM:"%d મહિનો",y:"એક વર્ષ",yy:"%d વર્ષ"},preparse:function(e){return e.replace(/[૧૨૩૪૫૬૭૮૯૦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/રાત|બપોર|સવાર|સાંજ/,meridiemHour:function(e,t){return 12===e&&(e=0),"રાત"===t?e<4?e:e+12:"સવાર"===t?e:"બપોર"===t?e>=10?e:e+12:"સાંજ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"રાત":e<10?"સવાર":e<17?"બપોર":e<20?"સાંજ":"રાત"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".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",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",ss:"%d שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(e){return 2===e?"שעתיים":e+" שעות"},d:"יום",dd:function(e){return 2===e?"יומיים":e+" ימים"},M:"חודש",MM:function(e){return 2===e?"חודשיים":e+" חודשים"},y:"שנה",yy:function(e){return 2===e?"שנתיים":e%10==0&&10!==e?e+" שנה":e+" שנים"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM:function(e){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(e)},meridiem:function(e,t,n){return e<5?"לפנות בוקר":e<10?"בבוקר":e<12?n?'לפנה"צ':"לפני הצהריים":e<18?n?'אחה"צ':"אחרי הצהריים":"בערב"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};e.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".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:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",ss:"%d सेकंड",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात"===t?e<4?e:e+12:"सुबह"===t?e:"दोपहर"===t?e>=10?e:e+12:"शाम"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"रात":e<10?"सुबह":e<17?"दोपहर":e<20?"शाम":"रात"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a=e+" ";switch(n){case"ss":return a+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return t?"jedna minuta":"jedne minute";case"mm":return a+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return a+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return a+=1===e?"dan":"dana";case"MM":return a+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return a+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}e.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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čer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");function n(e,t,n,a){var r=e;switch(n){case"s":return a||t?"néhány másodperc":"néhány másodperce";case"ss":return r+(a||t)?" másodperc":" másodperce";case"m":return"egy"+(a||t?" perc":" perce");case"mm":return r+(a||t?" perc":" perce");case"h":return"egy"+(a||t?" óra":" órája");case"hh":return r+(a||t?" óra":" órája");case"d":return"egy"+(a||t?" nap":" napja");case"dd":return r+(a||t?" nap":" napja");case"M":return"egy"+(a||t?" hónap":" hónapja");case"MM":return r+(a||t?" hónap":" hónapja");case"y":return"egy"+(a||t?" év":" éve");case"yy":return r+(a||t?" év":" éve")}return""}function a(e){return(e?"":"[múlt] ")+"["+t[this.day()]+"] LT[-kor]"}e.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_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,t,n){return e<12?!0===n?"de":"DE":!0===n?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return a.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return a.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:n,ss:n,m:n,mm:n,h:n,hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("hy-am",{months:{format:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),standalone:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")},monthsShort:"հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),weekdays:"կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".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:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",ss:"%d վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(e){return/^(ցերեկվա|երեկոյան)$/.test(e)},meridiem:function(e){return e<4?"գիշերվա":e<12?"առավոտվա":e<17?"ցերեկվա":"երեկոյան"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(e,t){switch(t){case"DDD":case"w":case"W":case"DDDo":return 1===e?e+"-ին":e+"-րդ";default:return e}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"pagi"===t?e:"siang"===t?e>=11?e:e+12:"sore"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e){return e%100==11||e%10!=1}function n(e,n,a,r){var s=e+" ";switch(a){case"s":return n||r?"nokkrar sekúndur":"nokkrum sekúndum";case"ss":return t(e)?s+(n||r?"sekúndur":"sekúndum"):s+"sekúnda";case"m":return n?"mínúta":"mínútu";case"mm":return t(e)?s+(n||r?"mínútur":"mínútum"):n?s+"mínúta":s+"mínútu";case"hh":return t(e)?s+(n||r?"klukkustundir":"klukkustundum"):s+"klukkustund";case"d":return n?"dagur":r?"dag":"degi";case"dd":return t(e)?n?s+"dagar":s+(r?"daga":"dögum"):n?s+"dagur":s+(r?"dag":"degi");case"M":return n?"mánuður":r?"mánuð":"mánuði";case"MM":return t(e)?n?s+"mánuðir":s+(r?"mánuði":"mánuðum"):n?s+"mánuður":s+(r?"mánuð":"mánuði");case"y":return n||r?"ár":"ári";case"yy":return t(e)?s+(n||r?"ár":"árum"):s+(n||r?"ár":"ári")}}e.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_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:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:n,ss:n,m:n,mm:n,h:"klukkustund",hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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ì_martedì_mercoledì_giovedì_venerdì_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}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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ì_martedì_mercoledì_giovedì_venerdì_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}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ja",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiemParse:/午前|午後/i,isPM:function(e){return"午後"===e},meridiem:function(e,t,n){return e<12?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(e){return e.week()<this.week()?"[来週]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(e){return this.week()<e.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"enjing"===t?e:"siyang"===t?e>=11?e:e+12:"sonten"===t||"ndalu"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ka",{months:{standalone:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),format:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".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:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(e){return/(წამი|წუთი|საათი|წელი)/.test(e)?e.replace(/ი$/,"ში"):e+"ში"},past:function(e){return/(წამი|წუთი|საათი|დღე|თვე)/.test(e)?e.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(e)?e.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",ss:"%d წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(e){return 0===e?e:1===e?e+"-ლი":e<20||e<=100&&e%20==0||e%100==0?"მე-"+e:e+"-ე"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"};e.defineLocale("kk",{months:"қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),monthsShort:"қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),weekdays:"жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),weekdaysShort:"жек_дүй_сей_сәр_бей_жұм_сен".split("_"),weekdaysMin:"жк_дй_сй_ср_бй_жм_сн".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:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",ss:"%d секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(e){return e+(t[e]||t[e%10]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"១",2:"២",3:"៣",4:"៤",5:"៥",6:"៦",7:"៧",8:"៨",9:"៩",0:"០"},n={"១":"1","២":"2","៣":"3","៤":"4","៥":"5","៦":"6","៧":"7","៨":"8","៩":"9","០":"0"};e.defineLocale("km",{months:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysMin:"អា_ច_អ_ព_ព្រ_សុ_ស".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:/ព្រឹក|ល្ងាច/,isPM:function(e){return"ល្ងាច"===e},meridiem:function(e,t,n){return e<12?"ព្រឹក":"ល្ងាច"},calendar:{sameDay:"[ថ្ងៃនេះ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",ss:"%d វិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},dayOfMonthOrdinalParse:/ទី\d{1,2}/,ordinal:"ទី%d",preparse:function(e){return e.replace(/[១២៣៤៥៦៧៨៩០]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"೧",2:"೨",3:"೩",4:"೪",5:"೫",6:"೬",7:"೭",8:"೮",9:"೯",0:"೦"},n={"೧":"1","೨":"2","೩":"3","೪":"4","೫":"5","೬":"6","೭":"7","೮":"8","೯":"9","೦":"0"};e.defineLocale("kn",{months:"ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),monthsShort:"ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),monthsParseExact:!0,weekdays:"ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),weekdaysShort:"ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),weekdaysMin:"ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".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:"[ಇಂದು] LT",nextDay:"[ನಾಳೆ] LT",nextWeek:"dddd, LT",lastDay:"[ನಿನ್ನೆ] LT",lastWeek:"[ಕೊನೆಯ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ನಂತರ",past:"%s ಹಿಂದೆ",s:"ಕೆಲವು ಕ್ಷಣಗಳು",ss:"%d ಸೆಕೆಂಡುಗಳು",m:"ಒಂದು ನಿಮಿಷ",mm:"%d ನಿಮಿಷ",h:"ಒಂದು ಗಂಟೆ",hh:"%d ಗಂಟೆ",d:"ಒಂದು ದಿನ",dd:"%d ದಿನ",M:"ಒಂದು ತಿಂಗಳು",MM:"%d ತಿಂಗಳು",y:"ಒಂದು ವರ್ಷ",yy:"%d ವರ್ಷ"},preparse:function(e){return e.replace(/[೧೨೩೪೫೬೭೮೯೦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ರಾತ್ರಿ"===t?e<4?e:e+12:"ಬೆಳಿಗ್ಗೆ"===t?e:"ಮಧ್ಯಾಹ್ನ"===t?e>=10?e:e+12:"ಸಂಜೆ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"ರಾತ್ರಿ":e<10?"ಬೆಳಿಗ್ಗೆ":e<17?"ಮಧ್ಯಾಹ್ನ":e<20?"ಸಂಜೆ":"ರಾತ್ರಿ"},dayOfMonthOrdinalParse:/\d{1,2}(ನೇ)/,ordinal:function(e){return e+"ನೇ"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),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일 dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"일";case"M":return e+"월";case"w":case"W":return e+"주";default:return e}},meridiemParse:/오전|오후/,isPM:function(e){return"오후"===e},meridiem:function(e,t,n){return e<12?"오전":"오후"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=["کانونی دووەم","شوبات","ئازار","نیسان","ئایار","حوزەیران","تەمموز","ئاب","ئەیلوول","تشرینی یەكەم","تشرینی دووەم","كانونی یەکەم"];e.defineLocale("ku",{months:a,monthsShort:a,weekdays:"یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌".split("_"),weekdaysShort:"یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌".split("_"),weekdaysMin:"ی_د_س_چ_پ_ه_ش".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:/ئێواره‌|به‌یانی/,isPM:function(e){return/ئێواره‌/.test(e)},meridiem:function(e,t,n){return e<12?"به‌یانی":"ئێواره‌"},calendar:{sameDay:"[ئه‌مرۆ كاتژمێر] LT",nextDay:"[به‌یانی كاتژمێر] LT",nextWeek:"dddd [كاتژمێر] LT",lastDay:"[دوێنێ كاتژمێر] LT",lastWeek:"dddd [كاتژمێر] LT",sameElse:"L"},relativeTime:{future:"له‌ %s",past:"%s",s:"چه‌ند چركه‌یه‌ك",ss:"چركه‌ %d",m:"یه‌ك خوله‌ك",mm:"%d خوله‌ك",h:"یه‌ك كاتژمێر",hh:"%d كاتژمێر",d:"یه‌ك ڕۆژ",dd:"%d ڕۆژ",M:"یه‌ك مانگ",MM:"%d مانگ",y:"یه‌ك ساڵ",yy:"%d ساڵ"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={0:"-чү",1:"-чи",2:"-чи",3:"-чү",4:"-чү",5:"-чи",6:"-чы",7:"-чи",8:"-чи",9:"-чу",10:"-чу",20:"-чы",30:"-чу",40:"-чы",50:"-чү",60:"-чы",70:"-чи",80:"-чи",90:"-чу",100:"-чү"};e.defineLocale("ky",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),weekdays:"Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби".split("_"),weekdaysShort:"Жек_Дүй_Шей_Шар_Бей_Жум_Ише".split("_"),weekdaysMin:"Жк_Дй_Шй_Шр_Бй_Жм_Иш".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:"[Бүгүн саат] LT",nextDay:"[Эртең саат] LT",nextWeek:"dddd [саат] LT",lastDay:"[Кечээ саат] LT",lastWeek:"[Өткөн аптанын] dddd [күнү] [саат] LT",sameElse:"L"},relativeTime:{future:"%s ичинде",past:"%s мурун",s:"бирнече секунд",ss:"%d секунд",m:"бир мүнөт",mm:"%d мүнөт",h:"бир саат",hh:"%d саат",d:"бир күн",dd:"%d күн",M:"бир ай",MM:"%d ай",y:"бир жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(чи|чы|чү|чу)/,ordinal:function(e){return e+(t[e]||t[e%10]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}function n(e){if(e=parseInt(e,10),isNaN(e))return!1;if(e<0)return!0;if(e<10)return 4<=e&&e<=7;if(e<100){var t=e%10;return n(0===t?e/10:t)}if(e<1e4){for(;e>=10;)e/=10;return n(e)}return n(e/=1e3)}e.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_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éindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_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ëschter 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 n(e.substr(0,e.indexOf(" ")))?"a "+e:"an "+e},past:function(e){return n(e.substr(0,e.indexOf(" ")))?"viru "+e:"virun "+e},s:"e puer Sekonnen",ss:"%d Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d Méint",y:t,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("lo",{months:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),monthsShort:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),weekdays:"ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysShort:"ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysMin:"ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".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:/ຕອນເຊົ້າ|ຕອນແລງ/,isPM:function(e){return"ຕອນແລງ"===e},meridiem:function(e,t,n){return e<12?"ຕອນເຊົ້າ":"ຕອນແລງ"},calendar:{sameDay:"[ມື້ນີ້ເວລາ] LT",nextDay:"[ມື້ອື່ນເວລາ] LT",nextWeek:"[ວັນ]dddd[ໜ້າເວລາ] LT",lastDay:"[ມື້ວານນີ້ເວລາ] LT",lastWeek:"[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",sameElse:"L"},relativeTime:{future:"ອີກ %s",past:"%sຜ່ານມາ",s:"ບໍ່ເທົ່າໃດວິນາທີ",ss:"%d ວິນາທີ",m:"1 ນາທີ",mm:"%d ນາທີ",h:"1 ຊົ່ວໂມງ",hh:"%d ຊົ່ວໂມງ",d:"1 ມື້",dd:"%d ມື້",M:"1 ເດືອນ",MM:"%d ເດືອນ",y:"1 ປີ",yy:"%d ປີ"},dayOfMonthOrdinalParse:/(ທີ່)\d{1,2}/,ordinal:function(e){return"ທີ່"+e}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={ss:"sekundė_sekundžių_sekundes",m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"};function n(e,t,n,a){return t?r(n)[0]:a?r(n)[1]:r(n)[2]}function a(e){return e%10==0||e>10&&e<20}function r(e){return t[e].split("_")}function s(e,t,s,i){var o=e+" ";return 1===e?o+n(0,t,s[0],i):t?o+(a(e)?r(s)[1]:r(s)[0]):i?o+r(s)[1]:o+(a(e)?r(s)[1]:r(s)[2])}e.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_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į_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".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:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:function(e,t,n,a){return t?"kelios sekundės":a?"kelių sekundžių":"kelias sekundes"},ss:s,m:n,mm:s,h:n,hh:s,d:n,dd:s,M:n,MM:s,y:n,yy:s},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(e){return e+"-oji"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={ss:"sekundes_sekundēm_sekunde_sekundes".split("_"),m:"minūtes_minūtēm_minūte_minūtes".split("_"),mm:"minūtes_minūtēm_minūte_minūtes".split("_"),h:"stundas_stundām_stunda_stundas".split("_"),hh:"stundas_stundām_stunda_stundas".split("_"),d:"dienas_dienām_diena_dienas".split("_"),dd:"dienas_dienām_diena_dienas".split("_"),M:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),MM:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function n(e,t,n){return n?t%10==1&&t%100!=11?e[2]:e[3]:t%10==1&&t%100!=11?e[0]:e[1]}function a(e,a,r){return e+" "+n(t[r],e,a)}function r(e,a,r){return n(t[r],e,a)}e.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_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:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"pēc %s",past:"pirms %s",s:function(e,t){return t?"dažas sekundes":"dažām sekundēm"},ss:a,m:r,mm:a,h:r,hh:a,d:r,dd:a,M:r,MM:a,y:r,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={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,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,n,a){var r=t.words[a];return 1===a.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}};e.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_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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če u] LT",lastWeek:function(){return["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("mi",{months:"Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_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ātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),weekdaysShort:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),weekdaysMin:"Ta_Ma_Tū_We_Tāi_Pa_Hā".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ēkona ruarua",ss:"%d hēkona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".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:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,n=e%100;return 0===e?e+"-ев":0===n?e+"-ен":n>10&&n<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),monthsParseExact:!0,weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".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:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",ss:"%d സെക്കൻഡ്",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,meridiemHour:function(e,t){return 12===e&&(e=0),"രാത്രി"===t&&e>=4||"ഉച്ച കഴിഞ്ഞ്"===t||"വൈകുന്നേരം"===t?e+12:e},meridiem:function(e,t,n){return e<4?"രാത്രി":e<12?"രാവിലെ":e<17?"ഉച്ച കഴിഞ്ഞ്":e<20?"വൈകുന്നേരം":"രാത്രി"}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){switch(n){case"s":return t?"хэдхэн секунд":"хэдхэн секундын";case"ss":return e+(t?" секунд":" секундын");case"m":case"mm":return e+(t?" минут":" минутын");case"h":case"hh":return e+(t?" цаг":" цагийн");case"d":case"dd":return e+(t?" өдөр":" өдрийн");case"M":case"MM":return e+(t?" сар":" сарын");case"y":case"yy":return e+(t?" жил":" жилийн");default:return e}}e.defineLocale("mn",{months:"Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар".split("_"),monthsShort:"1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар".split("_"),monthsParseExact:!0,weekdays:"Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба".split("_"),weekdaysShort:"Ням_Дав_Мяг_Лха_Пүр_Баа_Бям".split("_"),weekdaysMin:"Ня_Да_Мя_Лх_Пү_Ба_Бя".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY оны MMMMын D",LLL:"YYYY оны MMMMын D HH:mm",LLLL:"dddd, YYYY оны MMMMын D HH:mm"},meridiemParse:/ҮӨ|ҮХ/i,isPM:function(e){return"ҮХ"===e},meridiem:function(e,t,n){return e<12?"ҮӨ":"ҮХ"},calendar:{sameDay:"[Өнөөдөр] LT",nextDay:"[Маргааш] LT",nextWeek:"[Ирэх] dddd LT",lastDay:"[Өчигдөр] LT",lastWeek:"[Өнгөрсөн] dddd LT",sameElse:"L"},relativeTime:{future:"%s дараа",past:"%s өмнө",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2} өдөр/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+" өдөр";default:return e}}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};function a(e,t,n,a){var r="";if(t)switch(n){case"s":r="काही सेकंद";break;case"ss":r="%d सेकंद";break;case"m":r="एक मिनिट";break;case"mm":r="%d मिनिटे";break;case"h":r="एक तास";break;case"hh":r="%d तास";break;case"d":r="एक दिवस";break;case"dd":r="%d दिवस";break;case"M":r="एक महिना";break;case"MM":r="%d महिने";break;case"y":r="एक वर्ष";break;case"yy":r="%d वर्षे"}else switch(n){case"s":r="काही सेकंदां";break;case"ss":r="%d सेकंदां";break;case"m":r="एका मिनिटा";break;case"mm":r="%d मिनिटां";break;case"h":r="एका तासा";break;case"hh":r="%d तासां";break;case"d":r="एका दिवसा";break;case"dd":r="%d दिवसां";break;case"M":r="एका महिन्या";break;case"MM":r="%d महिन्यां";break;case"y":r="एका वर्षा";break;case"yy":r="%d वर्षां"}return r.replace(/%d/i,e)}e.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".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:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात्री"===t?e<4?e:e+12:"सकाळी"===t?e:"दुपारी"===t?e>=10?e:e+12:"सायंकाळी"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"रात्री":e<10?"सकाळी":e<17?"दुपारी":e<20?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),weekdays:"Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),weekdaysShort:"Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),weekdaysMin:"Ħa_Tn_Tl_Er_Ħa_Ġi_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ħada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-bieraħ fil-]LT",lastWeek:"dddd [li għadda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f’ %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"siegħa",hh:"%d siegħat",d:"ġurnata",dd:"%d ġranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},n={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};e.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".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:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",ss:"%d စက္ကန့်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(e){return e.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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øndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".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år 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åned",MM:"%d måneder",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};e.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),monthsParseExact:!0,weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),weekdaysParseExact:!0,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 बजे"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(e,t){return 12===e&&(e=0),"राति"===t?e<4?e:e+12:"बिहान"===t?e:"दिउँसो"===t?e>=10?e:e+12:"साँझ"===t?e+12:void 0},meridiem:function(e,t,n){return e<3?"राति":e<12?"बिहान":e<16?"दिउँसो":e<20?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",ss:"%d सेकेण्ड",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^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],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,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:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^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],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,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:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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åndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".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år klokka] LT",lastWeek:"[Føregåande] 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ånad",MM:"%d månader",y:"eit år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"੧",2:"੨",3:"੩",4:"੪",5:"੫",6:"੬",7:"੭",8:"੮",9:"੯",0:"੦"},n={"੧":"1","੨":"2","੩":"3","੪":"4","੫":"5","੬":"6","੭":"7","੮":"8","੯":"9","੦":"0"};e.defineLocale("pa-in",{months:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),monthsShort:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),weekdays:"ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ".split("_"),weekdaysShort:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),weekdaysMin:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".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:"[ਅਜ] LT",nextDay:"[ਕਲ] LT",nextWeek:"[ਅਗਲਾ] dddd, LT",lastDay:"[ਕਲ] LT",lastWeek:"[ਪਿਛਲੇ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ਵਿੱਚ",past:"%s ਪਿਛਲੇ",s:"ਕੁਝ ਸਕਿੰਟ",ss:"%d ਸਕਿੰਟ",m:"ਇਕ ਮਿੰਟ",mm:"%d ਮਿੰਟ",h:"ਇੱਕ ਘੰਟਾ",hh:"%d ਘੰਟੇ",d:"ਇੱਕ ਦਿਨ",dd:"%d ਦਿਨ",M:"ਇੱਕ ਮਹੀਨਾ",MM:"%d ਮਹੀਨੇ",y:"ਇੱਕ ਸਾਲ",yy:"%d ਸਾਲ"},preparse:function(e){return e.replace(/[੧੨੩੪੫੬੭੮੯੦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ਰਾਤ"===t?e<4?e:e+12:"ਸਵੇਰ"===t?e:"ਦੁਪਹਿਰ"===t?e>=10?e:e+12:"ਸ਼ਾਮ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"ਰਾਤ":e<10?"ਸਵੇਰ":e<17?"ਦੁਪਹਿਰ":e<20?"ਸ਼ਾਮ":"ਰਾਤ"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),n="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");function a(e){return e%10<5&&e%10>1&&~~(e/10)%10!=1}function r(e,t,n){var r=e+" ";switch(n){case"ss":return r+(a(e)?"sekundy":"sekund");case"m":return t?"minuta":"minutę";case"mm":return r+(a(e)?"minuty":"minut");case"h":return t?"godzina":"godzinę";case"hh":return r+(a(e)?"godziny":"godzin");case"MM":return r+(a(e)?"miesiące":"miesięcy");case"yy":return r+(a(e)?"lata":"lat")}}e.defineLocale("pl",{months:function(e,a){return e?""===a?"("+n[e.month()]+"|"+t[e.month()]+")":/D MMMM/.test(a)?n[e.month()]:t[e.month()]:t},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_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ś o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:r,m:r,mm:r,h:r,hh:r,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:r,y:"rok",yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("pt",{months:"Janeiro_Fevereiro_Março_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ça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".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 às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %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ês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("pt-br",{months:"Janeiro_Fevereiro_Março_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ça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".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 [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"poucos 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ês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº"})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a=" ";return(e%100>=20||e>=100&&e%100==0)&&(a=" de "),e+a+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"}[n]}e.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ă_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".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âine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",ss:t,m:"un minut",mm:t,h:"o oră",hh:t,d:"o zi",dd:t,M:"o lună",MM:t,y:"un an",yy:t},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a,r;return"m"===n?t?"минута":"минуту":e+" "+(a=+e,r={ss:t?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:t?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}var n=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i];e.defineLocale("ru",{months:{format:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),standalone:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_")},monthsShort:{format:"янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.".split("_"),standalone:"янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.".split("_")},weekdays:{standalone:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),format:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:n,longMonthsParse:n,shortMonthsParse:n,monthsRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsShortRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsStrictRegex:/^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,monthsShortStrictRegex:/^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,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:"[Сегодня, в] LT",nextDay:"[Завтра, в] LT",lastDay:"[Вчера, в] LT",nextWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В следующее] dddd, [в] LT";case 1:case 2:case 4:return"[В следующий] dddd, [в] LT";case 3:case 5:case 6:return"[В следующую] dddd, [в] LT"}},lastWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd, [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd, [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd, [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",ss:t,m:t,mm:t,h:"час",hh:t,d:"день",dd:t,M:"месяц",MM:t,y:"год",yy:t},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(e){return/^(дня|вечера)$/.test(e)},meridiem:function(e,t,n){return e<4?"ночи":e<12?"утра":e<17?"дня":"вечера"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":return e+"-й";case"D":return e+"-го";case"w":case"W":return e+"-я";default:return e}},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t=["جنوري","فيبروري","مارچ","اپريل","مئي","جون","جولاءِ","آگسٽ","سيپٽمبر","آڪٽوبر","نومبر","ڊسمبر"],n=["آچر","سومر","اڱارو","اربع","خميس","جمع","ڇنڇر"];e.defineLocale("sd",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,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:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return e<12?"صبح":"شام"},calendar:{sameDay:"[اڄ] LT",nextDay:"[سڀاڻي] LT",nextWeek:"dddd [اڳين هفتي تي] LT",lastDay:"[ڪالهه] LT",lastWeek:"[گزريل هفتي] dddd [تي] LT",sameElse:"L"},relativeTime:{future:"%s پوء",past:"%s اڳ",s:"چند سيڪنڊ",ss:"%d سيڪنڊ",m:"هڪ منٽ",mm:"%d منٽ",h:"هڪ ڪلاڪ",hh:"%d ڪلاڪ",d:"هڪ ڏينهن",dd:"%d ڏينهن",M:"هڪ مهينو",MM:"%d مهينا",y:"هڪ سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("se",{months:"ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),monthsShort:"ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),weekdays:"sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),weekdaysShort:"sotn_vuos_maŋ_gask_duor_bear_láv".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žes",past:"maŋit %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ánnu",MM:"%d mánut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("si",{months:"ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),monthsShort:"ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),weekdays:"ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),weekdaysShort:"ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන".split("_"),weekdaysMin:"ඉ_ස_අ_බ_බ්‍ර_සි_සෙ".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 [වැනි] dddd, a h:mm:ss"},calendar:{sameDay:"[අද] LT[ට]",nextDay:"[හෙට] LT[ට]",nextWeek:"dddd LT[ට]",lastDay:"[ඊයේ] LT[ට]",lastWeek:"[පසුගිය] dddd LT[ට]",sameElse:"L"},relativeTime:{future:"%sකින්",past:"%sකට පෙර",s:"තත්පර කිහිපය",ss:"තත්පර %d",m:"මිනිත්තුව",mm:"මිනිත්තු %d",h:"පැය",hh:"පැය %d",d:"දිනය",dd:"දින %d",M:"මාසය",MM:"මාස %d",y:"වසර",yy:"වසර %d"},dayOfMonthOrdinalParse:/\d{1,2} වැනි/,ordinal:function(e){return e+" වැනි"},meridiemParse:/පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,isPM:function(e){return"ප.ව."===e||"පස් වරු"===e},meridiem:function(e,t,n){return e>11?n?"ප.ව.":"පස් වරු":n?"පෙ.ව.":"පෙර වරු"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),n="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");function a(e){return e>1&&e<5}function r(e,t,n,r){var s=e+" ";switch(n){case"s":return t||r?"pár sekúnd":"pár sekundami";case"ss":return t||r?s+(a(e)?"sekundy":"sekúnd"):s+"sekundami";case"m":return t?"minúta":r?"minútu":"minútou";case"mm":return t||r?s+(a(e)?"minúty":"minút"):s+"minútami";case"h":return t?"hodina":r?"hodinu":"hodinou";case"hh":return t||r?s+(a(e)?"hodiny":"hodín"):s+"hodinami";case"d":return t||r?"deň":"dňom";case"dd":return t||r?s+(a(e)?"dni":"dní"):s+"dňami";case"M":return t||r?"mesiac":"mesiacom";case"MM":return t||r?s+(a(e)?"mesiace":"mesiacov"):s+"mesiacmi";case"y":return t||r?"rok":"rokom";case"yy":return t||r?s+(a(e)?"roky":"rokov"):s+"rokmi"}}e.defineLocale("sk",{months:t,monthsShort:n,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_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ľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:r,ss:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r=e+" ";switch(n){case"s":return t||a?"nekaj sekund":"nekaj sekundami";case"ss":return r+=1===e?t?"sekundo":"sekundi":2===e?t||a?"sekundi":"sekundah":e<5?t||a?"sekunde":"sekundah":"sekund";case"m":return t?"ena minuta":"eno minuto";case"mm":return r+=1===e?t?"minuta":"minuto":2===e?t||a?"minuti":"minutama":e<5?t||a?"minute":"minutami":t||a?"minut":"minutami";case"h":return t?"ena ura":"eno uro";case"hh":return r+=1===e?t?"ura":"uro":2===e?t||a?"uri":"urama":e<5?t||a?"ure":"urami":t||a?"ur":"urami";case"d":return t||a?"en dan":"enim dnem";case"dd":return r+=1===e?t||a?"dan":"dnem":2===e?t||a?"dni":"dnevoma":t||a?"dni":"dnevi";case"M":return t||a?"en mesec":"enim mesecem";case"MM":return r+=1===e?t||a?"mesec":"mesecem":2===e?t||a?"meseca":"mesecema":e<5?t||a?"mesece":"meseci":t||a?"mesecev":"meseci";case"y":return t||a?"eno leto":"enim letom";case"yy":return r+=1===e?t||a?"leto":"letom":2===e?t||a?"leti":"letoma":e<5?t||a?"leta":"leti":t||a?"let":"leti"}}e.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_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_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čeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(e){return"M"===e.charAt(0)},meridiem:function(e,t,n){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ë] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",ss:"%d sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={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,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,n,a){var r=t.words[a];return 1===a.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}};e.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_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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če u] LT",lastWeek:function(){return["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={words:{ss:["секунда","секунде","секунди"],m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,n,a){var r=t.words[a];return 1===a.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}};e.defineLocale("sr-cyrl",{months:"јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),monthsShort:"јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),monthsParseExact:!0,weekdays:"недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),weekdaysShort:"нед._пон._уто._сре._чет._пет._суб.".split("_"),weekdaysMin:"не_по_ут_ср_че_пе_су".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:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){return["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"дан",dd:t.translate,M:"месец",MM:t.translate,y:"годину",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t,n){return e<11?"ekuseni":e<15?"emini":e<19?"entsambama":"ebusuku"},meridiemHour:function(e,t){return 12===e&&(e=0),"ekuseni"===t?e:"emini"===t?e>=11?e:e+12:"entsambama"===t||"ebusuku"===t?0===e?0:e+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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öndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".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år] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några 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ånad",MM:"%d månader",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}(e|a)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"e":1===t||2===t?"a":"e")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},n={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"};e.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".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:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",ss:"%d விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},dayOfMonthOrdinalParse:/\d{1,2}வது/,ordinal:function(e){return e+"வது"},preparse:function(e){return e.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(e,t,n){return e<2?" யாமம்":e<6?" வைகறை":e<10?" காலை":e<14?" நண்பகல்":e<18?" எற்பாடு":e<22?" மாலை":" யாமம்"},meridiemHour:function(e,t){return 12===e&&(e=0),"யாமம்"===t?e<2?e:e+12:"வைகறை"===t||"காலை"===t||"நண்பகல்"===t&&e>=10?e:e+12},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),monthsParseExact:!0,weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".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:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",ss:"%d సెకన్లు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},dayOfMonthOrdinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(e,t){return 12===e&&(e=0),"రాత్రి"===t?e<4?e:e+12:"ఉదయం"===t?e:"మధ్యాహ్నం"===t?e>=10?e:e+12:"సాయంత్రం"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"రాత్రి":e<10?"ఉదయం":e<17?"మధ్యాహ్నం":e<20?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={0:"-ум",1:"-ум",2:"-юм",3:"-юм",4:"-ум",5:"-ум",6:"-ум",7:"-ум",8:"-ум",9:"-ум",10:"-ум",12:"-ум",13:"-ум",20:"-ум",30:"-юм",40:"-ум",50:"-ум",60:"-ум",70:"-ум",80:"-ум",90:"-ум",100:"-ум"};e.defineLocale("tg",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),weekdaysShort:"яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),weekdaysMin:"яш_дш_сш_чш_пш_ҷм_шб".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:"[Имрӯз соати] LT",nextDay:"[Пагоҳ соати] LT",lastDay:"[Дирӯз соати] LT",nextWeek:"dddd[и] [ҳафтаи оянда соати] LT",lastWeek:"dddd[и] [ҳафтаи гузашта соати] LT",sameElse:"L"},relativeTime:{future:"баъди %s",past:"%s пеш",s:"якчанд сония",m:"як дақиқа",mm:"%d дақиқа",h:"як соат",hh:"%d соат",d:"як рӯз",dd:"%d рӯз",M:"як моҳ",MM:"%d моҳ",y:"як сол",yy:"%d сол"},meridiemParse:/шаб|субҳ|рӯз|бегоҳ/,meridiemHour:function(e,t){return 12===e&&(e=0),"шаб"===t?e<4?e:e+12:"субҳ"===t?e:"рӯз"===t?e>=11?e:e+12:"бегоҳ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"шаб":e<11?"субҳ":e<16?"рӯз":e<19?"бегоҳ":"шаб"},dayOfMonthOrdinalParse:/\d{1,2}-(ум|юм)/,ordinal:function(e){return e+(t[e]||t[e%10]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),monthsParseExact:!0,weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".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"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(e){return"หลังเที่ยง"===e},meridiem:function(e,t,n){return e<12?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",ss:"%d วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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:"%d 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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function n(e,n,a,r){var s=function(e){var n=Math.floor(e%1e3/100),a=Math.floor(e%100/10),r=e%10,s="";return n>0&&(s+=t[n]+"vatlh"),a>0&&(s+=(""!==s?" ":"")+t[a]+"maH"),r>0&&(s+=(""!==s?" ":"")+t[r]),""===s?"pagh":s}(e);switch(a){case"ss":return s+" lup";case"mm":return s+" tup";case"hh":return s+" rep";case"dd":return s+" jaj";case"MM":return s+" jar";case"yy":return s+" DIS"}}e.defineLocale("tlh",{months:"tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),monthsShort:"jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".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’leS] LT",nextWeek:"LLL",lastDay:"[wa’Hu’] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:function(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"leS":-1!==e.indexOf("jar")?t.slice(0,-3)+"waQ":-1!==e.indexOf("DIS")?t.slice(0,-3)+"nem":t+" pIq"},past:function(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"Hu’":-1!==e.indexOf("jar")?t.slice(0,-3)+"wen":-1!==e.indexOf("DIS")?t.slice(0,-3)+"ben":t+" ret"},s:"puS lup",ss:n,m:"wa’ tup",mm:n,h:"wa’ rep",hh:n,d:"wa’ jaj",dd:n,M:"wa’ jar",MM:n,y:"wa’ DIS",yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};e.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_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ün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(e,n){switch(n){case"d":case"D":case"Do":case"DD":return e;default:if(0===e)return e+"'ıncı";var a=e%10;return e+(t[a]||t[e%100-a]||t[e>=100?100:null])}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={s:["viensas secunds","'iensas secunds"],ss:[e+" secunds",e+" secunds"],m:["'n míut","'iens míut"],mm:[e+" míuts",e+" míuts"],h:["'n þora","'iensa þora"],hh:[e+" þoras",e+" þoras"],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 a||t?r[n][0]:r[n][1]}e.defineLocale("tzl",{months:"Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),weekdaysShort:"Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),weekdaysMin:"Sú_Lú_Ma_Má_Xh_Vi_Sá".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,t,n){return e>11?n?"d'o":"D'O":n?"d'a":"D'A"},calendar:{sameDay:"[oxhi à] LT",nextDay:"[demà à] LT",nextWeek:"dddd [à] LT",lastDay:"[ieiri à] LT",lastWeek:"[sür el] dddd [lasteu à] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".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:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",ss:"%d ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".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ḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ug-cn",{months:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),monthsShort:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),weekdays:"يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),weekdaysShort:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),weekdaysMin:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-يىلىM-ئاينىڭD-كۈنى",LLL:"YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",LLLL:"dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"},meridiemParse:/يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,meridiemHour:function(e,t){return 12===e&&(e=0),"يېرىم كېچە"===t||"سەھەر"===t||"چۈشتىن بۇرۇن"===t?e:"چۈشتىن كېيىن"===t||"كەچ"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,n){var a=100*e+t;return a<600?"يېرىم كېچە":a<900?"سەھەر":a<1130?"چۈشتىن بۇرۇن":a<1230?"چۈش":a<1800?"چۈشتىن كېيىن":"كەچ"},calendar:{sameDay:"[بۈگۈن سائەت] LT",nextDay:"[ئەتە سائەت] LT",nextWeek:"[كېلەركى] dddd [سائەت] LT",lastDay:"[تۆنۈگۈن] LT",lastWeek:"[ئالدىنقى] dddd [سائەت] LT",sameElse:"L"},relativeTime:{future:"%s كېيىن",past:"%s بۇرۇن",s:"نەچچە سېكونت",ss:"%d سېكونت",m:"بىر مىنۇت",mm:"%d مىنۇت",h:"بىر سائەت",hh:"%d سائەت",d:"بىر كۈن",dd:"%d كۈن",M:"بىر ئاي",MM:"%d ئاي",y:"بىر يىل",yy:"%d يىل"},dayOfMonthOrdinalParse:/\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"-كۈنى";case"w":case"W":return e+"-ھەپتە";default:return e}},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a,r;return"m"===n?t?"хвилина":"хвилину":"h"===n?t?"година":"годину":e+" "+(a=+e,r={ss:t?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:t?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:t?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}function n(e){return function(){return e+"о"+(11===this.hours()?"б":"")+"] LT"}}e.defineLocale("uk",{months:{format:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),standalone:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")},monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:function(e,t){var n={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")};return!0===e?n.nominative.slice(1,7).concat(n.nominative.slice(0,1)):e?n[/(\[[ВвУу]\]) ?dddd/.test(t)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(t)?"genitive":"nominative"][e.day()]:n.nominative},weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".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:n("[Сьогодні "),nextDay:n("[Завтра "),lastDay:n("[Вчора "),nextWeek:n("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return n("[Минулої] dddd [").call(this);case 1:case 2:case 4:return n("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",ss:t,m:t,mm:t,h:"годину",hh:t,d:"день",dd:t,M:"місяць",MM:t,y:"рік",yy:t},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(e){return/^(дня|вечора)$/.test(e)},meridiem:function(e,t,n){return e<4?"ночі":e<12?"ранку":e<17?"дня":"вечора"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e+"-й";case"D":return e+"-го";default:return e}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,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:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return e<12?"صبح":"شام"},calendar:{sameDay:"[آج بوقت] LT",nextDay:"[کل بوقت] LT",nextWeek:"dddd [بوقت] LT",lastDay:"[گذشتہ روز بوقت] LT",lastWeek:"[گذشتہ] dddd [بوقت] LT",sameElse:"L"},relativeTime:{future:"%s بعد",past:"%s قبل",s:"چند سیکنڈ",ss:"%d سیکنڈ",m:"ایک منٹ",mm:"%d منٹ",h:"ایک گھنٹہ",hh:"%d گھنٹے",d:"ایک دن",dd:"%d دن",M:"ایک ماہ",MM:"%d ماہ",y:"ایک سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".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:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",ss:"%d фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".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)},meridiem:function(e,t,n){return e<12?n?"sa":"SA":n?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] 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ôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",ss:"%d giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("x-pseudo",{months:"J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér".split("_"),monthsShort:"J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc".split("_"),monthsParseExact:!0,weekdays:"S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý".split("_"),weekdaysShort:"S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát".split("_"),weekdaysMin:"S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá".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~ódá~ý át] LT",nextDay:"[T~ómó~rró~w át] LT",nextWeek:"dddd [át] LT",lastDay:"[Ý~ést~érdá~ý át] LT",lastWeek:"[L~ást] dddd [át] LT",sameElse:"L"},relativeTime:{future:"í~ñ %s",past:"%s á~gó",s:"á ~féw ~sécó~ñds",ss:"%d s~écóñ~ds",m:"á ~míñ~úté",mm:"%d m~íñú~tés",h:"á~ñ hó~úr",hh:"%d h~óúrs",d:"á ~dáý",dd:"%d d~áýs",M:"á ~móñ~th",MM:"%d m~óñt~hs",y:"á ~ýéár",yy:"%d ý~éárs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("yo",{months:"Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),monthsShort:"Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),weekdays:"Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),weekdaysShort:"Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),weekdaysMin:"Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".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:"[Ònì ni] LT",nextDay:"[Ọ̀la ni] LT",nextWeek:"dddd [Ọsẹ̀ tón'bọ] [ni] LT",lastDay:"[Àna ni] LT",lastWeek:"dddd [Ọsẹ̀ tólọ́] [ni] LT",sameElse:"L"},relativeTime:{future:"ní %s",past:"%s kọjá",s:"ìsẹjú aayá die",ss:"aayá %d",m:"ìsẹjú kan",mm:"ìsẹjú %d",h:"wákati kan",hh:"wákati %d",d:"ọjọ́ kan",dd:"ọjọ́ %d",M:"osù kan",MM:"osù %d",y:"ọdún kan",yy:"ọdún %d"},dayOfMonthOrdinalParse:/ọjọ́\s\d{1,2}/,ordinal:"ọjọ́ %d",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"下午"===t||"晚上"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,n){var a=100*e+t;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"周";default:return e}},relativeTime:{future:"%s内",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("zh-hk",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,n){var a=100*e+t;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("zh-tw",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,n){var a=100*e+t;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n(0))},function(e,t,n){window,e.exports=function(e){var t={};function n(a){if(t[a])return t[a].exports;var r=t[a]={i:a,l:!1,exports:{}};return e[a].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(a,r,function(t){return e[t]}.bind(null,r));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=3)}([function(e,t){e.exports=n(0)},function(e,t){e.exports=n(299)},function(e,t){e.exports=n(302)},function(e,t,n){"use strict";n.r(t);var a=n(0),r=n.n(a),s=n(1),i=n.n(s),o=n(2),l=new i.a,u=Object(o.getLocale)();[{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2020","Language-Team":"Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nenolp <enolp@softastur.org>, 2020\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2020\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2020","Language-Team":"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nPavel Borecki <pavel.borecki@gmail.com>, 2020\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekund"]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020","Language-Team":"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nHenrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\n"},msgstr:["Last-Translator: Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunder"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Christoph Wurst <christoph@winzerhof-wurst.at>, 2020","Language-Team":"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nChristoph Wurst <christoph@winzerhof-wurst.at>, 2020\n"},msgstr:["Last-Translator: Christoph Wurst <christoph@winzerhof-wurst.at>, 2020\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["Sekunden"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"GRMarksman <alexakos01@gmail.com>, 2020","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nGRMarksman <alexakos01@gmail.com>, 2020\n"},msgstr:["Last-Translator: GRMarksman <alexakos01@gmail.com>, 2020\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["δευτερόλεπτα"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020","Language-Team":"English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\n"},msgstr:["Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\nLanguage-Team: English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["seconds"]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Javier San Juan <javier.sj@trantor.es>, 2020","Language-Team":"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJavier San Juan <javier.sj@trantor.es>, 2020\n"},msgstr:["Last-Translator: Javier San Juan <javier.sj@trantor.es>, 2020\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAsier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\n"},msgstr:["Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundo"]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Yoplala <yoplala@pataraphe.net>, 2020","Language-Team":"French (https://www.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYoplala <yoplala@pataraphe.net>, 2020\n"},msgstr:["Last-Translator: Yoplala <yoplala@pataraphe.net>, 2020\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["secondes"]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020","Language-Team":"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2020\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Yaron Shahrabani <sh.yaron@gmail.com>, 2020","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYaron Shahrabani <sh.yaron@gmail.com>, 2020\n"},msgstr:["Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>, 2020\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["שניות"]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Balázs Meskó <meskobalazs@gmail.com>, 2020","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nBalázs Meskó <meskobalazs@gmail.com>, 2020\n"},msgstr:["Last-Translator: Balázs Meskó <meskobalazs@gmail.com>, 2020\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["másodperc"]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2020","Language-Team":"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nSveinn í Felli <sv1@fellsnet.is>, 2020\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2020\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekúndur"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2020","Language-Team":"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nRandom_R, 2020\n"},msgstr:["Last-Translator: Random_R, 2020\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["secondi"]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"YANO Tetsu <tetuyano+transi@gmail.com>, 2020","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYANO Tetsu <tetuyano+transi@gmail.com>, 2020\n"},msgstr:["Last-Translator: YANO Tetsu <tetuyano+transi@gmail.com>, 2020\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Moo, 2020","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMoo, 2020\n"},msgstr:["Last-Translator: Moo, 2020\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sek."]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"stendec <stendec@inbox.lv>, 2020","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nstendec <stendec@inbox.lv>, 2020\n"},msgstr:["Last-Translator: stendec <stendec@inbox.lv>, 2020\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundes"]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров, 2020","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nСашко Тодоров, 2020\n"},msgstr:["Last-Translator: Сашко Тодоров, 2020\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунди"]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Roeland Jago Douma <roeland@famdouma.nl>, 2020","Language-Team":"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nRoeland Jago Douma <roeland@famdouma.nl>, 2020\n"},msgstr:["Last-Translator: Roeland Jago Douma <roeland@famdouma.nl>, 2020\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["seconden"]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Quentin PAGÈS, 2020","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nQuentin PAGÈS, 2020\n"},msgstr:["Last-Translator: Quentin PAGÈS, 2020\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segondas"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020","Language-Team":"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJanusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\n"},msgstr:["Last-Translator: Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundy"]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"André Marcelo Alvarenga <alvarenga@kde.org>, 2020","Language-Team":"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAndré Marcelo Alvarenga <alvarenga@kde.org>, 2020\n"},msgstr:["Last-Translator: André Marcelo Alvarenga <alvarenga@kde.org>, 2020\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"fpapoila <fpapoila@gmail.com>, 2020","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nfpapoila <fpapoila@gmail.com>, 2020\n"},msgstr:["Last-Translator: fpapoila <fpapoila@gmail.com>, 2020\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Игорь Бондаренко <garbond@yandex.ru>, 2020","Language-Team":"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nИгорь Бондаренко <garbond@yandex.ru>, 2020\n"},msgstr:["Last-Translator: Игорь Бондаренко <garbond@yandex.ru>, 2020\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунды"]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Greta, 2020","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nGreta, 2020\n"},msgstr:["Last-Translator: Greta, 2020\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekonda"]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Slobodan Simić <slsimic@gmail.com>, 2020","Language-Team":"Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nSlobodan Simić <slsimic@gmail.com>, 2020\n"},msgstr:["Last-Translator: Slobodan Simić <slsimic@gmail.com>, 2020\nLanguage-Team: Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунде"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2020","Language-Team":"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMagnus Höglund, 2020\n"},msgstr:["Last-Translator: Magnus Höglund, 2020\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunder"]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020","Language-Team":"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nHüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\n"},msgstr:["Last-Translator: Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["saniye"]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020","Language-Team":"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\n"},msgstr:["Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунди"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Jay Guo <jayguo921@gmail.com>, 2020","Language-Team":"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJay Guo <jayguo921@gmail.com>, 2020\n"},msgstr:["Last-Translator: Jay Guo <jayguo921@gmail.com>, 2020\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"Jim Tsai <poormusic2001@gmail.com>, 2020","Language-Team":"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJim Tsai <poormusic2001@gmail.com>, 2020\n"},msgstr:["Last-Translator: Jim Tsai <poormusic2001@gmail.com>, 2020\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}}].map((function(e){l.addTranslations(e.locale,"messages",e.json)})),l.setLocale(u),r.a.locale(u),r.a.updateLocale(r.a.locale(),{parentLocale:r.a.locale(),relativeTime:Object.assign(r.a.localeData(r.a.locale())._relativeTime,{s:l.gettext("seconds")})}),t.default=r.a}])},function(e,t,n){var a=n(15),r=n(223);a({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){var a=n(1),r=n(50),s=a.WeakMap;e.exports="function"==typeof s&&/native code/.test(r(s))},function(e,t,n){var a=n(5),r=n(218),s=n(46),i=n(9);e.exports=function(e,t){for(var n=r(t),o=i.f,l=s.f,u=0;u<n.length;u++){var d=n[u];a(e,d)||o(e,d,l(t,d))}}},function(e,t,n){var a=n(25),r=n(220),s=n(54),i=n(12);e.exports=a("Reflect","ownKeys")||function(e){var t=r.f(i(e)),n=s.f;return n?t.concat(n(e)):t}},function(e,t,n){var a=n(1);e.exports=a},function(e,t,n){var a=n(53),r=n(40).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return a(e,r)}},function(e,t,n){var a=n(22),r=n(26),s=n(222),i=function(e){return function(t,n,i){var o,l=a(t),u=r(l.length),d=s(i,u);if(e&&n!=n){for(;u>d;)if((o=l[d++])!=o)return!0}else for(;u>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){var a=n(39),r=Math.max,s=Math.min;e.exports=function(e,t){var n=a(e);return n<0?r(n+t,0):s(n,t)}},function(e,t,n){"use strict";var a=n(8),r=n(3),s=n(56),i=n(54),o=n(47),l=n(27),u=n(31),d=Object.assign,c=Object.defineProperty;e.exports=!d||r((function(){if(a&&1!==d({b:1},d(c({},"a",{enumerable:!0,get:function(){c(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||"abcdefghijklmnopqrst"!=s(d({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,d=1,c=i.f,m=o.f;r>d;)for(var _,p=u(arguments[d++]),f=c?s(p).concat(c(p)):s(p),h=f.length,y=0;h>y;)_=f[y++],a&&!m.call(p,_)||(n[_]=p[_]);return n}:d},function(e,t,n){e.exports=n(225)},function(e,t,n){"use strict";var a=n(4),r=n(57),s=n(226),i=n(63);function o(e){var t=new s(e),n=r(s.prototype.request,t);return a.extend(n,s.prototype,t),a.extend(n,t),n}var l=o(n(60));l.Axios=s,l.create=function(e){return o(i(l.defaults,e))},l.Cancel=n(64),l.CancelToken=n(239),l.isCancel=n(59),l.all=function(e){return Promise.all(e)},l.spread=n(240),e.exports=l,e.exports.default=l},function(e,t,n){"use strict";var a=n(4),r=n(58),s=n(227),i=n(228),o=n(63);function l(e){this.defaults=e,this.interceptors={request:new s,response:new s}}l.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=o(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[i,void 0],n=Promise.resolve(e);for(this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));t.length;)n=n.then(t.shift(),t.shift());return n},l.prototype.getUri=function(e){return e=o(this.defaults,e),r(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},a.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,n){return this.request(a.merge(n||{},{method:e,url:t}))}})),a.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,n,r){return this.request(a.merge(r||{},{method:e,url:t,data:n}))}})),e.exports=l},function(e,t,n){"use strict";var a=n(4);function r(){this.handlers=[]}r.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},r.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},r.prototype.forEach=function(e){a.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=r},function(e,t,n){"use strict";var a=n(4),r=n(229),s=n(59),i=n(60);function o(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){return o(e),e.headers=e.headers||{},e.data=r(e.data,e.headers,e.transformRequest),e.headers=a.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),a.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||i.adapter)(e).then((function(t){return o(e),t.data=r(t.data,t.headers,e.transformResponse),t}),(function(t){return s(t)||(o(e),t&&t.response&&(t.response.data=r(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},function(e,t,n){"use strict";var a=n(4);e.exports=function(e,t,n){return a.forEach(n,(function(n){e=n(e,t)})),e}},function(e,t,n){"use strict";var a=n(4);e.exports=function(e,t){a.forEach(e,(function(n,a){a!==t&&a.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[a])}))}},function(e,t,n){"use strict";var a=n(62);e.exports=function(e,t,n){var r=n.config.validateStatus;!r||r(n.status)?e(n):t(a("Request failed with status code "+n.status,n.config,null,n.request,n))}},function(e,t,n){"use strict";e.exports=function(e,t,n,a,r){return e.config=t,n&&(e.code=n),e.request=a,e.response=r,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},function(e,t,n){"use strict";var a=n(234),r=n(235);e.exports=function(e,t){return e&&!a(t)?r(e,t):t}},function(e,t,n){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t,n){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t,n){"use strict";var a=n(4),r=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,n,s,i={};return e?(a.forEach(e.split("\n"),(function(e){if(s=e.indexOf(":"),t=a.trim(e.substr(0,s)).toLowerCase(),n=a.trim(e.substr(s+1)),t){if(i[t]&&r.indexOf(t)>=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([n]):i[t]?i[t]+", "+n:n}})),i):i}},function(e,t,n){"use strict";var a=n(4);e.exports=a.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function r(e){var a=e;return t&&(n.setAttribute("href",a),a=n.href),n.setAttribute("href",a),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=r(window.location.href),function(t){var n=a.isString(t)?r(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0}},function(e,t,n){"use strict";var a=n(4);e.exports=a.isStandardBrowserEnv()?{write:function(e,t,n,r,s,i){var o=[];o.push(e+"="+encodeURIComponent(t)),a.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),a.isString(r)&&o.push("path="+r),a.isString(s)&&o.push("domain="+s),!0===i&&o.push("secure"),document.cookie=o.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t,n){"use strict";var a=n(64);function r(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;e((function(e){n.reason||(n.reason=new a(e),t(n.reason))}))}r.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},r.source=function(){var e;return{token:new r((function(t){e=t})),cancel:e}},e.exports=r},function(e,t,n){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getRequestToken",{enumerable:!0,get:function(){return a.getRequestToken}}),Object.defineProperty(t,"onRequestTokenUpdate",{enumerable:!0,get:function(){return a.onRequestTokenUpdate}}),Object.defineProperty(t,"getCurrentUser",{enumerable:!0,get:function(){return r.getCurrentUser}});var a=n(242),r=n(276)},function(e,t,n){"use strict";n(65),Object.defineProperty(t,"__esModule",{value:!0}),t.getRequestToken=function(){return s},t.onRequestTokenUpdate=function(e){i.push(e)};var a=n(30),r=document.getElementsByTagName("head")[0],s=r?r.getAttribute("data-requesttoken"):null,i=[];(0,a.subscribe)("csrf-token-update",(function(e){s=e.token,i.forEach((function(t){try{t(e.token)}catch(e){console.error("error updating CSRF token observer",e)}}))}))},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){var a=n(70);e.exports=a&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(e,t,n){"use strict";var a=n(3);e.exports=function(e,t){var n=[][e];return!!n&&a((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ProxyBus=void 0;var a,r=(a=n(247))&&a.__esModule?a:{default:a};function s(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}var i="1.1.4",o=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e,t,n){t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"bus",void 0),"function"==typeof t.getVersion&&r.default.valid(t.getVersion())?r.default.major(t.getVersion())!==r.default.major(this.getVersion())&&console.warn("Proxying an event bus of version "+t.getVersion()+" with "+this.getVersion()):console.warn("Proxying an event bus with an unknown or invalid version"),this.bus=t}var t,n,a;return t=e,(n=[{key:"getVersion",value:function(){return i}},{key:"subscribe",value:function(e,t){this.bus.subscribe(e,t)}},{key:"unsubscribe",value:function(e,t){this.bus.unsubscribe(e,t)}},{key:"emit",value:function(e,t){this.bus.emit(e,t)}}])&&s(t.prototype,n),a&&s(t,a),e}();t.ProxyBus=o},function(e,t,n){(function(n){var a;t=e.exports=m,a="object"==typeof n&&n.env&&n.env.NODE_DEBUG&&/\bsemver\b/i.test(n.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var r=Number.MAX_SAFE_INTEGER||9007199254740991,s=t.re=[],i=t.src=[],o=t.tokens={},l=0;function u(e){o[e]=l++}u("NUMERICIDENTIFIER"),i[o.NUMERICIDENTIFIER]="0|[1-9]\\d*",u("NUMERICIDENTIFIERLOOSE"),i[o.NUMERICIDENTIFIERLOOSE]="[0-9]+",u("NONNUMERICIDENTIFIER"),i[o.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-][a-zA-Z0-9-]*",u("MAINVERSION"),i[o.MAINVERSION]="("+i[o.NUMERICIDENTIFIER]+")\\.("+i[o.NUMERICIDENTIFIER]+")\\.("+i[o.NUMERICIDENTIFIER]+")",u("MAINVERSIONLOOSE"),i[o.MAINVERSIONLOOSE]="("+i[o.NUMERICIDENTIFIERLOOSE]+")\\.("+i[o.NUMERICIDENTIFIERLOOSE]+")\\.("+i[o.NUMERICIDENTIFIERLOOSE]+")",u("PRERELEASEIDENTIFIER"),i[o.PRERELEASEIDENTIFIER]="(?:"+i[o.NUMERICIDENTIFIER]+"|"+i[o.NONNUMERICIDENTIFIER]+")",u("PRERELEASEIDENTIFIERLOOSE"),i[o.PRERELEASEIDENTIFIERLOOSE]="(?:"+i[o.NUMERICIDENTIFIERLOOSE]+"|"+i[o.NONNUMERICIDENTIFIER]+")",u("PRERELEASE"),i[o.PRERELEASE]="(?:-("+i[o.PRERELEASEIDENTIFIER]+"(?:\\."+i[o.PRERELEASEIDENTIFIER]+")*))",u("PRERELEASELOOSE"),i[o.PRERELEASELOOSE]="(?:-?("+i[o.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+i[o.PRERELEASEIDENTIFIERLOOSE]+")*))",u("BUILDIDENTIFIER"),i[o.BUILDIDENTIFIER]="[0-9A-Za-z-]+",u("BUILD"),i[o.BUILD]="(?:\\+("+i[o.BUILDIDENTIFIER]+"(?:\\."+i[o.BUILDIDENTIFIER]+")*))",u("FULL"),u("FULLPLAIN"),i[o.FULLPLAIN]="v?"+i[o.MAINVERSION]+i[o.PRERELEASE]+"?"+i[o.BUILD]+"?",i[o.FULL]="^"+i[o.FULLPLAIN]+"$",u("LOOSEPLAIN"),i[o.LOOSEPLAIN]="[v=\\s]*"+i[o.MAINVERSIONLOOSE]+i[o.PRERELEASELOOSE]+"?"+i[o.BUILD]+"?",u("LOOSE"),i[o.LOOSE]="^"+i[o.LOOSEPLAIN]+"$",u("GTLT"),i[o.GTLT]="((?:<|>)?=?)",u("XRANGEIDENTIFIERLOOSE"),i[o.XRANGEIDENTIFIERLOOSE]=i[o.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",u("XRANGEIDENTIFIER"),i[o.XRANGEIDENTIFIER]=i[o.NUMERICIDENTIFIER]+"|x|X|\\*",u("XRANGEPLAIN"),i[o.XRANGEPLAIN]="[v=\\s]*("+i[o.XRANGEIDENTIFIER]+")(?:\\.("+i[o.XRANGEIDENTIFIER]+")(?:\\.("+i[o.XRANGEIDENTIFIER]+")(?:"+i[o.PRERELEASE]+")?"+i[o.BUILD]+"?)?)?",u("XRANGEPLAINLOOSE"),i[o.XRANGEPLAINLOOSE]="[v=\\s]*("+i[o.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+i[o.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+i[o.XRANGEIDENTIFIERLOOSE]+")(?:"+i[o.PRERELEASELOOSE]+")?"+i[o.BUILD]+"?)?)?",u("XRANGE"),i[o.XRANGE]="^"+i[o.GTLT]+"\\s*"+i[o.XRANGEPLAIN]+"$",u("XRANGELOOSE"),i[o.XRANGELOOSE]="^"+i[o.GTLT]+"\\s*"+i[o.XRANGEPLAINLOOSE]+"$",u("COERCE"),i[o.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",u("COERCERTL"),s[o.COERCERTL]=new RegExp(i[o.COERCE],"g"),u("LONETILDE"),i[o.LONETILDE]="(?:~>?)",u("TILDETRIM"),i[o.TILDETRIM]="(\\s*)"+i[o.LONETILDE]+"\\s+",s[o.TILDETRIM]=new RegExp(i[o.TILDETRIM],"g");u("TILDE"),i[o.TILDE]="^"+i[o.LONETILDE]+i[o.XRANGEPLAIN]+"$",u("TILDELOOSE"),i[o.TILDELOOSE]="^"+i[o.LONETILDE]+i[o.XRANGEPLAINLOOSE]+"$",u("LONECARET"),i[o.LONECARET]="(?:\\^)",u("CARETTRIM"),i[o.CARETTRIM]="(\\s*)"+i[o.LONECARET]+"\\s+",s[o.CARETTRIM]=new RegExp(i[o.CARETTRIM],"g");u("CARET"),i[o.CARET]="^"+i[o.LONECARET]+i[o.XRANGEPLAIN]+"$",u("CARETLOOSE"),i[o.CARETLOOSE]="^"+i[o.LONECARET]+i[o.XRANGEPLAINLOOSE]+"$",u("COMPARATORLOOSE"),i[o.COMPARATORLOOSE]="^"+i[o.GTLT]+"\\s*("+i[o.LOOSEPLAIN]+")$|^$",u("COMPARATOR"),i[o.COMPARATOR]="^"+i[o.GTLT]+"\\s*("+i[o.FULLPLAIN]+")$|^$",u("COMPARATORTRIM"),i[o.COMPARATORTRIM]="(\\s*)"+i[o.GTLT]+"\\s*("+i[o.LOOSEPLAIN]+"|"+i[o.XRANGEPLAIN]+")",s[o.COMPARATORTRIM]=new RegExp(i[o.COMPARATORTRIM],"g");u("HYPHENRANGE"),i[o.HYPHENRANGE]="^\\s*("+i[o.XRANGEPLAIN]+")\\s+-\\s+("+i[o.XRANGEPLAIN]+")\\s*$",u("HYPHENRANGELOOSE"),i[o.HYPHENRANGELOOSE]="^\\s*("+i[o.XRANGEPLAINLOOSE]+")\\s+-\\s+("+i[o.XRANGEPLAINLOOSE]+")\\s*$",u("STAR"),i[o.STAR]="(<|>)?=?\\s*\\*";for(var d=0;d<l;d++)a(d,i[d]),s[d]||(s[d]=new RegExp(i[d]));function c(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof m)return e;if("string"!=typeof e)return null;if(e.length>256)return null;if(!(t.loose?s[o.LOOSE]:s[o.FULL]).test(e))return null;try{return new m(e,t)}catch(e){return null}}function m(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof m){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>256)throw new TypeError("version is longer than 256 characters");if(!(this instanceof m))return new m(e,t);a("SemVer",e,t),this.options=t,this.loose=!!t.loose;var n=e.trim().match(t.loose?s[o.LOOSE]:s[o.FULL]);if(!n)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>r||this.major<0)throw new TypeError("Invalid major version");if(this.minor>r||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>r||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map((function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t<r)return t}return e})):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}t.parse=c,t.valid=function(e,t){var n=c(e,t);return n?n.version:null},t.clean=function(e,t){var n=c(e.trim().replace(/^[=v]+/,""),t);return n?n.version:null},t.SemVer=m,m.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},m.prototype.toString=function(){return this.version},m.prototype.compare=function(e){return a("SemVer.compare",this.version,this.options,e),e instanceof m||(e=new m(e,this.options)),this.compareMain(e)||this.comparePre(e)},m.prototype.compareMain=function(e){return e instanceof m||(e=new m(e,this.options)),p(this.major,e.major)||p(this.minor,e.minor)||p(this.patch,e.patch)},m.prototype.comparePre=function(e){if(e instanceof m||(e=new m(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;var t=0;do{var n=this.prerelease[t],r=e.prerelease[t];if(a("prerelease compare",t,n,r),void 0===n&&void 0===r)return 0;if(void 0===r)return 1;if(void 0===n)return-1;if(n!==r)return p(n,r)}while(++t)},m.prototype.compareBuild=function(e){e instanceof m||(e=new m(e,this.options));var t=0;do{var n=this.build[t],r=e.build[t];if(a("prerelease compare",t,n,r),void 0===n&&void 0===r)return 0;if(void 0===r)return 1;if(void 0===n)return-1;if(n!==r)return p(n,r)}while(++t)},m.prototype.inc=function(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t),this.inc("pre",t);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{for(var n=this.prerelease.length;--n>=0;)"number"==typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);-1===n&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,n,a){"string"==typeof n&&(a=n,n=void 0);try{return new m(e,n).inc(t,a).version}catch(e){return null}},t.diff=function(e,t){if(M(e,t))return null;var n=c(e),a=c(t),r="";if(n.prerelease.length||a.prerelease.length){r="pre";var s="prerelease"}for(var i in n)if(("major"===i||"minor"===i||"patch"===i)&&n[i]!==a[i])return r+i;return s},t.compareIdentifiers=p;var _=/^[0-9]+$/;function p(e,t){var n=_.test(e),a=_.test(t);return n&&a&&(e=+e,t=+t),e===t?0:n&&!a?-1:a&&!n?1:e<t?-1:1}function f(e,t,n){return new m(e,n).compare(new m(t,n))}function h(e,t,n){return f(e,t,n)>0}function y(e,t,n){return f(e,t,n)<0}function M(e,t,n){return 0===f(e,t,n)}function v(e,t,n){return 0!==f(e,t,n)}function g(e,t,n){return f(e,t,n)>=0}function L(e,t,n){return f(e,t,n)<=0}function Y(e,t,n,a){switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof n&&(n=n.version),e===n;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof n&&(n=n.version),e!==n;case"":case"=":case"==":return M(e,n,a);case"!=":return v(e,n,a);case">":return h(e,n,a);case">=":return g(e,n,a);case"<":return y(e,n,a);case"<=":return L(e,n,a);default:throw new TypeError("Invalid operator: "+t)}}function T(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof T){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof T))return new T(e,t);a("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===k?this.value="":this.value=this.operator+this.semver.version,a("comp",this)}t.rcompareIdentifiers=function(e,t){return p(t,e)},t.major=function(e,t){return new m(e,t).major},t.minor=function(e,t){return new m(e,t).minor},t.patch=function(e,t){return new m(e,t).patch},t.compare=f,t.compareLoose=function(e,t){return f(e,t,!0)},t.compareBuild=function(e,t,n){var a=new m(e,n),r=new m(t,n);return a.compare(r)||a.compareBuild(r)},t.rcompare=function(e,t,n){return f(t,e,n)},t.sort=function(e,n){return e.sort((function(e,a){return t.compareBuild(e,a,n)}))},t.rsort=function(e,n){return e.sort((function(e,a){return t.compareBuild(a,e,n)}))},t.gt=h,t.lt=y,t.eq=M,t.neq=v,t.gte=g,t.lte=L,t.cmp=Y,t.Comparator=T;var k={};function w(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof w)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new w(e.raw,t);if(e instanceof T)return new w(e.value,t);if(!(this instanceof w))return new w(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map((function(e){return this.parseRange(e.trim())}),this).filter((function(e){return e.length})),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e);this.format()}function D(e,t){for(var n=!0,a=e.slice(),r=a.pop();n&&a.length;)n=a.every((function(e){return r.intersects(e,t)})),r=a.pop();return n}function b(e){return!e||"x"===e.toLowerCase()||"*"===e}function x(e,t,n,a,r,s,i,o,l,u,d,c,m){return((t=b(n)?"":b(a)?">="+n+".0.0":b(r)?">="+n+"."+a+".0":">="+t)+" "+(o=b(l)?"":b(u)?"<"+(+l+1)+".0.0":b(d)?"<"+l+"."+(+u+1)+".0":c?"<="+l+"."+u+"."+d+"-"+c:"<="+o)).trim()}function S(e,t,n){for(var r=0;r<e.length;r++)if(!e[r].test(t))return!1;if(t.prerelease.length&&!n.includePrerelease){for(r=0;r<e.length;r++)if(a(e[r].semver),e[r].semver!==k&&e[r].semver.prerelease.length>0){var s=e[r].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0}function j(e,t,n){try{t=new w(t,n)}catch(e){return!1}return t.test(e)}function H(e,t,n,a){var r,s,i,o,l;switch(e=new m(e,a),t=new w(t,a),n){case">":r=h,s=L,i=y,o=">",l=">=";break;case"<":r=y,s=g,i=h,o="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(j(e,t,a))return!1;for(var u=0;u<t.set.length;++u){var d=t.set[u],c=null,_=null;if(d.forEach((function(e){e.semver===k&&(e=new T(">=0.0.0")),c=c||e,_=_||e,r(e.semver,c.semver,a)?c=e:i(e.semver,_.semver,a)&&(_=e)})),c.operator===o||c.operator===l)return!1;if((!_.operator||_.operator===o)&&s(e,_.semver))return!1;if(_.operator===l&&i(e,_.semver))return!1}return!0}T.prototype.parse=function(e){var t=this.options.loose?s[o.COMPARATORLOOSE]:s[o.COMPARATOR],n=e.match(t);if(!n)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==n[1]?n[1]:"","="===this.operator&&(this.operator=""),n[2]?this.semver=new m(n[2],this.options.loose):this.semver=k},T.prototype.toString=function(){return this.value},T.prototype.test=function(e){if(a("Comparator.test",e,this.options.loose),this.semver===k||e===k)return!0;if("string"==typeof e)try{e=new m(e,this.options)}catch(e){return!1}return Y(e,this.operator,this.semver,this.options)},T.prototype.intersects=function(e,t){if(!(e instanceof T))throw new TypeError("a Comparator is required");var n;if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||(n=new w(e.value,t),j(this.value,n,t));if(""===e.operator)return""===e.value||(n=new w(this.value,t),j(e.semver,n,t));var a=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),r=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),s=this.semver.version===e.semver.version,i=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),o=Y(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),l=Y(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return a||r||s&&i||o||l},t.Range=w,w.prototype.format=function(){return this.range=this.set.map((function(e){return e.join(" ").trim()})).join("||").trim(),this.range},w.prototype.toString=function(){return this.range},w.prototype.parseRange=function(e){var t=this.options.loose;e=e.trim();var n=t?s[o.HYPHENRANGELOOSE]:s[o.HYPHENRANGE];e=e.replace(n,x),a("hyphen replace",e),e=e.replace(s[o.COMPARATORTRIM],"$1$2$3"),a("comparator trim",e,s[o.COMPARATORTRIM]),e=(e=(e=e.replace(s[o.TILDETRIM],"$1~")).replace(s[o.CARETTRIM],"$1^")).split(/\s+/).join(" ");var r=t?s[o.COMPARATORLOOSE]:s[o.COMPARATOR],i=e.split(" ").map((function(e){return function(e,t){return a("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){a("caret",e,t);var n=t.loose?s[o.CARETLOOSE]:s[o.CARET];return e.replace(n,(function(t,n,r,s,i){var o;return a("caret",e,t,n,r,s,i),b(n)?o="":b(r)?o=">="+n+".0.0 <"+(+n+1)+".0.0":b(s)?o="0"===n?">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":">="+n+"."+r+".0 <"+(+n+1)+".0.0":i?(a("replaceCaret pr",i),o="0"===n?"0"===r?">="+n+"."+r+"."+s+"-"+i+" <"+n+"."+r+"."+(+s+1):">="+n+"."+r+"."+s+"-"+i+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+s+"-"+i+" <"+(+n+1)+".0.0"):(a("no pr"),o="0"===n?"0"===r?">="+n+"."+r+"."+s+" <"+n+"."+r+"."+(+s+1):">="+n+"."+r+"."+s+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+s+" <"+(+n+1)+".0.0"),a("caret return",o),o}))}(e,t)})).join(" ")}(e,t),a("caret",e),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){var n=t.loose?s[o.TILDELOOSE]:s[o.TILDE];return e.replace(n,(function(t,n,r,s,i){var o;return a("tilde",e,t,n,r,s,i),b(n)?o="":b(r)?o=">="+n+".0.0 <"+(+n+1)+".0.0":b(s)?o=">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":i?(a("replaceTilde pr",i),o=">="+n+"."+r+"."+s+"-"+i+" <"+n+"."+(+r+1)+".0"):o=">="+n+"."+r+"."+s+" <"+n+"."+(+r+1)+".0",a("tilde return",o),o}))}(e,t)})).join(" ")}(e,t),a("tildes",e),e=function(e,t){return a("replaceXRanges",e,t),e.split(/\s+/).map((function(e){return function(e,t){e=e.trim();var n=t.loose?s[o.XRANGELOOSE]:s[o.XRANGE];return e.replace(n,(function(n,r,s,i,o,l){a("xRange",e,n,r,s,i,o,l);var u=b(s),d=u||b(i),c=d||b(o),m=c;return"="===r&&m&&(r=""),l=t.includePrerelease?"-0":"",u?n=">"===r||"<"===r?"<0.0.0-0":"*":r&&m?(d&&(i=0),o=0,">"===r?(r=">=",d?(s=+s+1,i=0,o=0):(i=+i+1,o=0)):"<="===r&&(r="<",d?s=+s+1:i=+i+1),n=r+s+"."+i+"."+o+l):d?n=">="+s+".0.0"+l+" <"+(+s+1)+".0.0"+l:c&&(n=">="+s+"."+i+".0"+l+" <"+s+"."+(+i+1)+".0"+l),a("xRange return",n),n}))}(e,t)})).join(" ")}(e,t),a("xrange",e),e=function(e,t){return a("replaceStars",e,t),e.trim().replace(s[o.STAR],"")}(e,t),a("stars",e),e}(e,this.options)}),this).join(" ").split(/\s+/);return this.options.loose&&(i=i.filter((function(e){return!!e.match(r)}))),i=i.map((function(e){return new T(e,this.options)}),this)},w.prototype.intersects=function(e,t){if(!(e instanceof w))throw new TypeError("a Range is required");return this.set.some((function(n){return D(n,t)&&e.set.some((function(e){return D(e,t)&&n.every((function(n){return e.every((function(e){return n.intersects(e,t)}))}))}))}))},t.toComparators=function(e,t){return new w(e,t).set.map((function(e){return e.map((function(e){return e.value})).join(" ").trim().split(" ")}))},w.prototype.test=function(e){if(!e)return!1;if("string"==typeof e)try{e=new m(e,this.options)}catch(e){return!1}for(var t=0;t<this.set.length;t++)if(S(this.set[t],e,this.options))return!0;return!1},t.satisfies=j,t.maxSatisfying=function(e,t,n){var a=null,r=null;try{var s=new w(t,n)}catch(e){return null}return e.forEach((function(e){s.test(e)&&(a&&-1!==r.compare(e)||(r=new m(a=e,n)))})),a},t.minSatisfying=function(e,t,n){var a=null,r=null;try{var s=new w(t,n)}catch(e){return null}return e.forEach((function(e){s.test(e)&&(a&&1!==r.compare(e)||(r=new m(a=e,n)))})),a},t.minVersion=function(e,t){e=new w(e,t);var n=new m("0.0.0");if(e.test(n))return n;if(n=new m("0.0.0-0"),e.test(n))return n;n=null;for(var a=0;a<e.set.length;++a){e.set[a].forEach((function(e){var t=new m(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":n&&!h(n,t)||(n=t);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}}))}if(n&&e.test(n))return n;return null},t.validRange=function(e,t){try{return new w(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,n){return H(e,t,"<",n)},t.gtr=function(e,t,n){return H(e,t,">",n)},t.outside=H,t.prerelease=function(e,t){var n=c(e,t);return n&&n.prerelease.length?n.prerelease:null},t.intersects=function(e,t,n){return e=new w(e,n),t=new w(t,n),e.intersects(t)},t.coerce=function(e,t){if(e instanceof m)return e;"number"==typeof e&&(e=String(e));if("string"!=typeof e)return null;var n=null;if((t=t||{}).rtl){for(var a;(a=s[o.COERCERTL].exec(e))&&(!n||n.index+n[0].length!==e.length);)n&&a.index+a[0].length===n.index+n[0].length||(n=a),s[o.COERCERTL].lastIndex=a.index+a[1].length+a[2].length;s[o.COERCERTL].lastIndex=-1}else n=e.match(s[o.COERCE]);if(null===n)return null;return c(n[2]+"."+(n[3]||"0")+"."+(n[4]||"0"),t)}}).call(this,n(28))},function(e,t,n){"use strict";function a(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}n(249),n(252),n(65),n(74),n(259),n(270),n(272),n(274),n(275),Object.defineProperty(t,"__esModule",{value:!0}),t.SimpleBus=void 0;var r="1.1.4",s=function(){function e(){var t,n,a;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),t=this,n="handlers",a=new Map,n in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a}var t,n,s;return t=e,(n=[{key:"getVersion",value:function(){return r}},{key:"subscribe",value:function(e,t){this.handlers.set(e,(this.handlers.get(e)||[]).concat(t))}},{key:"unsubscribe",value:function(e,t){this.handlers.set(e,(this.handlers.get(e)||[]).filter((function(e){return e!=t})))}},{key:"emit",value:function(e,t){(this.handlers.get(e)||[]).forEach((function(e){try{e(t)}catch(e){console.error("could not invoke event listener",e)}}))}}])&&a(t.prototype,n),s&&a(t,s),e}();t.SimpleBus=s},function(e,t,n){"use strict";var a=n(15),r=n(3),s=n(69),i=n(6),o=n(27),l=n(26),u=n(250),d=n(68),c=n(72),m=n(2),_=n(73),p=m("isConcatSpreadable"),f=_>=51||!r((function(){var e=[];return e[p]=!1,e.concat()[0]!==e})),h=c("concat"),y=function(e){if(!i(e))return!1;var t=e[p];return void 0!==t?!!t:s(e)};a({target:"Array",proto:!0,forced:!f||!h},{concat:function(e){var t,n,a,r,s,i=o(this),c=d(i,0),m=0;for(t=-1,a=arguments.length;t<a;t++)if(s=-1===t?i:arguments[t],y(s)){if(m+(r=l(s.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<r;n++,m++)n in s&&u(c,m,s[n])}else{if(m>=9007199254740991)throw TypeError("Maximum allowed index exceeded");u(c,m++,s)}return c.length=m,c}})},function(e,t,n){"use strict";var a=n(34),r=n(9),s=n(21);e.exports=function(e,t,n){var i=a(t);i in e?r.f(e,i,s(0,n)):e[i]=n}},function(e,t,n){var a=n(25);e.exports=a("navigator","userAgent")||""},function(e,t,n){"use strict";var a=n(15),r=n(67).filter,s=n(72),i=n(71),o=s("filter"),l=i("filter");a({target:"Array",proto:!0,forced:!o||!l},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}})},function(e,t,n){var a=n(2),r=n(42),s=n(9),i=a("unscopables"),o=Array.prototype;null==o[i]&&s.f(o,i,{configurable:!0,value:r(null)}),e.exports=function(e){o[i][e]=!0}},function(e,t,n){var a=n(8),r=n(9),s=n(12),i=n(56);e.exports=a?Object.defineProperties:function(e,t){s(e);for(var n,a=i(t),o=a.length,l=0;o>l;)r.f(e,n=a[l++],t[n]);return e}},function(e,t,n){var a=n(25);e.exports=a("document","documentElement")},function(e,t,n){"use strict";var a=n(75).IteratorPrototype,r=n(42),s=n(21),i=n(44),o=n(18),l=function(){return this};e.exports=function(e,t,n){var u=t+" Iterator";return e.prototype=r(a,{next:s(1,n)}),i(e,u,!1,!0),o[u]=l,e}},function(e,t,n){var a=n(3);e.exports=!a((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){var a=n(6);e.exports=function(e){if(!a(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var a=n(260),r=n(267);e.exports=a("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}}),r)},function(e,t,n){"use strict";var a=n(15),r=n(1),s=n(55),i=n(17),o=n(78),l=n(79),u=n(81),d=n(6),c=n(3),m=n(265),_=n(44),p=n(266);e.exports=function(e,t,n){var f=-1!==e.indexOf("Map"),h=-1!==e.indexOf("Weak"),y=f?"set":"add",M=r[e],v=M&&M.prototype,g=M,L={},Y=function(e){var t=v[e];i(v,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(h&&!d(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return h&&!d(e)?void 0:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(h&&!d(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(s(e,"function"!=typeof M||!(h||v.forEach&&!c((function(){(new M).entries().next()})))))g=n.getConstructor(t,e,f,y),o.REQUIRED=!0;else if(s(e,!0)){var T=new g,k=T[y](h?{}:-0,1)!=T,w=c((function(){T.has(1)})),D=m((function(e){new M(e)})),b=!h&&c((function(){for(var e=new M,t=5;t--;)e[y](t,t);return!e.has(-0)}));D||((g=t((function(t,n){u(t,g,e);var a=p(new M,t,g);return null!=n&&l(n,a[y],a,f),a}))).prototype=v,v.constructor=g),(w||b)&&(Y("delete"),Y("has"),f&&Y("get")),(b||k)&&Y(y),h&&v.clear&&delete v.clear}return L[e]=g,a({global:!0,forced:g!=M},L),_(g,e),h||n.setStrong(g,e,f),g}},function(e,t,n){var a=n(3);e.exports=!a((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){var a=n(2),r=n(18),s=a("iterator"),i=Array.prototype;e.exports=function(e){return void 0!==e&&(r.Array===e||i[s]===e)}},function(e,t,n){var a=n(80),r=n(18),s=n(2)("iterator");e.exports=function(e){if(null!=e)return e[s]||e["@@iterator"]||r[a(e)]}},function(e,t,n){var a=n(12);e.exports=function(e,t,n,r){try{return r?t(a(n)[0],n[1]):t(n)}catch(t){var s=e.return;throw void 0!==s&&a(s.call(e)),t}}},function(e,t,n){var a=n(2)("iterator"),r=!1;try{var s=0,i={next:function(){return{done:!!s++}},return:function(){r=!0}};i[a]=function(){return this},Array.from(i,(function(){throw 2}))}catch(e){}e.exports=function(e,t){if(!t&&!r)return!1;var n=!1;try{var s={};s[a]=function(){return{next:function(){return{done:n=!0}}}},e(s)}catch(e){}return n}},function(e,t,n){var a=n(6),r=n(77);e.exports=function(e,t,n){var s,i;return r&&"function"==typeof(s=t.constructor)&&s!==n&&a(i=s.prototype)&&i!==n.prototype&&r(e,i),e}},function(e,t,n){"use strict";var a=n(9).f,r=n(42),s=n(268),i=n(41),o=n(81),l=n(79),u=n(43),d=n(269),c=n(8),m=n(78).fastKey,_=n(23),p=_.set,f=_.getterFor;e.exports={getConstructor:function(e,t,n,u){var d=e((function(e,a){o(e,d,t),p(e,{type:t,index:r(null),first:void 0,last:void 0,size:0}),c||(e.size=0),null!=a&&l(a,e[u],e,n)})),_=f(t),h=function(e,t,n){var a,r,s=_(e),i=y(e,t);return i?i.value=n:(s.last=i={index:r=m(t,!0),key:t,value:n,previous:a=s.last,next:void 0,removed:!1},s.first||(s.first=i),a&&(a.next=i),c?s.size++:e.size++,"F"!==r&&(s.index[r]=i)),e},y=function(e,t){var n,a=_(e),r=m(t);if("F"!==r)return a.index[r];for(n=a.first;n;n=n.next)if(n.key==t)return n};return s(d.prototype,{clear:function(){for(var e=_(this),t=e.index,n=e.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete t[n.index],n=n.next;e.first=e.last=void 0,c?e.size=0:this.size=0},delete:function(e){var t=_(this),n=y(this,e);if(n){var a=n.next,r=n.previous;delete t.index[n.index],n.removed=!0,r&&(r.next=a),a&&(a.previous=r),t.first==n&&(t.first=a),t.last==n&&(t.last=r),c?t.size--:this.size--}return!!n},forEach:function(e){for(var t,n=_(this),a=i(e,arguments.length>1?arguments[1]:void 0,3);t=t?t.next:n.first;)for(a(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!y(this,e)}}),s(d.prototype,n?{get:function(e){var t=y(this,e);return t&&t.value},set:function(e,t){return h(this,0===e?0:e,t)}}:{add:function(e){return h(this,e=0===e?0:e,e)}}),c&&a(d.prototype,"size",{get:function(){return _(this).size}}),d},setStrong:function(e,t,n){var a=t+" Iterator",r=f(t),s=f(a);u(e,t,(function(e,t){p(this,{type:a,target:e,state:r(e),kind:t,last:void 0})}),(function(){for(var e=s(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),d(t)}}},function(e,t,n){var a=n(17);e.exports=function(e,t,n){for(var r in t)a(e,r,t[r],n);return e}},function(e,t,n){"use strict";var a=n(25),r=n(9),s=n(2),i=n(8),o=s("species");e.exports=function(e){var t=a(e),n=r.f;i&&t&&!t[o]&&n(t,o,{configurable:!0,get:function(){return this}})}},function(e,t,n){var a=n(45),r=n(17),s=n(271);a||r(Object.prototype,"toString",s,{unsafe:!0})},function(e,t,n){"use strict";var a=n(45),r=n(80);e.exports=a?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var a=n(273).charAt,r=n(23),s=n(43),i=r.set,o=r.getterFor("String Iterator");s(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=o(this),n=t.string,r=t.index;return r>=n.length?{value:void 0,done:!0}:(e=a(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){var a=n(39),r=n(33),s=function(e){return function(t,n){var s,i,o=String(r(t)),l=a(n),u=o.length;return l<0||l>=u?e?"":void 0:(s=o.charCodeAt(l))<55296||s>56319||l+1===u||(i=o.charCodeAt(l+1))<56320||i>57343?e?o.charAt(l):s:e?o.slice(l,l+2):i-56320+(s-55296<<10)+65536}};e.exports={codeAt:s(!1),charAt:s(!0)}},function(e,t,n){var a=n(1),r=n(82),s=n(66),i=n(10);for(var o in r){var l=a[o],u=l&&l.prototype;if(u&&u.forEach!==s)try{i(u,"forEach",s)}catch(e){u.forEach=s}}},function(e,t,n){var a=n(1),r=n(82),s=n(74),i=n(10),o=n(2),l=o("iterator"),u=o("toStringTag"),d=s.values;for(var c in r){var m=a[c],_=m&&m.prototype;if(_){if(_[l]!==d)try{i(_,l,d)}catch(e){_[l]=d}if(_[u]||i(_,u,c),r[c])for(var p in s)if(_[p]!==s[p])try{i(_,p,s[p])}catch(e){_[p]=s[p]}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCurrentUser=function(){if(null===r)return null;return{uid:r,displayName:i}};var a=document.getElementsByTagName("head")[0],r=a?a.getAttribute("data-user"):null,s=document.getElementsByTagName("head")[0],i=s?s.getAttribute("data-user-displayname"):null},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a class="filename has-tooltip" href="'+l("function"==typeof(s=null!=(s=u(n,"link")||(null!=t?u(t,"link"):t))?s:o)?s.call(i,{name:"link",hash:{},data:r,loc:{start:{line:1,column:38},end:{line:1,column:46}}}):s)+'" title="'+l("function"==typeof(s=null!=(s=u(n,"title")||(null!=t?u(t,"title"):t))?s:o)?s.call(i,{name:"title",hash:{},data:r,loc:{start:{line:1,column:55},end:{line:1,column:64}}}):s)+'">'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:66},end:{line:1,column:74}}}):s)+"</a>\n"},useData:!0})},function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}function r(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.__esModule=!0;var s=r(n(83)),i=a(n(289)),o=a(n(13)),l=r(n(7)),u=r(n(290)),d=a(n(292));function c(){var e=new s.HandlebarsEnvironment;return l.extend(e,s),e.SafeString=i.default,e.Exception=o.default,e.Utils=l,e.escapeExpression=l.escapeExpression,e.VM=u,e.template=function(t){return u.template(t,e)},e}var m=c();m.create=c,d.default(m),m.default=m,t.default=m,e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0;var a=n(7);t.default=function(e){e.registerHelper("blockHelperMissing",(function(t,n){var r=n.inverse,s=n.fn;if(!0===t)return s(this);if(!1===t||null==t)return r(this);if(a.isArray(t))return t.length>0?(n.ids&&(n.ids=[n.name]),e.helpers.each(t,n)):r(this);if(n.data&&n.ids){var i=a.createFrame(n.data);i.contextPath=a.appendContextPath(n.data.contextPath,n.name),n={data:i}}return s(t,n)}))},e.exports=t.default},function(e,t,n){"use strict";(function(a){t.__esModule=!0;var r,s=n(7),i=n(13),o=(r=i)&&r.__esModule?r:{default:r};t.default=function(e){e.registerHelper("each",(function(e,t){if(!t)throw new o.default("Must pass iterator to #each");var n,r=t.fn,i=t.inverse,l=0,u="",d=void 0,c=void 0;function m(t,n,a){d&&(d.key=t,d.index=n,d.first=0===n,d.last=!!a,c&&(d.contextPath=c+t)),u+=r(e[t],{data:d,blockParams:s.blockParams([e[t],t],[c+t,null])})}if(t.data&&t.ids&&(c=s.appendContextPath(t.data.contextPath,t.ids[0])+"."),s.isFunction(e)&&(e=e.call(this)),t.data&&(d=s.createFrame(t.data)),e&&"object"==typeof e)if(s.isArray(e))for(var _=e.length;l<_;l++)l in e&&m(l,l,l===e.length-1);else if(a.Symbol&&e[a.Symbol.iterator]){for(var p=[],f=e[a.Symbol.iterator](),h=f.next();!h.done;h=f.next())p.push(h.value);for(_=(e=p).length;l<_;l++)m(l,l,l===e.length-1)}else n=void 0,Object.keys(e).forEach((function(e){void 0!==n&&m(n,l-1),n=e,l++})),void 0!==n&&m(n,l-1,!0);return 0===l&&(u=i(this)),u}))},e.exports=t.default}).call(this,n(11))},function(e,t,n){"use strict";t.__esModule=!0;var a,r=n(13),s=(a=r)&&a.__esModule?a:{default:a};t.default=function(e){e.registerHelper("helperMissing",(function(){if(1!==arguments.length)throw new s.default('Missing helper: "'+arguments[arguments.length-1].name+'"')}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0;var a,r=n(7),s=n(13),i=(a=s)&&a.__esModule?a:{default:a};t.default=function(e){e.registerHelper("if",(function(e,t){if(2!=arguments.length)throw new i.default("#if requires exactly one argument");return r.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||r.isEmpty(e)?t.inverse(this):t.fn(this)})),e.registerHelper("unless",(function(t,n){if(2!=arguments.length)throw new i.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:n.inverse,inverse:n.fn,hash:n.hash})}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){e.registerHelper("log",(function(){for(var t=[void 0],n=arguments[arguments.length-1],a=0;a<arguments.length-1;a++)t.push(arguments[a]);var r=1;null!=n.hash.level?r=n.hash.level:n.data&&null!=n.data.level&&(r=n.data.level),t[0]=r,e.log.apply(e,t)}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){e.registerHelper("lookup",(function(e,t,n){return e?n.lookupProperty(e,t):e}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0;var a,r=n(7),s=n(13),i=(a=s)&&a.__esModule?a:{default:a};t.default=function(e){e.registerHelper("with",(function(e,t){if(2!=arguments.length)throw new i.default("#with requires exactly one argument");r.isFunction(e)&&(e=e.call(this));var n=t.fn;if(r.isEmpty(e))return t.inverse(this);var a=t.data;return t.data&&t.ids&&((a=r.createFrame(t.data)).contextPath=r.appendContextPath(t.data.contextPath,t.ids[0])),n(e,{data:a,blockParams:r.blockParams([e],[a&&a.contextPath])})}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.registerDefaultDecorators=function(e){s.default(e)};var a,r=n(287),s=(a=r)&&a.__esModule?a:{default:a}},function(e,t,n){"use strict";t.__esModule=!0;var a=n(7);t.default=function(e){e.registerDecorator("inline",(function(e,t,n,r){var s=e;return t.partials||(t.partials={},s=function(r,s){var i=n.partials;n.partials=a.extend({},i,t.partials);var o=e(r,s);return n.partials=i,o}),t.partials[r.args[0]]=r.fn,s}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.createNewLookupObject=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return a.extend.apply(void 0,[Object.create(null)].concat(t))};var a=n(7)},function(e,t,n){"use strict";function a(e){this.string=e}t.__esModule=!0,a.prototype.toString=a.prototype.toHTML=function(){return""+this.string},t.default=a,e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.checkRevision=function(e){var t=e&&e[0]||1,n=o.COMPILER_REVISION;if(t>=o.LAST_COMPATIBLE_COMPILER_REVISION&&t<=o.COMPILER_REVISION)return;if(t<o.LAST_COMPATIBLE_COMPILER_REVISION){var a=o.REVISION_CHANGES[n],r=o.REVISION_CHANGES[t];throw new i.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+a+") or downgrade your runtime to an older version ("+r+").")}throw new i.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")},t.template=function(e,t){if(!t)throw new i.default("No environment passed to template");if(!e||!e.main)throw new i.default("Unknown template object: "+typeof e);e.main.decorator=e.main_d,t.VM.checkRevision(e.compiler);var n=e.compiler&&7===e.compiler[0];var a={strict:function(e,t,n){if(!e||!(t in e))throw new i.default('"'+t+'" not defined in '+e,{loc:n});return e[t]},lookupProperty:function(e,t){var n=e[t];return null==n||Object.prototype.hasOwnProperty.call(e,t)||d.resultIsAllowed(n,a.protoAccessControl,t)?n:void 0},lookup:function(e,t){for(var n=e.length,r=0;r<n;r++){if(null!=(e[r]&&a.lookupProperty(e[r],t)))return e[r][t]}},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:r.escapeExpression,invokePartial:function(n,a,s){s.hash&&(a=r.extend({},a,s.hash),s.ids&&(s.ids[0]=!0)),n=t.VM.resolvePartial.call(this,n,a,s);var o=r.extend({},s,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),l=t.VM.invokePartial.call(this,n,a,o);if(null==l&&t.compile&&(s.partials[s.name]=t.compile(n,e.compilerOptions,t),l=s.partials[s.name](a,o)),null!=l){if(s.indent){for(var u=l.split("\n"),d=0,c=u.length;d<c&&(u[d]||d+1!==c);d++)u[d]=s.indent+u[d];l=u.join("\n")}return l}throw new i.default("The partial "+s.name+" could not be compiled when running in runtime-only mode")},fn:function(t){var n=e[t];return n.decorator=e[t+"_d"],n},programs:[],program:function(e,t,n,a,r){var s=this.programs[e],i=this.fn(e);return t||r||a||n?s=c(this,e,i,t,n,a,r):s||(s=this.programs[e]=c(this,e,i)),s},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return e&&t&&e!==t&&(n=r.extend({},t,e)),n},nullContext:Object.seal({}),noop:t.VM.noop,compilerInfo:e.compiler};function s(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],r=n.data;s._setup(n),!n.partial&&e.useData&&(r=_(t,r));var i=void 0,o=e.useBlockParams?[]:void 0;function l(t){return""+e.main(a,t,a.helpers,a.partials,r,o,i)}return e.useDepths&&(i=n.depths?t!=n.depths[0]?[t].concat(n.depths):n.depths:[t]),(l=p(e.main,l,a,n.depths||[],r,o))(t,n)}return s.isTop=!0,s._setup=function(s){if(s.partial)a.protoAccessControl=s.protoAccessControl,a.helpers=s.helpers,a.partials=s.partials,a.decorators=s.decorators,a.hooks=s.hooks;else{var i=r.extend({},t.helpers,s.helpers);!function(e,t){Object.keys(e).forEach((function(n){var a=e[n];e[n]=function(e,t){var n=t.lookupProperty;return u.wrapHelper(e,(function(e){return r.extend({lookupProperty:n},e)}))}(a,t)}))}(i,a),a.helpers=i,e.usePartial&&(a.partials=a.mergeIfNeeded(s.partials,t.partials)),(e.usePartial||e.useDecorators)&&(a.decorators=r.extend({},t.decorators,s.decorators)),a.hooks={},a.protoAccessControl=d.createProtoAccessControl(s);var o=s.allowCallsToHelperMissing||n;l.moveHelperToHooks(a,"helperMissing",o),l.moveHelperToHooks(a,"blockHelperMissing",o)}},s._child=function(t,n,r,s){if(e.useBlockParams&&!r)throw new i.default("must pass block params");if(e.useDepths&&!s)throw new i.default("must pass parent depths");return c(a,t,e[t],n,0,r,s)},s},t.wrapProgram=c,t.resolvePartial=function(e,t,n){e?e.call||n.name||(n.name=e,e=n.partials[e]):e="@partial-block"===n.name?n.data["partial-block"]:n.partials[n.name];return e},t.invokePartial=function(e,t,n){var a=n.data&&n.data["partial-block"];n.partial=!0,n.ids&&(n.data.contextPath=n.ids[0]||n.data.contextPath);var s=void 0;n.fn&&n.fn!==m&&function(){n.data=o.createFrame(n.data);var e=n.fn;s=n.data["partial-block"]=function(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];return n.data=o.createFrame(n.data),n.data["partial-block"]=a,e(t,n)},e.partials&&(n.partials=r.extend({},n.partials,e.partials))}();void 0===e&&s&&(e=s);if(void 0===e)throw new i.default("The partial "+n.name+" could not be found");if(e instanceof Function)return e(t,n)},t.noop=m;var a,r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(7)),s=n(13),i=(a=s)&&a.__esModule?a:{default:a},o=n(83),l=n(84),u=n(291),d=n(86);function c(e,t,n,a,r,s,i){function o(t){var r=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],o=i;return!i||t==i[0]||t===e.nullContext&&null===i[0]||(o=[t].concat(i)),n(e,t,e.helpers,e.partials,r.data||a,s&&[r.blockParams].concat(s),o)}return(o=p(n,o,e,i,a,s)).program=t,o.depth=i?i.length:0,o.blockParams=r||0,o}function m(){return""}function _(e,t){return t&&"root"in t||((t=t?o.createFrame(t):{}).root=e),t}function p(e,t,n,a,s,i){if(e.decorator){var o={};t=e.decorator(t,o,n,a&&a[0],s,i,a),r.extend(t,o)}return t}},function(e,t,n){"use strict";t.__esModule=!0,t.wrapHelper=function(e,t){if("function"!=typeof e)return e;return function(){var n=arguments[arguments.length-1];return arguments[arguments.length-1]=t(n),e.apply(this,arguments)}}},function(e,t,n){"use strict";(function(n){t.__esModule=!0,t.default=function(e){var t=void 0!==n?n:window,a=t.Handlebars;e.noConflict=function(){return t.Handlebars===e&&(t.Handlebars=a),e}},e.exports=t.default}).call(this,n(11))},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<span class="avatar-name-wrapper" data-user="'+l("function"==typeof(s=null!=(s=u(n,"id")||(null!=t?u(t,"id"):t))?s:o)?s.call(i,{name:"id",hash:{},data:r,loc:{start:{line:1,column:45},end:{line:1,column:51}}}):s)+'"><div class="avatar" data-user="'+l("function"==typeof(s=null!=(s=u(n,"id")||(null!=t?u(t,"id"):t))?s:o)?s.call(i,{name:"id",hash:{},data:r,loc:{start:{line:1,column:84},end:{line:1,column:90}}}):s)+'" data-user-display-name="'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:116},end:{line:1,column:124}}}):s)+'"></div><strong>'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:140},end:{line:1,column:148}}}):s)+"</strong></span>\n"},useData:!0})},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<strong title="'+l("function"==typeof(s=null!=(s=u(n,"id")||(null!=t?u(t,"id"):t))?s:o)?s.call(i,{name:"id",hash:{},data:r,loc:{start:{line:1,column:15},end:{line:1,column:21}}}):s)+"@"+l("function"==typeof(s=null!=(s=u(n,"server")||(null!=t?u(t,"server"):t))?s:o)?s.call(i,{name:"server",hash:{},data:r,loc:{start:{line:1,column:22},end:{line:1,column:32}}}):s)+'" class="has-tooltip">'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:54},end:{line:1,column:62}}}):s)+"</strong>\n"},useData:!0})},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<strong>"+e.escapeExpression("function"==typeof(s=null!=(s=i(n,"name")||(null!=t?i(t,"name"):t))?s:e.hooks.helperMissing)?s.call(null!=t?t:e.nullContext||{},{name:"name",hash:{},data:r,loc:{start:{line:1,column:8},end:{line:1,column:16}}}):s)+"</strong>\n"},useData:!0})},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+l("function"==typeof(s=null!=(s=u(n,"link")||(null!=t?u(t,"link"):t))?s:o)?s.call(i,{name:"link",hash:{},data:r,loc:{start:{line:1,column:9},end:{line:1,column:17}}}):s)+'">'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:19},end:{line:1,column:27}}}):s)+"</a>\n"},useData:!0})},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var a={"./af":87,"./af.js":87,"./ar":88,"./ar-dz":89,"./ar-dz.js":89,"./ar-kw":90,"./ar-kw.js":90,"./ar-ly":91,"./ar-ly.js":91,"./ar-ma":92,"./ar-ma.js":92,"./ar-sa":93,"./ar-sa.js":93,"./ar-tn":94,"./ar-tn.js":94,"./ar.js":88,"./az":95,"./az.js":95,"./be":96,"./be.js":96,"./bg":97,"./bg.js":97,"./bm":98,"./bm.js":98,"./bn":99,"./bn.js":99,"./bo":100,"./bo.js":100,"./br":101,"./br.js":101,"./bs":102,"./bs.js":102,"./ca":103,"./ca.js":103,"./cs":104,"./cs.js":104,"./cv":105,"./cv.js":105,"./cy":106,"./cy.js":106,"./da":107,"./da.js":107,"./de":108,"./de-at":109,"./de-at.js":109,"./de-ch":110,"./de-ch.js":110,"./de.js":108,"./dv":111,"./dv.js":111,"./el":112,"./el.js":112,"./en-SG":113,"./en-SG.js":113,"./en-au":114,"./en-au.js":114,"./en-ca":115,"./en-ca.js":115,"./en-gb":116,"./en-gb.js":116,"./en-ie":117,"./en-ie.js":117,"./en-il":118,"./en-il.js":118,"./en-nz":119,"./en-nz.js":119,"./eo":120,"./eo.js":120,"./es":121,"./es-do":122,"./es-do.js":122,"./es-us":123,"./es-us.js":123,"./es.js":121,"./et":124,"./et.js":124,"./eu":125,"./eu.js":125,"./fa":126,"./fa.js":126,"./fi":127,"./fi.js":127,"./fo":128,"./fo.js":128,"./fr":129,"./fr-ca":130,"./fr-ca.js":130,"./fr-ch":131,"./fr-ch.js":131,"./fr.js":129,"./fy":132,"./fy.js":132,"./ga":133,"./ga.js":133,"./gd":134,"./gd.js":134,"./gl":135,"./gl.js":135,"./gom-latn":136,"./gom-latn.js":136,"./gu":137,"./gu.js":137,"./he":138,"./he.js":138,"./hi":139,"./hi.js":139,"./hr":140,"./hr.js":140,"./hu":141,"./hu.js":141,"./hy-am":142,"./hy-am.js":142,"./id":143,"./id.js":143,"./is":144,"./is.js":144,"./it":145,"./it-ch":146,"./it-ch.js":146,"./it.js":145,"./ja":147,"./ja.js":147,"./jv":148,"./jv.js":148,"./ka":149,"./ka.js":149,"./kk":150,"./kk.js":150,"./km":151,"./km.js":151,"./kn":152,"./kn.js":152,"./ko":153,"./ko.js":153,"./ku":154,"./ku.js":154,"./ky":155,"./ky.js":155,"./lb":156,"./lb.js":156,"./lo":157,"./lo.js":157,"./lt":158,"./lt.js":158,"./lv":159,"./lv.js":159,"./me":160,"./me.js":160,"./mi":161,"./mi.js":161,"./mk":162,"./mk.js":162,"./ml":163,"./ml.js":163,"./mn":164,"./mn.js":164,"./mr":165,"./mr.js":165,"./ms":166,"./ms-my":167,"./ms-my.js":167,"./ms.js":166,"./mt":168,"./mt.js":168,"./my":169,"./my.js":169,"./nb":170,"./nb.js":170,"./ne":171,"./ne.js":171,"./nl":172,"./nl-be":173,"./nl-be.js":173,"./nl.js":172,"./nn":174,"./nn.js":174,"./pa-in":175,"./pa-in.js":175,"./pl":176,"./pl.js":176,"./pt":177,"./pt-br":178,"./pt-br.js":178,"./pt.js":177,"./ro":179,"./ro.js":179,"./ru":180,"./ru.js":180,"./sd":181,"./sd.js":181,"./se":182,"./se.js":182,"./si":183,"./si.js":183,"./sk":184,"./sk.js":184,"./sl":185,"./sl.js":185,"./sq":186,"./sq.js":186,"./sr":187,"./sr-cyrl":188,"./sr-cyrl.js":188,"./sr.js":187,"./ss":189,"./ss.js":189,"./sv":190,"./sv.js":190,"./sw":191,"./sw.js":191,"./ta":192,"./ta.js":192,"./te":193,"./te.js":193,"./tet":194,"./tet.js":194,"./tg":195,"./tg.js":195,"./th":196,"./th.js":196,"./tl-ph":197,"./tl-ph.js":197,"./tlh":198,"./tlh.js":198,"./tr":199,"./tr.js":199,"./tzl":200,"./tzl.js":200,"./tzm":201,"./tzm-latn":202,"./tzm-latn.js":202,"./tzm.js":201,"./ug-cn":203,"./ug-cn.js":203,"./uk":204,"./uk.js":204,"./ur":205,"./ur.js":205,"./uz":206,"./uz-latn":207,"./uz-latn.js":207,"./uz.js":206,"./vi":208,"./vi.js":208,"./x-pseudo":209,"./x-pseudo.js":209,"./yo":210,"./yo.js":210,"./zh-cn":211,"./zh-cn.js":211,"./zh-hk":212,"./zh-hk.js":212,"./zh-tw":213,"./zh-tw.js":213};function r(e){var t=s(e);return n(t)}function s(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}r.keys=function(){return Object.keys(a)},r.resolve=s,e.exports=r,r.id=298},function(e,t,n){"use strict";(function(t){var a=n(300),r=n(301);function s(e){e=e||{},this.catalogs={},this.locale="",this.domain="messages",this.listeners=[],this.sourceLocale="",e.sourceLocale&&("string"==typeof e.sourceLocale?this.sourceLocale=e.sourceLocale:this.warn("The `sourceLocale` option should be a string")),"debug"in e?this.debug=!0===e.debug:(void 0!==t&&t.env,this.debug=!1)}e.exports=s,s.prototype.on=function(e,t){this.listeners.push({eventName:e,callback:t})},s.prototype.off=function(e,t){this.listeners=this.listeners.filter((function(n){return!1==(n.eventName===e&&n.callback===t)}))},s.prototype.emit=function(e,t){for(var n=0;n<this.listeners.length;n++){var a=this.listeners[n];a.eventName===e&&a.callback(t)}},s.prototype.warn=function(e){this.debug&&console.warn(e),this.emit("error",e)},s.prototype.addTranslations=function(e,t,n){this.catalogs[e]||(this.catalogs[e]={}),this.catalogs[e][t]=n},s.prototype.setLocale=function(e){"string"==typeof e?(""===e.trim()&&this.warn("You called setLocale() with an empty value, which makes little sense."),e===this.sourceLocale||this.catalogs[e]||this.warn('You called setLocale() with "'+e+'", but no translations for that locale has been added.'),this.locale=e):this.warn("You called setLocale() with an argument of type "+typeof e+". The locale must be a string.")},s.prototype.setTextDomain=function(e){"string"==typeof e?(""===e.trim()&&this.warn("You called setTextDomain() with an empty `domain` value."),this.domain=e):this.warn("You called setTextDomain() with an argument of type "+typeof e+". The domain must be a string.")},s.prototype.gettext=function(e){return this.dnpgettext(this.domain,"",e)},s.prototype.dgettext=function(e,t){return this.dnpgettext(e,"",t)},s.prototype.ngettext=function(e,t,n){return this.dnpgettext(this.domain,"",e,t,n)},s.prototype.dngettext=function(e,t,n,a){return this.dnpgettext(e,"",t,n,a)},s.prototype.pgettext=function(e,t){return this.dnpgettext(this.domain,e,t)},s.prototype.dpgettext=function(e,t,n){return this.dnpgettext(e,t,n)},s.prototype.npgettext=function(e,t,n,a){return this.dnpgettext(this.domain,e,t,n,a)},s.prototype.dnpgettext=function(e,t,n,a,i){var o,l,u=n;if(t=t||"",isNaN(i)||1===i||(u=a||n),o=this._getTranslation(e,t,n)){if("number"==typeof i)"boolean"==typeof(l=(0,r[s.getLanguageCode(this.locale)].pluralsFunc)(i))&&(l=l?1:0);else l=0;return o.msgstr[l]||u}return this.sourceLocale&&this.locale===this.sourceLocale||this.warn('No translation was found for msgid "'+n+'" in msgctxt "'+t+'" and domain "'+e+'"'),u},s.prototype.getComment=function(e,t,n){var a;return(a=this._getTranslation(e,t,n))&&a.comments||{}},s.prototype._getTranslation=function(e,t,n){return t=t||"",a(this.catalogs,[this.locale,e,"translations",t,n])},s.getLanguageCode=function(e){return e.split(/[\-_]/)[0].toLowerCase()},s.prototype.textdomain=function(e){this.debug&&console.warn("textdomain(domain) was used to set locales in node-gettext v1. Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\n\n To read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\n\nThis warning will be removed in the final 2.0.0"),this.setTextDomain(e)},s.prototype.setlocale=function(e){this.setLocale(e)},s.prototype.addTextdomain=function(){console.error("addTextdomain() is deprecated.\n\n* To add translations, use addTranslations()\n* To set the default domain, use setTextDomain() (or its alias textdomain())\n\nTo read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x")}}).call(this,n(28))},function(e,t,n){(function(t){var n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/,r=/^\./,s=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,o=/^\[object .+?Constructor\]$/,l="object"==typeof t&&t&&t.Object===Object&&t,u="object"==typeof self&&self&&self.Object===Object&&self,d=l||u||Function("return this")();var c,m=Array.prototype,_=Function.prototype,p=Object.prototype,f=d["__core-js_shared__"],h=(c=/[^.]+$/.exec(f&&f.keys&&f.keys.IE_PROTO||""))?"Symbol(src)_1."+c:"",y=_.toString,M=p.hasOwnProperty,v=p.toString,g=RegExp("^"+y.call(M).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),L=d.Symbol,Y=m.splice,T=P(d,"Map"),k=P(Object,"create"),w=L?L.prototype:void 0,D=w?w.toString:void 0;function b(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}function x(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}function S(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}function j(e,t){for(var n,a,r=e.length;r--;)if((n=e[r][0])===(a=t)||n!=n&&a!=a)return r;return-1}function H(e,t){for(var r,s=0,i=(t=function(e,t){if(N(e))return!1;var r=typeof e;if("number"==r||"symbol"==r||"boolean"==r||null==e||R(e))return!0;return a.test(e)||!n.test(e)||null!=t&&e in Object(t)}(t,e)?[t]:N(r=t)?r:A(r)).length;null!=e&&s<i;)e=e[F(t[s++])];return s&&s==i?e:void 0}function O(e){return!(!I(e)||(t=e,h&&h in t))&&(function(e){var t=I(e)?v.call(e):"";return"[object Function]"==t||"[object GeneratorFunction]"==t}(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?g:o).test(function(e){if(null!=e){try{return y.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e));var t}function E(e,t){var n,a,r=e.__data__;return("string"==(a=typeof(n=t))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof t?"string":"hash"]:r.map}function P(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return O(n)?n:void 0}b.prototype.clear=function(){this.__data__=k?k(null):{}},b.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},b.prototype.get=function(e){var t=this.__data__;if(k){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return M.call(t,e)?t[e]:void 0},b.prototype.has=function(e){var t=this.__data__;return k?void 0!==t[e]:M.call(t,e)},b.prototype.set=function(e,t){return this.__data__[e]=k&&void 0===t?"__lodash_hash_undefined__":t,this},x.prototype.clear=function(){this.__data__=[]},x.prototype.delete=function(e){var t=this.__data__,n=j(t,e);return!(n<0)&&(n==t.length-1?t.pop():Y.call(t,n,1),!0)},x.prototype.get=function(e){var t=this.__data__,n=j(t,e);return n<0?void 0:t[n][1]},x.prototype.has=function(e){return j(this.__data__,e)>-1},x.prototype.set=function(e,t){var n=this.__data__,a=j(n,e);return a<0?n.push([e,t]):n[a][1]=t,this},S.prototype.clear=function(){this.__data__={hash:new b,map:new(T||x),string:new b}},S.prototype.delete=function(e){return E(this,e).delete(e)},S.prototype.get=function(e){return E(this,e).get(e)},S.prototype.has=function(e){return E(this,e).has(e)},S.prototype.set=function(e,t){return E(this,e).set(e,t),this};var A=C((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(R(e))return D?D.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(t);var n=[];return r.test(e)&&n.push(""),e.replace(s,(function(e,t,a,r){n.push(a?r.replace(i,"$1"):t||e)})),n}));function F(e){if("string"==typeof e||R(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function C(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var a=arguments,r=t?t.apply(this,a):a[0],s=n.cache;if(s.has(r))return s.get(r);var i=e.apply(this,a);return n.cache=s.set(r,i),i};return n.cache=new(C.Cache||S),n}C.Cache=S;var N=Array.isArray;function I(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function R(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==v.call(e)}e.exports=function(e,t,n){var a=null==e?void 0:H(e,t);return void 0===a?n:a}}).call(this,n(11))},function(e,t,n){"use strict";e.exports={ach:{name:"Acholi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},af:{name:"Afrikaans",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ak:{name:"Akan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},am:{name:"Amharic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},an:{name:"Aragonese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ar:{name:"Arabic",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2},{plural:3,sample:3},{plural:4,sample:11},{plural:5,sample:100}],nplurals:6,pluralsText:"nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)",pluralsFunc:function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5}},arn:{name:"Mapudungun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},ast:{name:"Asturian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ay:{name:"Aymará",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},az:{name:"Azerbaijani",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},be:{name:"Belarusian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},bg:{name:"Bulgarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},bn:{name:"Bengali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},bo:{name:"Tibetan",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},br:{name:"Breton",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},brx:{name:"Bodo",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},bs:{name:"Bosnian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},ca:{name:"Catalan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},cgg:{name:"Chiga",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},cs:{name:"Czech",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e>=2&&e<=4?1:2}},csb:{name:"Kashubian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},cy:{name:"Welsh",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:8}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)",pluralsFunc:function(e){return 1===e?0:2===e?1:8!==e&&11!==e?2:3}},da:{name:"Danish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},de:{name:"German",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},doi:{name:"Dogri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},dz:{name:"Dzongkha",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},el:{name:"Greek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},en:{name:"English",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},eo:{name:"Esperanto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},es:{name:"Spanish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},et:{name:"Estonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},eu:{name:"Basque",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fa:{name:"Persian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ff:{name:"Fulah",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fi:{name:"Finnish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fil:{name:"Filipino",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},fo:{name:"Faroese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fr:{name:"French",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},fur:{name:"Friulian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fy:{name:"Frisian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ga:{name:"Irish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:7},{plural:4,sample:11}],nplurals:5,pluralsText:"nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)",pluralsFunc:function(e){return 1===e?0:2===e?1:e<7?2:e<11?3:4}},gd:{name:"Scottish Gaelic",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)",pluralsFunc:function(e){return 1===e||11===e?0:2===e||12===e?1:e>2&&e<20?2:3}},gl:{name:"Galician",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},gu:{name:"Gujarati",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},gun:{name:"Gun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},ha:{name:"Hausa",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},he:{name:"Hebrew",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hi:{name:"Hindi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hne:{name:"Chhattisgarhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hr:{name:"Croatian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},hu:{name:"Hungarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hy:{name:"Armenian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},id:{name:"Indonesian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},is:{name:"Icelandic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)",pluralsFunc:function(e){return e%10!=1||e%100==11}},it:{name:"Italian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ja:{name:"Japanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jbo:{name:"Lojban",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jv:{name:"Javanese",examples:[{plural:0,sample:0},{plural:1,sample:1}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 0)",pluralsFunc:function(e){return 0!==e}},ka:{name:"Georgian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kk:{name:"Kazakh",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},km:{name:"Khmer",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kn:{name:"Kannada",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ko:{name:"Korean",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ku:{name:"Kurdish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},kw:{name:"Cornish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:4}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)",pluralsFunc:function(e){return 1===e?0:2===e?1:3===e?2:3}},ky:{name:"Kyrgyz",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lb:{name:"Letzeburgesch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ln:{name:"Lingala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},lo:{name:"Lao",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lt:{name:"Lithuanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:10}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2}},lv:{name:"Latvian",examples:[{plural:2,sample:0},{plural:0,sample:1},{plural:1,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:0!==e?1:2}},mai:{name:"Maithili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mfe:{name:"Mauritian Creole",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},mg:{name:"Malagasy",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},mi:{name:"Maori",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},mk:{name:"Macedonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)",pluralsFunc:function(e){return 1===e||e%10==1?0:1}},ml:{name:"Malayalam",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mn:{name:"Mongolian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mni:{name:"Manipuri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mnk:{name:"Mandinka",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)",pluralsFunc:function(e){return 0===e?0:1===e?1:2}},mr:{name:"Marathi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ms:{name:"Malay",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},mt:{name:"Maltese",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:11},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)",pluralsFunc:function(e){return 1===e?0:0===e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3}},my:{name:"Burmese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},nah:{name:"Nahuatl",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nap:{name:"Neapolitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nb:{name:"Norwegian Bokmal",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ne:{name:"Nepali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nl:{name:"Dutch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nn:{name:"Norwegian Nynorsk",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},no:{name:"Norwegian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nso:{name:"Northern Sotho",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},oc:{name:"Occitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},or:{name:"Oriya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pa:{name:"Punjabi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pap:{name:"Papiamento",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pl:{name:"Polish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},pms:{name:"Piemontese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ps:{name:"Pashto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pt:{name:"Portuguese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},rm:{name:"Romansh",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ro:{name:"Romanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:20}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:0===e||e%100>0&&e%100<20?1:2}},ru:{name:"Russian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},rw:{name:"Kinyarwanda",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sah:{name:"Yakut",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sat:{name:"Santali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sco:{name:"Scots",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sd:{name:"Sindhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},se:{name:"Northern Sami",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},si:{name:"Sinhala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sk:{name:"Slovak",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e>=2&&e<=4?1:2}},sl:{name:"Slovenian",examples:[{plural:1,sample:1},{plural:2,sample:2},{plural:3,sample:3},{plural:0,sample:5}],nplurals:4,pluralsText:"nplurals = 4; plural = (n % 100 === 1 ? 1 : n % 100 === 2 ? 2 : n % 100 === 3 || n % 100 === 4 ? 3 : 0)",pluralsFunc:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0}},so:{name:"Somali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},son:{name:"Songhay",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sq:{name:"Albanian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sr:{name:"Serbian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},su:{name:"Sundanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sv:{name:"Swedish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sw:{name:"Swahili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ta:{name:"Tamil",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},te:{name:"Telugu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},tg:{name:"Tajik",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},th:{name:"Thai",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ti:{name:"Tigrinya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},tk:{name:"Turkmen",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},tr:{name:"Turkish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},tt:{name:"Tatar",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ug:{name:"Uyghur",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},uk:{name:"Ukrainian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},ur:{name:"Urdu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},uz:{name:"Uzbek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},vi:{name:"Vietnamese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},wa:{name:"Walloon",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},wo:{name:"Wolof",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},yo:{name:"Yoruba",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},zh:{name:"Chinese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getLocale=function(){if("undefined"==typeof OC)return console.warn("No OC found"),"en";return OC.getLocale()},t.getLanguage=function(){if("undefined"==typeof OC)return console.warn("No OC found"),"en";return OC.getLanguage()},t.translate=function(e,t,n,a,r){if("undefined"==typeof OC)return console.warn("No OC found"),t;return OC.L10N.translate(e,t,n,a,r)},t.translatePlural=function(e,t,n,a,r,s){if("undefined"==typeof OC)return console.warn("No OC found"),t;return OC.L10N.translatePlural(e,t,n,a,r,s)},t.getFirstDay=function(){if(void 0===window.firstDay)return console.warn("No firstDay found"),1;return window.firstDay},t.getDayNames=function(){if(void 0===window.dayNames)return console.warn("No dayNames found"),["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];return window.dayNames},t.getDayNamesShort=function(){if(void 0===window.dayNamesShort)return console.warn("No dayNamesShort found"),["Sun.","Mon.","Tue.","Wed.","Thu.","Fri.","Sat."];return window.dayNamesShort},t.getDayNamesMin=function(){if(void 0===window.dayNamesMin)return console.warn("No dayNamesMin found"),["Su","Mo","Tu","We","Th","Fr","Sa"];return window.dayNamesMin},t.getMonthNames=function(){if(void 0===window.monthNames)return console.warn("No monthNames found"),["January","February","March","April","May","June","July","August","September","October","November","December"];return window.monthNames},t.getMonthNamesShort=function(){if(void 0===window.monthNamesShort)return console.warn("No monthNamesShort found"),["Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."];return window.monthNamesShort}},function(e,t,n){"use strict";var a=n(29);n.n(a).a},function(e,t,n){(t=n(305)(!1)).push([e.i,"\n.fade-enter-active[data-v-6e2a9f70],\n.fade-leave-active[data-v-6e2a9f70],\n.fade-collapse-enter-active[data-v-6e2a9f70],\n.fade-collapse-leave-active[data-v-6e2a9f70] {\n\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\n}\n.fade-collapse-enter[data-v-6e2a9f70],\n.fade-collapse-leave-to[data-v-6e2a9f70] {\n\topacity: 0;\n\tmax-height: 0;\n}\n.fade-enter[data-v-6e2a9f70],\n.fade-leave-to[data-v-6e2a9f70] {\n\topacity: 0;\n}\n",""]),e.exports=t},function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||"",a=e[3];if(!a)return n;if(t&&"function"==typeof btoa){var r=(i=a,o=btoa(unescape(encodeURIComponent(JSON.stringify(i)))),l="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),"/*# ".concat(l," */")),s=a.sources.map((function(e){return"/*# sourceURL=".concat(a.sourceRoot||"").concat(e," */")}));return[n].concat(s).concat([r]).join("\n")}var i,o,l;return[n].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,a){"string"==typeof e&&(e=[[null,e,""]]);var r={};if(a)for(var s=0;s<this.length;s++){var i=this[s][0];null!=i&&(r[i]=!0)}for(var o=0;o<e.length;o++){var l=[].concat(e[o]);a&&r[l[0]]||(n&&(l[2]?l[2]="".concat(n," and ").concat(l[2]):l[2]=n),t.push(l))}},t}},function(e,t,n){(function(e){var a=void 0!==e&&e||"undefined"!=typeof self&&self||window,r=Function.prototype.apply;function s(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new s(r.call(setTimeout,a,arguments),clearTimeout)},t.setInterval=function(){return new s(r.call(setInterval,a,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},s.prototype.unref=s.prototype.ref=function(){},s.prototype.close=function(){this._clearFn.call(a,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(307),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(11))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var a,r,s,i,o,l=1,u={},d=!1,c=e.document,m=Object.getPrototypeOf&&Object.getPrototypeOf(e);m=m&&m.setTimeout?m:e,"[object process]"==={}.toString.call(e.process)?a=function(e){t.nextTick((function(){p(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((s=new MessageChannel).port1.onmessage=function(e){p(e.data)},a=function(e){s.port2.postMessage(e)}):c&&"onreadystatechange"in c.createElement("script")?(r=c.documentElement,a=function(e){var t=c.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):a=function(e){setTimeout(p,0,e)}:(i="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&p(+t.data.slice(i.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),a=function(t){e.postMessage(i+t,"*")}),m.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var r={callback:e,args:t};return u[l]=r,a(l),l++},m.clearImmediate=_}function _(e){delete u[e]}function p(e){if(d)setTimeout(p,0,e);else{var t=u[e];if(t){d=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{_(e),d=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(11),n(28))},function(e,a,r){"use strict";r.r(a);var s=r(16),i=r(14),o=r.n(i);function l(e,t,n,a,r,s,i){try{var o=e[s](i),l=o.value}catch(e){return void n(e)}o.done?t(l):Promise.resolve(l).then(a,r)}function u(e,t,n,a,r,s,i,o){var l,u="function"==typeof e?e.options:e;if(t&&(u.render=t,u.staticRenderFns=n,u._compiled=!0),a&&(u.functional=!0),s&&(u._scopeId="data-v-"+s),i?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},u._ssrRegister=l):r&&(l=o?function(){r.call(this,this.$root.$options.shadowRoot)}:r),l)if(u.functional){u._injectStyles=l;var d=u.render;u.render=function(e,t){return l.call(t),d(e,t)}}else{var c=u.beforeCreate;u.beforeCreate=c?[].concat(c,l):[l]}return{exports:e,options:u}}var d=u({name:"Action",props:{label:{type:String,default:"",required:!0},link:{type:String,default:"",required:!0},type:{type:String,default:"",required:!0},primary:{type:Boolean,default:!1,required:!0}},methods:{onClickActionButton:function(){var e,n=this;return(e=regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("WEB"!==(a=n.type||"GET")){e.next=4;break}return OC.redirect(n.link),e.abrupt("return");case 4:return e.prev=4,e.next=7,o()({method:a,url:n.link});case 7:n.$parent._$el.fadeOut(OC.menuSpeed),n.$parent.$emit("remove");try{$("body").trigger(new $.Event("OCA.Notification.Action",{notification:n.$parent,action:{url:n.link,type:a}}))}catch(e){console.error(e)}e.next=16;break;case 12:e.prev=12,e.t0=e.catch(4),console.error("Failed to perform action",e.t0),OC.Notification.showTemporary(t("notifications","Failed to perform action"));case 16:case"end":return e.stop()}}),e,null,[[4,12]])})),function(){var t=this,n=arguments;return new Promise((function(a,r){var s=e.apply(t,n);function i(e){l(s,a,r,i,o,"next",e)}function o(e){l(s,a,r,i,o,"throw",e)}i(void 0)}))})()}}},(function(){var e=this.$createElement;return(this._self._c||e)("button",{staticClass:"action-button pull-right",class:{primary:this.primary},attrs:{"data-type":this.type,"data-href":this.link},on:{click:this.onClickActionButton}},[this._v("\n\t"+this._s(this.label)+"\n")])}),[],!1,null,null,null).exports,c=r(20),m=r.n(c),_={fileTemplate:r(277),userLocalTemplate:r(293),userRemoteTemplate:r(294),unknownTemplate:r(295),unknownLinkTemplate:r(296),parseMessage:function(e,t){var n=this,a=(e=m()(e)).match(/\{([a-z\-_0-9]+)\}/gi);return a?(a.forEach((function(a){if(a=a.substring(1,a.length-1),Object.prototype.hasOwnProperty.call(t,a)&&t[a]){var r=n.parseParameter(t[a]);e=e.replace("{"+a+"}",r)}else console.error("Potential malformed ROS string: parameter {"+a+"} was found in the string but is missing from the parameter list")})),e.replace(new RegExp("\n","g"),"<br>")):e},parseParameter:function(e){switch(e.type){case"file":return this.parseFileParameter(e).trim("\n");case"user":return void 0===e.server?this.userLocalTemplate(e).trim("\n"):this.userRemoteTemplate(e).trim("\n");default:return void 0!==e.link?this.unknownLinkTemplate(e).trim("\n"):this.unknownTemplate(e).trim("\n")}},parseFileParameter:function(e){var n=e.path.lastIndexOf("/"),a=e.path.indexOf("/");return e.path=e.path.substring(0===a?1:0,n),this.fileTemplate(Object.assign({},e,{title:0===e.path.length?"":t("notifications","in {path}",e)}))}},p=r(214),f=r.n(p),h=u({name:"Notification",components:{Action:d},props:{notificationId:{type:Number,default:-1,required:!0},datetime:{type:String,default:"",required:!0},app:{type:String,default:"",required:!0},icon:{type:String,default:"",required:!0},link:{type:String,default:"",required:!0},user:{type:String,default:"",required:!0},message:{type:String,default:"",required:!0},messageRich:{type:String,default:"",required:!0},messageRichParameters:{type:[Object,Array],default:function(){return{}},required:!0},subject:{type:String,default:"",required:!0},subjectRich:{type:String,default:"",required:!0},subjectRichParameters:{type:[Object,Array],default:function(){return{}},required:!0},objectType:{type:String,default:"",required:!0},objectId:{type:String,default:"",required:!0},actions:{type:Array,default:function(){return[]},required:!0},index:{type:Number,default:-1,required:!0}},data:function(){return{showFullMessage:!1}},_$el:null,computed:{timestamp:function(){return 1e3*f()(this.datetime).format("X")},absoluteDate:function(){return OC.Util.formatDate(this.timestamp)},relativeDate:function(){return OC.Util.relativeModifiedDate(this.timestamp)},useLink:function(){return this.link&&-1===this.renderedSubject.indexOf("<a ")},renderedSubject:function(){return 0!==this.subjectRich.length?_.parseMessage(this.subjectRich.replace(new RegExp("\n","g")," "),this.subjectRichParameters):m()(this.subject).replace(new RegExp("\n","g")," ")},isCollapsedMessage:function(){return this.message.length>200&&!this.showFullMessage},renderedMessage:function(){return 0!==this.messageRich.length?_.parseMessage(this.messageRich,this.messageRichParameters):m()(this.message).replace(new RegExp("\n","g"),"<br>")}},mounted:function(){this._$el=$(this.$el),this._$el.find(".avatar").each((function(){var e=$(this);e.data("user-display-name")?e.avatar(e.data("user"),21,void 0,!1,void 0,e.data("user-display-name")):e.avatar(e.data("user"),21)})),this._$el.find(".avatar-name-wrapper").each((function(){var e=$(this),t=e.find(".avatar"),n=e.find("strong");$.merge(t,n).contactsMenu(e.data("user"),0,e)})),this._$el.find(".has-tooltip").tooltip({placement:"bottom"}),this.$parent.$parent.backgroundFetching&&this.$parent.$parent.webNotificationsGranted&&this._createWebNotification()},methods:{onClickMessage:function(e){e.target.classList.contains("message-container")&&(this.showFullMessage=!this.showFullMessage)},onDismissNotification:function(){var e=this;o.a.delete(OC.linkToOCS("apps/notifications/api/v2",2)+"notifications/"+this.notificationId).then((function(){e.$emit("remove",e.index)})).catch((function(){OC.Notification.showTemporary(t("notifications","Failed to dismiss notification"))}))},_createWebNotification:function(){var e=new Notification(this.subject,{title:this.subject,lang:OC.getLocale(),body:this.message,icon:this.icon,tag:this.notificationId});this.link&&(e.onclick=function(e){e.preventDefault(),window.location.href=this.link}.bind(this)),setTimeout(e.close.bind(e),5e3)}}},(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"notification",attrs:{"data-id":e.notificationId,"data-timestamp":e.timestamp}},[n("div",{staticClass:"notification-heading"},[n("span",{staticClass:"notification-time has-tooltip live-relative-timestamp",attrs:{"data-timestamp":e.timestamp,title:e.absoluteDate}},[e._v(e._s(e.relativeDate))]),e._v(" "),n("div",{staticClass:"notification-delete",on:{click:e.onDismissNotification}},[n("span",{staticClass:"icon icon-close svg",attrs:{title:e.t("notifications","Dismiss")}})])]),e._v(" "),e.useLink?n("a",{staticClass:"notification-subject full-subject-link",attrs:{href:e.link}},[e.icon?n("span",{staticClass:"image"},[n("img",{staticClass:"notification-icon",attrs:{src:e.icon}})]):e._e(),e._v(" "),n("span",{staticClass:"text",domProps:{innerHTML:e._s(e.renderedSubject)}})]):n("div",{staticClass:"notification-subject"},[e.icon?n("span",{staticClass:"image"},[n("img",{staticClass:"notification-icon",attrs:{src:e.icon}})]):e._e(),e._v(" "),n("span",{staticClass:"text",domProps:{innerHTML:e._s(e.renderedSubject)}})]),e._v(" "),e.message?n("div",{staticClass:"notification-message",on:{click:e.onClickMessage}},[n("div",{staticClass:"message-container",class:{collapsed:e.isCollapsedMessage},domProps:{innerHTML:e._s(e.renderedMessage)}}),e._v(" "),e.isCollapsedMessage?n("div",{staticClass:"notification-overflow"}):e._e()]):e._e(),e._v(" "),e.actions.length?n("div",{staticClass:"notification-actions"},e._l(e.actions,(function(t,a){return n("Action",e._b({key:a},"Action",t,!1))})),1):e._e()])}),[],!1,null,null,null).exports,y=r(30);function M(e,t,n,a,r,s,i){try{var o=e[s](i),l=o.value}catch(e){return void n(e)}o.done?t(l):Promise.resolve(l).then(a,r)}var v,g,L={name:"App",components:{Notification:h},data:function(){return{webNotificationsGranted:null,hadNotifications:!1,backgroundFetching:!1,shutdown:!1,notifications:[],lastETag:null,pollInterval:3e4,interval:null}},_$icon:null,computed:{iconPath:function(){var e="notifications";return(null===this.webNotificationsGranted||this.notifications.length)&&(this.isRedThemed()&&(e+="-red"),e+="-new"),this.invertedTheme()&&(e+="-dark"),OC.imagePath("notifications",e)}},mounted:function(){var e=this;this._$icon=$(this.$refs.icon),OC.registerMenu($(this.$refs.button),$(this.$refs.container),void 0,!0),this.checkWebNotificationPermissions(),this._fetch(),this.setupBackgroundFetcher(),Object(y.subscribe)("networkOffline",(function(){e._shutDownNotifications(!0)})),Object(y.subscribe)("networkOnline",(function(){e._fetch(),e.setupBackgroundFetcher()}))},updated:function(){this._$icon.attr("src",this.iconPath),!this.hadNotifications&&this.notifications.length&&this._$icon.animate({opacity:.6},600).animate({opacity:1},600).animate({opacity:.6},600).animate({opacity:1},600),this.hadNotifications=this.notifications.length>0},methods:{setupBackgroundFetcher:function(){OC.config.session_keepalive&&(this.interval=setInterval(this._backgroundFetch.bind(this),this.pollInterval))},onDismissAll:function(){var e=this;o.a.delete(OC.linkToOCS("apps/notifications/api/v2",2)+"notifications").then((function(){e.notifications=[]})).catch((function(){OC.Notification.showTemporary(t("notifications","Failed to dismiss all notifications"))}))},onRemove:function(e){this.notifications.splice(e,1)},invertedTheme:function(){return OCA.Theming&&OCA.Theming.inverted},isRedThemed:function(){if(OCA.Theming&&OCA.Theming.color){var e=this.rgbToHsl(OCA.Theming.color.substring(1,3),OCA.Theming.color.substring(3,5),OCA.Theming.color.substring(5,7)),t=360*e[0];return(t>=330||t<=15)&&e[1]>.7&&(e[2]>.1||e[2]<.6)}return!1},rgbToHsl:function(e,t,n){e=parseInt(e,16)/255,t=parseInt(t,16)/255,n=parseInt(n,16)/255;var a,r,s=Math.max(e,t,n),i=Math.min(e,t,n),o=(s+i)/2;if(s===i)a=r=0;else{var l=s-i;switch(r=o>.5?l/(2-s-i):l/(s+i),s){case e:a=(t-n)/l+(t<n?6:0);break;case t:a=(n-e)/l+2;break;case n:a=(e-t)/l+4}a/=6}return[a,r,o]},_fetch:function(){var e=this,t={};this.lastETag&&(t={headers:{"If-None-Match":this.lastETag}}),o.a.get(OC.linkToOCS("apps/notifications/api/v2",2)+"notifications",t).then((function(t){204!==t.status?(void 0!==t.data&&void 0!==t.data.ocs&&void 0!==t.data.ocs.data&&Array.isArray(t.data.ocs.data)?(e.lastETag=t.headers.etag,e.notifications=t.data.ocs.data):console.info("data.ocs.data is undefined or not an array"),e._setPollingInterval(3e4)):e._setPollingInterval(3e5)})).catch((function(t){if(t.response){if(304!==t.response.status){if(503===t.response.status)console.info("Slowing down notifications: instance is in maintenance mode.");else{if(404===t.response.status)return console.info("Shutting down notifications: app is disabled."),void e._shutDownNotifications(!1);console.info("Slowing down notifications: ["+t.response.status+"] "+t.response.statusText)}e._setPollingInterval(3e5)}}else console.info("No response received, retrying")}))},_backgroundFetch:function(){this.backgroundFetching=!0,this._fetch()},_setPollingInterval:function(e){e!==this.pollInterval&&(this.interval&&(window.clearInterval(this.interval),this.interval=null),this.pollInterval=e,this.setupBackgroundFetcher())},_shutDownNotifications:function(e){this.interval&&(window.clearInterval(this.interval),this.interval=null),this.shutdown=!e},checkWebNotificationPermissions:function(){return"Notification"in window?"granted"===window.Notification.permission?(console.debug("Notifications permissions granted"),void(this.webNotificationsGranted=!0)):"denied"===window.Notification.permission?(console.debug("Notifications permissions denied"),void(this.webNotificationsGranted=!1)):void console.info("Notifications permissions not yet requested"):(console.info("Browser does not support notifications"),void(this.webNotificationsGranted=!1))},requestWebNotificationPermissions:(v=regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null===this.webNotificationsGranted){e.next=2;break}return e.abrupt("return");case 2:console.info("Requesting notifications permissions"),window.Notification.requestPermission().then((function(e){t.webNotificationsGranted="granted"===e}));case 4:case"end":return e.stop()}}),e,this)})),g=function(){var e=this,t=arguments;return new Promise((function(n,a){var r=v.apply(e,t);function s(e){M(r,n,a,s,i,"next",e)}function i(e){M(r,n,a,s,i,"throw",e)}s(void 0)}))},function(){return g.apply(this,arguments)})}},Y=(r(303),u(L,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.shutdown?e._e():n("div",{staticClass:"notifications"},[n("div",{ref:"button",staticClass:"notifications-button menutoggle",class:{hasNotifications:e.notifications.length},attrs:{tabindex:"0",role:"button","aria-label":e.t("notifications","Notifications"),"aria-haspopup":"true","aria-controls":"notification-container","aria-expanded":"false"},on:{click:e.requestWebNotificationPermissions}},[n("img",{ref:"icon",staticClass:"svg",attrs:{alt:"",title:e.t("notifications","Notifications"),src:e.iconPath}})]),e._v(" "),n("div",{ref:"container",staticClass:"notification-container"},[n("transition",{attrs:{name:"fade"}},[e.notifications.length>0?n("ul",{staticClass:"notification-wrapper"},[n("transition-group",{attrs:{name:"fade-collapse",tag:"li"}},e._l(e.notifications,(function(t,a){return n("Notification",e._b({key:t.notification_id,attrs:{index:a,"notification-id":t.notification_id,"object-id":t.object_id,"object-type":t.object_type},on:{remove:e.onRemove}},"Notification",t,!1))})),1),e._v(" "),e.notifications.length>2?n("li",[n("div",{staticClass:"dismiss-all",on:{click:e.onDismissAll}},[n("span",{staticClass:"icon icon-close svg",attrs:{title:e.t("notifications","Dismiss all notifications")}}),e._v(" "+e._s(e.t("notifications","Dismiss all notifications"))+"\n\t\t\t\t\t")])]):e._e()],1):n("div",{staticClass:"emptycontent"},[n("div",{staticClass:"icon icon-notifications-dark"}),e._v(" "),null===e.webNotificationsGranted?n("h2",[e._v("\n\t\t\t\t\t"+e._s(e.t("notifications","Requesting browser permissions to show notifications"))+"\n\t\t\t\t")]):n("h2",[e._v("\n\t\t\t\t\t"+e._s(e.t("notifications","No notifications"))+"\n\t\t\t\t")])])])],1)])}),[],!1,null,"6e2a9f70",null).exports);
+ */var a=/["'&<>]/;e.exports=function(e){var t,n=""+e,r=a.exec(n);if(!r)return n;var s="",i=0,o=0;for(i=r.index;i<n.length;i++){switch(n.charCodeAt(i)){case 34:t="&quot;";break;case 38:t="&amp;";break;case 39:t="&#39;";break;case 60:t="&lt;";break;case 62:t="&gt;";break;default:continue}o!==i&&(s+=n.substring(o,i)),o=i+1,s+=t}return o!==i?s+n.substring(o,i):s}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){var a=n(31),r=n(33);e.exports=function(e){return a(r(e))}},function(e,t,n){var a,r,s,i=n(216),o=n(1),l=n(6),u=n(10),d=n(5),c=n(36),m=n(24),_=o.WeakMap;if(i){var p=new _,f=p.get,h=p.has,y=p.set;a=function(e,t){return y.call(p,e,t),t},r=function(e){return f.call(p,e)||{}},s=function(e){return h.call(p,e)}}else{var M=c("state");m[M]=!0,a=function(e,t){return u(e,M,t),t},r=function(e){return d(e,M)?e[M]:{}},s=function(e){return d(e,M)}}e.exports={set:a,get:r,has:s,enforce:function(e){return s(e)?r(e):a(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t){e.exports={}},function(e,t,n){var a=n(219),r=n(1),s=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?s(a[e])||s(r[e]):a[e]&&a[e][t]||r[e]&&r[e][t]}},function(e,t,n){var a=n(39),r=Math.min;e.exports=function(e){return e>0?r(a(e),9007199254740991):0}},function(e,t,n){var a=n(33);e.exports=function(e){return Object(a(e))}},function(e,t){var n,a,r=e.exports={};function s(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function o(e){if(n===setTimeout)return setTimeout(e,0);if((n===s||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:s}catch(e){n=s}try{a="function"==typeof clearTimeout?clearTimeout:i}catch(e){a=i}}();var l,u=[],d=!1,c=-1;function m(){d&&l&&(d=!1,l.length?u=l.concat(u):c=-1,u.length&&_())}function _(){if(!d){var e=o(m);d=!0;for(var t=u.length;t;){for(l=u,u=[];++c<t;)l&&l[c].run();c=-1,t=u.length}l=null,d=!1,function(e){if(a===clearTimeout)return clearTimeout(e);if((a===i||!a)&&clearTimeout)return a=clearTimeout,clearTimeout(e);try{a(e)}catch(t){try{return a.call(null,e)}catch(t){return a.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function f(){}r.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new p(e,t)),1!==u.length||d||o(_)},p.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=f,r.addListener=f,r.once=f,r.off=f,r.removeListener=f,r.removeAllListeners=f,r.emit=f,r.prependListener=f,r.prependOnceListener=f,r.listeners=function(e){return[]},r.binding=function(e){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(e){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},function(e,t,n){var a=n(304);"string"==typeof a&&(a=[[e.i,a,""]]),a.locals&&(e.exports=a.locals);(0,n(309).default)("acc59688",a,!0,{})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.subscribe=function(e,t){s.subscribe(e,t)},t.unsubscribe=function(e,t){s.unsubscribe(e,t)},t.emit=function(e,t){s.emit(e,t)};var a=n(246),r=n(248);var s=(void 0!==window.OC&&window.OC._eventBus&&void 0===window._nc_event_bus&&(console.warn("found old event bus instance at OC._eventBus. Update your version!"),window._nc_event_bus=window.OC._eventBus),void 0!==window._nc_event_bus?new a.ProxyBus(window._nc_event_bus):window._nc_event_bus=new r.SimpleBus)},function(e,t,n){var a=n(3),r=n(32),s="".split;e.exports=a((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==r(e)?s.call(e,""):Object(e)}:Object},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){var a=n(6);e.exports=function(e,t){if(!a(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!a(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!a(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!a(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var a=n(1),r=n(10);e.exports=function(e,t){try{r(a,e,t)}catch(n){a[e]=t}return t}},function(e,t,n){var a=n(52),r=n(38),s=a("keys");e.exports=function(e){return s[e]||(s[e]=r(e))}},function(e,t){e.exports=!1},function(e,t){var n=0,a=Math.random();e.exports=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++n+a).toString(36)}},function(e,t){var n=Math.ceil,a=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?a:n)(e)}},function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){var a=n(243);e.exports=function(e,t,n){if(a(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,a){return e.call(t,n,a)};case 3:return function(n,a,r){return e.call(t,n,a,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){var a,r=n(12),s=n(254),i=n(40),o=n(24),l=n(255),u=n(49),d=n(36),c=d("IE_PROTO"),m=function(){},_=function(e){return"<script>"+e+"<\/script>"},p=function(){try{a=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;p=a?function(e){e.write(_("")),e.close();var t=e.parentWindow.Object;return e=null,t}(a):((t=u("iframe")).style.display="none",l.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(_("document.F=Object")),e.close(),e.F);for(var n=i.length;n--;)delete p.prototype[i[n]];return p()};o[c]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(m.prototype=r(e),n=new m,m.prototype=null,n[c]=e):n=p(),void 0===t?n:s(n,t)}},function(e,t,n){"use strict";var a=n(15),r=n(256),s=n(76),i=n(77),o=n(44),l=n(10),u=n(17),d=n(2),c=n(37),m=n(18),_=n(75),p=_.IteratorPrototype,f=_.BUGGY_SAFARI_ITERATORS,h=d("iterator"),y=function(){return this};e.exports=function(e,t,n,d,_,M,v){r(n,t,d);var g,L,Y,T=function(e){if(e===_&&x)return x;if(!f&&e in D)return D[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},k=t+" Iterator",w=!1,D=e.prototype,b=D[h]||D["@@iterator"]||_&&D[_],x=!f&&b||T(_),S="Array"==t&&D.entries||b;if(S&&(g=s(S.call(new e)),p!==Object.prototype&&g.next&&(c||s(g)===p||(i?i(g,p):"function"!=typeof g[h]&&l(g,h,y)),o(g,k,!0,!0),c&&(m[k]=y))),"values"==_&&b&&"values"!==b.name&&(w=!0,x=function(){return b.call(this)}),c&&!v||D[h]===x||l(D,h,x),m[t]=x,_)if(L={values:T("values"),keys:M?x:T("keys"),entries:T("entries")},v)for(Y in L)(f||w||!(Y in D))&&u(D,Y,L[Y]);else a({target:t,proto:!0,forced:f||w},L);return L}},function(e,t,n){var a=n(9).f,r=n(5),s=n(2)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,s)&&a(e,s,{configurable:!0,value:t})}},function(e,t,n){var a={};a[n(2)("toStringTag")]="z",e.exports="[object z]"===String(a)},function(e,t,n){var a=n(8),r=n(47),s=n(21),i=n(22),o=n(34),l=n(5),u=n(48),d=Object.getOwnPropertyDescriptor;t.f=a?d:function(e,t){if(e=i(e),t=o(t,!0),u)try{return d(e,t)}catch(e){}if(l(e,t))return s(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";var a={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,s=r&&!a.call({1:2},1);t.f=s?function(e){var t=r(this,e);return!!t&&t.enumerable}:a},function(e,t,n){var a=n(8),r=n(3),s=n(49);e.exports=!a&&!r((function(){return 7!=Object.defineProperty(s("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){var a=n(1),r=n(6),s=a.document,i=r(s)&&r(s.createElement);e.exports=function(e){return i?s.createElement(e):{}}},function(e,t,n){var a=n(51),r=Function.toString;"function"!=typeof a.inspectSource&&(a.inspectSource=function(e){return r.call(e)}),e.exports=a.inspectSource},function(e,t,n){var a=n(1),r=n(35),s=a["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=s},function(e,t,n){var a=n(37),r=n(51);(e.exports=function(e,t){return r[e]||(r[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.6.5",mode:a?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){var a=n(5),r=n(22),s=n(221).indexOf,i=n(24);e.exports=function(e,t){var n,o=r(e),l=0,u=[];for(n in o)!a(i,n)&&a(o,n)&&u.push(n);for(;t.length>l;)a(o,n=t[l++])&&(~s(u,n)||u.push(n));return u}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var a=n(3),r=/#|\.prototype\./,s=function(e,t){var n=o[i(e)];return n==u||n!=l&&("function"==typeof t?a(t):!!t)},i=s.normalize=function(e){return String(e).replace(r,".").toLowerCase()},o=s.data={},l=s.NATIVE="N",u=s.POLYFILL="P";e.exports=s},function(e,t,n){var a=n(53),r=n(40);e.exports=Object.keys||function(e){return a(e,r)}},function(e,t,n){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),a=0;a<n.length;a++)n[a]=arguments[a];return e.apply(t,n)}}},function(e,t,n){"use strict";var a=n(4);function r(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,n){if(!t)return e;var s;if(n)s=n(t);else if(a.isURLSearchParams(t))s=t.toString();else{var i=[];a.forEach(t,(function(e,t){null!=e&&(a.isArray(e)?t+="[]":e=[e],a.forEach(e,(function(e){a.isDate(e)?e=e.toISOString():a.isObject(e)&&(e=JSON.stringify(e)),i.push(r(t)+"="+r(e))})))})),s=i.join("&")}if(s){var o=e.indexOf("#");-1!==o&&(e=e.slice(0,o)),e+=(-1===e.indexOf("?")?"?":"&")+s}return e}},function(e,t,n){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},function(e,t,n){"use strict";(function(t){var a=n(4),r=n(230),s={"Content-Type":"application/x-www-form-urlencoded"};function i(e,t){!a.isUndefined(e)&&a.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var o,l={adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==t&&"[object process]"===Object.prototype.toString.call(t))&&(o=n(61)),o),transformRequest:[function(e,t){return r(t,"Accept"),r(t,"Content-Type"),a.isFormData(e)||a.isArrayBuffer(e)||a.isBuffer(e)||a.isStream(e)||a.isFile(e)||a.isBlob(e)?e:a.isArrayBufferView(e)?e.buffer:a.isURLSearchParams(e)?(i(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):a.isObject(e)?(i(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return e>=200&&e<300}};l.headers={common:{Accept:"application/json, text/plain, */*"}},a.forEach(["delete","get","head"],(function(e){l.headers[e]={}})),a.forEach(["post","put","patch"],(function(e){l.headers[e]=a.merge(s)})),e.exports=l}).call(this,n(28))},function(e,t,n){"use strict";var a=n(4),r=n(231),s=n(58),i=n(233),o=n(236),l=n(237),u=n(62);e.exports=function(e){return new Promise((function(t,d){var c=e.data,m=e.headers;a.isFormData(c)&&delete m["Content-Type"];var _=new XMLHttpRequest;if(e.auth){var p=e.auth.username||"",f=e.auth.password||"";m.Authorization="Basic "+btoa(p+":"+f)}var h=i(e.baseURL,e.url);if(_.open(e.method.toUpperCase(),s(h,e.params,e.paramsSerializer),!0),_.timeout=e.timeout,_.onreadystatechange=function(){if(_&&4===_.readyState&&(0!==_.status||_.responseURL&&0===_.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in _?o(_.getAllResponseHeaders()):null,a={data:e.responseType&&"text"!==e.responseType?_.response:_.responseText,status:_.status,statusText:_.statusText,headers:n,config:e,request:_};r(t,d,a),_=null}},_.onabort=function(){_&&(d(u("Request aborted",e,"ECONNABORTED",_)),_=null)},_.onerror=function(){d(u("Network Error",e,null,_)),_=null},_.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),d(u(t,e,"ECONNABORTED",_)),_=null},a.isStandardBrowserEnv()){var y=n(238),M=(e.withCredentials||l(h))&&e.xsrfCookieName?y.read(e.xsrfCookieName):void 0;M&&(m[e.xsrfHeaderName]=M)}if("setRequestHeader"in _&&a.forEach(m,(function(e,t){void 0===c&&"content-type"===t.toLowerCase()?delete m[t]:_.setRequestHeader(t,e)})),a.isUndefined(e.withCredentials)||(_.withCredentials=!!e.withCredentials),e.responseType)try{_.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&_.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&_.upload&&_.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){_&&(_.abort(),d(e),_=null)})),void 0===c&&(c=null),_.send(c)}))}},function(e,t,n){"use strict";var a=n(232);e.exports=function(e,t,n,r,s){var i=new Error(e);return a(i,t,n,r,s)}},function(e,t,n){"use strict";var a=n(4);e.exports=function(e,t){t=t||{};var n={},r=["url","method","params","data"],s=["headers","auth","proxy"],i=["baseURL","url","transformRequest","transformResponse","paramsSerializer","timeout","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","maxContentLength","validateStatus","maxRedirects","httpAgent","httpsAgent","cancelToken","socketPath"];a.forEach(r,(function(e){void 0!==t[e]&&(n[e]=t[e])})),a.forEach(s,(function(r){a.isObject(t[r])?n[r]=a.deepMerge(e[r],t[r]):void 0!==t[r]?n[r]=t[r]:a.isObject(e[r])?n[r]=a.deepMerge(e[r]):void 0!==e[r]&&(n[r]=e[r])})),a.forEach(i,(function(a){void 0!==t[a]?n[a]=t[a]:void 0!==e[a]&&(n[a]=e[a])}));var o=r.concat(s).concat(i),l=Object.keys(t).filter((function(e){return-1===o.indexOf(e)}));return a.forEach(l,(function(a){void 0!==t[a]?n[a]=t[a]:void 0!==e[a]&&(n[a]=e[a])})),n}},function(e,t,n){"use strict";function a(e){this.message=e}a.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},a.prototype.__CANCEL__=!0,e.exports=a},function(e,t,n){"use strict";var a=n(15),r=n(66);a({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var a=n(67).forEach,r=n(245),s=n(71),i=r("forEach"),o=s("forEach");e.exports=i&&o?[].forEach:function(e){return a(this,e,arguments.length>1?arguments[1]:void 0)}},function(e,t,n){var a=n(41),r=n(31),s=n(27),i=n(26),o=n(68),l=[].push,u=function(e){var t=1==e,n=2==e,u=3==e,d=4==e,c=6==e,m=5==e||c;return function(_,p,f,h){for(var y,M,v=s(_),g=r(v),L=a(p,f,3),Y=i(g.length),T=0,k=h||o,w=t?k(_,Y):n?k(_,0):void 0;Y>T;T++)if((m||T in g)&&(M=L(y=g[T],T,v),e))if(t)w[T]=M;else if(M)switch(e){case 3:return!0;case 5:return y;case 6:return T;case 2:l.call(w,y)}else if(d)return!1;return c?-1:u||d?d:w}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},function(e,t,n){var a=n(6),r=n(69),s=n(2)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?a(n)&&null===(n=n[s])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},function(e,t,n){var a=n(32);e.exports=Array.isArray||function(e){return"Array"==a(e)}},function(e,t,n){var a=n(3);e.exports=!!Object.getOwnPropertySymbols&&!a((function(){return!String(Symbol())}))},function(e,t,n){var a=n(8),r=n(3),s=n(5),i=Object.defineProperty,o={},l=function(e){throw e};e.exports=function(e,t){if(s(o,e))return o[e];t||(t={});var n=[][e],u=!!s(t,"ACCESSORS")&&t.ACCESSORS,d=s(t,0)?t[0]:l,c=s(t,1)?t[1]:void 0;return o[e]=!!n&&!r((function(){if(u&&!a)return!0;var e={length:-1};u?i(e,1,{enumerable:!0,get:l}):e[1]=1,n.call(e,d,c)}))}},function(e,t,n){var a=n(3),r=n(2),s=n(73),i=r("species");e.exports=function(e){return s>=51||!a((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){var a,r,s=n(1),i=n(251),o=s.process,l=o&&o.versions,u=l&&l.v8;u?r=(a=u.split("."))[0]+a[1]:i&&(!(a=i.match(/Edge\/(\d+)/))||a[1]>=74)&&(a=i.match(/Chrome\/(\d+)/))&&(r=a[1]),e.exports=r&&+r},function(e,t,n){"use strict";var a=n(22),r=n(253),s=n(18),i=n(23),o=n(43),l=i.set,u=i.getterFor("Array Iterator");e.exports=o(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:a(e),index:0,kind:t})}),(function(){var e=u(this),t=e.target,n=e.kind,a=e.index++;return!t||a>=t.length?(e.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:a,done:!1}:"values"==n?{value:t[a],done:!1}:{value:[a,t[a]],done:!1}}),"values"),s.Arguments=s.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var a,r,s,i=n(76),o=n(10),l=n(5),u=n(2),d=n(37),c=u("iterator"),m=!1;[].keys&&("next"in(s=[].keys())?(r=i(i(s)))!==Object.prototype&&(a=r):m=!0),null==a&&(a={}),d||l(a,c)||o(a,c,(function(){return this})),e.exports={IteratorPrototype:a,BUGGY_SAFARI_ITERATORS:m}},function(e,t,n){var a=n(5),r=n(27),s=n(36),i=n(257),o=s("IE_PROTO"),l=Object.prototype;e.exports=i?Object.getPrototypeOf:function(e){return e=r(e),a(e,o)?e[o]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){var a=n(12),r=n(258);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(e){}return function(n,s){return a(n),r(s),t?e.call(n,s):n.__proto__=s,n}}():void 0)},function(e,t,n){var a=n(24),r=n(6),s=n(5),i=n(9).f,o=n(38),l=n(261),u=o("meta"),d=0,c=Object.isExtensible||function(){return!0},m=function(e){i(e,u,{value:{objectID:"O"+ ++d,weakData:{}}})},_=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!s(e,u)){if(!c(e))return"F";if(!t)return"E";m(e)}return e[u].objectID},getWeakData:function(e,t){if(!s(e,u)){if(!c(e))return!0;if(!t)return!1;m(e)}return e[u].weakData},onFreeze:function(e){return l&&_.REQUIRED&&c(e)&&!s(e,u)&&m(e),e}};a[u]=!0},function(e,t,n){var a=n(12),r=n(262),s=n(26),i=n(41),o=n(263),l=n(264),u=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,d,c){var m,_,p,f,h,y,M,v=i(t,n,d?2:1);if(c)m=e;else{if("function"!=typeof(_=o(e)))throw TypeError("Target is not iterable");if(r(_)){for(p=0,f=s(e.length);f>p;p++)if((h=d?v(a(M=e[p])[0],M[1]):v(e[p]))&&h instanceof u)return h;return new u(!1)}m=_.call(e)}for(y=m.next;!(M=y.call(m)).done;)if("object"==typeof(h=l(m,v,M.value,d))&&h&&h instanceof u)return h;return new u(!1)}).stop=function(e){return new u(!0,e)}},function(e,t,n){var a=n(45),r=n(32),s=n(2)("toStringTag"),i="Arguments"==r(function(){return arguments}());e.exports=a?r:function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),s))?n:i?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},function(e,t){e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},function(e,t){e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.HandlebarsEnvironment=d;var r=n(7),s=a(n(13)),i=n(84),o=n(286),l=a(n(85)),u=n(86);t.VERSION="4.7.6";t.COMPILER_REVISION=8;t.LAST_COMPATIBLE_COMPILER_REVISION=7;t.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};function d(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},i.registerDefaultHelpers(this),o.registerDefaultDecorators(this)}d.prototype={constructor:d,logger:l.default,log:l.default.log,registerHelper:function(e,t){if("[object Object]"===r.toString.call(e)){if(t)throw new s.default("Arg not supported with multiple helpers");r.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if("[object Object]"===r.toString.call(e))r.extend(this.partials,e);else{if(void 0===t)throw new s.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if("[object Object]"===r.toString.call(e)){if(t)throw new s.default("Arg not supported with multiple decorators");r.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){u.resetLoggedProperties()}};var c=l.default.log;t.log=c,t.createFrame=r.createFrame,t.logger=l.default},function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.registerDefaultHelpers=function(e){r.default(e),s.default(e),i.default(e),o.default(e),l.default(e),u.default(e),d.default(e)},t.moveHelperToHooks=function(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])};var r=a(n(279)),s=a(n(280)),i=a(n(281)),o=a(n(282)),l=a(n(283)),u=a(n(284)),d=a(n(285))},function(e,t,n){"use strict";t.__esModule=!0;var a=n(7),r={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){if("string"==typeof e){var t=a.indexOf(r.methodMap,e.toLowerCase());e=t>=0?t:parseInt(e,10)}return e},log:function(e){if(e=r.lookupLevel(e),"undefined"!=typeof console&&r.lookupLevel(r.level)<=e){var t=r.methodMap[e];console[t]||(t="log");for(var n=arguments.length,a=Array(n>1?n-1:0),s=1;s<n;s++)a[s-1]=arguments[s];console[t].apply(console,a)}}};t.default=r,e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.createProtoAccessControl=function(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var n=Object.create(null);return n.__proto__=!1,{properties:{whitelist:a.createNewLookupObject(n,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:a.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}},t.resultIsAllowed=function(e,t,n){return i("function"==typeof e?t.methods:t.properties,n)},t.resetLoggedProperties=function(){Object.keys(s).forEach((function(e){delete s[e]}))};var a=n(288),r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(85)),s=Object.create(null);function i(e,t){return void 0!==e.whitelist[t]?!0===e.whitelist[t]:void 0!==e.defaultValue?e.defaultValue:(function(e){!0!==s[e]&&(s[e]=!0,r.log("error",'Handlebars: Access has been denied to resolve the property "'+e+'" because it is not an "own property" of its parent.\nYou can add a runtime option to disable the check or this warning:\nSee https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details'))}(t),!1)}},function(e,t,n){!function(e){"use strict";e.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,t,n){return e<12?n?"vm":"VM":n?"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ôre 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||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},r={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},s=function(e){return function(t,n,s,i){var o=a(t),l=r[e][a(t)];return 2===o&&(l=l[n?0:1]),l.replace(/%d/i,t)}},i=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];e.defineLocale("ar",{months:i,monthsShort:i,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,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:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:s("s"),ss:s("s"),m:s("m"),mm:s("m"),h:s("h"),hh:s("h"),d:s("d"),dd:s("d"),M:s("M"),MM:s("M"),y:s("y"),yy:s("y")},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-dz",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"أح_إث_ثلا_أر_خم_جم_سب".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-kw",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},n=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},a={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},r=function(e){return function(t,r,s,i){var o=n(t),l=a[e][n(t)];return 2===o&&(l=l[r?0:1]),l.replace(/%d/i,t)}},s=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];e.defineLocale("ar-ly",{months:s,monthsShort:s,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,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:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:r("s"),ss:r("s"),m:r("m"),mm:r("m"),h:r("h"),hh:r("h"),d:r("d"),dd:r("d"),M:r("M"),MM:r("M"),y:r("y"),yy:r("y")},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};e.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".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:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};e.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əsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".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ün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyə",ss:"%d saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(e){return/^(gündüz|axşam)$/.test(e)},meridiem:function(e,t,n){return e<4?"gecə":e<12?"səhər":e<17?"gündüz":"axşam"},dayOfMonthOrdinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(e){if(0===e)return e+"-ıncı";var n=e%10;return e+(t[n]||t[e%100-n]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a,r;return"m"===n?t?"хвіліна":"хвіліну":"h"===n?t?"гадзіна":"гадзіну":e+" "+(a=+e,r={ss:t?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:t?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:t?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}e.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".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:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:t,mm:t,h:t,hh:t,d:"дзень",dd:t,M:"месяц",MM:t,y:"год",yy:t},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(e){return/^(дня|вечара)$/.test(e)},meridiem:function(e,t,n){return e<4?"ночы":e<12?"раніцы":e<17?"дня":"вечара"},dayOfMonthOrdinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e%10!=2&&e%10!=3||e%100==12||e%100==13?e+"-ы":e+"-і";case"D":return e+"-га";default:return e}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".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:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,n=e%100;return 0===e?e+"-ев":0===n?e+"-ен":n>10&&n<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des".split("_"),weekdays:"Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Ntɛ_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ɛrɛ] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm"},calendar:{sameDay:"[Bi lɛrɛ] LT",nextDay:"[Sini lɛrɛ] LT",nextWeek:"dddd [don lɛrɛ] LT",lastDay:"[Kunu lɛrɛ] LT",lastWeek:"dddd [tɛmɛnen lɛrɛ] LT",sameElse:"L"},relativeTime:{future:"%s kɔnɔ",past:"a bɛ %s bɔ",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"lɛrɛ kelen",hh:"lɛrɛ %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},n={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};e.defineLocale("bn",{months:"জানুয়ারী_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপ্র_মে_জুন_জুল_আগ_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),weekdaysMin:"রবি_সোম_মঙ্গ_বুধ_বৃহঃ_শুক্র_শনি".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:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",ss:"%d সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(e){return e.replace(/[১২৩৪৫৬৭৮৯০]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/রাত|সকাল|দুপুর|বিকাল|রাত/,meridiemHour:function(e,t){return 12===e&&(e=0),"রাত"===t&&e>=4||"দুপুর"===t&&e<5||"বিকাল"===t?e+12:e},meridiem:function(e,t,n){return e<4?"রাত":e<10?"সকাল":e<17?"দুপুর":e<20?"বিকাল":"রাত"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},n={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};e.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".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:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",ss:"%d སྐར་ཆ།",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(e){return e.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,meridiemHour:function(e,t){return 12===e&&(e=0),"མཚན་མོ"===t&&e>=4||"ཉིན་གུང"===t&&e<5||"དགོང་དག"===t?e+12:e},meridiem:function(e,t,n){return e<4?"མཚན་མོ":e<10?"ཞོགས་ཀས":e<17?"ཉིན་གུང":e<20?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){return e+" "+function(e,t){return 2===t?function(e){var t={m:"v",b:"v",d:"z"};return void 0===t[e.charAt(0)]?e:t[e.charAt(0)]+e.substring(1)}(e):e}({mm:"munutenn",MM:"miz",dd:"devezh"}[n],e)}e.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ù",ss:"%d eilenn",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:function(e){switch(function e(t){return t>9?e(t%10):t}(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}},dayOfMonthOrdinalParse:/\d{1,2}(añ|vet)/,ordinal:function(e){return e+(1===e?"añ":"vet")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a=e+" ";switch(n){case"ss":return a+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return t?"jedna minuta":"jedne minute";case"mm":return a+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return a+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return a+=1===e?"dan":"dana";case"MM":return a+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return a+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}e.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_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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čer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ca",{months:{standalone:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de març_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ç_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à 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í %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d 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|è|a)/,ordinal:function(e,t){var n=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"è";return"w"!==t&&"W"!==t||(n="a"),e+n},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),n="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),a=[/^led/i,/^úno/i,/^bře/i,/^dub/i,/^kvě/i,/^(čvn|červen$|června)/i,/^(čvc|červenec|července)/i,/^srp/i,/^zář/i,/^říj/i,/^lis/i,/^pro/i],r=/^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;function s(e){return e>1&&e<5&&1!=~~(e/10)}function i(e,t,n,a){var r=e+" ";switch(n){case"s":return t||a?"pár sekund":"pár sekundami";case"ss":return t||a?r+(s(e)?"sekundy":"sekund"):r+"sekundami";case"m":return t?"minuta":a?"minutu":"minutou";case"mm":return t||a?r+(s(e)?"minuty":"minut"):r+"minutami";case"h":return t?"hodina":a?"hodinu":"hodinou";case"hh":return t||a?r+(s(e)?"hodiny":"hodin"):r+"hodinami";case"d":return t||a?"den":"dnem";case"dd":return t||a?r+(s(e)?"dny":"dní"):r+"dny";case"M":return t||a?"měsíc":"měsícem";case"MM":return t||a?r+(s(e)?"měsíce":"měsíců"):r+"měsíci";case"y":return t||a?"rok":"rokem";case"yy":return t||a?r+(s(e)?"roky":"let"):r+"lety"}}e.defineLocale("cs",{months:t,monthsShort:n,monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_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ítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:i,ss:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(e){return e+(/сехет$/i.exec(e)?"рен":/ҫул$/i.exec(e)?"тан":"ран")},past:"%s каялла",s:"пӗр-ик ҫеккунт",ss:"%d ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},dayOfMonthOrdinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 ôl",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 t="";return e>20?t=40===e||50===e||60===e||80===e||100===e?"fed":"ain":e>0&&(t=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][e]),e+t},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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øndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".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å dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få 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åned",MM:"%d måneder",y:"et år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_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:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Feb._März_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:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.defineLocale("de-ch",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_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:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],n=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"];e.defineLocale("dv",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".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:/މކ|މފ/,isPM:function(e){return"މފ"===e},meridiem:function(e,t,n){return e<12?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",ss:"d% ސިކުންތު",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:7,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(e,t){return e?"string"==typeof t&&/D/.test(t.substring(0,t.indexOf("MMMM")))?this._monthsGenitiveEl[e.month()]:this._monthsNominativeEl[e.month()]:this._monthsNominativeEl},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(e,t,n){return e>11?n?"μμ":"ΜΜ":n?"πμ":"ΠΜ"},isPM:function(e){return"μ"===(e+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/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:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(e,t){var n,a=this._calendarEl[e],r=t&&t.hours();return((n=a)instanceof Function||"[object Function]"===Object.prototype.toString.call(n))&&(a=a.apply(t)),a.replace("{}",r%12==1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",ss:"%d δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},dayOfMonthOrdinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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",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:"[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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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",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:"[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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_ĵa_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,t,n){return e>11?n?"p.t.m.":"P.T.M.":n?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"antaŭ %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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".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ñana 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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".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ñana 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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".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ñana 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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={s:["mõne sekundi","mõni sekund","paar sekundit"],ss:[e+"sekundi",e+"sekundit"],m:["ühe minuti","üks minut"],mm:[e+" minuti",e+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[e+" tunni",e+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[e+" kuu",e+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[e+" aasta",e+" aastat"]};return t?r[n][2]?r[n][2]:r[n][1]:a?r[n][0]:r[n][1]}e.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".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äna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:"%d päeva",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},n={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};e.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".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:/قبل از ظهر|بعد از ظهر/,isPM:function(e){return/بعد از ظهر/.test(e)},meridiem:function(e,t,n){return e<12?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چند ثانیه",ss:"ثانیه d%",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(e){return e.replace(/[۰-۹]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},dayOfMonthOrdinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),n=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",t[7],t[8],t[9]];function a(e,a,r,s){var i="";switch(r){case"s":return s?"muutaman sekunnin":"muutama sekunti";case"ss":return s?"sekunnin":"sekuntia";case"m":return s?"minuutin":"minuutti";case"mm":i=s?"minuutin":"minuuttia";break;case"h":return s?"tunnin":"tunti";case"hh":i=s?"tunnin":"tuntia";break;case"d":return s?"päivän":"päivä";case"dd":i=s?"päivän":"päivää";break;case"M":return s?"kuukauden":"kuukausi";case"MM":i=s?"kuukauden":"kuukautta";break;case"y":return s?"vuoden":"vuosi";case"yy":i=s?"vuoden":"vuotta"}return i=function(e,a){return e<10?a?n[e]:t[e]:e}(e,s)+" "+i}e.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_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änään] [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äästä",past:"%s sitten",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fo",{months:"januar_februar_mars_apríl_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ánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_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:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaður",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".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’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] 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,t){switch(t){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".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’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] 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,t){switch(t){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")}}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".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’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] 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,t){switch(t){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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),n="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");e.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)?n[e.month()]:t[e.month()]:t},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:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien minút",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||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ga",{months:["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Méitheamh","Iúil","Lúnasa","Meán Fómhair","Deaireadh Fómhair","Samhain","Nollaig"],monthsShort:["Eaná","Feab","Márt","Aibr","Beal","Méit","Iúil","Lúna","Meán","Deai","Samh","Noll"],monthsParseExact:!0,weekdays:["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Satharn"],weekdaysShort:["Dom","Lua","Mái","Céa","Déa","hAo","Sat"],weekdaysMin:["Do","Lu","Má","Ce","Dé","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árach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inné aig] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s ó shin",s:"cúpla soicind",ss:"%d soicind",m:"nóiméad",mm:"%d nóiméad",h:"uair an chloig",hh:"%d uair an chloig",d:"lá",dd:"%d lá",M:"mí",MM:"%d mí",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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("gd",{months:["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd"],monthsShort:["Faoi","Gear","Màrt","Gibl","Cèit","Ògmh","Iuch","Lùn","Sult","Dàmh","Samh","Dùbh"],monthsParseExact:!0,weekdays:["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],weekdaysShort:["Did","Dil","Dim","Dic","Dia","Dih","Dis"],weekdaysMin:["Dò","Lu","Mà","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àireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-dè 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ìos",MM:"%d mìosan",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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),weekdaysShort:"dom._lun._mar._mér._xov._ven._sáb.".split("_"),weekdaysMin:"do_lu_ma_mé_xo_ve_sá".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()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"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ía",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}e.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:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(e,t){switch(t){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,t){return 12===e&&(e=0),"rati"===t?e<4?e:e+12:"sokalli"===t?e:"donparam"===t?e>12?e:e+12:"sanje"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"rati":e<12?"sokalli":e<16?"donparam":e<20?"sanje":"rati"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"૧",2:"૨",3:"૩",4:"૪",5:"૫",6:"૬",7:"૭",8:"૮",9:"૯",0:"૦"},n={"૧":"1","૨":"2","૩":"3","૪":"4","૫":"5","૬":"6","૭":"7","૮":"8","૯":"9","૦":"0"};e.defineLocale("gu",{months:"જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર".split("_"),monthsShort:"જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.".split("_"),monthsParseExact:!0,weekdays:"રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર".split("_"),weekdaysShort:"રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ".split("_"),weekdaysMin:"ર_સો_મં_બુ_ગુ_શુ_શ".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:"[આજ] LT",nextDay:"[કાલે] LT",nextWeek:"dddd, LT",lastDay:"[ગઇકાલે] LT",lastWeek:"[પાછલા] dddd, LT",sameElse:"L"},relativeTime:{future:"%s મા",past:"%s પેહલા",s:"અમુક પળો",ss:"%d સેકંડ",m:"એક મિનિટ",mm:"%d મિનિટ",h:"એક કલાક",hh:"%d કલાક",d:"એક દિવસ",dd:"%d દિવસ",M:"એક મહિનો",MM:"%d મહિનો",y:"એક વર્ષ",yy:"%d વર્ષ"},preparse:function(e){return e.replace(/[૧૨૩૪૫૬૭૮૯૦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/રાત|બપોર|સવાર|સાંજ/,meridiemHour:function(e,t){return 12===e&&(e=0),"રાત"===t?e<4?e:e+12:"સવાર"===t?e:"બપોર"===t?e>=10?e:e+12:"સાંજ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"રાત":e<10?"સવાર":e<17?"બપોર":e<20?"સાંજ":"રાત"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".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",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",ss:"%d שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(e){return 2===e?"שעתיים":e+" שעות"},d:"יום",dd:function(e){return 2===e?"יומיים":e+" ימים"},M:"חודש",MM:function(e){return 2===e?"חודשיים":e+" חודשים"},y:"שנה",yy:function(e){return 2===e?"שנתיים":e%10==0&&10!==e?e+" שנה":e+" שנים"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM:function(e){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(e)},meridiem:function(e,t,n){return e<5?"לפנות בוקר":e<10?"בבוקר":e<12?n?'לפנה"צ':"לפני הצהריים":e<18?n?'אחה"צ':"אחרי הצהריים":"בערב"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};e.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".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:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",ss:"%d सेकंड",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात"===t?e<4?e:e+12:"सुबह"===t?e:"दोपहर"===t?e>=10?e:e+12:"शाम"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"रात":e<10?"सुबह":e<17?"दोपहर":e<20?"शाम":"रात"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a=e+" ";switch(n){case"ss":return a+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return t?"jedna minuta":"jedne minute";case"mm":return a+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return a+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return a+=1===e?"dan":"dana";case"MM":return a+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return a+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}e.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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čer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");function n(e,t,n,a){var r=e;switch(n){case"s":return a||t?"néhány másodperc":"néhány másodperce";case"ss":return r+(a||t)?" másodperc":" másodperce";case"m":return"egy"+(a||t?" perc":" perce");case"mm":return r+(a||t?" perc":" perce");case"h":return"egy"+(a||t?" óra":" órája");case"hh":return r+(a||t?" óra":" órája");case"d":return"egy"+(a||t?" nap":" napja");case"dd":return r+(a||t?" nap":" napja");case"M":return"egy"+(a||t?" hónap":" hónapja");case"MM":return r+(a||t?" hónap":" hónapja");case"y":return"egy"+(a||t?" év":" éve");case"yy":return r+(a||t?" év":" éve")}return""}function a(e){return(e?"":"[múlt] ")+"["+t[this.day()]+"] LT[-kor]"}e.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_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,t,n){return e<12?!0===n?"de":"DE":!0===n?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return a.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return a.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:n,ss:n,m:n,mm:n,h:n,hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("hy-am",{months:{format:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),standalone:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")},monthsShort:"հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),weekdays:"կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".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:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",ss:"%d վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(e){return/^(ցերեկվա|երեկոյան)$/.test(e)},meridiem:function(e){return e<4?"գիշերվա":e<12?"առավոտվա":e<17?"ցերեկվա":"երեկոյան"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(e,t){switch(t){case"DDD":case"w":case"W":case"DDDo":return 1===e?e+"-ին":e+"-րդ";default:return e}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"pagi"===t?e:"siang"===t?e>=11?e:e+12:"sore"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e){return e%100==11||e%10!=1}function n(e,n,a,r){var s=e+" ";switch(a){case"s":return n||r?"nokkrar sekúndur":"nokkrum sekúndum";case"ss":return t(e)?s+(n||r?"sekúndur":"sekúndum"):s+"sekúnda";case"m":return n?"mínúta":"mínútu";case"mm":return t(e)?s+(n||r?"mínútur":"mínútum"):n?s+"mínúta":s+"mínútu";case"hh":return t(e)?s+(n||r?"klukkustundir":"klukkustundum"):s+"klukkustund";case"d":return n?"dagur":r?"dag":"degi";case"dd":return t(e)?n?s+"dagar":s+(r?"daga":"dögum"):n?s+"dagur":s+(r?"dag":"degi");case"M":return n?"mánuður":r?"mánuð":"mánuði";case"MM":return t(e)?n?s+"mánuðir":s+(r?"mánuði":"mánuðum"):n?s+"mánuður":s+(r?"mánuð":"mánuði");case"y":return n||r?"ár":"ári";case"yy":return t(e)?s+(n||r?"ár":"árum"):s+(n||r?"ár":"ári")}}e.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_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:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:n,ss:n,m:n,mm:n,h:"klukkustund",hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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ì_martedì_mercoledì_giovedì_venerdì_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}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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ì_martedì_mercoledì_giovedì_venerdì_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}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ja",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiemParse:/午前|午後/i,isPM:function(e){return"午後"===e},meridiem:function(e,t,n){return e<12?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(e){return e.week()<this.week()?"[来週]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(e){return this.week()<e.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"enjing"===t?e:"siyang"===t?e>=11?e:e+12:"sonten"===t||"ndalu"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ka",{months:{standalone:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),format:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".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:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(e){return/(წამი|წუთი|საათი|წელი)/.test(e)?e.replace(/ი$/,"ში"):e+"ში"},past:function(e){return/(წამი|წუთი|საათი|დღე|თვე)/.test(e)?e.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(e)?e.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",ss:"%d წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(e){return 0===e?e:1===e?e+"-ლი":e<20||e<=100&&e%20==0||e%100==0?"მე-"+e:e+"-ე"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"};e.defineLocale("kk",{months:"қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),monthsShort:"қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),weekdays:"жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),weekdaysShort:"жек_дүй_сей_сәр_бей_жұм_сен".split("_"),weekdaysMin:"жк_дй_сй_ср_бй_жм_сн".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:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",ss:"%d секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(e){return e+(t[e]||t[e%10]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"១",2:"២",3:"៣",4:"៤",5:"៥",6:"៦",7:"៧",8:"៨",9:"៩",0:"០"},n={"១":"1","២":"2","៣":"3","៤":"4","៥":"5","៦":"6","៧":"7","៨":"8","៩":"9","០":"0"};e.defineLocale("km",{months:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysMin:"អា_ច_អ_ព_ព្រ_សុ_ស".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:/ព្រឹក|ល្ងាច/,isPM:function(e){return"ល្ងាច"===e},meridiem:function(e,t,n){return e<12?"ព្រឹក":"ល្ងាច"},calendar:{sameDay:"[ថ្ងៃនេះ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",ss:"%d វិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},dayOfMonthOrdinalParse:/ទី\d{1,2}/,ordinal:"ទី%d",preparse:function(e){return e.replace(/[១២៣៤៥៦៧៨៩០]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"೧",2:"೨",3:"೩",4:"೪",5:"೫",6:"೬",7:"೭",8:"೮",9:"೯",0:"೦"},n={"೧":"1","೨":"2","೩":"3","೪":"4","೫":"5","೬":"6","೭":"7","೮":"8","೯":"9","೦":"0"};e.defineLocale("kn",{months:"ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),monthsShort:"ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),monthsParseExact:!0,weekdays:"ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),weekdaysShort:"ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),weekdaysMin:"ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".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:"[ಇಂದು] LT",nextDay:"[ನಾಳೆ] LT",nextWeek:"dddd, LT",lastDay:"[ನಿನ್ನೆ] LT",lastWeek:"[ಕೊನೆಯ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ನಂತರ",past:"%s ಹಿಂದೆ",s:"ಕೆಲವು ಕ್ಷಣಗಳು",ss:"%d ಸೆಕೆಂಡುಗಳು",m:"ಒಂದು ನಿಮಿಷ",mm:"%d ನಿಮಿಷ",h:"ಒಂದು ಗಂಟೆ",hh:"%d ಗಂಟೆ",d:"ಒಂದು ದಿನ",dd:"%d ದಿನ",M:"ಒಂದು ತಿಂಗಳು",MM:"%d ತಿಂಗಳು",y:"ಒಂದು ವರ್ಷ",yy:"%d ವರ್ಷ"},preparse:function(e){return e.replace(/[೧೨೩೪೫೬೭೮೯೦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ರಾತ್ರಿ"===t?e<4?e:e+12:"ಬೆಳಿಗ್ಗೆ"===t?e:"ಮಧ್ಯಾಹ್ನ"===t?e>=10?e:e+12:"ಸಂಜೆ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"ರಾತ್ರಿ":e<10?"ಬೆಳಿಗ್ಗೆ":e<17?"ಮಧ್ಯಾಹ್ನ":e<20?"ಸಂಜೆ":"ರಾತ್ರಿ"},dayOfMonthOrdinalParse:/\d{1,2}(ನೇ)/,ordinal:function(e){return e+"ನೇ"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),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일 dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"일";case"M":return e+"월";case"w":case"W":return e+"주";default:return e}},meridiemParse:/오전|오후/,isPM:function(e){return"오후"===e},meridiem:function(e,t,n){return e<12?"오전":"오후"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=["کانونی دووەم","شوبات","ئازار","نیسان","ئایار","حوزەیران","تەمموز","ئاب","ئەیلوول","تشرینی یەكەم","تشرینی دووەم","كانونی یەکەم"];e.defineLocale("ku",{months:a,monthsShort:a,weekdays:"یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌".split("_"),weekdaysShort:"یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌".split("_"),weekdaysMin:"ی_د_س_چ_پ_ه_ش".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:/ئێواره‌|به‌یانی/,isPM:function(e){return/ئێواره‌/.test(e)},meridiem:function(e,t,n){return e<12?"به‌یانی":"ئێواره‌"},calendar:{sameDay:"[ئه‌مرۆ كاتژمێر] LT",nextDay:"[به‌یانی كاتژمێر] LT",nextWeek:"dddd [كاتژمێر] LT",lastDay:"[دوێنێ كاتژمێر] LT",lastWeek:"dddd [كاتژمێر] LT",sameElse:"L"},relativeTime:{future:"له‌ %s",past:"%s",s:"چه‌ند چركه‌یه‌ك",ss:"چركه‌ %d",m:"یه‌ك خوله‌ك",mm:"%d خوله‌ك",h:"یه‌ك كاتژمێر",hh:"%d كاتژمێر",d:"یه‌ك ڕۆژ",dd:"%d ڕۆژ",M:"یه‌ك مانگ",MM:"%d مانگ",y:"یه‌ك ساڵ",yy:"%d ساڵ"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={0:"-чү",1:"-чи",2:"-чи",3:"-чү",4:"-чү",5:"-чи",6:"-чы",7:"-чи",8:"-чи",9:"-чу",10:"-чу",20:"-чы",30:"-чу",40:"-чы",50:"-чү",60:"-чы",70:"-чи",80:"-чи",90:"-чу",100:"-чү"};e.defineLocale("ky",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),weekdays:"Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби".split("_"),weekdaysShort:"Жек_Дүй_Шей_Шар_Бей_Жум_Ише".split("_"),weekdaysMin:"Жк_Дй_Шй_Шр_Бй_Жм_Иш".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:"[Бүгүн саат] LT",nextDay:"[Эртең саат] LT",nextWeek:"dddd [саат] LT",lastDay:"[Кечээ саат] LT",lastWeek:"[Өткөн аптанын] dddd [күнү] [саат] LT",sameElse:"L"},relativeTime:{future:"%s ичинде",past:"%s мурун",s:"бирнече секунд",ss:"%d секунд",m:"бир мүнөт",mm:"%d мүнөт",h:"бир саат",hh:"%d саат",d:"бир күн",dd:"%d күн",M:"бир ай",MM:"%d ай",y:"бир жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(чи|чы|чү|чу)/,ordinal:function(e){return e+(t[e]||t[e%10]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={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 t?r[n][0]:r[n][1]}function n(e){if(e=parseInt(e,10),isNaN(e))return!1;if(e<0)return!0;if(e<10)return 4<=e&&e<=7;if(e<100){var t=e%10;return n(0===t?e/10:t)}if(e<1e4){for(;e>=10;)e/=10;return n(e)}return n(e/=1e3)}e.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_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éindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_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ëschter 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 n(e.substr(0,e.indexOf(" ")))?"a "+e:"an "+e},past:function(e){return n(e.substr(0,e.indexOf(" ")))?"viru "+e:"virun "+e},s:"e puer Sekonnen",ss:"%d Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d Méint",y:t,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("lo",{months:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),monthsShort:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),weekdays:"ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysShort:"ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysMin:"ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".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:/ຕອນເຊົ້າ|ຕອນແລງ/,isPM:function(e){return"ຕອນແລງ"===e},meridiem:function(e,t,n){return e<12?"ຕອນເຊົ້າ":"ຕອນແລງ"},calendar:{sameDay:"[ມື້ນີ້ເວລາ] LT",nextDay:"[ມື້ອື່ນເວລາ] LT",nextWeek:"[ວັນ]dddd[ໜ້າເວລາ] LT",lastDay:"[ມື້ວານນີ້ເວລາ] LT",lastWeek:"[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",sameElse:"L"},relativeTime:{future:"ອີກ %s",past:"%sຜ່ານມາ",s:"ບໍ່ເທົ່າໃດວິນາທີ",ss:"%d ວິນາທີ",m:"1 ນາທີ",mm:"%d ນາທີ",h:"1 ຊົ່ວໂມງ",hh:"%d ຊົ່ວໂມງ",d:"1 ມື້",dd:"%d ມື້",M:"1 ເດືອນ",MM:"%d ເດືອນ",y:"1 ປີ",yy:"%d ປີ"},dayOfMonthOrdinalParse:/(ທີ່)\d{1,2}/,ordinal:function(e){return"ທີ່"+e}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={ss:"sekundė_sekundžių_sekundes",m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"};function n(e,t,n,a){return t?r(n)[0]:a?r(n)[1]:r(n)[2]}function a(e){return e%10==0||e>10&&e<20}function r(e){return t[e].split("_")}function s(e,t,s,i){var o=e+" ";return 1===e?o+n(0,t,s[0],i):t?o+(a(e)?r(s)[1]:r(s)[0]):i?o+r(s)[1]:o+(a(e)?r(s)[1]:r(s)[2])}e.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_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į_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".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:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:function(e,t,n,a){return t?"kelios sekundės":a?"kelių sekundžių":"kelias sekundes"},ss:s,m:n,mm:s,h:n,hh:s,d:n,dd:s,M:n,MM:s,y:n,yy:s},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(e){return e+"-oji"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={ss:"sekundes_sekundēm_sekunde_sekundes".split("_"),m:"minūtes_minūtēm_minūte_minūtes".split("_"),mm:"minūtes_minūtēm_minūte_minūtes".split("_"),h:"stundas_stundām_stunda_stundas".split("_"),hh:"stundas_stundām_stunda_stundas".split("_"),d:"dienas_dienām_diena_dienas".split("_"),dd:"dienas_dienām_diena_dienas".split("_"),M:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),MM:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function n(e,t,n){return n?t%10==1&&t%100!=11?e[2]:e[3]:t%10==1&&t%100!=11?e[0]:e[1]}function a(e,a,r){return e+" "+n(t[r],e,a)}function r(e,a,r){return n(t[r],e,a)}e.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_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:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"pēc %s",past:"pirms %s",s:function(e,t){return t?"dažas sekundes":"dažām sekundēm"},ss:a,m:r,mm:a,h:r,hh:a,d:r,dd:a,M:r,MM:a,y:r,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={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,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,n,a){var r=t.words[a];return 1===a.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}};e.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_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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če u] LT",lastWeek:function(){return["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("mi",{months:"Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_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ātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),weekdaysShort:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),weekdaysMin:"Ta_Ma_Tū_We_Tāi_Pa_Hā".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ēkona ruarua",ss:"%d hēkona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".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:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,n=e%100;return 0===e?e+"-ев":0===n?e+"-ен":n>10&&n<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),monthsParseExact:!0,weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".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:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",ss:"%d സെക്കൻഡ്",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,meridiemHour:function(e,t){return 12===e&&(e=0),"രാത്രി"===t&&e>=4||"ഉച്ച കഴിഞ്ഞ്"===t||"വൈകുന്നേരം"===t?e+12:e},meridiem:function(e,t,n){return e<4?"രാത്രി":e<12?"രാവിലെ":e<17?"ഉച്ച കഴിഞ്ഞ്":e<20?"വൈകുന്നേരം":"രാത്രി"}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){switch(n){case"s":return t?"хэдхэн секунд":"хэдхэн секундын";case"ss":return e+(t?" секунд":" секундын");case"m":case"mm":return e+(t?" минут":" минутын");case"h":case"hh":return e+(t?" цаг":" цагийн");case"d":case"dd":return e+(t?" өдөр":" өдрийн");case"M":case"MM":return e+(t?" сар":" сарын");case"y":case"yy":return e+(t?" жил":" жилийн");default:return e}}e.defineLocale("mn",{months:"Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар".split("_"),monthsShort:"1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар".split("_"),monthsParseExact:!0,weekdays:"Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба".split("_"),weekdaysShort:"Ням_Дав_Мяг_Лха_Пүр_Баа_Бям".split("_"),weekdaysMin:"Ня_Да_Мя_Лх_Пү_Ба_Бя".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY оны MMMMын D",LLL:"YYYY оны MMMMын D HH:mm",LLLL:"dddd, YYYY оны MMMMын D HH:mm"},meridiemParse:/ҮӨ|ҮХ/i,isPM:function(e){return"ҮХ"===e},meridiem:function(e,t,n){return e<12?"ҮӨ":"ҮХ"},calendar:{sameDay:"[Өнөөдөр] LT",nextDay:"[Маргааш] LT",nextWeek:"[Ирэх] dddd LT",lastDay:"[Өчигдөр] LT",lastWeek:"[Өнгөрсөн] dddd LT",sameElse:"L"},relativeTime:{future:"%s дараа",past:"%s өмнө",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2} өдөр/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+" өдөр";default:return e}}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};function a(e,t,n,a){var r="";if(t)switch(n){case"s":r="काही सेकंद";break;case"ss":r="%d सेकंद";break;case"m":r="एक मिनिट";break;case"mm":r="%d मिनिटे";break;case"h":r="एक तास";break;case"hh":r="%d तास";break;case"d":r="एक दिवस";break;case"dd":r="%d दिवस";break;case"M":r="एक महिना";break;case"MM":r="%d महिने";break;case"y":r="एक वर्ष";break;case"yy":r="%d वर्षे"}else switch(n){case"s":r="काही सेकंदां";break;case"ss":r="%d सेकंदां";break;case"m":r="एका मिनिटा";break;case"mm":r="%d मिनिटां";break;case"h":r="एका तासा";break;case"hh":r="%d तासां";break;case"d":r="एका दिवसा";break;case"dd":r="%d दिवसां";break;case"M":r="एका महिन्या";break;case"MM":r="%d महिन्यां";break;case"y":r="एका वर्षा";break;case"yy":r="%d वर्षां"}return r.replace(/%d/i,e)}e.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".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:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात्री"===t?e<4?e:e+12:"सकाळी"===t?e:"दुपारी"===t?e>=10?e:e+12:"सायंकाळी"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"रात्री":e<10?"सकाळी":e<17?"दुपारी":e<20?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),weekdays:"Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),weekdaysShort:"Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),weekdaysMin:"Ħa_Tn_Tl_Er_Ħa_Ġi_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ħada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-bieraħ fil-]LT",lastWeek:"dddd [li għadda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f’ %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"siegħa",hh:"%d siegħat",d:"ġurnata",dd:"%d ġranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},n={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};e.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".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:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",ss:"%d စက္ကန့်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(e){return e.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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øndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".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år 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åned",MM:"%d måneder",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};e.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),monthsParseExact:!0,weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),weekdaysParseExact:!0,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 बजे"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(e,t){return 12===e&&(e=0),"राति"===t?e<4?e:e+12:"बिहान"===t?e:"दिउँसो"===t?e>=10?e:e+12:"साँझ"===t?e+12:void 0},meridiem:function(e,t,n){return e<3?"राति":e<12?"बिहान":e<16?"दिउँसो":e<20?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",ss:"%d सेकेण्ड",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^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],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,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:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^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],r=/^(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;e.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)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,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:a,longMonthsParse:a,shortMonthsParse:a,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:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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åndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".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år klokka] LT",lastWeek:"[Føregåande] 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ånad",MM:"%d månader",y:"eit år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"੧",2:"੨",3:"੩",4:"੪",5:"੫",6:"੬",7:"੭",8:"੮",9:"੯",0:"੦"},n={"੧":"1","੨":"2","੩":"3","੪":"4","੫":"5","੬":"6","੭":"7","੮":"8","੯":"9","੦":"0"};e.defineLocale("pa-in",{months:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),monthsShort:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),weekdays:"ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ".split("_"),weekdaysShort:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),weekdaysMin:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".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:"[ਅਜ] LT",nextDay:"[ਕਲ] LT",nextWeek:"[ਅਗਲਾ] dddd, LT",lastDay:"[ਕਲ] LT",lastWeek:"[ਪਿਛਲੇ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ਵਿੱਚ",past:"%s ਪਿਛਲੇ",s:"ਕੁਝ ਸਕਿੰਟ",ss:"%d ਸਕਿੰਟ",m:"ਇਕ ਮਿੰਟ",mm:"%d ਮਿੰਟ",h:"ਇੱਕ ਘੰਟਾ",hh:"%d ਘੰਟੇ",d:"ਇੱਕ ਦਿਨ",dd:"%d ਦਿਨ",M:"ਇੱਕ ਮਹੀਨਾ",MM:"%d ਮਹੀਨੇ",y:"ਇੱਕ ਸਾਲ",yy:"%d ਸਾਲ"},preparse:function(e){return e.replace(/[੧੨੩੪੫੬੭੮੯੦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ਰਾਤ"===t?e<4?e:e+12:"ਸਵੇਰ"===t?e:"ਦੁਪਹਿਰ"===t?e>=10?e:e+12:"ਸ਼ਾਮ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"ਰਾਤ":e<10?"ਸਵੇਰ":e<17?"ਦੁਪਹਿਰ":e<20?"ਸ਼ਾਮ":"ਰਾਤ"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),n="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");function a(e){return e%10<5&&e%10>1&&~~(e/10)%10!=1}function r(e,t,n){var r=e+" ";switch(n){case"ss":return r+(a(e)?"sekundy":"sekund");case"m":return t?"minuta":"minutę";case"mm":return r+(a(e)?"minuty":"minut");case"h":return t?"godzina":"godzinę";case"hh":return r+(a(e)?"godziny":"godzin");case"MM":return r+(a(e)?"miesiące":"miesięcy");case"yy":return r+(a(e)?"lata":"lat")}}e.defineLocale("pl",{months:function(e,a){return e?""===a?"("+n[e.month()]+"|"+t[e.month()]+")":/D MMMM/.test(a)?n[e.month()]:t[e.month()]:t},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_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ś o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:r,m:r,mm:r,h:r,hh:r,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:r,y:"rok",yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("pt",{months:"Janeiro_Fevereiro_Março_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ça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".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 às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %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ês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("pt-br",{months:"Janeiro_Fevereiro_Março_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ça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".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 [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"poucos 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ês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº"})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a=" ";return(e%100>=20||e>=100&&e%100==0)&&(a=" de "),e+a+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"}[n]}e.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ă_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".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âine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",ss:t,m:"un minut",mm:t,h:"o oră",hh:t,d:"o zi",dd:t,M:"o lună",MM:t,y:"un an",yy:t},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a,r;return"m"===n?t?"минута":"минуту":e+" "+(a=+e,r={ss:t?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:t?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}var n=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i];e.defineLocale("ru",{months:{format:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),standalone:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_")},monthsShort:{format:"янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.".split("_"),standalone:"янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.".split("_")},weekdays:{standalone:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),format:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:n,longMonthsParse:n,shortMonthsParse:n,monthsRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsShortRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsStrictRegex:/^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,monthsShortStrictRegex:/^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,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:"[Сегодня, в] LT",nextDay:"[Завтра, в] LT",lastDay:"[Вчера, в] LT",nextWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В следующее] dddd, [в] LT";case 1:case 2:case 4:return"[В следующий] dddd, [в] LT";case 3:case 5:case 6:return"[В следующую] dddd, [в] LT"}},lastWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd, [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd, [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd, [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",ss:t,m:t,mm:t,h:"час",hh:t,d:"день",dd:t,M:"месяц",MM:t,y:"год",yy:t},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(e){return/^(дня|вечера)$/.test(e)},meridiem:function(e,t,n){return e<4?"ночи":e<12?"утра":e<17?"дня":"вечера"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":return e+"-й";case"D":return e+"-го";case"w":case"W":return e+"-я";default:return e}},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t=["جنوري","فيبروري","مارچ","اپريل","مئي","جون","جولاءِ","آگسٽ","سيپٽمبر","آڪٽوبر","نومبر","ڊسمبر"],n=["آچر","سومر","اڱارو","اربع","خميس","جمع","ڇنڇر"];e.defineLocale("sd",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,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:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return e<12?"صبح":"شام"},calendar:{sameDay:"[اڄ] LT",nextDay:"[سڀاڻي] LT",nextWeek:"dddd [اڳين هفتي تي] LT",lastDay:"[ڪالهه] LT",lastWeek:"[گزريل هفتي] dddd [تي] LT",sameElse:"L"},relativeTime:{future:"%s پوء",past:"%s اڳ",s:"چند سيڪنڊ",ss:"%d سيڪنڊ",m:"هڪ منٽ",mm:"%d منٽ",h:"هڪ ڪلاڪ",hh:"%d ڪلاڪ",d:"هڪ ڏينهن",dd:"%d ڏينهن",M:"هڪ مهينو",MM:"%d مهينا",y:"هڪ سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("se",{months:"ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),monthsShort:"ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),weekdays:"sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),weekdaysShort:"sotn_vuos_maŋ_gask_duor_bear_láv".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žes",past:"maŋit %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ánnu",MM:"%d mánut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("si",{months:"ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),monthsShort:"ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),weekdays:"ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),weekdaysShort:"ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන".split("_"),weekdaysMin:"ඉ_ස_අ_බ_බ්‍ර_සි_සෙ".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 [වැනි] dddd, a h:mm:ss"},calendar:{sameDay:"[අද] LT[ට]",nextDay:"[හෙට] LT[ට]",nextWeek:"dddd LT[ට]",lastDay:"[ඊයේ] LT[ට]",lastWeek:"[පසුගිය] dddd LT[ට]",sameElse:"L"},relativeTime:{future:"%sකින්",past:"%sකට පෙර",s:"තත්පර කිහිපය",ss:"තත්පර %d",m:"මිනිත්තුව",mm:"මිනිත්තු %d",h:"පැය",hh:"පැය %d",d:"දිනය",dd:"දින %d",M:"මාසය",MM:"මාස %d",y:"වසර",yy:"වසර %d"},dayOfMonthOrdinalParse:/\d{1,2} වැනි/,ordinal:function(e){return e+" වැනි"},meridiemParse:/පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,isPM:function(e){return"ප.ව."===e||"පස් වරු"===e},meridiem:function(e,t,n){return e>11?n?"ප.ව.":"පස් වරු":n?"පෙ.ව.":"පෙර වරු"}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),n="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");function a(e){return e>1&&e<5}function r(e,t,n,r){var s=e+" ";switch(n){case"s":return t||r?"pár sekúnd":"pár sekundami";case"ss":return t||r?s+(a(e)?"sekundy":"sekúnd"):s+"sekundami";case"m":return t?"minúta":r?"minútu":"minútou";case"mm":return t||r?s+(a(e)?"minúty":"minút"):s+"minútami";case"h":return t?"hodina":r?"hodinu":"hodinou";case"hh":return t||r?s+(a(e)?"hodiny":"hodín"):s+"hodinami";case"d":return t||r?"deň":"dňom";case"dd":return t||r?s+(a(e)?"dni":"dní"):s+"dňami";case"M":return t||r?"mesiac":"mesiacom";case"MM":return t||r?s+(a(e)?"mesiace":"mesiacov"):s+"mesiacmi";case"y":return t||r?"rok":"rokom";case"yy":return t||r?s+(a(e)?"roky":"rokov"):s+"rokmi"}}e.defineLocale("sk",{months:t,monthsShort:n,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_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ľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:r,ss:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r=e+" ";switch(n){case"s":return t||a?"nekaj sekund":"nekaj sekundami";case"ss":return r+=1===e?t?"sekundo":"sekundi":2===e?t||a?"sekundi":"sekundah":e<5?t||a?"sekunde":"sekundah":"sekund";case"m":return t?"ena minuta":"eno minuto";case"mm":return r+=1===e?t?"minuta":"minuto":2===e?t||a?"minuti":"minutama":e<5?t||a?"minute":"minutami":t||a?"minut":"minutami";case"h":return t?"ena ura":"eno uro";case"hh":return r+=1===e?t?"ura":"uro":2===e?t||a?"uri":"urama":e<5?t||a?"ure":"urami":t||a?"ur":"urami";case"d":return t||a?"en dan":"enim dnem";case"dd":return r+=1===e?t||a?"dan":"dnem":2===e?t||a?"dni":"dnevoma":t||a?"dni":"dnevi";case"M":return t||a?"en mesec":"enim mesecem";case"MM":return r+=1===e?t||a?"mesec":"mesecem":2===e?t||a?"meseca":"mesecema":e<5?t||a?"mesece":"meseci":t||a?"mesecev":"meseci";case"y":return t||a?"eno leto":"enim letom";case"yy":return r+=1===e?t||a?"leto":"letom":2===e?t||a?"leti":"letoma":e<5?t||a?"leta":"leti":t||a?"let":"leti"}}e.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_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_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čeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(e){return"M"===e.charAt(0)},meridiem:function(e,t,n){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ë] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",ss:"%d sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={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,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,n,a){var r=t.words[a];return 1===a.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}};e.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_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_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če u] LT",lastWeek:function(){return["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={words:{ss:["секунда","секунде","секунди"],m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,n,a){var r=t.words[a];return 1===a.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}};e.defineLocale("sr-cyrl",{months:"јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),monthsShort:"јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),monthsParseExact:!0,weekdays:"недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),weekdaysShort:"нед._пон._уто._сре._чет._пет._суб.".split("_"),weekdaysMin:"не_по_ут_ср_че_пе_су".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:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){return["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"дан",dd:t.translate,M:"месец",MM:t.translate,y:"годину",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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,t,n){return e<11?"ekuseni":e<15?"emini":e<19?"entsambama":"ebusuku"},meridiemHour:function(e,t){return 12===e&&(e=0),"ekuseni"===t?e:"emini"===t?e>=11?e:e+12:"entsambama"===t||"ebusuku"===t?0===e?0:e+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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öndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".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år] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några 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ånad",MM:"%d månader",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}(e|a)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"e":1===t||2===t?"a":"e")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},n={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"};e.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".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:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",ss:"%d விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},dayOfMonthOrdinalParse:/\d{1,2}வது/,ordinal:function(e){return e+"வது"},preparse:function(e){return e.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(e,t,n){return e<2?" யாமம்":e<6?" வைகறை":e<10?" காலை":e<14?" நண்பகல்":e<18?" எற்பாடு":e<22?" மாலை":" யாமம்"},meridiemHour:function(e,t){return 12===e&&(e=0),"யாமம்"===t?e<2?e:e+12:"வைகறை"===t||"காலை"===t||"நண்பகல்"===t&&e>=10?e:e+12},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),monthsParseExact:!0,weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".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:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",ss:"%d సెకన్లు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},dayOfMonthOrdinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(e,t){return 12===e&&(e=0),"రాత్రి"===t?e<4?e:e+12:"ఉదయం"===t?e:"మధ్యాహ్నం"===t?e>=10?e:e+12:"సాయంత్రం"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"రాత్రి":e<10?"ఉదయం":e<17?"మధ్యాహ్నం":e<20?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_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 t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={0:"-ум",1:"-ум",2:"-юм",3:"-юм",4:"-ум",5:"-ум",6:"-ум",7:"-ум",8:"-ум",9:"-ум",10:"-ум",12:"-ум",13:"-ум",20:"-ум",30:"-юм",40:"-ум",50:"-ум",60:"-ум",70:"-ум",80:"-ум",90:"-ум",100:"-ум"};e.defineLocale("tg",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),weekdaysShort:"яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),weekdaysMin:"яш_дш_сш_чш_пш_ҷм_шб".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:"[Имрӯз соати] LT",nextDay:"[Пагоҳ соати] LT",lastDay:"[Дирӯз соати] LT",nextWeek:"dddd[и] [ҳафтаи оянда соати] LT",lastWeek:"dddd[и] [ҳафтаи гузашта соати] LT",sameElse:"L"},relativeTime:{future:"баъди %s",past:"%s пеш",s:"якчанд сония",m:"як дақиқа",mm:"%d дақиқа",h:"як соат",hh:"%d соат",d:"як рӯз",dd:"%d рӯз",M:"як моҳ",MM:"%d моҳ",y:"як сол",yy:"%d сол"},meridiemParse:/шаб|субҳ|рӯз|бегоҳ/,meridiemHour:function(e,t){return 12===e&&(e=0),"шаб"===t?e<4?e:e+12:"субҳ"===t?e:"рӯз"===t?e>=11?e:e+12:"бегоҳ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"шаб":e<11?"субҳ":e<16?"рӯз":e<19?"бегоҳ":"шаб"},dayOfMonthOrdinalParse:/\d{1,2}-(ум|юм)/,ordinal:function(e){return e+(t[e]||t[e%10]||t[e>=100?100:null])},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),monthsParseExact:!0,weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".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"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(e){return"หลังเที่ยง"===e},meridiem:function(e,t,n){return e<12?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",ss:"%d วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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:"%d 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}})}(n(0))},function(e,t,n){!function(e){"use strict";var t="pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function n(e,n,a,r){var s=function(e){var n=Math.floor(e%1e3/100),a=Math.floor(e%100/10),r=e%10,s="";return n>0&&(s+=t[n]+"vatlh"),a>0&&(s+=(""!==s?" ":"")+t[a]+"maH"),r>0&&(s+=(""!==s?" ":"")+t[r]),""===s?"pagh":s}(e);switch(a){case"ss":return s+" lup";case"mm":return s+" tup";case"hh":return s+" rep";case"dd":return s+" jaj";case"MM":return s+" jar";case"yy":return s+" DIS"}}e.defineLocale("tlh",{months:"tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),monthsShort:"jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".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’leS] LT",nextWeek:"LLL",lastDay:"[wa’Hu’] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:function(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"leS":-1!==e.indexOf("jar")?t.slice(0,-3)+"waQ":-1!==e.indexOf("DIS")?t.slice(0,-3)+"nem":t+" pIq"},past:function(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"Hu’":-1!==e.indexOf("jar")?t.slice(0,-3)+"wen":-1!==e.indexOf("DIS")?t.slice(0,-3)+"ben":t+" ret"},s:"puS lup",ss:n,m:"wa’ tup",mm:n,h:"wa’ rep",hh:n,d:"wa’ jaj",dd:n,M:"wa’ jar",MM:n,y:"wa’ DIS",yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};e.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_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ün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(e,n){switch(n){case"d":case"D":case"Do":case"DD":return e;default:if(0===e)return e+"'ıncı";var a=e%10;return e+(t[a]||t[e%100-a]||t[e>=100?100:null])}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n,a){var r={s:["viensas secunds","'iensas secunds"],ss:[e+" secunds",e+" secunds"],m:["'n míut","'iens míut"],mm:[e+" míuts",e+" míuts"],h:["'n þora","'iensa þora"],hh:[e+" þoras",e+" þoras"],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 a||t?r[n][0]:r[n][1]}e.defineLocale("tzl",{months:"Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),weekdaysShort:"Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),weekdaysMin:"Sú_Lú_Ma_Má_Xh_Vi_Sá".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,t,n){return e>11?n?"d'o":"D'O":n?"d'a":"D'A"},calendar:{sameDay:"[oxhi à] LT",nextDay:"[demà à] LT",nextWeek:"dddd [à] LT",lastDay:"[ieiri à] LT",lastWeek:"[sür el] dddd [lasteu à] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".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:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",ss:"%d ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".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ḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("ug-cn",{months:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),monthsShort:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),weekdays:"يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),weekdaysShort:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),weekdaysMin:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-يىلىM-ئاينىڭD-كۈنى",LLL:"YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",LLLL:"dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"},meridiemParse:/يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,meridiemHour:function(e,t){return 12===e&&(e=0),"يېرىم كېچە"===t||"سەھەر"===t||"چۈشتىن بۇرۇن"===t?e:"چۈشتىن كېيىن"===t||"كەچ"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,n){var a=100*e+t;return a<600?"يېرىم كېچە":a<900?"سەھەر":a<1130?"چۈشتىن بۇرۇن":a<1230?"چۈش":a<1800?"چۈشتىن كېيىن":"كەچ"},calendar:{sameDay:"[بۈگۈن سائەت] LT",nextDay:"[ئەتە سائەت] LT",nextWeek:"[كېلەركى] dddd [سائەت] LT",lastDay:"[تۆنۈگۈن] LT",lastWeek:"[ئالدىنقى] dddd [سائەت] LT",sameElse:"L"},relativeTime:{future:"%s كېيىن",past:"%s بۇرۇن",s:"نەچچە سېكونت",ss:"%d سېكونت",m:"بىر مىنۇت",mm:"%d مىنۇت",h:"بىر سائەت",hh:"%d سائەت",d:"بىر كۈن",dd:"%d كۈن",M:"بىر ئاي",MM:"%d ئاي",y:"بىر يىل",yy:"%d يىل"},dayOfMonthOrdinalParse:/\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"-كۈنى";case"w":case"W":return e+"-ھەپتە";default:return e}},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";function t(e,t,n){var a,r;return"m"===n?t?"хвилина":"хвилину":"h"===n?t?"година":"годину":e+" "+(a=+e,r={ss:t?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:t?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:t?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}function n(e){return function(){return e+"о"+(11===this.hours()?"б":"")+"] LT"}}e.defineLocale("uk",{months:{format:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),standalone:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")},monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:function(e,t){var n={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")};return!0===e?n.nominative.slice(1,7).concat(n.nominative.slice(0,1)):e?n[/(\[[ВвУу]\]) ?dddd/.test(t)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(t)?"genitive":"nominative"][e.day()]:n.nominative},weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".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:n("[Сьогодні "),nextDay:n("[Завтра "),lastDay:n("[Вчора "),nextWeek:n("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return n("[Минулої] dddd [").call(this);case 1:case 2:case 4:return n("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",ss:t,m:t,mm:t,h:"годину",hh:t,d:"день",dd:t,M:"місяць",MM:t,y:"рік",yy:t},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(e){return/^(дня|вечора)$/.test(e)},meridiem:function(e,t,n){return e<4?"ночі":e<12?"ранку":e<17?"дня":"вечора"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e+"-й";case"D":return e+"-го";default:return e}},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,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:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return e<12?"صبح":"شام"},calendar:{sameDay:"[آج بوقت] LT",nextDay:"[کل بوقت] LT",nextWeek:"dddd [بوقت] LT",lastDay:"[گذشتہ روز بوقت] LT",lastWeek:"[گذشتہ] dddd [بوقت] LT",sameElse:"L"},relativeTime:{future:"%s بعد",past:"%s قبل",s:"چند سیکنڈ",ss:"%d سیکنڈ",m:"ایک منٹ",mm:"%d منٹ",h:"ایک گھنٹہ",hh:"%d گھنٹے",d:"ایک دن",dd:"%d دن",M:"ایک ماہ",MM:"%d ماہ",y:"ایک سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".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:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",ss:"%d фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}(n(0))},function(e,t,n){!function(e){"use strict";e.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}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".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)},meridiem:function(e,t,n){return e<12?n?"sa":"SA":n?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] 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ôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",ss:"%d giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("x-pseudo",{months:"J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér".split("_"),monthsShort:"J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc".split("_"),monthsParseExact:!0,weekdays:"S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý".split("_"),weekdaysShort:"S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát".split("_"),weekdaysMin:"S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá".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~ódá~ý át] LT",nextDay:"[T~ómó~rró~w át] LT",nextWeek:"dddd [át] LT",lastDay:"[Ý~ést~érdá~ý át] LT",lastWeek:"[L~ást] dddd [át] LT",sameElse:"L"},relativeTime:{future:"í~ñ %s",past:"%s á~gó",s:"á ~féw ~sécó~ñds",ss:"%d s~écóñ~ds",m:"á ~míñ~úté",mm:"%d m~íñú~tés",h:"á~ñ hó~úr",hh:"%d h~óúrs",d:"á ~dáý",dd:"%d d~áýs",M:"á ~móñ~th",MM:"%d m~óñt~hs",y:"á ~ýéár",yy:"%d ý~éárs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("yo",{months:"Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),monthsShort:"Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),weekdays:"Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),weekdaysShort:"Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),weekdaysMin:"Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".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:"[Ònì ni] LT",nextDay:"[Ọ̀la ni] LT",nextWeek:"dddd [Ọsẹ̀ tón'bọ] [ni] LT",lastDay:"[Àna ni] LT",lastWeek:"dddd [Ọsẹ̀ tólọ́] [ni] LT",sameElse:"L"},relativeTime:{future:"ní %s",past:"%s kọjá",s:"ìsẹjú aayá die",ss:"aayá %d",m:"ìsẹjú kan",mm:"ìsẹjú %d",h:"wákati kan",hh:"wákati %d",d:"ọjọ́ kan",dd:"ọjọ́ %d",M:"osù kan",MM:"osù %d",y:"ọdún kan",yy:"ọdún %d"},dayOfMonthOrdinalParse:/ọjọ́\s\d{1,2}/,ordinal:"ọjọ́ %d",week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"下午"===t||"晚上"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,n){var a=100*e+t;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"周";default:return e}},relativeTime:{future:"%s内",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("zh-hk",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,n){var a=100*e+t;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n(0))},function(e,t,n){!function(e){"use strict";e.defineLocale("zh-tw",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,n){var a=100*e+t;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n(0))},function(e,t,n){window,e.exports=function(e){var t={};function n(a){if(t[a])return t[a].exports;var r=t[a]={i:a,l:!1,exports:{}};return e[a].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(a,r,function(t){return e[t]}.bind(null,r));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=3)}([function(e,t){e.exports=n(0)},function(e,t){e.exports=n(299)},function(e,t){e.exports=n(302)},function(e,t,n){"use strict";n.r(t);var a=n(0),r=n.n(a),s=n(1),i=n.n(s),o=n(2),l=new i.a,u=Object(o.getLocale)();[{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2020","Language-Team":"Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nenolp <enolp@softastur.org>, 2020\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2020\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2020","Language-Team":"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nPavel Borecki <pavel.borecki@gmail.com>, 2020\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekund"]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020","Language-Team":"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nHenrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\n"},msgstr:["Last-Translator: Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunder"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Christoph Wurst <christoph@winzerhof-wurst.at>, 2020","Language-Team":"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nChristoph Wurst <christoph@winzerhof-wurst.at>, 2020\n"},msgstr:["Last-Translator: Christoph Wurst <christoph@winzerhof-wurst.at>, 2020\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["Sekunden"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"GRMarksman <alexakos01@gmail.com>, 2020","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nGRMarksman <alexakos01@gmail.com>, 2020\n"},msgstr:["Last-Translator: GRMarksman <alexakos01@gmail.com>, 2020\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["δευτερόλεπτα"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020","Language-Team":"English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\n"},msgstr:["Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\nLanguage-Team: English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["seconds"]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Javier San Juan <javier.sj@trantor.es>, 2020","Language-Team":"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJavier San Juan <javier.sj@trantor.es>, 2020\n"},msgstr:["Last-Translator: Javier San Juan <javier.sj@trantor.es>, 2020\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAsier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\n"},msgstr:["Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundo"]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Yoplala <yoplala@pataraphe.net>, 2020","Language-Team":"French (https://www.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYoplala <yoplala@pataraphe.net>, 2020\n"},msgstr:["Last-Translator: Yoplala <yoplala@pataraphe.net>, 2020\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["secondes"]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020","Language-Team":"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2020\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Yaron Shahrabani <sh.yaron@gmail.com>, 2020","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYaron Shahrabani <sh.yaron@gmail.com>, 2020\n"},msgstr:["Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>, 2020\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["שניות"]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Balázs Meskó <meskobalazs@gmail.com>, 2020","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nBalázs Meskó <meskobalazs@gmail.com>, 2020\n"},msgstr:["Last-Translator: Balázs Meskó <meskobalazs@gmail.com>, 2020\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["másodperc"]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2020","Language-Team":"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nSveinn í Felli <sv1@fellsnet.is>, 2020\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2020\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekúndur"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2020","Language-Team":"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nRandom_R, 2020\n"},msgstr:["Last-Translator: Random_R, 2020\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["secondi"]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"YANO Tetsu <tetuyano+transi@gmail.com>, 2020","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYANO Tetsu <tetuyano+transi@gmail.com>, 2020\n"},msgstr:["Last-Translator: YANO Tetsu <tetuyano+transi@gmail.com>, 2020\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Moo, 2020","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMoo, 2020\n"},msgstr:["Last-Translator: Moo, 2020\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sek."]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"stendec <stendec@inbox.lv>, 2020","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nstendec <stendec@inbox.lv>, 2020\n"},msgstr:["Last-Translator: stendec <stendec@inbox.lv>, 2020\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundes"]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров, 2020","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nСашко Тодоров, 2020\n"},msgstr:["Last-Translator: Сашко Тодоров, 2020\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунди"]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Roeland Jago Douma <roeland@famdouma.nl>, 2020","Language-Team":"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nRoeland Jago Douma <roeland@famdouma.nl>, 2020\n"},msgstr:["Last-Translator: Roeland Jago Douma <roeland@famdouma.nl>, 2020\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["seconden"]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Quentin PAGÈS, 2020","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nQuentin PAGÈS, 2020\n"},msgstr:["Last-Translator: Quentin PAGÈS, 2020\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segondas"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020","Language-Team":"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJanusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\n"},msgstr:["Last-Translator: Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundy"]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"André Marcelo Alvarenga <alvarenga@kde.org>, 2020","Language-Team":"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAndré Marcelo Alvarenga <alvarenga@kde.org>, 2020\n"},msgstr:["Last-Translator: André Marcelo Alvarenga <alvarenga@kde.org>, 2020\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"fpapoila <fpapoila@gmail.com>, 2020","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nfpapoila <fpapoila@gmail.com>, 2020\n"},msgstr:["Last-Translator: fpapoila <fpapoila@gmail.com>, 2020\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Игорь Бондаренко <garbond@yandex.ru>, 2020","Language-Team":"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nИгорь Бондаренко <garbond@yandex.ru>, 2020\n"},msgstr:["Last-Translator: Игорь Бондаренко <garbond@yandex.ru>, 2020\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунды"]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Greta, 2020","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nGreta, 2020\n"},msgstr:["Last-Translator: Greta, 2020\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekonda"]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Slobodan Simić <slsimic@gmail.com>, 2020","Language-Team":"Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nSlobodan Simić <slsimic@gmail.com>, 2020\n"},msgstr:["Last-Translator: Slobodan Simić <slsimic@gmail.com>, 2020\nLanguage-Team: Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунде"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2020","Language-Team":"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMagnus Höglund, 2020\n"},msgstr:["Last-Translator: Magnus Höglund, 2020\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunder"]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020","Language-Team":"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nHüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\n"},msgstr:["Last-Translator: Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["saniye"]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020","Language-Team":"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\n"},msgstr:["Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунди"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Jay Guo <jayguo921@gmail.com>, 2020","Language-Team":"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJay Guo <jayguo921@gmail.com>, 2020\n"},msgstr:["Last-Translator: Jay Guo <jayguo921@gmail.com>, 2020\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"Jim Tsai <poormusic2001@gmail.com>, 2020","Language-Team":"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJim Tsai <poormusic2001@gmail.com>, 2020\n"},msgstr:["Last-Translator: Jim Tsai <poormusic2001@gmail.com>, 2020\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}}].map((function(e){l.addTranslations(e.locale,"messages",e.json)})),l.setLocale(u),r.a.locale(u),r.a.updateLocale(r.a.locale(),{parentLocale:r.a.locale(),relativeTime:Object.assign(r.a.localeData(r.a.locale())._relativeTime,{s:l.gettext("seconds")})}),t.default=r.a}])},function(e,t,n){var a=n(15),r=n(223);a({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){var a=n(1),r=n(50),s=a.WeakMap;e.exports="function"==typeof s&&/native code/.test(r(s))},function(e,t,n){var a=n(5),r=n(218),s=n(46),i=n(9);e.exports=function(e,t){for(var n=r(t),o=i.f,l=s.f,u=0;u<n.length;u++){var d=n[u];a(e,d)||o(e,d,l(t,d))}}},function(e,t,n){var a=n(25),r=n(220),s=n(54),i=n(12);e.exports=a("Reflect","ownKeys")||function(e){var t=r.f(i(e)),n=s.f;return n?t.concat(n(e)):t}},function(e,t,n){var a=n(1);e.exports=a},function(e,t,n){var a=n(53),r=n(40).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return a(e,r)}},function(e,t,n){var a=n(22),r=n(26),s=n(222),i=function(e){return function(t,n,i){var o,l=a(t),u=r(l.length),d=s(i,u);if(e&&n!=n){for(;u>d;)if((o=l[d++])!=o)return!0}else for(;u>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){var a=n(39),r=Math.max,s=Math.min;e.exports=function(e,t){var n=a(e);return n<0?r(n+t,0):s(n,t)}},function(e,t,n){"use strict";var a=n(8),r=n(3),s=n(56),i=n(54),o=n(47),l=n(27),u=n(31),d=Object.assign,c=Object.defineProperty;e.exports=!d||r((function(){if(a&&1!==d({b:1},d(c({},"a",{enumerable:!0,get:function(){c(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||"abcdefghijklmnopqrst"!=s(d({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,d=1,c=i.f,m=o.f;r>d;)for(var _,p=u(arguments[d++]),f=c?s(p).concat(c(p)):s(p),h=f.length,y=0;h>y;)_=f[y++],a&&!m.call(p,_)||(n[_]=p[_]);return n}:d},function(e,t,n){e.exports=n(225)},function(e,t,n){"use strict";var a=n(4),r=n(57),s=n(226),i=n(63);function o(e){var t=new s(e),n=r(s.prototype.request,t);return a.extend(n,s.prototype,t),a.extend(n,t),n}var l=o(n(60));l.Axios=s,l.create=function(e){return o(i(l.defaults,e))},l.Cancel=n(64),l.CancelToken=n(239),l.isCancel=n(59),l.all=function(e){return Promise.all(e)},l.spread=n(240),e.exports=l,e.exports.default=l},function(e,t,n){"use strict";var a=n(4),r=n(58),s=n(227),i=n(228),o=n(63);function l(e){this.defaults=e,this.interceptors={request:new s,response:new s}}l.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=o(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[i,void 0],n=Promise.resolve(e);for(this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));t.length;)n=n.then(t.shift(),t.shift());return n},l.prototype.getUri=function(e){return e=o(this.defaults,e),r(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},a.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,n){return this.request(a.merge(n||{},{method:e,url:t}))}})),a.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,n,r){return this.request(a.merge(r||{},{method:e,url:t,data:n}))}})),e.exports=l},function(e,t,n){"use strict";var a=n(4);function r(){this.handlers=[]}r.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},r.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},r.prototype.forEach=function(e){a.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=r},function(e,t,n){"use strict";var a=n(4),r=n(229),s=n(59),i=n(60);function o(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){return o(e),e.headers=e.headers||{},e.data=r(e.data,e.headers,e.transformRequest),e.headers=a.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),a.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||i.adapter)(e).then((function(t){return o(e),t.data=r(t.data,t.headers,e.transformResponse),t}),(function(t){return s(t)||(o(e),t&&t.response&&(t.response.data=r(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},function(e,t,n){"use strict";var a=n(4);e.exports=function(e,t,n){return a.forEach(n,(function(n){e=n(e,t)})),e}},function(e,t,n){"use strict";var a=n(4);e.exports=function(e,t){a.forEach(e,(function(n,a){a!==t&&a.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[a])}))}},function(e,t,n){"use strict";var a=n(62);e.exports=function(e,t,n){var r=n.config.validateStatus;!r||r(n.status)?e(n):t(a("Request failed with status code "+n.status,n.config,null,n.request,n))}},function(e,t,n){"use strict";e.exports=function(e,t,n,a,r){return e.config=t,n&&(e.code=n),e.request=a,e.response=r,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},function(e,t,n){"use strict";var a=n(234),r=n(235);e.exports=function(e,t){return e&&!a(t)?r(e,t):t}},function(e,t,n){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t,n){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t,n){"use strict";var a=n(4),r=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,n,s,i={};return e?(a.forEach(e.split("\n"),(function(e){if(s=e.indexOf(":"),t=a.trim(e.substr(0,s)).toLowerCase(),n=a.trim(e.substr(s+1)),t){if(i[t]&&r.indexOf(t)>=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([n]):i[t]?i[t]+", "+n:n}})),i):i}},function(e,t,n){"use strict";var a=n(4);e.exports=a.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function r(e){var a=e;return t&&(n.setAttribute("href",a),a=n.href),n.setAttribute("href",a),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=r(window.location.href),function(t){var n=a.isString(t)?r(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0}},function(e,t,n){"use strict";var a=n(4);e.exports=a.isStandardBrowserEnv()?{write:function(e,t,n,r,s,i){var o=[];o.push(e+"="+encodeURIComponent(t)),a.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),a.isString(r)&&o.push("path="+r),a.isString(s)&&o.push("domain="+s),!0===i&&o.push("secure"),document.cookie=o.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t,n){"use strict";var a=n(64);function r(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;e((function(e){n.reason||(n.reason=new a(e),t(n.reason))}))}r.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},r.source=function(){var e;return{token:new r((function(t){e=t})),cancel:e}},e.exports=r},function(e,t,n){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getRequestToken",{enumerable:!0,get:function(){return a.getRequestToken}}),Object.defineProperty(t,"onRequestTokenUpdate",{enumerable:!0,get:function(){return a.onRequestTokenUpdate}}),Object.defineProperty(t,"getCurrentUser",{enumerable:!0,get:function(){return r.getCurrentUser}});var a=n(242),r=n(276)},function(e,t,n){"use strict";n(65),Object.defineProperty(t,"__esModule",{value:!0}),t.getRequestToken=function(){return s},t.onRequestTokenUpdate=function(e){i.push(e)};var a=n(30),r=document.getElementsByTagName("head")[0],s=r?r.getAttribute("data-requesttoken"):null,i=[];(0,a.subscribe)("csrf-token-update",(function(e){s=e.token,i.forEach((function(t){try{t(e.token)}catch(e){console.error("error updating CSRF token observer",e)}}))}))},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){var a=n(70);e.exports=a&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(e,t,n){"use strict";var a=n(3);e.exports=function(e,t){var n=[][e];return!!n&&a((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ProxyBus=void 0;var a,r=(a=n(247))&&a.__esModule?a:{default:a};function s(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}var i="1.1.4",o=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e,t,n){t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"bus",void 0),"function"==typeof t.getVersion&&r.default.valid(t.getVersion())?r.default.major(t.getVersion())!==r.default.major(this.getVersion())&&console.warn("Proxying an event bus of version "+t.getVersion()+" with "+this.getVersion()):console.warn("Proxying an event bus with an unknown or invalid version"),this.bus=t}var t,n,a;return t=e,(n=[{key:"getVersion",value:function(){return i}},{key:"subscribe",value:function(e,t){this.bus.subscribe(e,t)}},{key:"unsubscribe",value:function(e,t){this.bus.unsubscribe(e,t)}},{key:"emit",value:function(e,t){this.bus.emit(e,t)}}])&&s(t.prototype,n),a&&s(t,a),e}();t.ProxyBus=o},function(e,t,n){(function(n){var a;t=e.exports=m,a="object"==typeof n&&n.env&&n.env.NODE_DEBUG&&/\bsemver\b/i.test(n.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var r=Number.MAX_SAFE_INTEGER||9007199254740991,s=t.re=[],i=t.src=[],o=t.tokens={},l=0;function u(e){o[e]=l++}u("NUMERICIDENTIFIER"),i[o.NUMERICIDENTIFIER]="0|[1-9]\\d*",u("NUMERICIDENTIFIERLOOSE"),i[o.NUMERICIDENTIFIERLOOSE]="[0-9]+",u("NONNUMERICIDENTIFIER"),i[o.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-][a-zA-Z0-9-]*",u("MAINVERSION"),i[o.MAINVERSION]="("+i[o.NUMERICIDENTIFIER]+")\\.("+i[o.NUMERICIDENTIFIER]+")\\.("+i[o.NUMERICIDENTIFIER]+")",u("MAINVERSIONLOOSE"),i[o.MAINVERSIONLOOSE]="("+i[o.NUMERICIDENTIFIERLOOSE]+")\\.("+i[o.NUMERICIDENTIFIERLOOSE]+")\\.("+i[o.NUMERICIDENTIFIERLOOSE]+")",u("PRERELEASEIDENTIFIER"),i[o.PRERELEASEIDENTIFIER]="(?:"+i[o.NUMERICIDENTIFIER]+"|"+i[o.NONNUMERICIDENTIFIER]+")",u("PRERELEASEIDENTIFIERLOOSE"),i[o.PRERELEASEIDENTIFIERLOOSE]="(?:"+i[o.NUMERICIDENTIFIERLOOSE]+"|"+i[o.NONNUMERICIDENTIFIER]+")",u("PRERELEASE"),i[o.PRERELEASE]="(?:-("+i[o.PRERELEASEIDENTIFIER]+"(?:\\."+i[o.PRERELEASEIDENTIFIER]+")*))",u("PRERELEASELOOSE"),i[o.PRERELEASELOOSE]="(?:-?("+i[o.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+i[o.PRERELEASEIDENTIFIERLOOSE]+")*))",u("BUILDIDENTIFIER"),i[o.BUILDIDENTIFIER]="[0-9A-Za-z-]+",u("BUILD"),i[o.BUILD]="(?:\\+("+i[o.BUILDIDENTIFIER]+"(?:\\."+i[o.BUILDIDENTIFIER]+")*))",u("FULL"),u("FULLPLAIN"),i[o.FULLPLAIN]="v?"+i[o.MAINVERSION]+i[o.PRERELEASE]+"?"+i[o.BUILD]+"?",i[o.FULL]="^"+i[o.FULLPLAIN]+"$",u("LOOSEPLAIN"),i[o.LOOSEPLAIN]="[v=\\s]*"+i[o.MAINVERSIONLOOSE]+i[o.PRERELEASELOOSE]+"?"+i[o.BUILD]+"?",u("LOOSE"),i[o.LOOSE]="^"+i[o.LOOSEPLAIN]+"$",u("GTLT"),i[o.GTLT]="((?:<|>)?=?)",u("XRANGEIDENTIFIERLOOSE"),i[o.XRANGEIDENTIFIERLOOSE]=i[o.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",u("XRANGEIDENTIFIER"),i[o.XRANGEIDENTIFIER]=i[o.NUMERICIDENTIFIER]+"|x|X|\\*",u("XRANGEPLAIN"),i[o.XRANGEPLAIN]="[v=\\s]*("+i[o.XRANGEIDENTIFIER]+")(?:\\.("+i[o.XRANGEIDENTIFIER]+")(?:\\.("+i[o.XRANGEIDENTIFIER]+")(?:"+i[o.PRERELEASE]+")?"+i[o.BUILD]+"?)?)?",u("XRANGEPLAINLOOSE"),i[o.XRANGEPLAINLOOSE]="[v=\\s]*("+i[o.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+i[o.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+i[o.XRANGEIDENTIFIERLOOSE]+")(?:"+i[o.PRERELEASELOOSE]+")?"+i[o.BUILD]+"?)?)?",u("XRANGE"),i[o.XRANGE]="^"+i[o.GTLT]+"\\s*"+i[o.XRANGEPLAIN]+"$",u("XRANGELOOSE"),i[o.XRANGELOOSE]="^"+i[o.GTLT]+"\\s*"+i[o.XRANGEPLAINLOOSE]+"$",u("COERCE"),i[o.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",u("COERCERTL"),s[o.COERCERTL]=new RegExp(i[o.COERCE],"g"),u("LONETILDE"),i[o.LONETILDE]="(?:~>?)",u("TILDETRIM"),i[o.TILDETRIM]="(\\s*)"+i[o.LONETILDE]+"\\s+",s[o.TILDETRIM]=new RegExp(i[o.TILDETRIM],"g");u("TILDE"),i[o.TILDE]="^"+i[o.LONETILDE]+i[o.XRANGEPLAIN]+"$",u("TILDELOOSE"),i[o.TILDELOOSE]="^"+i[o.LONETILDE]+i[o.XRANGEPLAINLOOSE]+"$",u("LONECARET"),i[o.LONECARET]="(?:\\^)",u("CARETTRIM"),i[o.CARETTRIM]="(\\s*)"+i[o.LONECARET]+"\\s+",s[o.CARETTRIM]=new RegExp(i[o.CARETTRIM],"g");u("CARET"),i[o.CARET]="^"+i[o.LONECARET]+i[o.XRANGEPLAIN]+"$",u("CARETLOOSE"),i[o.CARETLOOSE]="^"+i[o.LONECARET]+i[o.XRANGEPLAINLOOSE]+"$",u("COMPARATORLOOSE"),i[o.COMPARATORLOOSE]="^"+i[o.GTLT]+"\\s*("+i[o.LOOSEPLAIN]+")$|^$",u("COMPARATOR"),i[o.COMPARATOR]="^"+i[o.GTLT]+"\\s*("+i[o.FULLPLAIN]+")$|^$",u("COMPARATORTRIM"),i[o.COMPARATORTRIM]="(\\s*)"+i[o.GTLT]+"\\s*("+i[o.LOOSEPLAIN]+"|"+i[o.XRANGEPLAIN]+")",s[o.COMPARATORTRIM]=new RegExp(i[o.COMPARATORTRIM],"g");u("HYPHENRANGE"),i[o.HYPHENRANGE]="^\\s*("+i[o.XRANGEPLAIN]+")\\s+-\\s+("+i[o.XRANGEPLAIN]+")\\s*$",u("HYPHENRANGELOOSE"),i[o.HYPHENRANGELOOSE]="^\\s*("+i[o.XRANGEPLAINLOOSE]+")\\s+-\\s+("+i[o.XRANGEPLAINLOOSE]+")\\s*$",u("STAR"),i[o.STAR]="(<|>)?=?\\s*\\*";for(var d=0;d<l;d++)a(d,i[d]),s[d]||(s[d]=new RegExp(i[d]));function c(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof m)return e;if("string"!=typeof e)return null;if(e.length>256)return null;if(!(t.loose?s[o.LOOSE]:s[o.FULL]).test(e))return null;try{return new m(e,t)}catch(e){return null}}function m(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof m){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>256)throw new TypeError("version is longer than 256 characters");if(!(this instanceof m))return new m(e,t);a("SemVer",e,t),this.options=t,this.loose=!!t.loose;var n=e.trim().match(t.loose?s[o.LOOSE]:s[o.FULL]);if(!n)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>r||this.major<0)throw new TypeError("Invalid major version");if(this.minor>r||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>r||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map((function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t<r)return t}return e})):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}t.parse=c,t.valid=function(e,t){var n=c(e,t);return n?n.version:null},t.clean=function(e,t){var n=c(e.trim().replace(/^[=v]+/,""),t);return n?n.version:null},t.SemVer=m,m.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},m.prototype.toString=function(){return this.version},m.prototype.compare=function(e){return a("SemVer.compare",this.version,this.options,e),e instanceof m||(e=new m(e,this.options)),this.compareMain(e)||this.comparePre(e)},m.prototype.compareMain=function(e){return e instanceof m||(e=new m(e,this.options)),p(this.major,e.major)||p(this.minor,e.minor)||p(this.patch,e.patch)},m.prototype.comparePre=function(e){if(e instanceof m||(e=new m(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;var t=0;do{var n=this.prerelease[t],r=e.prerelease[t];if(a("prerelease compare",t,n,r),void 0===n&&void 0===r)return 0;if(void 0===r)return 1;if(void 0===n)return-1;if(n!==r)return p(n,r)}while(++t)},m.prototype.compareBuild=function(e){e instanceof m||(e=new m(e,this.options));var t=0;do{var n=this.build[t],r=e.build[t];if(a("prerelease compare",t,n,r),void 0===n&&void 0===r)return 0;if(void 0===r)return 1;if(void 0===n)return-1;if(n!==r)return p(n,r)}while(++t)},m.prototype.inc=function(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t),this.inc("pre",t);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{for(var n=this.prerelease.length;--n>=0;)"number"==typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);-1===n&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,n,a){"string"==typeof n&&(a=n,n=void 0);try{return new m(e,n).inc(t,a).version}catch(e){return null}},t.diff=function(e,t){if(M(e,t))return null;var n=c(e),a=c(t),r="";if(n.prerelease.length||a.prerelease.length){r="pre";var s="prerelease"}for(var i in n)if(("major"===i||"minor"===i||"patch"===i)&&n[i]!==a[i])return r+i;return s},t.compareIdentifiers=p;var _=/^[0-9]+$/;function p(e,t){var n=_.test(e),a=_.test(t);return n&&a&&(e=+e,t=+t),e===t?0:n&&!a?-1:a&&!n?1:e<t?-1:1}function f(e,t,n){return new m(e,n).compare(new m(t,n))}function h(e,t,n){return f(e,t,n)>0}function y(e,t,n){return f(e,t,n)<0}function M(e,t,n){return 0===f(e,t,n)}function v(e,t,n){return 0!==f(e,t,n)}function g(e,t,n){return f(e,t,n)>=0}function L(e,t,n){return f(e,t,n)<=0}function Y(e,t,n,a){switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof n&&(n=n.version),e===n;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof n&&(n=n.version),e!==n;case"":case"=":case"==":return M(e,n,a);case"!=":return v(e,n,a);case">":return h(e,n,a);case">=":return g(e,n,a);case"<":return y(e,n,a);case"<=":return L(e,n,a);default:throw new TypeError("Invalid operator: "+t)}}function T(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof T){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof T))return new T(e,t);a("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===k?this.value="":this.value=this.operator+this.semver.version,a("comp",this)}t.rcompareIdentifiers=function(e,t){return p(t,e)},t.major=function(e,t){return new m(e,t).major},t.minor=function(e,t){return new m(e,t).minor},t.patch=function(e,t){return new m(e,t).patch},t.compare=f,t.compareLoose=function(e,t){return f(e,t,!0)},t.compareBuild=function(e,t,n){var a=new m(e,n),r=new m(t,n);return a.compare(r)||a.compareBuild(r)},t.rcompare=function(e,t,n){return f(t,e,n)},t.sort=function(e,n){return e.sort((function(e,a){return t.compareBuild(e,a,n)}))},t.rsort=function(e,n){return e.sort((function(e,a){return t.compareBuild(a,e,n)}))},t.gt=h,t.lt=y,t.eq=M,t.neq=v,t.gte=g,t.lte=L,t.cmp=Y,t.Comparator=T;var k={};function w(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof w)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new w(e.raw,t);if(e instanceof T)return new w(e.value,t);if(!(this instanceof w))return new w(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map((function(e){return this.parseRange(e.trim())}),this).filter((function(e){return e.length})),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e);this.format()}function D(e,t){for(var n=!0,a=e.slice(),r=a.pop();n&&a.length;)n=a.every((function(e){return r.intersects(e,t)})),r=a.pop();return n}function b(e){return!e||"x"===e.toLowerCase()||"*"===e}function x(e,t,n,a,r,s,i,o,l,u,d,c,m){return((t=b(n)?"":b(a)?">="+n+".0.0":b(r)?">="+n+"."+a+".0":">="+t)+" "+(o=b(l)?"":b(u)?"<"+(+l+1)+".0.0":b(d)?"<"+l+"."+(+u+1)+".0":c?"<="+l+"."+u+"."+d+"-"+c:"<="+o)).trim()}function S(e,t,n){for(var r=0;r<e.length;r++)if(!e[r].test(t))return!1;if(t.prerelease.length&&!n.includePrerelease){for(r=0;r<e.length;r++)if(a(e[r].semver),e[r].semver!==k&&e[r].semver.prerelease.length>0){var s=e[r].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0}function j(e,t,n){try{t=new w(t,n)}catch(e){return!1}return t.test(e)}function H(e,t,n,a){var r,s,i,o,l;switch(e=new m(e,a),t=new w(t,a),n){case">":r=h,s=L,i=y,o=">",l=">=";break;case"<":r=y,s=g,i=h,o="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(j(e,t,a))return!1;for(var u=0;u<t.set.length;++u){var d=t.set[u],c=null,_=null;if(d.forEach((function(e){e.semver===k&&(e=new T(">=0.0.0")),c=c||e,_=_||e,r(e.semver,c.semver,a)?c=e:i(e.semver,_.semver,a)&&(_=e)})),c.operator===o||c.operator===l)return!1;if((!_.operator||_.operator===o)&&s(e,_.semver))return!1;if(_.operator===l&&i(e,_.semver))return!1}return!0}T.prototype.parse=function(e){var t=this.options.loose?s[o.COMPARATORLOOSE]:s[o.COMPARATOR],n=e.match(t);if(!n)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==n[1]?n[1]:"","="===this.operator&&(this.operator=""),n[2]?this.semver=new m(n[2],this.options.loose):this.semver=k},T.prototype.toString=function(){return this.value},T.prototype.test=function(e){if(a("Comparator.test",e,this.options.loose),this.semver===k||e===k)return!0;if("string"==typeof e)try{e=new m(e,this.options)}catch(e){return!1}return Y(e,this.operator,this.semver,this.options)},T.prototype.intersects=function(e,t){if(!(e instanceof T))throw new TypeError("a Comparator is required");var n;if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||(n=new w(e.value,t),j(this.value,n,t));if(""===e.operator)return""===e.value||(n=new w(this.value,t),j(e.semver,n,t));var a=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),r=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),s=this.semver.version===e.semver.version,i=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),o=Y(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),l=Y(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return a||r||s&&i||o||l},t.Range=w,w.prototype.format=function(){return this.range=this.set.map((function(e){return e.join(" ").trim()})).join("||").trim(),this.range},w.prototype.toString=function(){return this.range},w.prototype.parseRange=function(e){var t=this.options.loose;e=e.trim();var n=t?s[o.HYPHENRANGELOOSE]:s[o.HYPHENRANGE];e=e.replace(n,x),a("hyphen replace",e),e=e.replace(s[o.COMPARATORTRIM],"$1$2$3"),a("comparator trim",e,s[o.COMPARATORTRIM]),e=(e=(e=e.replace(s[o.TILDETRIM],"$1~")).replace(s[o.CARETTRIM],"$1^")).split(/\s+/).join(" ");var r=t?s[o.COMPARATORLOOSE]:s[o.COMPARATOR],i=e.split(" ").map((function(e){return function(e,t){return a("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){a("caret",e,t);var n=t.loose?s[o.CARETLOOSE]:s[o.CARET];return e.replace(n,(function(t,n,r,s,i){var o;return a("caret",e,t,n,r,s,i),b(n)?o="":b(r)?o=">="+n+".0.0 <"+(+n+1)+".0.0":b(s)?o="0"===n?">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":">="+n+"."+r+".0 <"+(+n+1)+".0.0":i?(a("replaceCaret pr",i),o="0"===n?"0"===r?">="+n+"."+r+"."+s+"-"+i+" <"+n+"."+r+"."+(+s+1):">="+n+"."+r+"."+s+"-"+i+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+s+"-"+i+" <"+(+n+1)+".0.0"):(a("no pr"),o="0"===n?"0"===r?">="+n+"."+r+"."+s+" <"+n+"."+r+"."+(+s+1):">="+n+"."+r+"."+s+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+s+" <"+(+n+1)+".0.0"),a("caret return",o),o}))}(e,t)})).join(" ")}(e,t),a("caret",e),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){var n=t.loose?s[o.TILDELOOSE]:s[o.TILDE];return e.replace(n,(function(t,n,r,s,i){var o;return a("tilde",e,t,n,r,s,i),b(n)?o="":b(r)?o=">="+n+".0.0 <"+(+n+1)+".0.0":b(s)?o=">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":i?(a("replaceTilde pr",i),o=">="+n+"."+r+"."+s+"-"+i+" <"+n+"."+(+r+1)+".0"):o=">="+n+"."+r+"."+s+" <"+n+"."+(+r+1)+".0",a("tilde return",o),o}))}(e,t)})).join(" ")}(e,t),a("tildes",e),e=function(e,t){return a("replaceXRanges",e,t),e.split(/\s+/).map((function(e){return function(e,t){e=e.trim();var n=t.loose?s[o.XRANGELOOSE]:s[o.XRANGE];return e.replace(n,(function(n,r,s,i,o,l){a("xRange",e,n,r,s,i,o,l);var u=b(s),d=u||b(i),c=d||b(o),m=c;return"="===r&&m&&(r=""),l=t.includePrerelease?"-0":"",u?n=">"===r||"<"===r?"<0.0.0-0":"*":r&&m?(d&&(i=0),o=0,">"===r?(r=">=",d?(s=+s+1,i=0,o=0):(i=+i+1,o=0)):"<="===r&&(r="<",d?s=+s+1:i=+i+1),n=r+s+"."+i+"."+o+l):d?n=">="+s+".0.0"+l+" <"+(+s+1)+".0.0"+l:c&&(n=">="+s+"."+i+".0"+l+" <"+s+"."+(+i+1)+".0"+l),a("xRange return",n),n}))}(e,t)})).join(" ")}(e,t),a("xrange",e),e=function(e,t){return a("replaceStars",e,t),e.trim().replace(s[o.STAR],"")}(e,t),a("stars",e),e}(e,this.options)}),this).join(" ").split(/\s+/);return this.options.loose&&(i=i.filter((function(e){return!!e.match(r)}))),i=i.map((function(e){return new T(e,this.options)}),this)},w.prototype.intersects=function(e,t){if(!(e instanceof w))throw new TypeError("a Range is required");return this.set.some((function(n){return D(n,t)&&e.set.some((function(e){return D(e,t)&&n.every((function(n){return e.every((function(e){return n.intersects(e,t)}))}))}))}))},t.toComparators=function(e,t){return new w(e,t).set.map((function(e){return e.map((function(e){return e.value})).join(" ").trim().split(" ")}))},w.prototype.test=function(e){if(!e)return!1;if("string"==typeof e)try{e=new m(e,this.options)}catch(e){return!1}for(var t=0;t<this.set.length;t++)if(S(this.set[t],e,this.options))return!0;return!1},t.satisfies=j,t.maxSatisfying=function(e,t,n){var a=null,r=null;try{var s=new w(t,n)}catch(e){return null}return e.forEach((function(e){s.test(e)&&(a&&-1!==r.compare(e)||(r=new m(a=e,n)))})),a},t.minSatisfying=function(e,t,n){var a=null,r=null;try{var s=new w(t,n)}catch(e){return null}return e.forEach((function(e){s.test(e)&&(a&&1!==r.compare(e)||(r=new m(a=e,n)))})),a},t.minVersion=function(e,t){e=new w(e,t);var n=new m("0.0.0");if(e.test(n))return n;if(n=new m("0.0.0-0"),e.test(n))return n;n=null;for(var a=0;a<e.set.length;++a){e.set[a].forEach((function(e){var t=new m(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":n&&!h(n,t)||(n=t);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}}))}if(n&&e.test(n))return n;return null},t.validRange=function(e,t){try{return new w(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,n){return H(e,t,"<",n)},t.gtr=function(e,t,n){return H(e,t,">",n)},t.outside=H,t.prerelease=function(e,t){var n=c(e,t);return n&&n.prerelease.length?n.prerelease:null},t.intersects=function(e,t,n){return e=new w(e,n),t=new w(t,n),e.intersects(t)},t.coerce=function(e,t){if(e instanceof m)return e;"number"==typeof e&&(e=String(e));if("string"!=typeof e)return null;var n=null;if((t=t||{}).rtl){for(var a;(a=s[o.COERCERTL].exec(e))&&(!n||n.index+n[0].length!==e.length);)n&&a.index+a[0].length===n.index+n[0].length||(n=a),s[o.COERCERTL].lastIndex=a.index+a[1].length+a[2].length;s[o.COERCERTL].lastIndex=-1}else n=e.match(s[o.COERCE]);if(null===n)return null;return c(n[2]+"."+(n[3]||"0")+"."+(n[4]||"0"),t)}}).call(this,n(28))},function(e,t,n){"use strict";function a(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}n(249),n(252),n(65),n(74),n(259),n(270),n(272),n(274),n(275),Object.defineProperty(t,"__esModule",{value:!0}),t.SimpleBus=void 0;var r="1.1.4",s=function(){function e(){var t,n,a;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),t=this,n="handlers",a=new Map,n in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a}var t,n,s;return t=e,(n=[{key:"getVersion",value:function(){return r}},{key:"subscribe",value:function(e,t){this.handlers.set(e,(this.handlers.get(e)||[]).concat(t))}},{key:"unsubscribe",value:function(e,t){this.handlers.set(e,(this.handlers.get(e)||[]).filter((function(e){return e!=t})))}},{key:"emit",value:function(e,t){(this.handlers.get(e)||[]).forEach((function(e){try{e(t)}catch(e){console.error("could not invoke event listener",e)}}))}}])&&a(t.prototype,n),s&&a(t,s),e}();t.SimpleBus=s},function(e,t,n){"use strict";var a=n(15),r=n(3),s=n(69),i=n(6),o=n(27),l=n(26),u=n(250),d=n(68),c=n(72),m=n(2),_=n(73),p=m("isConcatSpreadable"),f=_>=51||!r((function(){var e=[];return e[p]=!1,e.concat()[0]!==e})),h=c("concat"),y=function(e){if(!i(e))return!1;var t=e[p];return void 0!==t?!!t:s(e)};a({target:"Array",proto:!0,forced:!f||!h},{concat:function(e){var t,n,a,r,s,i=o(this),c=d(i,0),m=0;for(t=-1,a=arguments.length;t<a;t++)if(s=-1===t?i:arguments[t],y(s)){if(m+(r=l(s.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<r;n++,m++)n in s&&u(c,m,s[n])}else{if(m>=9007199254740991)throw TypeError("Maximum allowed index exceeded");u(c,m++,s)}return c.length=m,c}})},function(e,t,n){"use strict";var a=n(34),r=n(9),s=n(21);e.exports=function(e,t,n){var i=a(t);i in e?r.f(e,i,s(0,n)):e[i]=n}},function(e,t,n){var a=n(25);e.exports=a("navigator","userAgent")||""},function(e,t,n){"use strict";var a=n(15),r=n(67).filter,s=n(72),i=n(71),o=s("filter"),l=i("filter");a({target:"Array",proto:!0,forced:!o||!l},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}})},function(e,t,n){var a=n(2),r=n(42),s=n(9),i=a("unscopables"),o=Array.prototype;null==o[i]&&s.f(o,i,{configurable:!0,value:r(null)}),e.exports=function(e){o[i][e]=!0}},function(e,t,n){var a=n(8),r=n(9),s=n(12),i=n(56);e.exports=a?Object.defineProperties:function(e,t){s(e);for(var n,a=i(t),o=a.length,l=0;o>l;)r.f(e,n=a[l++],t[n]);return e}},function(e,t,n){var a=n(25);e.exports=a("document","documentElement")},function(e,t,n){"use strict";var a=n(75).IteratorPrototype,r=n(42),s=n(21),i=n(44),o=n(18),l=function(){return this};e.exports=function(e,t,n){var u=t+" Iterator";return e.prototype=r(a,{next:s(1,n)}),i(e,u,!1,!0),o[u]=l,e}},function(e,t,n){var a=n(3);e.exports=!a((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){var a=n(6);e.exports=function(e){if(!a(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var a=n(260),r=n(267);e.exports=a("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}}),r)},function(e,t,n){"use strict";var a=n(15),r=n(1),s=n(55),i=n(17),o=n(78),l=n(79),u=n(81),d=n(6),c=n(3),m=n(265),_=n(44),p=n(266);e.exports=function(e,t,n){var f=-1!==e.indexOf("Map"),h=-1!==e.indexOf("Weak"),y=f?"set":"add",M=r[e],v=M&&M.prototype,g=M,L={},Y=function(e){var t=v[e];i(v,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(h&&!d(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return h&&!d(e)?void 0:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(h&&!d(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(s(e,"function"!=typeof M||!(h||v.forEach&&!c((function(){(new M).entries().next()})))))g=n.getConstructor(t,e,f,y),o.REQUIRED=!0;else if(s(e,!0)){var T=new g,k=T[y](h?{}:-0,1)!=T,w=c((function(){T.has(1)})),D=m((function(e){new M(e)})),b=!h&&c((function(){for(var e=new M,t=5;t--;)e[y](t,t);return!e.has(-0)}));D||((g=t((function(t,n){u(t,g,e);var a=p(new M,t,g);return null!=n&&l(n,a[y],a,f),a}))).prototype=v,v.constructor=g),(w||b)&&(Y("delete"),Y("has"),f&&Y("get")),(b||k)&&Y(y),h&&v.clear&&delete v.clear}return L[e]=g,a({global:!0,forced:g!=M},L),_(g,e),h||n.setStrong(g,e,f),g}},function(e,t,n){var a=n(3);e.exports=!a((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){var a=n(2),r=n(18),s=a("iterator"),i=Array.prototype;e.exports=function(e){return void 0!==e&&(r.Array===e||i[s]===e)}},function(e,t,n){var a=n(80),r=n(18),s=n(2)("iterator");e.exports=function(e){if(null!=e)return e[s]||e["@@iterator"]||r[a(e)]}},function(e,t,n){var a=n(12);e.exports=function(e,t,n,r){try{return r?t(a(n)[0],n[1]):t(n)}catch(t){var s=e.return;throw void 0!==s&&a(s.call(e)),t}}},function(e,t,n){var a=n(2)("iterator"),r=!1;try{var s=0,i={next:function(){return{done:!!s++}},return:function(){r=!0}};i[a]=function(){return this},Array.from(i,(function(){throw 2}))}catch(e){}e.exports=function(e,t){if(!t&&!r)return!1;var n=!1;try{var s={};s[a]=function(){return{next:function(){return{done:n=!0}}}},e(s)}catch(e){}return n}},function(e,t,n){var a=n(6),r=n(77);e.exports=function(e,t,n){var s,i;return r&&"function"==typeof(s=t.constructor)&&s!==n&&a(i=s.prototype)&&i!==n.prototype&&r(e,i),e}},function(e,t,n){"use strict";var a=n(9).f,r=n(42),s=n(268),i=n(41),o=n(81),l=n(79),u=n(43),d=n(269),c=n(8),m=n(78).fastKey,_=n(23),p=_.set,f=_.getterFor;e.exports={getConstructor:function(e,t,n,u){var d=e((function(e,a){o(e,d,t),p(e,{type:t,index:r(null),first:void 0,last:void 0,size:0}),c||(e.size=0),null!=a&&l(a,e[u],e,n)})),_=f(t),h=function(e,t,n){var a,r,s=_(e),i=y(e,t);return i?i.value=n:(s.last=i={index:r=m(t,!0),key:t,value:n,previous:a=s.last,next:void 0,removed:!1},s.first||(s.first=i),a&&(a.next=i),c?s.size++:e.size++,"F"!==r&&(s.index[r]=i)),e},y=function(e,t){var n,a=_(e),r=m(t);if("F"!==r)return a.index[r];for(n=a.first;n;n=n.next)if(n.key==t)return n};return s(d.prototype,{clear:function(){for(var e=_(this),t=e.index,n=e.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete t[n.index],n=n.next;e.first=e.last=void 0,c?e.size=0:this.size=0},delete:function(e){var t=_(this),n=y(this,e);if(n){var a=n.next,r=n.previous;delete t.index[n.index],n.removed=!0,r&&(r.next=a),a&&(a.previous=r),t.first==n&&(t.first=a),t.last==n&&(t.last=r),c?t.size--:this.size--}return!!n},forEach:function(e){for(var t,n=_(this),a=i(e,arguments.length>1?arguments[1]:void 0,3);t=t?t.next:n.first;)for(a(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!y(this,e)}}),s(d.prototype,n?{get:function(e){var t=y(this,e);return t&&t.value},set:function(e,t){return h(this,0===e?0:e,t)}}:{add:function(e){return h(this,e=0===e?0:e,e)}}),c&&a(d.prototype,"size",{get:function(){return _(this).size}}),d},setStrong:function(e,t,n){var a=t+" Iterator",r=f(t),s=f(a);u(e,t,(function(e,t){p(this,{type:a,target:e,state:r(e),kind:t,last:void 0})}),(function(){for(var e=s(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),d(t)}}},function(e,t,n){var a=n(17);e.exports=function(e,t,n){for(var r in t)a(e,r,t[r],n);return e}},function(e,t,n){"use strict";var a=n(25),r=n(9),s=n(2),i=n(8),o=s("species");e.exports=function(e){var t=a(e),n=r.f;i&&t&&!t[o]&&n(t,o,{configurable:!0,get:function(){return this}})}},function(e,t,n){var a=n(45),r=n(17),s=n(271);a||r(Object.prototype,"toString",s,{unsafe:!0})},function(e,t,n){"use strict";var a=n(45),r=n(80);e.exports=a?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var a=n(273).charAt,r=n(23),s=n(43),i=r.set,o=r.getterFor("String Iterator");s(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=o(this),n=t.string,r=t.index;return r>=n.length?{value:void 0,done:!0}:(e=a(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){var a=n(39),r=n(33),s=function(e){return function(t,n){var s,i,o=String(r(t)),l=a(n),u=o.length;return l<0||l>=u?e?"":void 0:(s=o.charCodeAt(l))<55296||s>56319||l+1===u||(i=o.charCodeAt(l+1))<56320||i>57343?e?o.charAt(l):s:e?o.slice(l,l+2):i-56320+(s-55296<<10)+65536}};e.exports={codeAt:s(!1),charAt:s(!0)}},function(e,t,n){var a=n(1),r=n(82),s=n(66),i=n(10);for(var o in r){var l=a[o],u=l&&l.prototype;if(u&&u.forEach!==s)try{i(u,"forEach",s)}catch(e){u.forEach=s}}},function(e,t,n){var a=n(1),r=n(82),s=n(74),i=n(10),o=n(2),l=o("iterator"),u=o("toStringTag"),d=s.values;for(var c in r){var m=a[c],_=m&&m.prototype;if(_){if(_[l]!==d)try{i(_,l,d)}catch(e){_[l]=d}if(_[u]||i(_,u,c),r[c])for(var p in s)if(_[p]!==s[p])try{i(_,p,s[p])}catch(e){_[p]=s[p]}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCurrentUser=function(){if(null===r)return null;return{uid:r,displayName:i}};var a=document.getElementsByTagName("head")[0],r=a?a.getAttribute("data-user"):null,s=document.getElementsByTagName("head")[0],i=s?s.getAttribute("data-user-displayname"):null},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a class="filename has-tooltip" href="'+l("function"==typeof(s=null!=(s=u(n,"link")||(null!=t?u(t,"link"):t))?s:o)?s.call(i,{name:"link",hash:{},data:r,loc:{start:{line:1,column:38},end:{line:1,column:46}}}):s)+'" title="'+l("function"==typeof(s=null!=(s=u(n,"title")||(null!=t?u(t,"title"):t))?s:o)?s.call(i,{name:"title",hash:{},data:r,loc:{start:{line:1,column:55},end:{line:1,column:64}}}):s)+'">'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:66},end:{line:1,column:74}}}):s)+"</a>\n"},useData:!0})},function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}function r(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.__esModule=!0;var s=r(n(83)),i=a(n(289)),o=a(n(13)),l=r(n(7)),u=r(n(290)),d=a(n(292));function c(){var e=new s.HandlebarsEnvironment;return l.extend(e,s),e.SafeString=i.default,e.Exception=o.default,e.Utils=l,e.escapeExpression=l.escapeExpression,e.VM=u,e.template=function(t){return u.template(t,e)},e}var m=c();m.create=c,d.default(m),m.default=m,t.default=m,e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0;var a=n(7);t.default=function(e){e.registerHelper("blockHelperMissing",(function(t,n){var r=n.inverse,s=n.fn;if(!0===t)return s(this);if(!1===t||null==t)return r(this);if(a.isArray(t))return t.length>0?(n.ids&&(n.ids=[n.name]),e.helpers.each(t,n)):r(this);if(n.data&&n.ids){var i=a.createFrame(n.data);i.contextPath=a.appendContextPath(n.data.contextPath,n.name),n={data:i}}return s(t,n)}))},e.exports=t.default},function(e,t,n){"use strict";(function(a){t.__esModule=!0;var r,s=n(7),i=n(13),o=(r=i)&&r.__esModule?r:{default:r};t.default=function(e){e.registerHelper("each",(function(e,t){if(!t)throw new o.default("Must pass iterator to #each");var n,r=t.fn,i=t.inverse,l=0,u="",d=void 0,c=void 0;function m(t,n,a){d&&(d.key=t,d.index=n,d.first=0===n,d.last=!!a,c&&(d.contextPath=c+t)),u+=r(e[t],{data:d,blockParams:s.blockParams([e[t],t],[c+t,null])})}if(t.data&&t.ids&&(c=s.appendContextPath(t.data.contextPath,t.ids[0])+"."),s.isFunction(e)&&(e=e.call(this)),t.data&&(d=s.createFrame(t.data)),e&&"object"==typeof e)if(s.isArray(e))for(var _=e.length;l<_;l++)l in e&&m(l,l,l===e.length-1);else if(a.Symbol&&e[a.Symbol.iterator]){for(var p=[],f=e[a.Symbol.iterator](),h=f.next();!h.done;h=f.next())p.push(h.value);for(_=(e=p).length;l<_;l++)m(l,l,l===e.length-1)}else n=void 0,Object.keys(e).forEach((function(e){void 0!==n&&m(n,l-1),n=e,l++})),void 0!==n&&m(n,l-1,!0);return 0===l&&(u=i(this)),u}))},e.exports=t.default}).call(this,n(11))},function(e,t,n){"use strict";t.__esModule=!0;var a,r=n(13),s=(a=r)&&a.__esModule?a:{default:a};t.default=function(e){e.registerHelper("helperMissing",(function(){if(1!==arguments.length)throw new s.default('Missing helper: "'+arguments[arguments.length-1].name+'"')}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0;var a,r=n(7),s=n(13),i=(a=s)&&a.__esModule?a:{default:a};t.default=function(e){e.registerHelper("if",(function(e,t){if(2!=arguments.length)throw new i.default("#if requires exactly one argument");return r.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||r.isEmpty(e)?t.inverse(this):t.fn(this)})),e.registerHelper("unless",(function(t,n){if(2!=arguments.length)throw new i.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:n.inverse,inverse:n.fn,hash:n.hash})}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){e.registerHelper("log",(function(){for(var t=[void 0],n=arguments[arguments.length-1],a=0;a<arguments.length-1;a++)t.push(arguments[a]);var r=1;null!=n.hash.level?r=n.hash.level:n.data&&null!=n.data.level&&(r=n.data.level),t[0]=r,e.log.apply(e,t)}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){e.registerHelper("lookup",(function(e,t,n){return e?n.lookupProperty(e,t):e}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0;var a,r=n(7),s=n(13),i=(a=s)&&a.__esModule?a:{default:a};t.default=function(e){e.registerHelper("with",(function(e,t){if(2!=arguments.length)throw new i.default("#with requires exactly one argument");r.isFunction(e)&&(e=e.call(this));var n=t.fn;if(r.isEmpty(e))return t.inverse(this);var a=t.data;return t.data&&t.ids&&((a=r.createFrame(t.data)).contextPath=r.appendContextPath(t.data.contextPath,t.ids[0])),n(e,{data:a,blockParams:r.blockParams([e],[a&&a.contextPath])})}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.registerDefaultDecorators=function(e){s.default(e)};var a,r=n(287),s=(a=r)&&a.__esModule?a:{default:a}},function(e,t,n){"use strict";t.__esModule=!0;var a=n(7);t.default=function(e){e.registerDecorator("inline",(function(e,t,n,r){var s=e;return t.partials||(t.partials={},s=function(r,s){var i=n.partials;n.partials=a.extend({},i,t.partials);var o=e(r,s);return n.partials=i,o}),t.partials[r.args[0]]=r.fn,s}))},e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.createNewLookupObject=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return a.extend.apply(void 0,[Object.create(null)].concat(t))};var a=n(7)},function(e,t,n){"use strict";function a(e){this.string=e}t.__esModule=!0,a.prototype.toString=a.prototype.toHTML=function(){return""+this.string},t.default=a,e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0,t.checkRevision=function(e){var t=e&&e[0]||1,n=o.COMPILER_REVISION;if(t>=o.LAST_COMPATIBLE_COMPILER_REVISION&&t<=o.COMPILER_REVISION)return;if(t<o.LAST_COMPATIBLE_COMPILER_REVISION){var a=o.REVISION_CHANGES[n],r=o.REVISION_CHANGES[t];throw new i.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+a+") or downgrade your runtime to an older version ("+r+").")}throw new i.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")},t.template=function(e,t){if(!t)throw new i.default("No environment passed to template");if(!e||!e.main)throw new i.default("Unknown template object: "+typeof e);e.main.decorator=e.main_d,t.VM.checkRevision(e.compiler);var n=e.compiler&&7===e.compiler[0];var a={strict:function(e,t,n){if(!e||!(t in e))throw new i.default('"'+t+'" not defined in '+e,{loc:n});return e[t]},lookupProperty:function(e,t){var n=e[t];return null==n||Object.prototype.hasOwnProperty.call(e,t)||d.resultIsAllowed(n,a.protoAccessControl,t)?n:void 0},lookup:function(e,t){for(var n=e.length,r=0;r<n;r++){if(null!=(e[r]&&a.lookupProperty(e[r],t)))return e[r][t]}},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:r.escapeExpression,invokePartial:function(n,a,s){s.hash&&(a=r.extend({},a,s.hash),s.ids&&(s.ids[0]=!0)),n=t.VM.resolvePartial.call(this,n,a,s);var o=r.extend({},s,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),l=t.VM.invokePartial.call(this,n,a,o);if(null==l&&t.compile&&(s.partials[s.name]=t.compile(n,e.compilerOptions,t),l=s.partials[s.name](a,o)),null!=l){if(s.indent){for(var u=l.split("\n"),d=0,c=u.length;d<c&&(u[d]||d+1!==c);d++)u[d]=s.indent+u[d];l=u.join("\n")}return l}throw new i.default("The partial "+s.name+" could not be compiled when running in runtime-only mode")},fn:function(t){var n=e[t];return n.decorator=e[t+"_d"],n},programs:[],program:function(e,t,n,a,r){var s=this.programs[e],i=this.fn(e);return t||r||a||n?s=c(this,e,i,t,n,a,r):s||(s=this.programs[e]=c(this,e,i)),s},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return e&&t&&e!==t&&(n=r.extend({},t,e)),n},nullContext:Object.seal({}),noop:t.VM.noop,compilerInfo:e.compiler};function s(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],r=n.data;s._setup(n),!n.partial&&e.useData&&(r=_(t,r));var i=void 0,o=e.useBlockParams?[]:void 0;function l(t){return""+e.main(a,t,a.helpers,a.partials,r,o,i)}return e.useDepths&&(i=n.depths?t!=n.depths[0]?[t].concat(n.depths):n.depths:[t]),(l=p(e.main,l,a,n.depths||[],r,o))(t,n)}return s.isTop=!0,s._setup=function(s){if(s.partial)a.protoAccessControl=s.protoAccessControl,a.helpers=s.helpers,a.partials=s.partials,a.decorators=s.decorators,a.hooks=s.hooks;else{var i=r.extend({},t.helpers,s.helpers);!function(e,t){Object.keys(e).forEach((function(n){var a=e[n];e[n]=function(e,t){var n=t.lookupProperty;return u.wrapHelper(e,(function(e){return r.extend({lookupProperty:n},e)}))}(a,t)}))}(i,a),a.helpers=i,e.usePartial&&(a.partials=a.mergeIfNeeded(s.partials,t.partials)),(e.usePartial||e.useDecorators)&&(a.decorators=r.extend({},t.decorators,s.decorators)),a.hooks={},a.protoAccessControl=d.createProtoAccessControl(s);var o=s.allowCallsToHelperMissing||n;l.moveHelperToHooks(a,"helperMissing",o),l.moveHelperToHooks(a,"blockHelperMissing",o)}},s._child=function(t,n,r,s){if(e.useBlockParams&&!r)throw new i.default("must pass block params");if(e.useDepths&&!s)throw new i.default("must pass parent depths");return c(a,t,e[t],n,0,r,s)},s},t.wrapProgram=c,t.resolvePartial=function(e,t,n){e?e.call||n.name||(n.name=e,e=n.partials[e]):e="@partial-block"===n.name?n.data["partial-block"]:n.partials[n.name];return e},t.invokePartial=function(e,t,n){var a=n.data&&n.data["partial-block"];n.partial=!0,n.ids&&(n.data.contextPath=n.ids[0]||n.data.contextPath);var s=void 0;n.fn&&n.fn!==m&&function(){n.data=o.createFrame(n.data);var e=n.fn;s=n.data["partial-block"]=function(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];return n.data=o.createFrame(n.data),n.data["partial-block"]=a,e(t,n)},e.partials&&(n.partials=r.extend({},n.partials,e.partials))}();void 0===e&&s&&(e=s);if(void 0===e)throw new i.default("The partial "+n.name+" could not be found");if(e instanceof Function)return e(t,n)},t.noop=m;var a,r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(7)),s=n(13),i=(a=s)&&a.__esModule?a:{default:a},o=n(83),l=n(84),u=n(291),d=n(86);function c(e,t,n,a,r,s,i){function o(t){var r=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],o=i;return!i||t==i[0]||t===e.nullContext&&null===i[0]||(o=[t].concat(i)),n(e,t,e.helpers,e.partials,r.data||a,s&&[r.blockParams].concat(s),o)}return(o=p(n,o,e,i,a,s)).program=t,o.depth=i?i.length:0,o.blockParams=r||0,o}function m(){return""}function _(e,t){return t&&"root"in t||((t=t?o.createFrame(t):{}).root=e),t}function p(e,t,n,a,s,i){if(e.decorator){var o={};t=e.decorator(t,o,n,a&&a[0],s,i,a),r.extend(t,o)}return t}},function(e,t,n){"use strict";t.__esModule=!0,t.wrapHelper=function(e,t){if("function"!=typeof e)return e;return function(){var n=arguments[arguments.length-1];return arguments[arguments.length-1]=t(n),e.apply(this,arguments)}}},function(e,t,n){"use strict";(function(n){t.__esModule=!0,t.default=function(e){var t=void 0!==n?n:window,a=t.Handlebars;e.noConflict=function(){return t.Handlebars===e&&(t.Handlebars=a),e}},e.exports=t.default}).call(this,n(11))},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<span class="avatar-name-wrapper" data-user="'+l("function"==typeof(s=null!=(s=u(n,"id")||(null!=t?u(t,"id"):t))?s:o)?s.call(i,{name:"id",hash:{},data:r,loc:{start:{line:1,column:45},end:{line:1,column:51}}}):s)+'"><div class="avatar" data-user="'+l("function"==typeof(s=null!=(s=u(n,"id")||(null!=t?u(t,"id"):t))?s:o)?s.call(i,{name:"id",hash:{},data:r,loc:{start:{line:1,column:84},end:{line:1,column:90}}}):s)+'" data-user-display-name="'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:116},end:{line:1,column:124}}}):s)+'"></div><strong>'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:140},end:{line:1,column:148}}}):s)+"</strong></span>\n"},useData:!0})},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<strong title="'+l("function"==typeof(s=null!=(s=u(n,"id")||(null!=t?u(t,"id"):t))?s:o)?s.call(i,{name:"id",hash:{},data:r,loc:{start:{line:1,column:15},end:{line:1,column:21}}}):s)+"@"+l("function"==typeof(s=null!=(s=u(n,"server")||(null!=t?u(t,"server"):t))?s:o)?s.call(i,{name:"server",hash:{},data:r,loc:{start:{line:1,column:22},end:{line:1,column:32}}}):s)+'" class="has-tooltip">'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:54},end:{line:1,column:62}}}):s)+"</strong>\n"},useData:!0})},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<strong>"+e.escapeExpression("function"==typeof(s=null!=(s=i(n,"name")||(null!=t?i(t,"name"):t))?s:e.hooks.helperMissing)?s.call(null!=t?t:e.nullContext||{},{name:"name",hash:{},data:r,loc:{start:{line:1,column:8},end:{line:1,column:16}}}):s)+"</strong>\n"},useData:!0})},function(e,t,n){var a=n(19);e.exports=(a.default||a).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,a,r){var s,i=null!=t?t:e.nullContext||{},o=e.hooks.helperMissing,l=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+l("function"==typeof(s=null!=(s=u(n,"link")||(null!=t?u(t,"link"):t))?s:o)?s.call(i,{name:"link",hash:{},data:r,loc:{start:{line:1,column:9},end:{line:1,column:17}}}):s)+'">'+l("function"==typeof(s=null!=(s=u(n,"name")||(null!=t?u(t,"name"):t))?s:o)?s.call(i,{name:"name",hash:{},data:r,loc:{start:{line:1,column:19},end:{line:1,column:27}}}):s)+"</a>\n"},useData:!0})},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var a={"./af":87,"./af.js":87,"./ar":88,"./ar-dz":89,"./ar-dz.js":89,"./ar-kw":90,"./ar-kw.js":90,"./ar-ly":91,"./ar-ly.js":91,"./ar-ma":92,"./ar-ma.js":92,"./ar-sa":93,"./ar-sa.js":93,"./ar-tn":94,"./ar-tn.js":94,"./ar.js":88,"./az":95,"./az.js":95,"./be":96,"./be.js":96,"./bg":97,"./bg.js":97,"./bm":98,"./bm.js":98,"./bn":99,"./bn.js":99,"./bo":100,"./bo.js":100,"./br":101,"./br.js":101,"./bs":102,"./bs.js":102,"./ca":103,"./ca.js":103,"./cs":104,"./cs.js":104,"./cv":105,"./cv.js":105,"./cy":106,"./cy.js":106,"./da":107,"./da.js":107,"./de":108,"./de-at":109,"./de-at.js":109,"./de-ch":110,"./de-ch.js":110,"./de.js":108,"./dv":111,"./dv.js":111,"./el":112,"./el.js":112,"./en-SG":113,"./en-SG.js":113,"./en-au":114,"./en-au.js":114,"./en-ca":115,"./en-ca.js":115,"./en-gb":116,"./en-gb.js":116,"./en-ie":117,"./en-ie.js":117,"./en-il":118,"./en-il.js":118,"./en-nz":119,"./en-nz.js":119,"./eo":120,"./eo.js":120,"./es":121,"./es-do":122,"./es-do.js":122,"./es-us":123,"./es-us.js":123,"./es.js":121,"./et":124,"./et.js":124,"./eu":125,"./eu.js":125,"./fa":126,"./fa.js":126,"./fi":127,"./fi.js":127,"./fo":128,"./fo.js":128,"./fr":129,"./fr-ca":130,"./fr-ca.js":130,"./fr-ch":131,"./fr-ch.js":131,"./fr.js":129,"./fy":132,"./fy.js":132,"./ga":133,"./ga.js":133,"./gd":134,"./gd.js":134,"./gl":135,"./gl.js":135,"./gom-latn":136,"./gom-latn.js":136,"./gu":137,"./gu.js":137,"./he":138,"./he.js":138,"./hi":139,"./hi.js":139,"./hr":140,"./hr.js":140,"./hu":141,"./hu.js":141,"./hy-am":142,"./hy-am.js":142,"./id":143,"./id.js":143,"./is":144,"./is.js":144,"./it":145,"./it-ch":146,"./it-ch.js":146,"./it.js":145,"./ja":147,"./ja.js":147,"./jv":148,"./jv.js":148,"./ka":149,"./ka.js":149,"./kk":150,"./kk.js":150,"./km":151,"./km.js":151,"./kn":152,"./kn.js":152,"./ko":153,"./ko.js":153,"./ku":154,"./ku.js":154,"./ky":155,"./ky.js":155,"./lb":156,"./lb.js":156,"./lo":157,"./lo.js":157,"./lt":158,"./lt.js":158,"./lv":159,"./lv.js":159,"./me":160,"./me.js":160,"./mi":161,"./mi.js":161,"./mk":162,"./mk.js":162,"./ml":163,"./ml.js":163,"./mn":164,"./mn.js":164,"./mr":165,"./mr.js":165,"./ms":166,"./ms-my":167,"./ms-my.js":167,"./ms.js":166,"./mt":168,"./mt.js":168,"./my":169,"./my.js":169,"./nb":170,"./nb.js":170,"./ne":171,"./ne.js":171,"./nl":172,"./nl-be":173,"./nl-be.js":173,"./nl.js":172,"./nn":174,"./nn.js":174,"./pa-in":175,"./pa-in.js":175,"./pl":176,"./pl.js":176,"./pt":177,"./pt-br":178,"./pt-br.js":178,"./pt.js":177,"./ro":179,"./ro.js":179,"./ru":180,"./ru.js":180,"./sd":181,"./sd.js":181,"./se":182,"./se.js":182,"./si":183,"./si.js":183,"./sk":184,"./sk.js":184,"./sl":185,"./sl.js":185,"./sq":186,"./sq.js":186,"./sr":187,"./sr-cyrl":188,"./sr-cyrl.js":188,"./sr.js":187,"./ss":189,"./ss.js":189,"./sv":190,"./sv.js":190,"./sw":191,"./sw.js":191,"./ta":192,"./ta.js":192,"./te":193,"./te.js":193,"./tet":194,"./tet.js":194,"./tg":195,"./tg.js":195,"./th":196,"./th.js":196,"./tl-ph":197,"./tl-ph.js":197,"./tlh":198,"./tlh.js":198,"./tr":199,"./tr.js":199,"./tzl":200,"./tzl.js":200,"./tzm":201,"./tzm-latn":202,"./tzm-latn.js":202,"./tzm.js":201,"./ug-cn":203,"./ug-cn.js":203,"./uk":204,"./uk.js":204,"./ur":205,"./ur.js":205,"./uz":206,"./uz-latn":207,"./uz-latn.js":207,"./uz.js":206,"./vi":208,"./vi.js":208,"./x-pseudo":209,"./x-pseudo.js":209,"./yo":210,"./yo.js":210,"./zh-cn":211,"./zh-cn.js":211,"./zh-hk":212,"./zh-hk.js":212,"./zh-tw":213,"./zh-tw.js":213};function r(e){var t=s(e);return n(t)}function s(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}r.keys=function(){return Object.keys(a)},r.resolve=s,e.exports=r,r.id=298},function(e,t,n){"use strict";(function(t){var a=n(300),r=n(301);function s(e){e=e||{},this.catalogs={},this.locale="",this.domain="messages",this.listeners=[],this.sourceLocale="",e.sourceLocale&&("string"==typeof e.sourceLocale?this.sourceLocale=e.sourceLocale:this.warn("The `sourceLocale` option should be a string")),"debug"in e?this.debug=!0===e.debug:(void 0!==t&&t.env,this.debug=!1)}e.exports=s,s.prototype.on=function(e,t){this.listeners.push({eventName:e,callback:t})},s.prototype.off=function(e,t){this.listeners=this.listeners.filter((function(n){return!1==(n.eventName===e&&n.callback===t)}))},s.prototype.emit=function(e,t){for(var n=0;n<this.listeners.length;n++){var a=this.listeners[n];a.eventName===e&&a.callback(t)}},s.prototype.warn=function(e){this.debug&&console.warn(e),this.emit("error",e)},s.prototype.addTranslations=function(e,t,n){this.catalogs[e]||(this.catalogs[e]={}),this.catalogs[e][t]=n},s.prototype.setLocale=function(e){"string"==typeof e?(""===e.trim()&&this.warn("You called setLocale() with an empty value, which makes little sense."),e===this.sourceLocale||this.catalogs[e]||this.warn('You called setLocale() with "'+e+'", but no translations for that locale has been added.'),this.locale=e):this.warn("You called setLocale() with an argument of type "+typeof e+". The locale must be a string.")},s.prototype.setTextDomain=function(e){"string"==typeof e?(""===e.trim()&&this.warn("You called setTextDomain() with an empty `domain` value."),this.domain=e):this.warn("You called setTextDomain() with an argument of type "+typeof e+". The domain must be a string.")},s.prototype.gettext=function(e){return this.dnpgettext(this.domain,"",e)},s.prototype.dgettext=function(e,t){return this.dnpgettext(e,"",t)},s.prototype.ngettext=function(e,t,n){return this.dnpgettext(this.domain,"",e,t,n)},s.prototype.dngettext=function(e,t,n,a){return this.dnpgettext(e,"",t,n,a)},s.prototype.pgettext=function(e,t){return this.dnpgettext(this.domain,e,t)},s.prototype.dpgettext=function(e,t,n){return this.dnpgettext(e,t,n)},s.prototype.npgettext=function(e,t,n,a){return this.dnpgettext(this.domain,e,t,n,a)},s.prototype.dnpgettext=function(e,t,n,a,i){var o,l,u=n;if(t=t||"",isNaN(i)||1===i||(u=a||n),o=this._getTranslation(e,t,n)){if("number"==typeof i)"boolean"==typeof(l=(0,r[s.getLanguageCode(this.locale)].pluralsFunc)(i))&&(l=l?1:0);else l=0;return o.msgstr[l]||u}return this.sourceLocale&&this.locale===this.sourceLocale||this.warn('No translation was found for msgid "'+n+'" in msgctxt "'+t+'" and domain "'+e+'"'),u},s.prototype.getComment=function(e,t,n){var a;return(a=this._getTranslation(e,t,n))&&a.comments||{}},s.prototype._getTranslation=function(e,t,n){return t=t||"",a(this.catalogs,[this.locale,e,"translations",t,n])},s.getLanguageCode=function(e){return e.split(/[\-_]/)[0].toLowerCase()},s.prototype.textdomain=function(e){this.debug&&console.warn("textdomain(domain) was used to set locales in node-gettext v1. Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\n\n To read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\n\nThis warning will be removed in the final 2.0.0"),this.setTextDomain(e)},s.prototype.setlocale=function(e){this.setLocale(e)},s.prototype.addTextdomain=function(){console.error("addTextdomain() is deprecated.\n\n* To add translations, use addTranslations()\n* To set the default domain, use setTextDomain() (or its alias textdomain())\n\nTo read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x")}}).call(this,n(28))},function(e,t,n){(function(t){var n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/,r=/^\./,s=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,o=/^\[object .+?Constructor\]$/,l="object"==typeof t&&t&&t.Object===Object&&t,u="object"==typeof self&&self&&self.Object===Object&&self,d=l||u||Function("return this")();var c,m=Array.prototype,_=Function.prototype,p=Object.prototype,f=d["__core-js_shared__"],h=(c=/[^.]+$/.exec(f&&f.keys&&f.keys.IE_PROTO||""))?"Symbol(src)_1."+c:"",y=_.toString,M=p.hasOwnProperty,v=p.toString,g=RegExp("^"+y.call(M).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),L=d.Symbol,Y=m.splice,T=P(d,"Map"),k=P(Object,"create"),w=L?L.prototype:void 0,D=w?w.toString:void 0;function b(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}function x(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}function S(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}function j(e,t){for(var n,a,r=e.length;r--;)if((n=e[r][0])===(a=t)||n!=n&&a!=a)return r;return-1}function H(e,t){for(var r,s=0,i=(t=function(e,t){if(N(e))return!1;var r=typeof e;if("number"==r||"symbol"==r||"boolean"==r||null==e||R(e))return!0;return a.test(e)||!n.test(e)||null!=t&&e in Object(t)}(t,e)?[t]:N(r=t)?r:A(r)).length;null!=e&&s<i;)e=e[F(t[s++])];return s&&s==i?e:void 0}function O(e){return!(!I(e)||(t=e,h&&h in t))&&(function(e){var t=I(e)?v.call(e):"";return"[object Function]"==t||"[object GeneratorFunction]"==t}(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?g:o).test(function(e){if(null!=e){try{return y.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e));var t}function E(e,t){var n,a,r=e.__data__;return("string"==(a=typeof(n=t))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof t?"string":"hash"]:r.map}function P(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return O(n)?n:void 0}b.prototype.clear=function(){this.__data__=k?k(null):{}},b.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},b.prototype.get=function(e){var t=this.__data__;if(k){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return M.call(t,e)?t[e]:void 0},b.prototype.has=function(e){var t=this.__data__;return k?void 0!==t[e]:M.call(t,e)},b.prototype.set=function(e,t){return this.__data__[e]=k&&void 0===t?"__lodash_hash_undefined__":t,this},x.prototype.clear=function(){this.__data__=[]},x.prototype.delete=function(e){var t=this.__data__,n=j(t,e);return!(n<0)&&(n==t.length-1?t.pop():Y.call(t,n,1),!0)},x.prototype.get=function(e){var t=this.__data__,n=j(t,e);return n<0?void 0:t[n][1]},x.prototype.has=function(e){return j(this.__data__,e)>-1},x.prototype.set=function(e,t){var n=this.__data__,a=j(n,e);return a<0?n.push([e,t]):n[a][1]=t,this},S.prototype.clear=function(){this.__data__={hash:new b,map:new(T||x),string:new b}},S.prototype.delete=function(e){return E(this,e).delete(e)},S.prototype.get=function(e){return E(this,e).get(e)},S.prototype.has=function(e){return E(this,e).has(e)},S.prototype.set=function(e,t){return E(this,e).set(e,t),this};var A=C((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(R(e))return D?D.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(t);var n=[];return r.test(e)&&n.push(""),e.replace(s,(function(e,t,a,r){n.push(a?r.replace(i,"$1"):t||e)})),n}));function F(e){if("string"==typeof e||R(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function C(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var a=arguments,r=t?t.apply(this,a):a[0],s=n.cache;if(s.has(r))return s.get(r);var i=e.apply(this,a);return n.cache=s.set(r,i),i};return n.cache=new(C.Cache||S),n}C.Cache=S;var N=Array.isArray;function I(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function R(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==v.call(e)}e.exports=function(e,t,n){var a=null==e?void 0:H(e,t);return void 0===a?n:a}}).call(this,n(11))},function(e,t,n){"use strict";e.exports={ach:{name:"Acholi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},af:{name:"Afrikaans",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ak:{name:"Akan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},am:{name:"Amharic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},an:{name:"Aragonese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ar:{name:"Arabic",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2},{plural:3,sample:3},{plural:4,sample:11},{plural:5,sample:100}],nplurals:6,pluralsText:"nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)",pluralsFunc:function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5}},arn:{name:"Mapudungun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},ast:{name:"Asturian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ay:{name:"Aymará",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},az:{name:"Azerbaijani",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},be:{name:"Belarusian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},bg:{name:"Bulgarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},bn:{name:"Bengali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},bo:{name:"Tibetan",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},br:{name:"Breton",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},brx:{name:"Bodo",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},bs:{name:"Bosnian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},ca:{name:"Catalan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},cgg:{name:"Chiga",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},cs:{name:"Czech",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e>=2&&e<=4?1:2}},csb:{name:"Kashubian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},cy:{name:"Welsh",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:8}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)",pluralsFunc:function(e){return 1===e?0:2===e?1:8!==e&&11!==e?2:3}},da:{name:"Danish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},de:{name:"German",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},doi:{name:"Dogri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},dz:{name:"Dzongkha",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},el:{name:"Greek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},en:{name:"English",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},eo:{name:"Esperanto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},es:{name:"Spanish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},et:{name:"Estonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},eu:{name:"Basque",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fa:{name:"Persian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ff:{name:"Fulah",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fi:{name:"Finnish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fil:{name:"Filipino",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},fo:{name:"Faroese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fr:{name:"French",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},fur:{name:"Friulian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},fy:{name:"Frisian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ga:{name:"Irish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:7},{plural:4,sample:11}],nplurals:5,pluralsText:"nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)",pluralsFunc:function(e){return 1===e?0:2===e?1:e<7?2:e<11?3:4}},gd:{name:"Scottish Gaelic",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)",pluralsFunc:function(e){return 1===e||11===e?0:2===e||12===e?1:e>2&&e<20?2:3}},gl:{name:"Galician",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},gu:{name:"Gujarati",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},gun:{name:"Gun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},ha:{name:"Hausa",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},he:{name:"Hebrew",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hi:{name:"Hindi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hne:{name:"Chhattisgarhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hr:{name:"Croatian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},hu:{name:"Hungarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},hy:{name:"Armenian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},id:{name:"Indonesian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},is:{name:"Icelandic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)",pluralsFunc:function(e){return e%10!=1||e%100==11}},it:{name:"Italian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ja:{name:"Japanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jbo:{name:"Lojban",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jv:{name:"Javanese",examples:[{plural:0,sample:0},{plural:1,sample:1}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 0)",pluralsFunc:function(e){return 0!==e}},ka:{name:"Georgian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kk:{name:"Kazakh",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},km:{name:"Khmer",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kn:{name:"Kannada",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ko:{name:"Korean",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ku:{name:"Kurdish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},kw:{name:"Cornish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:4}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)",pluralsFunc:function(e){return 1===e?0:2===e?1:3===e?2:3}},ky:{name:"Kyrgyz",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lb:{name:"Letzeburgesch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ln:{name:"Lingala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},lo:{name:"Lao",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lt:{name:"Lithuanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:10}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2}},lv:{name:"Latvian",examples:[{plural:2,sample:0},{plural:0,sample:1},{plural:1,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:0!==e?1:2}},mai:{name:"Maithili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mfe:{name:"Mauritian Creole",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},mg:{name:"Malagasy",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},mi:{name:"Maori",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},mk:{name:"Macedonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)",pluralsFunc:function(e){return 1===e||e%10==1?0:1}},ml:{name:"Malayalam",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mn:{name:"Mongolian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mni:{name:"Manipuri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},mnk:{name:"Mandinka",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)",pluralsFunc:function(e){return 0===e?0:1===e?1:2}},mr:{name:"Marathi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ms:{name:"Malay",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},mt:{name:"Maltese",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:11},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)",pluralsFunc:function(e){return 1===e?0:0===e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3}},my:{name:"Burmese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},nah:{name:"Nahuatl",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nap:{name:"Neapolitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nb:{name:"Norwegian Bokmal",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ne:{name:"Nepali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nl:{name:"Dutch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nn:{name:"Norwegian Nynorsk",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},no:{name:"Norwegian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},nso:{name:"Northern Sotho",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},oc:{name:"Occitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},or:{name:"Oriya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pa:{name:"Punjabi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pap:{name:"Papiamento",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pl:{name:"Polish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},pms:{name:"Piemontese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ps:{name:"Pashto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},pt:{name:"Portuguese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},rm:{name:"Romansh",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ro:{name:"Romanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:20}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:0===e||e%100>0&&e%100<20?1:2}},ru:{name:"Russian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},rw:{name:"Kinyarwanda",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sah:{name:"Yakut",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sat:{name:"Santali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sco:{name:"Scots",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sd:{name:"Sindhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},se:{name:"Northern Sami",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},si:{name:"Sinhala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sk:{name:"Slovak",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(e){return 1===e?0:e>=2&&e<=4?1:2}},sl:{name:"Slovenian",examples:[{plural:1,sample:1},{plural:2,sample:2},{plural:3,sample:3},{plural:0,sample:5}],nplurals:4,pluralsText:"nplurals = 4; plural = (n % 100 === 1 ? 1 : n % 100 === 2 ? 2 : n % 100 === 3 || n % 100 === 4 ? 3 : 0)",pluralsFunc:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0}},so:{name:"Somali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},son:{name:"Songhay",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sq:{name:"Albanian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sr:{name:"Serbian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},su:{name:"Sundanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sv:{name:"Swedish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},sw:{name:"Swahili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},ta:{name:"Tamil",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},te:{name:"Telugu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},tg:{name:"Tajik",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},th:{name:"Thai",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ti:{name:"Tigrinya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},tk:{name:"Turkmen",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},tr:{name:"Turkish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},tt:{name:"Tatar",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ug:{name:"Uyghur",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},uk:{name:"Ukrainian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2}},ur:{name:"Urdu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},uz:{name:"Uzbek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},vi:{name:"Vietnamese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},wa:{name:"Walloon",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(e){return e>1}},wo:{name:"Wolof",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},yo:{name:"Yoruba",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(e){return 1!==e}},zh:{name:"Chinese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getLocale=function(){if("undefined"==typeof OC)return console.warn("No OC found"),"en";return OC.getLocale()},t.getLanguage=function(){if("undefined"==typeof OC)return console.warn("No OC found"),"en";return OC.getLanguage()},t.translate=function(e,t,n,a,r){if("undefined"==typeof OC)return console.warn("No OC found"),t;return OC.L10N.translate(e,t,n,a,r)},t.translatePlural=function(e,t,n,a,r,s){if("undefined"==typeof OC)return console.warn("No OC found"),t;return OC.L10N.translatePlural(e,t,n,a,r,s)},t.getFirstDay=function(){if(void 0===window.firstDay)return console.warn("No firstDay found"),1;return window.firstDay},t.getDayNames=function(){if(void 0===window.dayNames)return console.warn("No dayNames found"),["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];return window.dayNames},t.getDayNamesShort=function(){if(void 0===window.dayNamesShort)return console.warn("No dayNamesShort found"),["Sun.","Mon.","Tue.","Wed.","Thu.","Fri.","Sat."];return window.dayNamesShort},t.getDayNamesMin=function(){if(void 0===window.dayNamesMin)return console.warn("No dayNamesMin found"),["Su","Mo","Tu","We","Th","Fr","Sa"];return window.dayNamesMin},t.getMonthNames=function(){if(void 0===window.monthNames)return console.warn("No monthNames found"),["January","February","March","April","May","June","July","August","September","October","November","December"];return window.monthNames},t.getMonthNamesShort=function(){if(void 0===window.monthNamesShort)return console.warn("No monthNamesShort found"),["Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."];return window.monthNamesShort}},function(e,t,n){"use strict";var a=n(29);n.n(a).a},function(e,t,n){(t=n(305)(!1)).push([e.i,"\n.fade-enter-active[data-v-6e2a9f70],\n.fade-leave-active[data-v-6e2a9f70],\n.fade-collapse-enter-active[data-v-6e2a9f70],\n.fade-collapse-leave-active[data-v-6e2a9f70] {\n\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\n}\n.fade-collapse-enter[data-v-6e2a9f70],\n.fade-collapse-leave-to[data-v-6e2a9f70] {\n\topacity: 0;\n\tmax-height: 0;\n}\n.fade-enter[data-v-6e2a9f70],\n.fade-leave-to[data-v-6e2a9f70] {\n\topacity: 0;\n}\n",""]),e.exports=t},function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||"",a=e[3];if(!a)return n;if(t&&"function"==typeof btoa){var r=(i=a,o=btoa(unescape(encodeURIComponent(JSON.stringify(i)))),l="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),"/*# ".concat(l," */")),s=a.sources.map((function(e){return"/*# sourceURL=".concat(a.sourceRoot||"").concat(e," */")}));return[n].concat(s).concat([r]).join("\n")}var i,o,l;return[n].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,a){"string"==typeof e&&(e=[[null,e,""]]);var r={};if(a)for(var s=0;s<this.length;s++){var i=this[s][0];null!=i&&(r[i]=!0)}for(var o=0;o<e.length;o++){var l=[].concat(e[o]);a&&r[l[0]]||(n&&(l[2]?l[2]="".concat(n," and ").concat(l[2]):l[2]=n),t.push(l))}},t}},function(e,t,n){(function(e){var a=void 0!==e&&e||"undefined"!=typeof self&&self||window,r=Function.prototype.apply;function s(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new s(r.call(setTimeout,a,arguments),clearTimeout)},t.setInterval=function(){return new s(r.call(setInterval,a,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},s.prototype.unref=s.prototype.ref=function(){},s.prototype.close=function(){this._clearFn.call(a,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(307),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(11))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var a,r,s,i,o,l=1,u={},d=!1,c=e.document,m=Object.getPrototypeOf&&Object.getPrototypeOf(e);m=m&&m.setTimeout?m:e,"[object process]"==={}.toString.call(e.process)?a=function(e){t.nextTick((function(){p(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((s=new MessageChannel).port1.onmessage=function(e){p(e.data)},a=function(e){s.port2.postMessage(e)}):c&&"onreadystatechange"in c.createElement("script")?(r=c.documentElement,a=function(e){var t=c.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):a=function(e){setTimeout(p,0,e)}:(i="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&p(+t.data.slice(i.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),a=function(t){e.postMessage(i+t,"*")}),m.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var r={callback:e,args:t};return u[l]=r,a(l),l++},m.clearImmediate=_}function _(e){delete u[e]}function p(e){if(d)setTimeout(p,0,e);else{var t=u[e];if(t){d=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{_(e),d=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(11),n(28))},function(e,a,r){"use strict";r.r(a);var s=r(16),i=r(14),o=r.n(i);function l(e,t,n,a,r,s,i){try{var o=e[s](i),l=o.value}catch(e){return void n(e)}o.done?t(l):Promise.resolve(l).then(a,r)}function u(e,t,n,a,r,s,i,o){var l,u="function"==typeof e?e.options:e;if(t&&(u.render=t,u.staticRenderFns=n,u._compiled=!0),a&&(u.functional=!0),s&&(u._scopeId="data-v-"+s),i?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},u._ssrRegister=l):r&&(l=o?function(){r.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:r),l)if(u.functional){u._injectStyles=l;var d=u.render;u.render=function(e,t){return l.call(t),d(e,t)}}else{var c=u.beforeCreate;u.beforeCreate=c?[].concat(c,l):[l]}return{exports:e,options:u}}var d=u({name:"Action",props:{label:{type:String,default:"",required:!0},link:{type:String,default:"",required:!0},type:{type:String,default:"",required:!0},primary:{type:Boolean,default:!1,required:!0}},methods:{onClickActionButton:function(){var e,n=this;return(e=regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("WEB"!==(a=n.type||"GET")){e.next=4;break}return OC.redirect(n.link),e.abrupt("return");case 4:return e.prev=4,e.next=7,o()({method:a,url:n.link});case 7:n.$parent._$el.fadeOut(OC.menuSpeed),n.$parent.$emit("remove");try{$("body").trigger(new $.Event("OCA.Notification.Action",{notification:n.$parent,action:{url:n.link,type:a}}))}catch(e){console.error(e)}e.next=16;break;case 12:e.prev=12,e.t0=e.catch(4),console.error("Failed to perform action",e.t0),OC.Notification.showTemporary(t("notifications","Failed to perform action"));case 16:case"end":return e.stop()}}),e,null,[[4,12]])})),function(){var t=this,n=arguments;return new Promise((function(a,r){var s=e.apply(t,n);function i(e){l(s,a,r,i,o,"next",e)}function o(e){l(s,a,r,i,o,"throw",e)}i(void 0)}))})()}}},(function(){var e=this.$createElement;return(this._self._c||e)("button",{staticClass:"action-button pull-right",class:{primary:this.primary},attrs:{"data-type":this.type,"data-href":this.link},on:{click:this.onClickActionButton}},[this._v("\n\t"+this._s(this.label)+"\n")])}),[],!1,null,null,null).exports,c=r(20),m=r.n(c),_={fileTemplate:r(277),userLocalTemplate:r(293),userRemoteTemplate:r(294),unknownTemplate:r(295),unknownLinkTemplate:r(296),parseMessage:function(e,t){var n=this,a=(e=m()(e)).match(/\{([a-z\-_0-9]+)\}/gi);return a?(a.forEach((function(a){if(a=a.substring(1,a.length-1),Object.prototype.hasOwnProperty.call(t,a)&&t[a]){var r=n.parseParameter(t[a]);e=e.replace("{"+a+"}",r)}else console.error("Potential malformed ROS string: parameter {"+a+"} was found in the string but is missing from the parameter list")})),e.replace(new RegExp("\n","g"),"<br>")):e},parseParameter:function(e){switch(e.type){case"file":return this.parseFileParameter(e).trim("\n");case"user":return void 0===e.server?this.userLocalTemplate(e).trim("\n"):this.userRemoteTemplate(e).trim("\n");default:return void 0!==e.link?this.unknownLinkTemplate(e).trim("\n"):this.unknownTemplate(e).trim("\n")}},parseFileParameter:function(e){var n=e.path.lastIndexOf("/"),a=e.path.indexOf("/");return e.path=e.path.substring(0===a?1:0,n),this.fileTemplate(Object.assign({},e,{title:0===e.path.length?"":t("notifications","in {path}",e)}))}},p=r(214),f=r.n(p),h=u({name:"Notification",components:{Action:d},props:{notificationId:{type:Number,default:-1,required:!0},datetime:{type:String,default:"",required:!0},app:{type:String,default:"",required:!0},icon:{type:String,default:"",required:!0},link:{type:String,default:"",required:!0},user:{type:String,default:"",required:!0},message:{type:String,default:"",required:!0},messageRich:{type:String,default:"",required:!0},messageRichParameters:{type:[Object,Array],default:function(){return{}},required:!0},subject:{type:String,default:"",required:!0},subjectRich:{type:String,default:"",required:!0},subjectRichParameters:{type:[Object,Array],default:function(){return{}},required:!0},objectType:{type:String,default:"",required:!0},objectId:{type:String,default:"",required:!0},actions:{type:Array,default:function(){return[]},required:!0},index:{type:Number,default:-1,required:!0}},data:function(){return{showFullMessage:!1}},_$el:null,computed:{timestamp:function(){return 1e3*f()(this.datetime).format("X")},absoluteDate:function(){return OC.Util.formatDate(this.timestamp)},relativeDate:function(){return OC.Util.relativeModifiedDate(this.timestamp)},useLink:function(){return this.link&&-1===this.renderedSubject.indexOf("<a ")},renderedSubject:function(){return 0!==this.subjectRich.length?_.parseMessage(this.subjectRich.replace(new RegExp("\n","g")," "),this.subjectRichParameters):m()(this.subject).replace(new RegExp("\n","g")," ")},isCollapsedMessage:function(){return this.message.length>200&&!this.showFullMessage},renderedMessage:function(){return 0!==this.messageRich.length?_.parseMessage(this.messageRich,this.messageRichParameters):m()(this.message).replace(new RegExp("\n","g"),"<br>")}},mounted:function(){this._$el=$(this.$el),this._$el.find(".avatar").each((function(){var e=$(this);e.data("user-display-name")?e.avatar(e.data("user"),21,void 0,!1,void 0,e.data("user-display-name")):e.avatar(e.data("user"),21)})),this._$el.find(".avatar-name-wrapper").each((function(){var e=$(this),t=e.find(".avatar"),n=e.find("strong");$.merge(t,n).contactsMenu(e.data("user"),0,e)})),this._$el.find(".has-tooltip").tooltip({placement:"bottom"}),this.$parent.$parent.backgroundFetching&&this.$parent.$parent.webNotificationsGranted&&this._createWebNotification()},methods:{onClickMessage:function(e){e.target.classList.contains("message-container")&&(this.showFullMessage=!this.showFullMessage)},onDismissNotification:function(){var e=this;o.a.delete(OC.linkToOCS("apps/notifications/api/v2",2)+"notifications/"+this.notificationId).then((function(){e.$emit("remove",e.index)})).catch((function(){OC.Notification.showTemporary(t("notifications","Failed to dismiss notification"))}))},_createWebNotification:function(){var e=new Notification(this.subject,{title:this.subject,lang:OC.getLocale(),body:this.message,icon:this.icon,tag:this.notificationId});this.link&&(e.onclick=function(e){e.preventDefault(),window.location.href=this.link}.bind(this)),setTimeout(e.close.bind(e),5e3)}}},(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"notification",attrs:{"data-id":e.notificationId,"data-timestamp":e.timestamp}},[n("div",{staticClass:"notification-heading"},[n("span",{staticClass:"notification-time has-tooltip live-relative-timestamp",attrs:{"data-timestamp":e.timestamp,title:e.absoluteDate}},[e._v(e._s(e.relativeDate))]),e._v(" "),n("div",{staticClass:"notification-delete",on:{click:e.onDismissNotification}},[n("span",{staticClass:"icon icon-close svg",attrs:{title:e.t("notifications","Dismiss")}})])]),e._v(" "),e.useLink?n("a",{staticClass:"notification-subject full-subject-link",attrs:{href:e.link}},[e.icon?n("span",{staticClass:"image"},[n("img",{staticClass:"notification-icon",attrs:{src:e.icon}})]):e._e(),e._v(" "),n("span",{staticClass:"text",domProps:{innerHTML:e._s(e.renderedSubject)}})]):n("div",{staticClass:"notification-subject"},[e.icon?n("span",{staticClass:"image"},[n("img",{staticClass:"notification-icon",attrs:{src:e.icon}})]):e._e(),e._v(" "),n("span",{staticClass:"text",domProps:{innerHTML:e._s(e.renderedSubject)}})]),e._v(" "),e.message?n("div",{staticClass:"notification-message",on:{click:e.onClickMessage}},[n("div",{staticClass:"message-container",class:{collapsed:e.isCollapsedMessage},domProps:{innerHTML:e._s(e.renderedMessage)}}),e._v(" "),e.isCollapsedMessage?n("div",{staticClass:"notification-overflow"}):e._e()]):e._e(),e._v(" "),e.actions.length?n("div",{staticClass:"notification-actions"},e._l(e.actions,(function(t,a){return n("Action",e._b({key:a},"Action",t,!1))})),1):e._e()])}),[],!1,null,null,null).exports,y=r(30);function M(e,t,n,a,r,s,i){try{var o=e[s](i),l=o.value}catch(e){return void n(e)}o.done?t(l):Promise.resolve(l).then(a,r)}var v,g,L={name:"App",components:{Notification:h},data:function(){return{webNotificationsGranted:null,hadNotifications:!1,backgroundFetching:!1,shutdown:!1,notifications:[],lastETag:null,pollInterval:3e4,interval:null}},_$icon:null,computed:{iconPath:function(){var e="notifications";return(null===this.webNotificationsGranted||this.notifications.length)&&(this.isRedThemed()&&(e+="-red"),e+="-new"),this.invertedTheme()&&(e+="-dark"),OC.imagePath("notifications",e)}},mounted:function(){var e=this;this._$icon=$(this.$refs.icon),OC.registerMenu($(this.$refs.button),$(this.$refs.container),void 0,!0),this.checkWebNotificationPermissions(),this._fetch(),this.setupBackgroundFetcher(),Object(y.subscribe)("networkOffline",(function(){e._shutDownNotifications(!0)})),Object(y.subscribe)("networkOnline",(function(){e._fetch(),e.setupBackgroundFetcher()}))},updated:function(){this._$icon.attr("src",this.iconPath),!this.hadNotifications&&this.notifications.length&&this._$icon.animate({opacity:.6},600).animate({opacity:1},600).animate({opacity:.6},600).animate({opacity:1},600),this.hadNotifications=this.notifications.length>0},methods:{setupBackgroundFetcher:function(){OC.config.session_keepalive&&(this.interval=setInterval(this._backgroundFetch.bind(this),this.pollInterval))},onDismissAll:function(){var e=this;o.a.delete(OC.linkToOCS("apps/notifications/api/v2",2)+"notifications").then((function(){e.notifications=[]})).catch((function(){OC.Notification.showTemporary(t("notifications","Failed to dismiss all notifications"))}))},onRemove:function(e){this.notifications.splice(e,1)},invertedTheme:function(){return OCA.Theming&&OCA.Theming.inverted},isRedThemed:function(){if(OCA.Theming&&OCA.Theming.color){var e=this.rgbToHsl(OCA.Theming.color.substring(1,3),OCA.Theming.color.substring(3,5),OCA.Theming.color.substring(5,7)),t=360*e[0];return(t>=330||t<=15)&&e[1]>.7&&(e[2]>.1||e[2]<.6)}return!1},rgbToHsl:function(e,t,n){e=parseInt(e,16)/255,t=parseInt(t,16)/255,n=parseInt(n,16)/255;var a,r,s=Math.max(e,t,n),i=Math.min(e,t,n),o=(s+i)/2;if(s===i)a=r=0;else{var l=s-i;switch(r=o>.5?l/(2-s-i):l/(s+i),s){case e:a=(t-n)/l+(t<n?6:0);break;case t:a=(n-e)/l+2;break;case n:a=(e-t)/l+4}a/=6}return[a,r,o]},_fetch:function(){var e=this,t={};this.lastETag&&(t={headers:{"If-None-Match":this.lastETag}}),o.a.get(OC.linkToOCS("apps/notifications/api/v2",2)+"notifications",t).then((function(t){204!==t.status?(void 0!==t.data&&void 0!==t.data.ocs&&void 0!==t.data.ocs.data&&Array.isArray(t.data.ocs.data)?(e.lastETag=t.headers.etag,e.notifications=t.data.ocs.data):console.info("data.ocs.data is undefined or not an array"),e._setPollingInterval(3e4)):e._setPollingInterval(3e5)})).catch((function(t){if(t.response){if(304!==t.response.status){if(503===t.response.status)console.info("Slowing down notifications: instance is in maintenance mode.");else{if(404===t.response.status)return console.info("Shutting down notifications: app is disabled."),void e._shutDownNotifications(!1);console.info("Slowing down notifications: ["+t.response.status+"] "+t.response.statusText)}e._setPollingInterval(3e5)}}else console.info("No response received, retrying")}))},_backgroundFetch:function(){this.backgroundFetching=!0,this._fetch()},_setPollingInterval:function(e){e!==this.pollInterval&&(this.interval&&(window.clearInterval(this.interval),this.interval=null),this.pollInterval=e,this.setupBackgroundFetcher())},_shutDownNotifications:function(e){this.interval&&(window.clearInterval(this.interval),this.interval=null),this.shutdown=!e},checkWebNotificationPermissions:function(){return"Notification"in window?"granted"===window.Notification.permission?(console.debug("Notifications permissions granted"),void(this.webNotificationsGranted=!0)):"denied"===window.Notification.permission?(console.debug("Notifications permissions denied"),void(this.webNotificationsGranted=!1)):void console.info("Notifications permissions not yet requested"):(console.info("Browser does not support notifications"),void(this.webNotificationsGranted=!1))},requestWebNotificationPermissions:(v=regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null===this.webNotificationsGranted){e.next=2;break}return e.abrupt("return");case 2:console.info("Requesting notifications permissions"),window.Notification.requestPermission().then((function(e){t.webNotificationsGranted="granted"===e}));case 4:case"end":return e.stop()}}),e,this)})),g=function(){var e=this,t=arguments;return new Promise((function(n,a){var r=v.apply(e,t);function s(e){M(r,n,a,s,i,"next",e)}function i(e){M(r,n,a,s,i,"throw",e)}s(void 0)}))},function(){return g.apply(this,arguments)})}},Y=(r(303),u(L,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.shutdown?e._e():n("div",{staticClass:"notifications"},[n("div",{ref:"button",staticClass:"notifications-button menutoggle",class:{hasNotifications:e.notifications.length},attrs:{tabindex:"0",role:"button","aria-label":e.t("notifications","Notifications"),"aria-haspopup":"true","aria-controls":"notification-container","aria-expanded":"false"},on:{click:e.requestWebNotificationPermissions}},[n("img",{ref:"icon",staticClass:"svg",attrs:{alt:"",title:e.t("notifications","Notifications"),src:e.iconPath}})]),e._v(" "),n("div",{ref:"container",staticClass:"notification-container"},[n("transition",{attrs:{name:"fade"}},[e.notifications.length>0?n("ul",{staticClass:"notification-wrapper"},[n("transition-group",{attrs:{name:"fade-collapse",tag:"li"}},e._l(e.notifications,(function(t,a){return n("Notification",e._b({key:t.notification_id,attrs:{index:a,"notification-id":t.notification_id,"object-id":t.object_id,"object-type":t.object_type},on:{remove:e.onRemove}},"Notification",t,!1))})),1),e._v(" "),e.notifications.length>2?n("li",[n("div",{staticClass:"dismiss-all",on:{click:e.onDismissAll}},[n("span",{staticClass:"icon icon-close svg",attrs:{title:e.t("notifications","Dismiss all notifications")}}),e._v(" "+e._s(e.t("notifications","Dismiss all notifications"))+"\n\t\t\t\t\t")])]):e._e()],1):n("div",{staticClass:"emptycontent"},[n("div",{staticClass:"icon icon-notifications-dark"}),e._v(" "),null===e.webNotificationsGranted?n("h2",[e._v("\n\t\t\t\t\t"+e._s(e.t("notifications","Requesting browser permissions to show notifications"))+"\n\t\t\t\t")]):n("h2",[e._v("\n\t\t\t\t\t"+e._s(e.t("notifications","No notifications"))+"\n\t\t\t\t")])])])],1)])}),[],!1,null,"6e2a9f70",null).exports);
/**
* @copyright Copyright (c) 2018 Joas Schilling <coding@schilljs.com>
*
diff --git a/js/notifications.js.map b/js/notifications.js.map
index 7beb943..aa082e9 100644
--- a/js/notifications.js.map
+++ b/js/notifications.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/moment/moment.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/utils.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/exception.js","webpack:///./node_modules/@nextcloud/axios/dist/index.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/vue/dist/vue.esm.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/handlebars/runtime.js","webpack:///./node_modules/escape-html/index.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/process/browser.js","webpack:///./src/App.vue?1ea4","webpack:///./node_modules/@nextcloud/event-bus/dist/index.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/axios/lib/defaults.js","webpack:///./node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/axios/lib/core/createError.js","webpack:///./node_modules/axios/lib/core/mergeConfig.js","webpack:///./node_modules/axios/lib/cancel/Cancel.js","webpack:///./node_modules/core-js/modules/es.array.for-each.js","webpack:///./node_modules/core-js/internals/array-for-each.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/core-js/internals/internal-metadata.js","webpack:///./node_modules/core-js/internals/iterate.js","webpack:///./node_modules/core-js/internals/classof.js","webpack:///./node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/base.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/logger.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/internal/proto-access.js","webpack:///./node_modules/moment/locale/af.js","webpack:///./node_modules/moment/locale/ar.js","webpack:///./node_modules/moment/locale/ar-dz.js","webpack:///./node_modules/moment/locale/ar-kw.js","webpack:///./node_modules/moment/locale/ar-ly.js","webpack:///./node_modules/moment/locale/ar-ma.js","webpack:///./node_modules/moment/locale/ar-sa.js","webpack:///./node_modules/moment/locale/ar-tn.js","webpack:///./node_modules/moment/locale/az.js","webpack:///./node_modules/moment/locale/be.js","webpack:///./node_modules/moment/locale/bg.js","webpack:///./node_modules/moment/locale/bm.js","webpack:///./node_modules/moment/locale/bn.js","webpack:///./node_modules/moment/locale/bo.js","webpack:///./node_modules/moment/locale/br.js","webpack:///./node_modules/moment/locale/bs.js","webpack:///./node_modules/moment/locale/ca.js","webpack:///./node_modules/moment/locale/cs.js","webpack:///./node_modules/moment/locale/cv.js","webpack:///./node_modules/moment/locale/cy.js","webpack:///./node_modules/moment/locale/da.js","webpack:///./node_modules/moment/locale/de.js","webpack:///./node_modules/moment/locale/de-at.js","webpack:///./node_modules/moment/locale/de-ch.js","webpack:///./node_modules/moment/locale/dv.js","webpack:///./node_modules/moment/locale/el.js","webpack:///./node_modules/moment/locale/en-SG.js","webpack:///./node_modules/moment/locale/en-au.js","webpack:///./node_modules/moment/locale/en-ca.js","webpack:///./node_modules/moment/locale/en-gb.js","webpack:///./node_modules/moment/locale/en-ie.js","webpack:///./node_modules/moment/locale/en-il.js","webpack:///./node_modules/moment/locale/en-nz.js","webpack:///./node_modules/moment/locale/eo.js","webpack:///./node_modules/moment/locale/es.js","webpack:///./node_modules/moment/locale/es-do.js","webpack:///./node_modules/moment/locale/es-us.js","webpack:///./node_modules/moment/locale/et.js","webpack:///./node_modules/moment/locale/eu.js","webpack:///./node_modules/moment/locale/fa.js","webpack:///./node_modules/moment/locale/fi.js","webpack:///./node_modules/moment/locale/fo.js","webpack:///./node_modules/moment/locale/fr.js","webpack:///./node_modules/moment/locale/fr-ca.js","webpack:///./node_modules/moment/locale/fr-ch.js","webpack:///./node_modules/moment/locale/fy.js","webpack:///./node_modules/moment/locale/ga.js","webpack:///./node_modules/moment/locale/gd.js","webpack:///./node_modules/moment/locale/gl.js","webpack:///./node_modules/moment/locale/gom-latn.js","webpack:///./node_modules/moment/locale/gu.js","webpack:///./node_modules/moment/locale/he.js","webpack:///./node_modules/moment/locale/hi.js","webpack:///./node_modules/moment/locale/hr.js","webpack:///./node_modules/moment/locale/hu.js","webpack:///./node_modules/moment/locale/hy-am.js","webpack:///./node_modules/moment/locale/id.js","webpack:///./node_modules/moment/locale/is.js","webpack:///./node_modules/moment/locale/it.js","webpack:///./node_modules/moment/locale/it-ch.js","webpack:///./node_modules/moment/locale/ja.js","webpack:///./node_modules/moment/locale/jv.js","webpack:///./node_modules/moment/locale/ka.js","webpack:///./node_modules/moment/locale/kk.js","webpack:///./node_modules/moment/locale/km.js","webpack:///./node_modules/moment/locale/kn.js","webpack:///./node_modules/moment/locale/ko.js","webpack:///./node_modules/moment/locale/ku.js","webpack:///./node_modules/moment/locale/ky.js","webpack:///./node_modules/moment/locale/lb.js","webpack:///./node_modules/moment/locale/lo.js","webpack:///./node_modules/moment/locale/lt.js","webpack:///./node_modules/moment/locale/lv.js","webpack:///./node_modules/moment/locale/me.js","webpack:///./node_modules/moment/locale/mi.js","webpack:///./node_modules/moment/locale/mk.js","webpack:///./node_modules/moment/locale/ml.js","webpack:///./node_modules/moment/locale/mn.js","webpack:///./node_modules/moment/locale/mr.js","webpack:///./node_modules/moment/locale/ms.js","webpack:///./node_modules/moment/locale/ms-my.js","webpack:///./node_modules/moment/locale/mt.js","webpack:///./node_modules/moment/locale/my.js","webpack:///./node_modules/moment/locale/nb.js","webpack:///./node_modules/moment/locale/ne.js","webpack:///./node_modules/moment/locale/nl.js","webpack:///./node_modules/moment/locale/nl-be.js","webpack:///./node_modules/moment/locale/nn.js","webpack:///./node_modules/moment/locale/pa-in.js","webpack:///./node_modules/moment/locale/pl.js","webpack:///./node_modules/moment/locale/pt.js","webpack:///./node_modules/moment/locale/pt-br.js","webpack:///./node_modules/moment/locale/ro.js","webpack:///./node_modules/moment/locale/ru.js","webpack:///./node_modules/moment/locale/sd.js","webpack:///./node_modules/moment/locale/se.js","webpack:///./node_modules/moment/locale/si.js","webpack:///./node_modules/moment/locale/sk.js","webpack:///./node_modules/moment/locale/sl.js","webpack:///./node_modules/moment/locale/sq.js","webpack:///./node_modules/moment/locale/sr.js","webpack:///./node_modules/moment/locale/sr-cyrl.js","webpack:///./node_modules/moment/locale/ss.js","webpack:///./node_modules/moment/locale/sv.js","webpack:///./node_modules/moment/locale/sw.js","webpack:///./node_modules/moment/locale/ta.js","webpack:///./node_modules/moment/locale/te.js","webpack:///./node_modules/moment/locale/tet.js","webpack:///./node_modules/moment/locale/tg.js","webpack:///./node_modules/moment/locale/th.js","webpack:///./node_modules/moment/locale/tl-ph.js","webpack:///./node_modules/moment/locale/tlh.js","webpack:///./node_modules/moment/locale/tr.js","webpack:///./node_modules/moment/locale/tzl.js","webpack:///./node_modules/moment/locale/tzm.js","webpack:///./node_modules/moment/locale/tzm-latn.js","webpack:///./node_modules/moment/locale/ug-cn.js","webpack:///./node_modules/moment/locale/uk.js","webpack:///./node_modules/moment/locale/ur.js","webpack:///./node_modules/moment/locale/uz.js","webpack:///./node_modules/moment/locale/uz-latn.js","webpack:///./node_modules/moment/locale/vi.js","webpack:///./node_modules/moment/locale/x-pseudo.js","webpack:///./node_modules/moment/locale/yo.js","webpack:///./node_modules/moment/locale/zh-cn.js","webpack:///./node_modules/moment/locale/zh-hk.js","webpack:///./node_modules/moment/locale/zh-tw.js","webpack:///./node_modules/@nextcloud/moment/dist/index.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/axios/index.js","webpack:///./node_modules/axios/lib/axios.js","webpack:///./node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/axios/lib/core/InterceptorManager.js","webpack:///./node_modules/axios/lib/core/dispatchRequest.js","webpack:///./node_modules/axios/lib/core/transformData.js","webpack:///./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///./node_modules/axios/lib/core/settle.js","webpack:///./node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/axios/lib/core/buildFullPath.js","webpack:///./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///./node_modules/axios/lib/helpers/combineURLs.js","webpack:///./node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/axios/lib/helpers/cookies.js","webpack:///./node_modules/axios/lib/cancel/CancelToken.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/@nextcloud/auth/dist/index.js","webpack:///./node_modules/@nextcloud/auth/dist/requesttoken.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/@nextcloud/event-bus/dist/ProxyBus.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/semver.js","webpack:///./node_modules/@nextcloud/event-bus/dist/SimpleBus.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/core-js/internals/create-property.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/create-iterator-constructor.js","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/modules/es.map.js","webpack:///./node_modules/core-js/internals/collection.js","webpack:///./node_modules/core-js/internals/freezing.js","webpack:///./node_modules/core-js/internals/is-array-iterator-method.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/collection-strong.js","webpack:///./node_modules/core-js/internals/redefine-all.js","webpack:///./node_modules/core-js/internals/set-species.js","webpack:///./node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/@nextcloud/auth/dist/user.js","webpack:///./src/templates/file.handlebars","webpack:///./node_modules/handlebars/dist/cjs/handlebars.runtime.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/block-helper-missing.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/each.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/helper-missing.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/if.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/log.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/lookup.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/with.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/decorators.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/decorators/inline.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/internal/create-new-lookup-object.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/safe-string.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/runtime.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/internal/wrapHelper.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/no-conflict.js","webpack:///./src/templates/userLocal.handlebars","webpack:///./src/templates/userRemote.handlebars","webpack:///./src/templates/unkown.handlebars","webpack:///./src/templates/unkownLink.handlebars","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./node_modules/node-gettext/lib/gettext.js","webpack:///./node_modules/lodash.get/index.js","webpack:///./node_modules/node-gettext/lib/plurals.js","webpack:///./node_modules/@nextcloud/l10n/dist/index.js","webpack:///./src/App.vue?6107","webpack:///./src/App.vue?ed8d","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./src/Components/Action.vue","webpack:///src/Components/Action.vue","webpack:///./src/Components/Action.vue?643e","webpack:///./src/richObjectStringParser.js","webpack:///./src/Components/Notification.vue","webpack:///src/Components/Notification.vue","webpack:///./src/Components/Notification.vue?dae5","webpack:///src/App.vue","webpack:///./src/App.vue?7e76","webpack:///./src/App.vue","webpack:///./src/App.vue?66f9","webpack:///./src/Init.js","webpack:///./node_modules/vue-style-loader/lib/listToStyles.js","webpack:///./node_modules/vue-style-loader/lib/addStylesClient.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","hookCallback","some","hooks","apply","arguments","isArray","input","Array","toString","isObject","isUndefined","isNumber","isDate","Date","map","arr","fn","res","length","push","hasOwnProp","a","b","extend","valueOf","createUTC","format","locale","strict","createLocalOrUTC","utc","getParsingFlags","_pf","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","meridiem","rfc2822","weekdayMismatch","isValid","_isValid","flags","parsedParts","isNowValid","isNaN","_d","getTime","invalidWeekday","_strict","undefined","bigHour","isFrozen","createInvalid","NaN","fun","this","len","momentProperties","copyConfig","to","from","prop","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","updateInProgress","Moment","config","updateOffset","isMoment","obj","absFloor","number","Math","ceil","floor","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","array1","array2","dontConvert","min","lengthDiff","abs","diffs","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecationHandler","arg","args","slice","join","Error","stack","keys","deprecations","deprecateSimple","isFunction","Function","mergeConfigs","parentConfig","childConfig","Locale","set","aliases","addUnitAlias","unit","shorthand","lowerCase","toLowerCase","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","priorities","addUnitPriority","priority","zeroFill","targetLength","forceSign","absNumber","zerosToFill","pow","max","substr","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","addFormatToken","token","padded","ordinal","callback","func","localeData","formatMoment","expandFormat","array","match","replace","mom","output","makeFormatFunction","invalidDate","replaceLongDateFormatTokens","longDateFormat","lastIndex","test","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchWord","regexes","addRegexToken","regex","strictRegex","isStrict","getParseRegexForToken","RegExp","regexEscape","matched","p1","p2","p3","p4","tokens","addParseToken","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInYear","year","isLeapYear","y","parseTwoDigitYear","parseInt","indexOf","getSetYear","makeGetSet","keepTime","set$1","month","date","daysInMonth","modMonth","x","mod","monthsShort","months","monthsShortRegex","monthsRegex","monthsParse","MONTHS_IN_FORMAT","defaultLocaleMonths","split","defaultLocaleMonthsShort","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","setMonth","dayOfMonth","getSetMonth","defaultMonthsShortRegex","defaultMonthsRegex","computeMonthsParse","cmpLenRev","shortPieces","longPieces","mixedPieces","sort","_monthsRegex","_monthsShortRegex","_monthsStrictRegex","_monthsShortStrictRegex","createDate","h","M","ms","getFullYear","setFullYear","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","dow","doy","fwd","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","shiftWeekdays","ws","concat","weekdaysMin","weekdaysShort","weekdays","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","weekdaysParse","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","day","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","computeWeekdaysParse","minp","shortp","longp","minPieces","_weekdaysRegex","_weekdaysShortRegex","_weekdaysMinRegex","_weekdaysStrictRegex","_weekdaysShortStrictRegex","_weekdaysMinStrictRegex","hFormat","hours","lowercase","minutes","matchMeridiem","_meridiemParse","seconds","kInput","_isPm","isPM","_meridiem","pos","pos1","pos2","globalLocale","getSetHour","baseConfig","calendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","LTS","LT","L","LL","LLL","LLLL","dayOfMonthOrdinalParse","relativeTime","future","past","ss","mm","hh","dd","MM","yy","meridiemParse","locales","localeFamilies","normalizeLocale","loadLocale","oldLocale","_abbr","getSetGlobalLocale","e","values","data","getLocale","defineLocale","abbr","_config","parentLocale","forEach","names","j","next","chooseLocale","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","defaults","configFromArray","currentDate","expectedWeekday","yearToUse","nowValue","now","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","currentDateArray","w","weekYear","temp","weekdayOverflow","GG","W","E","createLocal","_week","curWeek","gg","_dayOfYear","dayOfYearFromWeekInfo","_nextDay","getDay","setUTCMinutes","getUTCMinutes","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","configFromISO","allowTime","dateFormat","timeFormat","tzFormat","string","exec","configFromStringAndFormat","untruncateYear","yearStr","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","configFromRFC2822","monthStr","dayStr","hourStr","minuteStr","secondStr","result","parsedArray","weekdayStr","parsedInput","checkWeekday","obsOffset","militaryOffset","numOffset","hm","calculateOffset","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","hour","isPm","meridiemHour","meridiemFixWrap","prepareConfig","preparse","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromStringAndArray","createFromInputFallback","configFromString","minute","second","millisecond","configFromObject","configFromInput","isUTC","getOwnPropertyNames","k","isObjectEmpty","add","prototypeMin","other","prototypeMax","pickBy","moments","ordering","Duration","duration","years","quarters","quarter","weeks","isoWeek","days","milliseconds","unitHasDecimal","parseFloat","isDurationValid","_milliseconds","_days","_months","_data","_bubble","isDuration","absRound","round","offset","separator","utcOffset","sign","offsetFromString","chunkOffset","matcher","matches","parts","cloneWithOffset","model","diff","clone","setTime","local","getDateOffset","getTimezoneOffset","isUtc","aspNetRegex","isoRegex","createDuration","ret","diffRes","base","parseIso","isBefore","positiveMomentsDifference","inp","isAfter","createAdder","direction","period","tmp","addSubtract","isAdding","invalid","subtract","monthDiff","wholeMonthDiff","anchor","newLocaleData","defaultFormat","defaultFormatUtc","lang","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","addWeekYearFormatToken","getSetWeekYearHelper","weeksTarget","setWeekAll","dayOfYearData","isoWeekYear","_dayOfMonthOrdinalParse","_ordinalParse","_dayOfMonthOrdinalParseLenient","getSetDayOfMonth","getSetMinute","getSetSecond","parseMs","getSetMillisecond","proto","preParsePostFormat","time","formats","sod","startOf","calendarFormat","asFloat","that","zoneDelta","endOf","startOfDate","isoWeekday","inputString","postformat","withoutSuffix","humanize","fromNow","toNow","invalidAt","localInput","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","parsingFlags","prioritized","unitsObj","u","getPrioritizedUnits","toArray","toObject","toDate","toISOString","keepOffset","inspect","zone","isLocal","prefix","suffix","toJSON","unix","creationData","isoWeeks","weekInfo","isoWeeksInYear","parseWeekday","parseIsoWeekday","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","parseZone","tZone","hasAlignedHourOffset","isDST","isUtcOffset","zoneAbbr","zoneName","dates","isDSTShifted","_isDSTShifted","proto$1","get$1","index","field","setter","listMonthsImpl","out","listWeekdaysImpl","localeSorted","shift","_calendar","_longDateFormat","formatUpper","toUpperCase","_invalidDate","_ordinal","isFuture","_relativeTime","pastFuture","source","isFormat","_monthsShort","_monthsParseExact","firstDayOfYear","firstDayOfWeek","_weekdays","_weekdaysMin","_weekdaysShort","_weekdaysParseExact","_fullWeekdaysParse","charAt","isLower","langData","mathAbs","addSubtract$1","absCeil","daysToMonths","monthsToDays","makeAs","alias","as","asMilliseconds","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","makeGetter","thresholds","substituteTimeAgo","abs$1","toISOString$1","Y","D","toFixed","total","totalSign","ymSign","daysSign","hmsSign","proto$2","monthsFromDays","withSuffix","posNegDuration","relativeTime$1","toIsoString","version","updateLocale","tmpLocale","relativeTimeRounding","roundingFunction","relativeTimeThreshold","threshold","limit","myMoment","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","DATE","TIME","TIME_SECONDS","TIME_MS","WEEK","MONTH","factory","it","check","globalThis","window","self","global","shared","has","uid","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","error","isArrayBuffer","isBuffer","constructor","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","navigator","product","document","merge","assignValue","deepMerge","thisArg","trim","str","escapeExpression","toHTML","possible","badChars","escapeChar","isEmpty","createFrame","frame","_parent","blockParams","params","ids","path","appendContextPath","contextPath","id","escape","chr","fails","DESCRIPTORS","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","f","O","P","Attributes","TypeError","definePropertyModule","createPropertyDescriptor","g","String","errorProps","Exception","message","node","loc","line","endLineNumber","column","endColumn","start","end","idx","captureStackTrace","lineNumber","nop","default","_axios","_auth","client","headers","requesttoken","getRequestToken","cancelableClient","assign","CancelToken","isCancel","onRequestTokenUpdate","_default","getOwnPropertyDescriptor","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","options","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","emptyObject","freeze","isUndef","v","isDef","isTrue","isPrimitive","_toString","isPlainObject","isRegExp","isValidArrayIndex","isPromise","then","catch","JSON","stringify","toNumber","makeMap","expectsLowerCase","list","isBuiltInTag","isReservedAttribute","remove","item","splice","hasOwn","cached","cache","camelizeRE","camelize","_","capitalize","hyphenateRE","hyphenate","ctx","boundFn","_length","_from","noop","no","identity","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","every","keysA","keysB","looseIndexOf","once","called","ASSET_TYPES","LIFECYCLE_HOOKS","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","async","_lifecycleHooks","unicodeRegExp","isReserved","charCodeAt","def","writable","configurable","bailRE","_isServer","hasProto","inBrowser","inWeex","WXEnvironment","platform","weexPlatform","UA","userAgent","isIE","isIE9","isEdge","isIOS","isFF","nativeWatch","watch","supportsPassive","opts","addEventListener","isServerRendering","env","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","Ctor","_Set","hasSymbol","Reflect","ownKeys","Set","clear","Dep","subs","addSub","sub","removeSub","depend","addDep","notify","update","targetStack","pushTarget","popTarget","pop","VNode","tag","children","text","elm","context","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","parent","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","method","original","inserted","ob","__ob__","observeArray","dep","arrayKeys","shouldObserve","toggleObserving","Observer","vmCount","src","__proto__","protoAugment","copyAugment","walk","observe","asRootData","isExtensible","_isVue","defineReactive$$1","customSetter","shallow","childOb","dependArray","newVal","del","items","strats","mergeData","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","dedupeHooks","mergeAssets","hook","type","key$1","props","methods","inject","computed","provide","defaultStrat","mergeOptions","normalizeProps","normalized","normalizeInject","dirs","directives","def$$1","normalizeDirectives","_base","extends","mixins","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","absent","booleanIndex","getTypeIndex","Boolean","stringIndex","$options","_props","getType","getPropDefaultValue","prevShouldObserve","isSameType","expectedTypes","handleError","err","info","cur","$parent","errorCaptured","globalHandleError","invokeWithErrorHandling","handler","_handled","logError","timerFunc","isUsingMicroTask","callbacks","pending","flushCallbacks","copies","Promise","resolve","setTimeout","MutationObserver","setImmediate","counter","observer","textNode","createTextNode","characterData","nextTick","cb","_resolve","seenObjects","traverse","_traverse","seen","isA","depId","normalizeEvent","passive","once$$1","capture","createFnInvoker","fns","invoker","arguments$1","updateListeners","on","oldOn","remove$$1","createOnceHandler","old","event","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","hash","altKey","preserve","normalizeChildren","normalizeArrayChildren","nestedIndex","last","isTextNode","_isVList","resolveInject","provideKey","_provided","provideDefault","resolveSlots","slots","attrs","slot","name$1","isWhitespace","normalizeScopedSlots","normalSlots","prevSlots","hasNormalSlots","isStable","$stable","$key","_normalized","$hasNormal","normalizeScopedSlot","key$2","proxyNormalSlot","proxy","renderList","render","iterator","done","renderSlot","fallback","bindObject","nodes","scopedSlotFn","$scopedSlots","$slots","$createElement","resolveFilter","isKeyNotMatch","expect","actual","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","loop","domProps","camelizedKey","hyphenatedKey","$event","renderStatic","isInFor","_staticTrees","tree","markStatic","staticRenderFns","_renderProxy","markOnce","markStaticNode","bindObjectListeners","existing","ours","resolveScopedSlots","hasDynamicKeys","contentHashKey","bindDynamicKeys","baseObj","prependModifier","symbol","installRenderHelpers","_o","_n","_s","_t","_q","_m","_k","_b","_v","_e","_u","_g","_p","FunctionalRenderContext","contextVm","this$1","_original","isCompiled","_compiled","needNormalization","listeners","injections","scopedSlots","_scopeId","_c","createElement","cloneAndMarkFunctionalResult","renderContext","mergeProps","componentVNodeHooks","init","hydrating","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","inlineTemplate","createComponentInstanceForVnode","activeInstance","$mount","oldVnode","parentVnode","renderChildren","newScopedSlots","oldScopedSlots","hasDynamicScopedSlot","needsForceUpdate","_renderChildren","$vnode","_vnode","$attrs","$listeners","propKeys","_propKeys","oldListeners","_parentListeners","updateComponentListeners","$forceUpdate","updateChildComponent","insert","_isMounted","callHook","_inactive","activatedChildren","activateChildComponent","destroy","deactivateChildComponent","direct","_directInactive","isInInactiveTree","$children","$destroy","hooksToMerge","createComponent","baseCtor","cid","errorComp","resolved","owner","currentRenderingInstance","owners","loading","loadingComp","sync","timerLoading","timerTimeout","$on","forceRender","renderCompleted","clearTimeout","ensureCtor","reject","reason","component","delay","timeout","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","transformModel","extractPropsFromVNodeData","functional","vnodes","createFunctionalComponent","nativeOn","abstract","toMerge","_merged","mergeHook$1","installComponentHooks","f1","f2","normalizationType","alwaysNormalize","is","simpleNormalizeChildren","pre","applyNS","force","style","class","registerDeepBindings","_createElement","comp","getFirstComponentChild","remove$1","$off","_target","onceHandler","setActiveInstance","prevActiveInstance","handlers","_hasHookEvent","$emit","queue","waiting","flushing","currentFlushTimestamp","getNow","createEvent","timeStamp","flushSchedulerQueue","watcher","before","run","activatedQueue","updatedQueue","callActivatedHooks","_watcher","callUpdatedHooks","emit","uid$2","Watcher","expOrFn","isRenderWatcher","_watchers","deep","user","lazy","active","dirty","deps","newDeps","depIds","newDepIds","expression","segments","parsePath","cleanupDeps","queueWatcher","oldValue","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","sourceKey","initState","propsOptions","initProps","initMethods","getData","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","createWatcher","initWatch","shouldCache","createComputedGetter","createGetterInvoker","$watch","uid$3","super","superOptions","modifiedOptions","modified","latest","sealed","sealedOptions","resolveModifiedOptions","extendOptions","components","Vue","_init","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","Comp","initProps$1","initComputed$1","mixin","use","getComponentName","pattern","pruneCache","keepAliveInstance","filter","cachedNode","pruneCacheEntry","current","cached$$1","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","_self","$root","$refs","initLifecycle","_events","initEvents","parentData","initRender","initInjections","initProvide","el","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","$once","i$1","cbs","eventsMixin","_update","prevEl","$el","prevVnode","restoreActiveInstance","__patch__","__vue__","lifecycleMixin","$nextTick","_render","ref","renderMixin","patternTypes","builtInComponents","KeepAlive","include","exclude","Number","created","destroyed","mounted","configDef","util","defineReactive","delete","observable","plugin","installedPlugins","_installedPlugins","unshift","install","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","ssrContext","acceptValue","attr","isEnumeratedAttr","isValidContentEditableValue","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","isFalsyAttrValue","genClassForVnode","parentNode","childNode","mergeClassData","staticClass","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","query","selected","querySelector","nodeOps","tagName","multiple","setAttribute","createElementNS","namespace","createComment","insertBefore","newNode","referenceNode","removeChild","appendChild","nextSibling","setTextContent","textContent","setStyleScope","scopeId","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","dir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldArg","callHook$1","componentUpdated","callInsert","emptyModifiers","modifiers","getRawDirName","rawName","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","removeAttribute","baseSetAttr","convertEnumeratedValue","setAttributeNS","__ieph","blocker","stopImmediatePropagation","removeEventListener","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","index$1","expressionPos","expressionEndPos","klass","validDivisionCharRE","parseFilters","exp","prev","filters","inSingle","inDouble","inTemplateString","inRegex","curly","square","paren","lastFilterIndex","pushFilter","wrapFilter","baseWarn","range","pluckModuleFunction","addProp","dynamic","rangeSetItem","plain","addAttr","dynamicAttrs","addRawAttr","attrsMap","attrsList","addDirective","isDynamicArg","prependModifierMarker","addHandler","important","events","right","middle","native","nativeEvents","newHandler","getBindingAttr","getStatic","dynamicValue","getAndRemoveAttr","staticValue","removeFromMap","getAndRemoveAttrByRegex","genComponentModel","valueExpression","assignment","genAssignmentCode","lastIndexOf","eof","isStringStart","parseString","parseBracket","parseModel","inBracket","stringQuote","target$1","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","currentTarget","ownerDocument","updateDOMListeners","change","normalizeEvents","svgContainer","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","innerHTML","firstChild","checkVal","composing","notInFocus","activeElement","isNotInFocusAndDirty","_vModifiers","isDirtyWithModifiers","parseStyleText","cssText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","normalizedName","normalize","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","whitespaceRE","addClass","classList","getAttribute","removeClass","tar","resolveTransition","css","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","requestAnimationFrame","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","onEnd","transformRE","styles","getComputedStyle","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","nodeType","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","patch","backend","removeNode","createElm","insertedVnodeQueue","parentElm","refElm","nested","ownerArray","isReactivated","initComponent","innerNode","activate","reactivateComponent","setScope","createChildren","invokeCreateHooks","pendingInsert","isPatchable","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","childElm","createRmCb","findIdxInOld","oldCh","patchVnode","removeOnly","hydrate","newCh","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","updateChildren","postpatch","invokeInsertHook","initial","isRenderedModule","inVPre","hasChildNodes","childrenMatch","fullInvoke","isInitialPatch","isRealElement","hasAttribute","oldElm","patchable","i$2","createPatchFunction","vmodel","trigger","directive","binding","_vOptions","setSelected","getValue","onCompositionStart","onCompositionEnd","prevOptions","curOptions","hasNoMatchingOption","actuallySetSelected","isMultiple","option","selectedIndex","initEvent","dispatchEvent","locateNode","platformDirectives","transition$$1","originalDisplay","__vOriginalDisplay","display","unbind","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","rawChild","isNotTextNode","isVShowDirective","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","getBoundingClientRect","applyTranslation","oldPos","dx","left","dy","top","moved","transform","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","beforeMount","kept","prevChildren","rawChildren","transitionData","removed","c$1","updated","hasMove","_reflow","body","offsetHeight","propertyName","_hasMove","cloneNode","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","defaultTagRE","regexEscapeRE","buildRegex","delimiters","open","close","klass$1","staticKeys","transformNode","classBinding","genData","decoder","style$1","styleBinding","he","html","isUnaryTag","canBeLeftOpenTag","isNonPhrasingTag","attribute","dynamicArgAttribute","ncname","qnameCapture","startTagOpen","startTagClose","endTag","doctype","comment","conditionalComment","isPlainTextElement","reCache","decodingMap","encodedAttr","encodedAttrWithNewLines","isIgnoreNewlineTag","shouldIgnoreFirstNewline","decodeAttr","shouldDecodeNewlines","re","warn$2","transforms","preTransforms","postTransforms","platformIsPreTag","platformMustUseProp","platformGetTagNamespace","onRE","dirRE","forAliasRE","forIteratorRE","stripParensRE","dynamicArgRE","argRE","bindRE","modifierRE","slotRE","lineBreakRE","whitespaceRE$1","decodeHTMLCached","createASTElement","makeAttrsMap","rawAttrsMap","parse","template","isPreTag","root","currentParent","preserveWhitespace","whitespaceOption","whitespace","inPre","closeElement","element","trimEndingWhitespace","processed","processElement","if","elseif","else","addIfCondition","block","forbidden","findPrevElement","slotScope","slotTarget","lastNode","lastTag","expectHTML","isUnaryTag$$1","canBeLeftOpenTag$$1","endTagLength","stackedTag","reStackedTag","rest$1","all","chars","parseEndTag","textEnd","commentEnd","shouldKeepComment","substring","advance","conditionalEnd","doctypeMatch","endTagMatch","curIndex","startTagMatch","parseStartTag","handleStartTag","rest","unarySlash","unary","shouldDecodeNewlinesForHref","lowerCasedTag","lowerCasedTagName","parseHTML","comments","outputSourceRange","start$1","ieNSBug","ieNSPrefix","guardIESVGBug","processPre","processRawAttrs","processFor","processIf","processOnce","end$1","tagRE","tokenValue","rawTokens","parseText","processKey","for","checkInFor","processRef","slotTargetDynamic","getRawBindingAttr","slotBinding","getSlotName","slotBinding$1","ref$1","dynamic$1","slotContainer","processSlotContent","slotName","processComponent","syncGen","isDynamic","hasBindings","parseModifiers","camel","argMatch","processAttrs","inMatch","iteratorMatch","iterator1","iterator2","parseFor","condition","ifConditions","cloneASTElement","modules$1","preTransformNode","typeBinding","ifCondition","ifConditionExtra","hasElse","elseIfCondition","branch0","branch1","branch2","isStaticKey","isPlatformReservedTag","baseOptions","_warn","code","genSelect","valueBinding","trueValueBinding","falseValueBinding","genCheckboxModel","genRadioModel","needCompositionGuard","genDefaultModel","reduce","genStaticKeys","genStaticKeysCached","optimize","markStatic$1","static","isDirectChildOfTemplateFor","l$1","markStaticRoots","staticInFor","staticRoot","fnExpRE","fnInvokeRE","simplePathRE","esc","tab","space","up","down","keyNames","genGuard","modifierCode","stop","prevent","ctrl","alt","meta","genHandlers","staticHandlers","dynamicHandlers","handlerCode","genHandler","isMethodPath","isFunctionExpression","isFunctionInvocation","genModifierCode","keyModifier","genFilterCode","genKeyFilter","keyVal","keyCode","keyName","baseDirectives","wrapListeners","wrapData","cloak","CodegenState","dataGenFns","maybeComponent","onceId","generate","ast","state","genElement","staticProcessed","genStatic","onceProcessed","genOnce","forProcessed","genFor","ifProcessed","genIf","genChildren","genProps","bind$$1","genSlot","componentName","genData$2","genComponent","originalPreState","altGen","altEmpty","genIfConditions","conditions","genTernaryExp","altHelper","needRuntime","hasRuntime","gen","genDirectives","containsSlotChild","needsKey","generatedSlots","genScopedSlot","inlineRenderFns","genInlineTemplate","isLegacySyntax","reverseProxy","checkSkip","altGenElement","altGenNode","el$1","normalizationType$1","needsNormalization","getNormalizationType","genNode","genComment","transformSpecialNewlines","genText","staticProps","dynamicProps","createFunction","errors","createCompileToFunctionFn","compile","compiled","fnGenErrors","baseCompile","div","finalOptions","tips","tip","compileToFunctions","getShouldDecode","href","idToTemplate","mount","documentElement","outerHTML","container","getOuterHTML","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","unsafe","simple","matchHtmlRegExp","bitmap","IndexedObject","requireObjectCoercible","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","store","wmget","wmhas","wmset","metadata","STATE","getterFor","TYPE","aFunction","variable","toInteger","argument","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","defaultClearTimeout","runTimeout","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","title","browser","argv","versions","addListener","off","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","content","locals","subscribe","bus","unsubscribe","_ProxyBus","_SimpleBus","OC","_eventBus","_nc_event_bus","ProxyBus","SimpleBus","classof","propertyIsEnumerable","PREFERRED_STRING","postfix","random","activeXDocument","enumBugKeys","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","parentWindow","NullProtoObjectViaActiveX","contentWindow","F","Properties","$","createIteratorConstructor","getPrototypeOf","setPrototypeOf","setToStringTag","wellKnownSymbol","IS_PURE","Iterators","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","ITERATOR","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","TO_STRING_TAG","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","TAG","propertyIsEnumerableModule","toIndexedObject","nativeGetOwnPropertyDescriptor","nativePropertyIsEnumerable","NASHORN_BUG","1","V","EXISTS","functionToString","copyright","getOwnPropertySymbols","replacement","feature","detection","POLYFILL","NATIVE","internalObjectKeys","utils","encode","encodeURIComponent","url","paramsSerializer","serializedParams","hashmarkIndex","__CANCEL__","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","adapter","XMLHttpRequest","transformRequest","transformResponse","xsrfCookieName","xsrfHeaderName","maxContentLength","validateStatus","status","common","settle","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","requestData","requestHeaders","request","auth","username","password","Authorization","btoa","fullPath","baseURL","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onabort","onerror","ontimeout","timeoutErrorMessage","cookies","xsrfValue","withCredentials","read","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancelToken","promise","cancel","abort","send","enhanceError","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","axiosKeys","otherKeys","Cancel","$forEach","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","callbackfn","toLength","arraySpeciesCreate","createMethod","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","specificCreate","boundFunction","find","findIndex","SPECIES","originalArray","C","thrower","METHOD_NAME","ACCESSORS","argument0","argument1","V8_VERSION","foo","v8","addToUnscopables","defineIterator","setInternalState","iterated","kind","Arguments","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","aPossiblePrototype","CORRECT_SETTER","FREEZING","METADATA","setMetadata","objectID","weakData","REQUIRED","fastKey","getWeakData","onFreeze","isArrayIteratorMethod","getIteratorMethod","callWithSafeIterationClosing","Result","stopped","iterable","AS_ENTRIES","IS_ITERATOR","iterFn","step","TO_STRING_TAG_SUPPORT","classofRaw","CORRECT_ARGUMENTS","tryGet","callee","Constructor","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","_interopRequireDefault","HandlebarsEnvironment","_utils","_exception2","_helpers","_decorators","_logger2","_internalProtoAccess","VERSION","COMPILER_REVISION","LAST_COMPATIBLE_COMPILER_REVISION","REVISION_CHANGES","2","3","4","5","6","7","8","helpers","partials","decorators","registerDefaultHelpers","registerDefaultDecorators","logger","log","registerHelper","unregisterHelper","registerPartial","partial","unregisterPartial","registerDecorator","unregisterDecorator","resetLoggedPropertyAccesses","resetLoggedProperties","instance","_helpersBlockHelperMissing2","_helpersEach2","_helpersHelperMissing2","_helpersIf2","_helpersLog2","_helpersLookup2","_helpersWith2","moveHelperToHooks","helperName","keepHelper","methodMap","level","lookupLevel","levelMap","_len","_key","createProtoAccessControl","runtimeOptions","defaultMethodWhiteList","defaultPropertyWhiteList","properties","whitelist","_createNewLookupObject","createNewLookupObject","allowedProtoProperties","defaultValue","allowProtoPropertiesByDefault","allowedProtoMethods","allowProtoMethodsByDefault","resultIsAllowed","protoAccessControl","checkWhiteList","loggedProperties","newObj","_interopRequireWildcard","protoAccessControlForType","logUnexpecedPropertyAccessOnce","moment","symbolMap","numberMap","pluralForm","plurals","pluralize","weekdaysParseExact","suffixes","70","80","20","50","100","9","10","30","60","90","relativeTimeWithPlural","num","forms","standalone","lastDigit","last2Digits","relativeTimeWithMutation","mutationTable","softMutation","mutation","lastNumber","translate","monthsParseExact","ll","lll","llll","plural","monthsStrictRegex","monthsShortStrictRegex","longMonthsParse","shortMonthsParse","processRelativeTime","monthsNominativeEl","monthsGenitiveEl","momentToFormat","_monthsGenitiveEl","_monthsNominativeEl","calendarEl","_calendarEl","monthsShortDot","numbersPast","numbersFuture","verbalNumber","monthsShortWithDots","monthsShortWithoutDots","weekEndings","0","40","isUpper","eifelerRegelAppliesToNumber","translateSingular","special","relativeTimeWithSingular","translator","words","correctGrammaticalCase","wordKey","relativeTimeMr","monthsNominative","monthsSubjective","12","13","numbersNouns","numberNoun","hundred","ten","one","word","numberAsNoun","processHoursFunction","json","charset","Language","translations","msgid","msgstr","reference","addTranslations","setLocale","gettext","getOwnPropertyDescriptorModule","getBuiltIn","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","toAbsoluteIndex","IS_INCLUDES","fromIndex","includes","integer","objectKeys","nativeAssign","A","B","T","argumentsLength","S","Axios","mergeConfig","createInstance","defaultConfig","axios","instanceConfig","promises","spread","InterceptorManager","dispatchRequest","interceptors","chain","interceptor","fulfilled","rejected","getUri","eject","transformData","throwIfCancellationRequested","throwIfRequested","isAxiosError","description","fileName","columnNumber","isAbsoluteURL","combineURLs","requestedURL","relativeURL","ignoreDuplicateOf","parsed","originURL","msie","urlParsingNode","resolveURL","protocol","host","search","hostname","port","pathname","location","requestURL","expires","secure","cookie","toGMTString","decodeURIComponent","executor","resolvePromise","_requesttoken","_user","getCurrentUser","observers","tokenElement","getElementsByTagName","_semver","_defineProperties","packageJson","_classCallCheck","_defineProperty","getVersion","valid","major","protoProps","debug","NODE_DEBUG","SEMVER_SPEC_VERSION","MAX_SAFE_INTEGER","R","tok","NUMERICIDENTIFIER","NUMERICIDENTIFIERLOOSE","NONNUMERICIDENTIFIER","MAINVERSION","MAINVERSIONLOOSE","PRERELEASEIDENTIFIER","PRERELEASEIDENTIFIERLOOSE","PRERELEASE","PRERELEASELOOSE","BUILDIDENTIFIER","BUILD","FULLPLAIN","FULL","LOOSEPLAIN","LOOSE","GTLT","XRANGEIDENTIFIERLOOSE","XRANGEIDENTIFIER","XRANGEPLAIN","XRANGEPLAINLOOSE","XRANGE","XRANGELOOSE","COERCE","COERCERTL","LONETILDE","TILDETRIM","TILDE","TILDELOOSE","LONECARET","CARETTRIM","CARET","CARETLOOSE","COMPARATORLOOSE","COMPARATOR","COMPARATORTRIM","HYPHENRANGE","HYPHENRANGELOOSE","STAR","loose","includePrerelease","SemVer","er","minor","prerelease","build","clean","compare","compareMain","comparePre","compareIdentifiers","compareBuild","inc","release","identifier","version1","version2","eq","v1","v2","defaultResult","numeric","anum","bnum","gt","lt","neq","gte","lte","cmp","op","Comparator","semver","ANY","operator","rcompareIdentifiers","compareLoose","versionA","versionB","rcompare","rsort","Range","parseRange","isSatisfiable","comparators","remainingComparators","testComparator","otherComparator","intersects","isX","hyphenReplace","$0","fM","fm","fp","fpr","fb","tM","tm","tp","tpr","tb","testSet","allowed","satisfies","outside","hilo","gtfn","ltefn","ltfn","ecomp","high","low","comparator","rangeTmp","sameDirectionIncreasing","sameDirectionDecreasing","sameSemVer","differentDirectionsInclusive","oppositeDirectionsLessThan","oppositeDirectionsGreaterThan","comps","hr","compRe","pr","replaceCaret","replaceCarets","replaceTilde","replaceTildes","gtlt","xM","xm","xp","anyX","replaceXRange","replaceXRanges","replaceStars","parseComparator","thisComparators","rangeComparators","thisComparator","rangeComparator","toComparators","maxSatisfying","maxSV","rangeObj","minSatisfying","minSV","minVersion","minver","compver","validRange","ltr","gtr","r1","r2","coerce","rtl","Map","createProperty","arrayMethodHasSpeciesSupport","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","propertyKey","$filter","HAS_SPECIES_SUPPORT","UNSCOPABLES","ArrayPrototype","collection","collectionStrong","InternalMetadataModule","iterate","anInstance","checkCorrectnessOfIteration","inheritIfRequired","CONSTRUCTOR_NAME","wrapper","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","nativeMethod","getConstructor","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","setStrong","preventExtensions","ENTRIES","returnMethod","SAFE_CLOSING","iteratorWithReturn","SKIP_CLOSING","ITERATION_SUPPORT","Wrapper","NewTarget","NewTargetPrototype","redefineAll","setSpecies","internalStateGetterFor","first","size","define","previous","entry","getEntry","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","point","CONVERT_TO_STRING","position","codeAt","DOMIterables","COLLECTION_NAME","Collection","CollectionPrototype","ArrayIteratorMethods","ArrayValues","displayName","uidElement","displayNameElement","Handlebars","depth0","helper","alias1","nullContext","alias2","helperMissing","alias4","lookupProperty","_handlebarsSafeString2","_handlebarsException2","Utils","runtime","_handlebarsNoConflict2","hb","SafeString","VM","spec","inst","inverse","each","_exception","priorKey","execIteration","newContext","conditional","includeZero","_decoratorsInline2","_decoratorsInline","sources","checkRevision","compilerInfo","compilerRevision","currentRevision","runtimeVersions","compilerVersions","templateSpec","main","decorator","main_d","compiler","templateWasPrecompiledWithCompilerV7","lookup","depths","lambda","invokePartial","resolvePartial","extendedOptions","compilerOptions","indent","lines","programs","program","declaredBlockParams","programWrapper","wrapProgram","depth","mergeIfNeeded","param","seal","_setup","useData","useBlockParams","useDepths","executeDecorators","isTop","mergedHelpers","_internalWrapHelper","wrapHelper","passLookupPropertyOption","wrapHelpersToPassLookupProperty","usePartial","useDecorators","keepHelperInHelpers","allowCallsToHelperMissing","_child","currentPartialBlock","partialBlock","prog","currentDepths","transformOptionsFn","$Handlebars","noConflict","webpackPolyfill","paths","webpackContext","req","webpackContextResolve","Gettext","catalogs","sourceLocale","eventName","listener","eventData","setTextDomain","dnpgettext","dgettext","ngettext","msgidPlural","count","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","pluralsFunc","getLanguageCode","getComment","textdomain","setlocale","addTextdomain","reIsDeepProp","reIsPlainProp","reLeadingDot","rePropName","reEscapeChar","reIsHostCtor","freeGlobal","freeSelf","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","objectToString","reIsNative","getNative","nativeCreate","symbolProto","symbolToString","Hash","ListCache","MapCache","assocIndexOf","baseGet","isSymbol","isKey","stringToPath","toKey","baseIsNative","isHostObject","toSource","getMapData","__data__","memoize","baseToString","quote","resolver","memoized","Cache","isObjectLike","ach","examples","sample","nplurals","pluralsText","af","ak","am","an","ar","arn","ay","az","be","bg","bn","bo","br","brx","bs","ca","cgg","cs","csb","cy","da","de","doi","dz","en","eo","es","et","eu","fa","ff","fi","fil","fo","fr","fur","fy","ga","gd","gl","gu","gun","ha","hi","hne","hu","hy","ja","jbo","jv","ka","kk","km","kn","ko","ku","kw","ky","lb","ln","lo","lv","mai","mfe","mg","mi","mk","ml","mn","mni","mnk","mr","mt","my","nah","nap","nb","ne","nl","nn","nso","oc","or","pa","pap","pl","pms","ps","pt","ro","ru","rw","sah","sat","sco","sd","se","si","sk","sl","so","son","sq","sr","su","sv","sw","ta","te","tg","th","ti","tk","tr","tt","ug","uk","ur","uz","vi","wa","wo","yo","zh","getLanguage","app","vars","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","___CSS_LOADER_API_IMPORT___","useSourceMap","cssMapping","sourceMapping","sourceMap","base64","unescape","sourceURLs","sourceRoot","cssWithMappingToString","mediaQuery","dedupe","alreadyImportedModules","Timeout","clearFn","_id","_clearFn","scope","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","clearImmediate","registerImmediate","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","port2","script","attachEvent","task","normalizeComponent","scriptExports","functionalTemplate","injectStyles","moduleIdentifier","shadowMode","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","_injectStyles","originalRender","beforeCreate","_h","primary","link","onClickActionButton","label","fileTemplate","require","userLocalTemplate","userRemoteTemplate","unknownTemplate","unknownLinkTemplate","parseMessage","parameters","escapeHTML","parameter","parseParameter","parseFileParameter","server","lastSlashPosition","firstSlashPosition","_vm","notificationId","timestamp","absoluteDate","relativeDate","onDismissNotification","icon","renderedSubject","onClickMessage","collapsed","isCollapsedMessage","renderedMessage","actions","shutdown","hasNotifications","notifications","requestWebNotificationPermissions","iconPath","notification_id","object_id","object_type","onRemove","onDismissAll","webNotificationsGranted","OCA","searchBox","getElementsByClassName","notificationsBell","nodeName","insertAdjacentHTML","App","listToStyles","parentId","newStyles","part","media","hasDocument","DEBUG","stylesInDom","head","singletonElement","singletonCounter","isProduction","isOldIE","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","addStyle","createStyleElement","styleElement","styleIndex","applyToSingletonTag","applyToTag","textStore","replaceText","styleSheet","cssNode","ssrId"],"mappings":"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","file":"notifications.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/js/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 308);\n","//! moment.js\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\n var hookCallback;\n\n function hooks () {\n return hookCallback.apply(null, arguments);\n }\n\n // This is done to register the method called with moment()\n // without creating circular dependencies.\n function setHookCallback (callback) {\n hookCallback = callback;\n }\n\n function isArray(input) {\n return input instanceof Array || Object.prototype.toString.call(input) === '[object Array]';\n }\n\n function isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return input != null && Object.prototype.toString.call(input) === '[object Object]';\n }\n\n function isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return (Object.getOwnPropertyNames(obj).length === 0);\n } else {\n var k;\n for (k in obj) {\n if (obj.hasOwnProperty(k)) {\n return false;\n }\n }\n return true;\n }\n }\n\n function isUndefined(input) {\n return input === void 0;\n }\n\n function isNumber(input) {\n return typeof input === 'number' || Object.prototype.toString.call(input) === '[object Number]';\n }\n\n function isDate(input) {\n return input instanceof Date || Object.prototype.toString.call(input) === '[object Date]';\n }\n\n function map(arr, fn) {\n var res = [], i;\n for (i = 0; i < arr.length; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n }\n\n function hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n }\n\n function extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n }\n\n function createUTC (input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n }\n\n function defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty : false,\n unusedTokens : [],\n unusedInput : [],\n overflow : -2,\n charsLeftOver : 0,\n nullInput : false,\n invalidMonth : null,\n invalidFormat : false,\n userInvalidated : false,\n iso : false,\n parsedDateParts : [],\n meridiem : null,\n rfc2822 : false,\n weekdayMismatch : false\n };\n }\n\n function getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n }\n\n var some;\n if (Array.prototype.some) {\n some = Array.prototype.some;\n } else {\n some = function (fun) {\n var t = Object(this);\n var len = t.length >>> 0;\n\n for (var i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n function isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m);\n var parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n });\n var isNowValid = !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid = isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n }\n else {\n return isNowValid;\n }\n }\n return m._isValid;\n }\n\n function createInvalid (flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n }\n else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n }\n\n // Plugins that add properties should also add the key here (null value),\n // so we can properly clone ourselves.\n var momentProperties = hooks.momentProperties = [];\n\n function copyConfig(to, from) {\n var i, prop, val;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentProperties.length > 0) {\n for (i = 0; i < momentProperties.length; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n }\n\n var updateInProgress = false;\n\n // Moment prototype object\n function Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n }\n\n function isMoment (obj) {\n return obj instanceof Moment || (obj != null && obj._isAMomentObject != null);\n }\n\n function absFloor (number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n // compare two arrays, return the number of differences\n function compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if ((dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n }\n\n function warn(msg) {\n if (hooks.suppressDeprecationWarnings === false &&\n (typeof console !== 'undefined') && console.warn) {\n console.warn('Deprecation warning: ' + msg);\n }\n }\n\n function deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [];\n var arg;\n for (var i = 0; i < arguments.length; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (var key in arguments[0]) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(msg + '\\nArguments: ' + Array.prototype.slice.call(args).join('') + '\\n' + (new Error()).stack);\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n }\n\n var deprecations = {};\n\n function deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n }\n\n hooks.suppressDeprecationWarnings = false;\n hooks.deprecationHandler = null;\n\n function isFunction(input) {\n return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';\n }\n\n function set (config) {\n var prop, i;\n for (i in config) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' + (/\\d{1,2}/).source);\n }\n\n function mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig), prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n }\n\n function Locale(config) {\n if (config != null) {\n this.set(config);\n }\n }\n\n var keys;\n\n if (Object.keys) {\n keys = Object.keys;\n } else {\n keys = function (obj) {\n var i, res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n }\n\n var defaultCalendar = {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n };\n\n function calendar (key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n }\n\n var defaultLongDateFormat = {\n LTS : 'h:mm:ss A',\n LT : 'h:mm A',\n L : 'MM/DD/YYYY',\n LL : 'MMMM D, YYYY',\n LLL : 'MMMM D, YYYY h:mm A',\n LLLL : 'dddd, MMMM D, YYYY h:mm A'\n };\n\n function longDateFormat (key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper.replace(/MMMM|MM|DD|dddd/g, function (val) {\n return val.slice(1);\n });\n\n return this._longDateFormat[key];\n }\n\n var defaultInvalidDate = 'Invalid date';\n\n function invalidDate () {\n return this._invalidDate;\n }\n\n var defaultOrdinal = '%d';\n var defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\n function ordinal (number) {\n return this._ordinal.replace('%d', number);\n }\n\n var defaultRelativeTime = {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n };\n\n function relativeTime (number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return (isFunction(output)) ?\n output(number, withoutSuffix, string, isFuture) :\n output.replace(/%d/i, number);\n }\n\n function pastFuture (diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n }\n\n var aliases = {};\n\n function addUnitAlias (unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n }\n\n function normalizeUnits(units) {\n return typeof units === 'string' ? aliases[units] || aliases[units.toLowerCase()] : undefined;\n }\n\n function normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n }\n\n var priorities = {};\n\n function addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n }\n\n function getPrioritizedUnits(unitsObj) {\n var units = [];\n for (var u in unitsObj) {\n units.push({unit: u, priority: priorities[u]});\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n }\n\n function zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber;\n }\n\n var formattingTokens = /(\\[[^\\[]*\\])|(\\\\)?([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}|x|X|zz?|ZZ?|.)/g;\n\n var localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;\n\n var formatFunctions = {};\n\n var formatTokenFunctions = {};\n\n // token: 'M'\n // padded: ['MM', 2]\n // ordinal: 'Mo'\n // callback: function () { this.month() + 1 }\n function addFormatToken (token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(func.apply(this, arguments), token);\n };\n }\n }\n\n function removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n }\n\n function makeFormatFunction(format) {\n var array = format.match(formattingTokens), i, length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '', i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i]) ? array[i].call(mom, format) : array[i];\n }\n return output;\n };\n }\n\n // format date using native date object\n function formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n }\n\n function expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n }\n\n var match1 = /\\d/; // 0 - 9\n var match2 = /\\d\\d/; // 00 - 99\n var match3 = /\\d{3}/; // 000 - 999\n var match4 = /\\d{4}/; // 0000 - 9999\n var match6 = /[+-]?\\d{6}/; // -999999 - 999999\n var match1to2 = /\\d\\d?/; // 0 - 99\n var match3to4 = /\\d\\d\\d\\d?/; // 999 - 9999\n var match5to6 = /\\d\\d\\d\\d\\d\\d?/; // 99999 - 999999\n var match1to3 = /\\d{1,3}/; // 0 - 999\n var match1to4 = /\\d{1,4}/; // 0 - 9999\n var match1to6 = /[+-]?\\d{1,6}/; // -999999 - 999999\n\n var matchUnsigned = /\\d+/; // 0 - inf\n var matchSigned = /[+-]?\\d+/; // -inf - inf\n\n var matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi; // +00:00 -00:00 +0000 -0000 or Z\n var matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi; // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n\n var matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/; // 123456789 123456789.123\n\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n var matchWord = /[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;\n\n var regexes = {};\n\n function addRegexToken (token, regex, strictRegex) {\n regexes[token] = isFunction(regex) ? regex : function (isStrict, localeData) {\n return (isStrict && strictRegex) ? strictRegex : regex;\n };\n }\n\n function getParseRegexForToken (token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n }\n\n // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n function unescapeFormat(s) {\n return regexEscape(s.replace('\\\\', '').replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g, function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }));\n }\n\n function regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n var tokens = {};\n\n function addParseToken (token, callback) {\n var i, func = callback;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n for (i = 0; i < token.length; i++) {\n tokens[token[i]] = func;\n }\n }\n\n function addWeekParseToken (token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n }\n\n function addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n }\n\n var YEAR = 0;\n var MONTH = 1;\n var DATE = 2;\n var HOUR = 3;\n var MINUTE = 4;\n var SECOND = 5;\n var MILLISECOND = 6;\n var WEEK = 7;\n var WEEKDAY = 8;\n\n // FORMATTING\n\n addFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? '' + y : '+' + y;\n });\n\n addFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n });\n\n addFormatToken(0, ['YYYY', 4], 0, 'year');\n addFormatToken(0, ['YYYYY', 5], 0, 'year');\n addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n // ALIASES\n\n addUnitAlias('year', 'y');\n\n // PRIORITIES\n\n addUnitPriority('year', 1);\n\n // PARSING\n\n addRegexToken('Y', matchSigned);\n addRegexToken('YY', match1to2, match2);\n addRegexToken('YYYY', match1to4, match4);\n addRegexToken('YYYYY', match1to6, match6);\n addRegexToken('YYYYYY', match1to6, match6);\n\n addParseToken(['YYYYY', 'YYYYYY'], YEAR);\n addParseToken('YYYY', function (input, array) {\n array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n });\n addParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n });\n addParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n });\n\n // HELPERS\n\n function daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n }\n\n function isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n }\n\n // HOOKS\n\n hooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n };\n\n // MOMENTS\n\n var getSetYear = makeGetSet('FullYear', true);\n\n function getIsLeapYear () {\n return isLeapYear(this.year());\n }\n\n function makeGetSet (unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n }\n\n function get (mom, unit) {\n return mom.isValid() ?\n mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() : NaN;\n }\n\n function set$1 (mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (unit === 'FullYear' && isLeapYear(mom.year()) && mom.month() === 1 && mom.date() === 29) {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value, mom.month(), daysInMonth(value, mom.month()));\n }\n else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n }\n\n // MOMENTS\n\n function stringGet (units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n }\n\n\n function stringSet (units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units);\n for (var i = 0; i < prioritized.length; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n }\n\n function mod(n, x) {\n return ((n % x) + x) % x;\n }\n\n var indexOf;\n\n if (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n } else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n }\n\n function daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1 ? (isLeapYear(year) ? 29 : 28) : (31 - modMonth % 7 % 2);\n }\n\n // FORMATTING\n\n addFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n });\n\n addFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n });\n\n addFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n });\n\n // ALIASES\n\n addUnitAlias('month', 'M');\n\n // PRIORITY\n\n addUnitPriority('month', 8);\n\n // PARSING\n\n addRegexToken('M', match1to2);\n addRegexToken('MM', match1to2, match2);\n addRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n });\n addRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n });\n\n addParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n });\n\n addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n });\n\n // LOCALES\n\n var MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;\n var defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_');\n function localeMonths (m, format) {\n if (!m) {\n return isArray(this._months) ? this._months :\n this._months['standalone'];\n }\n return isArray(this._months) ? this._months[m.month()] :\n this._months[(this._months.isFormat || MONTHS_IN_FORMAT).test(format) ? 'format' : 'standalone'][m.month()];\n }\n\n var defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_');\n function localeMonthsShort (m, format) {\n if (!m) {\n return isArray(this._monthsShort) ? this._monthsShort :\n this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort) ? this._monthsShort[m.month()] :\n this._monthsShort[MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'][m.month()];\n }\n\n function handleStrictParse(monthName, format, strict) {\n var i, ii, mom, llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(mom, '').toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeMonthsParse (monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i');\n this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i');\n }\n if (!strict && !this._monthsParse[i]) {\n regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) {\n return i;\n } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function setMonth (mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n }\n\n function getSetMonth (value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n }\n\n function getDaysInMonth () {\n return daysInMonth(this.year(), this.month());\n }\n\n var defaultMonthsShortRegex = matchWord;\n function monthsShortRegex (isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict ?\n this._monthsShortStrictRegex : this._monthsShortRegex;\n }\n }\n\n var defaultMonthsRegex = matchWord;\n function monthsRegex (isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict ?\n this._monthsStrictRegex : this._monthsRegex;\n }\n }\n\n function computeMonthsParse () {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [], longPieces = [], mixedPieces = [],\n i, mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i');\n this._monthsShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i');\n }\n\n function createDate (y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n }\n\n function createUTCDate (y) {\n var date;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n var args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n }\n\n // start-of-first-week - start-of-year\n function firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n }\n\n // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n function dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear, resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear\n };\n }\n\n function weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek, resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear\n };\n }\n\n function weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n }\n\n // FORMATTING\n\n addFormatToken('w', ['ww', 2], 'wo', 'week');\n addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n // ALIASES\n\n addUnitAlias('week', 'w');\n addUnitAlias('isoWeek', 'W');\n\n // PRIORITIES\n\n addUnitPriority('week', 5);\n addUnitPriority('isoWeek', 5);\n\n // PARSING\n\n addRegexToken('w', match1to2);\n addRegexToken('ww', match1to2, match2);\n addRegexToken('W', match1to2);\n addRegexToken('WW', match1to2, match2);\n\n addWeekParseToken(['w', 'ww', 'W', 'WW'], function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n });\n\n // HELPERS\n\n // LOCALES\n\n function localeWeek (mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n }\n\n var defaultLocaleWeek = {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n };\n\n function localeFirstDayOfWeek () {\n return this._week.dow;\n }\n\n function localeFirstDayOfYear () {\n return this._week.doy;\n }\n\n // MOMENTS\n\n function getSetWeek (input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n function getSetISOWeek (input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('d', 0, 'do', 'day');\n\n addFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n });\n\n addFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n });\n\n addFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n });\n\n addFormatToken('e', 0, 0, 'weekday');\n addFormatToken('E', 0, 0, 'isoWeekday');\n\n // ALIASES\n\n addUnitAlias('day', 'd');\n addUnitAlias('weekday', 'e');\n addUnitAlias('isoWeekday', 'E');\n\n // PRIORITY\n addUnitPriority('day', 11);\n addUnitPriority('weekday', 11);\n addUnitPriority('isoWeekday', 11);\n\n // PARSING\n\n addRegexToken('d', match1to2);\n addRegexToken('e', match1to2);\n addRegexToken('E', match1to2);\n addRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n });\n addRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n });\n addRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n });\n\n addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n });\n\n addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n });\n\n // HELPERS\n\n function parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n }\n\n function parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n }\n\n // LOCALES\n function shiftWeekdays (ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n }\n\n var defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_');\n function localeWeekdays (m, format) {\n var weekdays = isArray(this._weekdays) ? this._weekdays :\n this._weekdays[(m && m !== true && this._weekdays.isFormat.test(format)) ? 'format' : 'standalone'];\n return (m === true) ? shiftWeekdays(weekdays, this._week.dow)\n : (m) ? weekdays[m.day()] : weekdays;\n }\n\n var defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_');\n function localeWeekdaysShort (m) {\n return (m === true) ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : (m) ? this._weekdaysShort[m.day()] : this._weekdaysShort;\n }\n\n var defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_');\n function localeWeekdaysMin (m) {\n return (m === true) ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : (m) ? this._weekdaysMin[m.day()] : this._weekdaysMin;\n }\n\n function handleStrictParse$1(weekdayName, format, strict) {\n var i, ii, mom, llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(mom, '').toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(mom, '').toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeWeekdaysParse (weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp('^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$', 'i');\n this._shortWeekdaysParse[i] = new RegExp('^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$', 'i');\n this._minWeekdaysParse[i] = new RegExp('^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$', 'i');\n }\n if (!this._weekdaysParse[i]) {\n regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (strict && format === 'dddd' && this._fullWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (strict && format === 'ddd' && this._shortWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (strict && format === 'dd' && this._minWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function getSetDayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n }\n\n function getSetLocaleDayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n }\n\n function getSetISODayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n }\n\n var defaultWeekdaysRegex = matchWord;\n function weekdaysRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict ?\n this._weekdaysStrictRegex : this._weekdaysRegex;\n }\n }\n\n var defaultWeekdaysShortRegex = matchWord;\n function weekdaysShortRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict ?\n this._weekdaysShortStrictRegex : this._weekdaysShortRegex;\n }\n }\n\n var defaultWeekdaysMinRegex = matchWord;\n function weekdaysMinRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict ?\n this._weekdaysMinStrictRegex : this._weekdaysMinRegex;\n }\n }\n\n\n function computeWeekdaysParse () {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [], shortPieces = [], longPieces = [], mixedPieces = [],\n i, mom, minp, shortp, longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = this.weekdaysMin(mom, '');\n shortp = this.weekdaysShort(mom, '');\n longp = this.weekdays(mom, '');\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 7; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i');\n this._weekdaysShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i');\n this._weekdaysMinStrictRegex = new RegExp('^(' + minPieces.join('|') + ')', 'i');\n }\n\n // FORMATTING\n\n function hFormat() {\n return this.hours() % 12 || 12;\n }\n\n function kFormat() {\n return this.hours() || 24;\n }\n\n addFormatToken('H', ['HH', 2], 0, 'hour');\n addFormatToken('h', ['hh', 2], 0, hFormat);\n addFormatToken('k', ['kk', 2], 0, kFormat);\n\n addFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('hmmss', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2);\n });\n\n addFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('Hmmss', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2);\n });\n\n function meridiem (token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(this.hours(), this.minutes(), lowercase);\n });\n }\n\n meridiem('a', true);\n meridiem('A', false);\n\n // ALIASES\n\n addUnitAlias('hour', 'h');\n\n // PRIORITY\n addUnitPriority('hour', 13);\n\n // PARSING\n\n function matchMeridiem (isStrict, locale) {\n return locale._meridiemParse;\n }\n\n addRegexToken('a', matchMeridiem);\n addRegexToken('A', matchMeridiem);\n addRegexToken('H', match1to2);\n addRegexToken('h', match1to2);\n addRegexToken('k', match1to2);\n addRegexToken('HH', match1to2, match2);\n addRegexToken('hh', match1to2, match2);\n addRegexToken('kk', match1to2, match2);\n\n addRegexToken('hmm', match3to4);\n addRegexToken('hmmss', match5to6);\n addRegexToken('Hmm', match3to4);\n addRegexToken('Hmmss', match5to6);\n\n addParseToken(['H', 'HH'], HOUR);\n addParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n });\n addParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n });\n addParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4;\n var pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n });\n addParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4;\n var pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n });\n\n // LOCALES\n\n function localeIsPM (input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return ((input + '').toLowerCase().charAt(0) === 'p');\n }\n\n var defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i;\n function localeMeridiem (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n }\n\n\n // MOMENTS\n\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n var getSetHour = makeGetSet('Hours', true);\n\n var baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse\n };\n\n // internal storage for locale config files\n var locales = {};\n var localeFamilies = {};\n var globalLocale;\n\n function normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n }\n\n // pick the locale from the array\n // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n function chooseLocale(names) {\n var i = 0, j, next, locale, split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n }\n\n function loadLocale(name) {\n var oldLocale = null;\n // TODO: Find a better way to register and load all the locales in Node\n if (!locales[name] && (typeof module !== 'undefined') &&\n module && module.exports) {\n try {\n oldLocale = globalLocale._abbr;\n var aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {}\n }\n return locales[name];\n }\n\n // This function will load locale and then set the global locale. If\n // no arguments are passed in, it will simply return the current global\n // locale key.\n function getSetGlobalLocale (key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n }\n else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n }\n else {\n if ((typeof console !== 'undefined') && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn('Locale ' + key + ' not found. Did you forget to load it?');\n }\n }\n }\n\n return globalLocale._abbr;\n }\n\n function defineLocale (name, config) {\n if (config !== null) {\n var locale, parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple('defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.');\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n }\n\n function updateLocale(name, config) {\n if (config != null) {\n var locale, tmpLocale, parentConfig = baseConfig;\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n }\n\n // returns locale data\n function getLocale (key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n }\n\n function listLocales() {\n return keys(locales);\n }\n\n function checkOverflow (m) {\n var overflow;\n var a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11 ? MONTH :\n a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE :\n a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR :\n a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE :\n a[SECOND] < 0 || a[SECOND] > 59 ? SECOND :\n a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :\n -1;\n\n if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n }\n\n // Pick the first defined of two or three arguments.\n function defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n }\n\n function currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [nowValue.getUTCFullYear(), nowValue.getUTCMonth(), nowValue.getUTCDate()];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n }\n\n // convert an array to a date.\n // the array should mirror the parameters below\n // note: all values past the year are optional and will default to the lowest possible value.\n // [year, month, day , hour, minute, second, millisecond]\n function configFromArray (config) {\n var i, date, input = [], currentDate, expectedWeekday, yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (config._dayOfYear > daysInYear(yearToUse) || config._dayOfYear === 0) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);\n expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== expectedWeekday) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n }\n\n function dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(createLocal(), 1, 4).year);\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n var curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n }\n\n // iso 8601 regex\n // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n var extendedIsoRegex = /^\\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)?)?$/;\n var basicIsoRegex = /^\\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)?)?$/;\n\n var tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/;\n\n var isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n // YYYYMM is NOT allowed by the standard\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/]\n ];\n\n // iso time formats and regexes\n var isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/]\n ];\n\n var aspNetJsonRegex = /^\\/?Date\\((\\-?\\d+)/i;\n\n // date from iso format\n function configFromISO(config) {\n var i, l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime, dateFormat, timeFormat, tzFormat;\n\n if (match) {\n getParsingFlags(config).iso = true;\n\n for (i = 0, l = isoDates.length; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimes.length; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n }\n\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n var rfc2822 = /^(?:(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}))$/;\n\n function extractFromRFC2822Strings(yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10)\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n }\n\n function untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n }\n\n function preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s.replace(/\\([^)]*\\)|[\\n\\t]/g, ' ').replace(/(\\s\\s+)/g, ' ').replace(/^\\s\\s*/, '').replace(/\\s\\s*$/, '');\n }\n\n function checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an indepentent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(parsedInput[0], parsedInput[1], parsedInput[2]).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n }\n\n var obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60\n };\n\n function calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10);\n var m = hm % 100, h = (hm - m) / 100;\n return h * 60 + m;\n }\n }\n\n // date and time from ref 2822 format\n function configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i));\n if (match) {\n var parsedArray = extractFromRFC2822Strings(match[4], match[3], match[2], match[5], match[6], match[7]);\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n }\n\n // date from iso format or fallback\n function configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n\n hooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged and will be removed in an upcoming major release. Please refer to ' +\n 'http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n );\n\n // constant that refers to the ISO standard\n hooks.ISO_8601 = function () {};\n\n // constant that refers to the RFC 2822 form\n hooks.RFC_2822 = function () {};\n\n // date from string and format string\n function configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i, parsedInput, tokens, token, skipped,\n stringLength = string.length,\n totalParsedInputLength = 0;\n\n tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];\n\n for (i = 0; i < tokens.length; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];\n // console.log('token', token, 'parsedInput', parsedInput,\n // 'regex', getParseRegexForToken(token, config));\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(string.indexOf(parsedInput) + parsedInput.length);\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n }\n else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n }\n else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);\n\n configFromArray(config);\n checkOverflow(config);\n }\n\n\n function meridiemFixWrap (locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n }\n\n // date from string and array of format strings\n function configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n\n scoreToBeat,\n i,\n currentScore;\n\n if (config._f.length === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < config._f.length; i++) {\n currentScore = 0;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (!isValid(tempConfig)) {\n continue;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (scoreToBeat == null || currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n\n extend(config, bestMoment || tempConfig);\n }\n\n function configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i);\n config._a = map([i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond], function (obj) {\n return obj && parseInt(obj, 10);\n });\n\n configFromArray(config);\n }\n\n function createFromConfig (config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n }\n\n function prepareConfig (config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({nullInput: true});\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n }\n\n function configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n }\n\n function createLocalOrUTC (input, format, locale, strict, isUTC) {\n var c = {};\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if ((isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n }\n\n function createLocal (input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n }\n\n var prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n var prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n // Pick a moment m from moments so that m[fn](other) is true for all\n // other. This relies on the function fn to be transitive.\n //\n // moments should either be an array of moment objects or an array, whose\n // first element is an array of moment objects.\n function pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n }\n\n // TODO: Use [].sort instead?\n function min () {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n }\n\n function max () {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n }\n\n var now = function () {\n return Date.now ? Date.now() : +(new Date());\n };\n\n var ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond'];\n\n function isDurationValid(m) {\n for (var key in m) {\n if (!(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) {\n return false;\n }\n }\n\n var unitHasDecimal = false;\n for (var i = 0; i < ordering.length; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n }\n\n function isValid$1() {\n return this._isValid;\n }\n\n function createInvalid$1() {\n return createDuration(NaN);\n }\n\n function Duration (duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds = +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days +\n weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months +\n quarters * 3 +\n years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n }\n\n function isDuration (obj) {\n return obj instanceof Duration;\n }\n\n function absRound (number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n }\n\n // FORMATTING\n\n function offset (token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset();\n var sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2);\n });\n }\n\n offset('Z', ':');\n offset('ZZ', '');\n\n // PARSING\n\n addRegexToken('Z', matchShortOffset);\n addRegexToken('ZZ', matchShortOffset);\n addParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n });\n\n // HELPERS\n\n // timezone chunker\n // '+10:00' > ['10', '00']\n // '-1530' > ['-15', '30']\n var chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\n function offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher);\n\n if (matches === null) {\n return null;\n }\n\n var chunk = matches[matches.length - 1] || [];\n var parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n var minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ?\n 0 :\n parts[0] === '+' ? minutes : -minutes;\n }\n\n // Return a moment from input, that is local/utc/zone equivalent to model.\n function cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff = (isMoment(input) || isDate(input) ? input.valueOf() : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n }\n\n function getDateOffset (m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset() / 15) * 15;\n }\n\n // HOOKS\n\n // This function will be called whenever a moment is mutated.\n // It is intended to keep the offset in sync with the timezone.\n hooks.updateOffset = function () {};\n\n // MOMENTS\n\n // keepLocalTime = true means only change the timezone, without\n // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n // +0200, so we adjust the time as needed, to be valid.\n //\n // Keeping the time actually adds/subtracts (one hour)\n // from the actual represented time. That is why we call updateOffset\n // a second time. In case it wants us to change the offset again\n // _changeInProgress == true case, then we have to adjust, because\n // there is no such time in the given timezone.\n function getSetOffset (input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(this, createDuration(input - offset, 'm'), 1, false);\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n }\n\n function getSetZone (input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n }\n\n function setOffsetToUTC (keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n }\n\n function setOffsetToLocal (keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n }\n\n function setOffsetToParsedOffset () {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n }\n else {\n this.utcOffset(0, true);\n }\n }\n return this;\n }\n\n function hasAlignedHourOffset (input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n }\n\n function isDaylightSavingTime () {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n }\n\n function isDaylightSavingTimeShifted () {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {};\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n var other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted = this.isValid() &&\n compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n }\n\n function isLocal () {\n return this.isValid() ? !this._isUTC : false;\n }\n\n function isUtcOffset () {\n return this.isValid() ? this._isUTC : false;\n }\n\n function isUtc () {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n }\n\n // ASP.NET json date format regex\n var aspNetRegex = /^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;\n\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n var isoRegex = /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n function createDuration (input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms : input._milliseconds,\n d : input._days,\n M : input._months\n };\n } else if (isNumber(input)) {\n duration = {};\n if (key) {\n duration[key] = input;\n } else {\n duration.milliseconds = input;\n }\n } else if (!!(match = aspNetRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : 0,\n d : toInt(match[DATE]) * sign,\n h : toInt(match[HOUR]) * sign,\n m : toInt(match[MINUTE]) * sign,\n s : toInt(match[SECOND]) * sign,\n ms : toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match\n };\n } else if (!!(match = isoRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : parseIso(match[2], sign),\n M : parseIso(match[3], sign),\n w : parseIso(match[4], sign),\n d : parseIso(match[5], sign),\n h : parseIso(match[6], sign),\n m : parseIso(match[7], sign),\n s : parseIso(match[8], sign)\n };\n } else if (duration == null) {// checks for null or undefined\n duration = {};\n } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) {\n diffRes = momentsDifference(createLocal(duration.from), createLocal(duration.to));\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n return ret;\n }\n\n createDuration.fn = Duration.prototype;\n createDuration.invalid = createInvalid$1;\n\n function parseIso (inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n }\n\n function positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months = other.month() - base.month() +\n (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +(base.clone().add(res.months, 'M'));\n\n return res;\n }\n\n function momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return {milliseconds: 0, months: 0};\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n }\n\n // TODO: remove 'name' arg after deprecation is removed\n function createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.');\n tmp = val; val = period; period = tmp;\n }\n\n val = typeof val === 'string' ? +val : val;\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n }\n\n function addSubtract (mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n }\n\n var add = createAdder(1, 'add');\n var subtract = createAdder(-1, 'subtract');\n\n function getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6 ? 'sameElse' :\n diff < -1 ? 'lastWeek' :\n diff < 0 ? 'lastDay' :\n diff < 1 ? 'sameDay' :\n diff < 2 ? 'nextDay' :\n diff < 7 ? 'nextWeek' : 'sameElse';\n }\n\n function calendar$1 (time, formats) {\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse';\n\n var output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]);\n\n return this.format(output || this.localeData().calendar(format, this, createLocal(now)));\n }\n\n function clone () {\n return new Moment(this);\n }\n\n function isAfter (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n }\n\n function isBefore (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n }\n\n function isBetween (from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (inclusivity[0] === '(' ? this.isAfter(localFrom, units) : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')' ? this.isBefore(localTo, units) : !this.isAfter(localTo, units));\n }\n\n function isSame (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf();\n }\n }\n\n function isSameOrAfter (input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n }\n\n function isSameOrBefore (input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n }\n\n function diff (input, units, asFloat) {\n var that,\n zoneDelta,\n output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year': output = monthDiff(this, that) / 12; break;\n case 'month': output = monthDiff(this, that); break;\n case 'quarter': output = monthDiff(this, that) / 3; break;\n case 'second': output = (this - that) / 1e3; break; // 1000\n case 'minute': output = (this - that) / 6e4; break; // 1000 * 60\n case 'hour': output = (this - that) / 36e5; break; // 1000 * 60 * 60\n case 'day': output = (this - that - zoneDelta) / 864e5; break; // 1000 * 60 * 60 * 24, negate dst\n case 'week': output = (this - that - zoneDelta) / 6048e5; break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default: output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n }\n\n function monthDiff (a, b) {\n // difference in months\n var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2, adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n }\n\n hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\n hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\n function toString () {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n }\n\n function toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true;\n var m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(m, utc ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ');\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000).toISOString().replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(m, utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ');\n }\n\n /**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\n function inspect () {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment';\n var zone = '';\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n var prefix = '[' + func + '(\"]';\n var year = (0 <= this.year() && this.year() <= 9999) ? 'YYYY' : 'YYYYYY';\n var datetime = '-MM-DD[T]HH:mm:ss.SSS';\n var suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n }\n\n function format (inputString) {\n if (!inputString) {\n inputString = this.isUtc() ? hooks.defaultFormatUtc : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n }\n\n function from (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function fromNow (withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n }\n\n function to (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function toNow (withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n }\n\n // If passed a locale key, it will set the locale for this\n // instance. Otherwise, it will return the locale configuration\n // variables for this instance.\n function locale (key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n }\n\n var lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n );\n\n function localeData () {\n return this._locale;\n }\n\n var MS_PER_SECOND = 1000;\n var MS_PER_MINUTE = 60 * MS_PER_SECOND;\n var MS_PER_HOUR = 60 * MS_PER_MINUTE;\n var MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n // actual modulo - handles negative numbers (for dates before 1970):\n function mod$1(dividend, divisor) {\n return (dividend % divisor + divisor) % divisor;\n }\n\n function localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n }\n\n function utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n }\n\n function startOf (units) {\n var time;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(this.year(), this.month() - this.month() % 3, 1);\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(this.year(), this.month(), this.date() - this.weekday());\n break;\n case 'isoWeek':\n time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1));\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR);\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function endOf (units) {\n var time;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time = startOfDate(this.year(), this.month() - this.month() % 3 + 3, 1) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time = startOfDate(this.year(), this.month(), this.date() - this.weekday() + 7) - 1;\n break;\n case 'isoWeek':\n time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time += MS_PER_HOUR - mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR) - 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function valueOf () {\n return this._d.valueOf() - ((this._offset || 0) * 60000);\n }\n\n function unix () {\n return Math.floor(this.valueOf() / 1000);\n }\n\n function toDate () {\n return new Date(this.valueOf());\n }\n\n function toArray () {\n var m = this;\n return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()];\n }\n\n function toObject () {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds()\n };\n }\n\n function toJSON () {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n }\n\n function isValid$2 () {\n return isValid(this);\n }\n\n function parsingFlags () {\n return extend({}, getParsingFlags(this));\n }\n\n function invalidAt () {\n return getParsingFlags(this).overflow;\n }\n\n function creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict\n };\n }\n\n // FORMATTING\n\n addFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n });\n\n addFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n });\n\n function addWeekYearFormatToken (token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n }\n\n addWeekYearFormatToken('gggg', 'weekYear');\n addWeekYearFormatToken('ggggg', 'weekYear');\n addWeekYearFormatToken('GGGG', 'isoWeekYear');\n addWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n // ALIASES\n\n addUnitAlias('weekYear', 'gg');\n addUnitAlias('isoWeekYear', 'GG');\n\n // PRIORITY\n\n addUnitPriority('weekYear', 1);\n addUnitPriority('isoWeekYear', 1);\n\n\n // PARSING\n\n addRegexToken('G', matchSigned);\n addRegexToken('g', matchSigned);\n addRegexToken('GG', match1to2, match2);\n addRegexToken('gg', match1to2, match2);\n addRegexToken('GGGG', match1to4, match4);\n addRegexToken('gggg', match1to4, match4);\n addRegexToken('GGGGG', match1to6, match6);\n addRegexToken('ggggg', match1to6, match6);\n\n addWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n });\n\n addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n });\n\n // MOMENTS\n\n function getSetWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy);\n }\n\n function getSetISOWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input, this.isoWeek(), this.isoWeekday(), 1, 4);\n }\n\n function getISOWeeksInYear () {\n return weeksInYear(this.year(), 1, 4);\n }\n\n function getWeeksInYear () {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n }\n\n function getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n }\n\n function setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n }\n\n // FORMATTING\n\n addFormatToken('Q', 0, 'Qo', 'quarter');\n\n // ALIASES\n\n addUnitAlias('quarter', 'Q');\n\n // PRIORITY\n\n addUnitPriority('quarter', 7);\n\n // PARSING\n\n addRegexToken('Q', match1);\n addParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n });\n\n // MOMENTS\n\n function getSetQuarter (input) {\n return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);\n }\n\n // FORMATTING\n\n addFormatToken('D', ['DD', 2], 'Do', 'date');\n\n // ALIASES\n\n addUnitAlias('date', 'D');\n\n // PRIORITY\n addUnitPriority('date', 9);\n\n // PARSING\n\n addRegexToken('D', match1to2);\n addRegexToken('DD', match1to2, match2);\n addRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict ?\n (locale._dayOfMonthOrdinalParse || locale._ordinalParse) :\n locale._dayOfMonthOrdinalParseLenient;\n });\n\n addParseToken(['D', 'DD'], DATE);\n addParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n });\n\n // MOMENTS\n\n var getSetDayOfMonth = makeGetSet('Date', true);\n\n // FORMATTING\n\n addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n // ALIASES\n\n addUnitAlias('dayOfYear', 'DDD');\n\n // PRIORITY\n addUnitPriority('dayOfYear', 4);\n\n // PARSING\n\n addRegexToken('DDD', match1to3);\n addRegexToken('DDDD', match3);\n addParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n });\n\n // HELPERS\n\n // MOMENTS\n\n function getSetDayOfYear (input) {\n var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1;\n return input == null ? dayOfYear : this.add((input - dayOfYear), 'd');\n }\n\n // FORMATTING\n\n addFormatToken('m', ['mm', 2], 0, 'minute');\n\n // ALIASES\n\n addUnitAlias('minute', 'm');\n\n // PRIORITY\n\n addUnitPriority('minute', 14);\n\n // PARSING\n\n addRegexToken('m', match1to2);\n addRegexToken('mm', match1to2, match2);\n addParseToken(['m', 'mm'], MINUTE);\n\n // MOMENTS\n\n var getSetMinute = makeGetSet('Minutes', false);\n\n // FORMATTING\n\n addFormatToken('s', ['ss', 2], 0, 'second');\n\n // ALIASES\n\n addUnitAlias('second', 's');\n\n // PRIORITY\n\n addUnitPriority('second', 15);\n\n // PARSING\n\n addRegexToken('s', match1to2);\n addRegexToken('ss', match1to2, match2);\n addParseToken(['s', 'ss'], SECOND);\n\n // MOMENTS\n\n var getSetSecond = makeGetSet('Seconds', false);\n\n // FORMATTING\n\n addFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n });\n\n addFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n });\n\n addFormatToken(0, ['SSS', 3], 0, 'millisecond');\n addFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n });\n addFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n });\n addFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n });\n addFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n });\n addFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n });\n addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n });\n\n\n // ALIASES\n\n addUnitAlias('millisecond', 'ms');\n\n // PRIORITY\n\n addUnitPriority('millisecond', 16);\n\n // PARSING\n\n addRegexToken('S', match1to3, match1);\n addRegexToken('SS', match1to3, match2);\n addRegexToken('SSS', match1to3, match3);\n\n var token;\n for (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n }\n\n function parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n }\n\n for (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n }\n // MOMENTS\n\n var getSetMillisecond = makeGetSet('Milliseconds', false);\n\n // FORMATTING\n\n addFormatToken('z', 0, 0, 'zoneAbbr');\n addFormatToken('zz', 0, 0, 'zoneName');\n\n // MOMENTS\n\n function getZoneAbbr () {\n return this._isUTC ? 'UTC' : '';\n }\n\n function getZoneName () {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n }\n\n var proto = Moment.prototype;\n\n proto.add = add;\n proto.calendar = calendar$1;\n proto.clone = clone;\n proto.diff = diff;\n proto.endOf = endOf;\n proto.format = format;\n proto.from = from;\n proto.fromNow = fromNow;\n proto.to = to;\n proto.toNow = toNow;\n proto.get = stringGet;\n proto.invalidAt = invalidAt;\n proto.isAfter = isAfter;\n proto.isBefore = isBefore;\n proto.isBetween = isBetween;\n proto.isSame = isSame;\n proto.isSameOrAfter = isSameOrAfter;\n proto.isSameOrBefore = isSameOrBefore;\n proto.isValid = isValid$2;\n proto.lang = lang;\n proto.locale = locale;\n proto.localeData = localeData;\n proto.max = prototypeMax;\n proto.min = prototypeMin;\n proto.parsingFlags = parsingFlags;\n proto.set = stringSet;\n proto.startOf = startOf;\n proto.subtract = subtract;\n proto.toArray = toArray;\n proto.toObject = toObject;\n proto.toDate = toDate;\n proto.toISOString = toISOString;\n proto.inspect = inspect;\n proto.toJSON = toJSON;\n proto.toString = toString;\n proto.unix = unix;\n proto.valueOf = valueOf;\n proto.creationData = creationData;\n proto.year = getSetYear;\n proto.isLeapYear = getIsLeapYear;\n proto.weekYear = getSetWeekYear;\n proto.isoWeekYear = getSetISOWeekYear;\n proto.quarter = proto.quarters = getSetQuarter;\n proto.month = getSetMonth;\n proto.daysInMonth = getDaysInMonth;\n proto.week = proto.weeks = getSetWeek;\n proto.isoWeek = proto.isoWeeks = getSetISOWeek;\n proto.weeksInYear = getWeeksInYear;\n proto.isoWeeksInYear = getISOWeeksInYear;\n proto.date = getSetDayOfMonth;\n proto.day = proto.days = getSetDayOfWeek;\n proto.weekday = getSetLocaleDayOfWeek;\n proto.isoWeekday = getSetISODayOfWeek;\n proto.dayOfYear = getSetDayOfYear;\n proto.hour = proto.hours = getSetHour;\n proto.minute = proto.minutes = getSetMinute;\n proto.second = proto.seconds = getSetSecond;\n proto.millisecond = proto.milliseconds = getSetMillisecond;\n proto.utcOffset = getSetOffset;\n proto.utc = setOffsetToUTC;\n proto.local = setOffsetToLocal;\n proto.parseZone = setOffsetToParsedOffset;\n proto.hasAlignedHourOffset = hasAlignedHourOffset;\n proto.isDST = isDaylightSavingTime;\n proto.isLocal = isLocal;\n proto.isUtcOffset = isUtcOffset;\n proto.isUtc = isUtc;\n proto.isUTC = isUtc;\n proto.zoneAbbr = getZoneAbbr;\n proto.zoneName = getZoneName;\n proto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth);\n proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth);\n proto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear);\n proto.zone = deprecate('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', getSetZone);\n proto.isDSTShifted = deprecate('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', isDaylightSavingTimeShifted);\n\n function createUnix (input) {\n return createLocal(input * 1000);\n }\n\n function createInZone () {\n return createLocal.apply(null, arguments).parseZone();\n }\n\n function preParsePostFormat (string) {\n return string;\n }\n\n var proto$1 = Locale.prototype;\n\n proto$1.calendar = calendar;\n proto$1.longDateFormat = longDateFormat;\n proto$1.invalidDate = invalidDate;\n proto$1.ordinal = ordinal;\n proto$1.preparse = preParsePostFormat;\n proto$1.postformat = preParsePostFormat;\n proto$1.relativeTime = relativeTime;\n proto$1.pastFuture = pastFuture;\n proto$1.set = set;\n\n proto$1.months = localeMonths;\n proto$1.monthsShort = localeMonthsShort;\n proto$1.monthsParse = localeMonthsParse;\n proto$1.monthsRegex = monthsRegex;\n proto$1.monthsShortRegex = monthsShortRegex;\n proto$1.week = localeWeek;\n proto$1.firstDayOfYear = localeFirstDayOfYear;\n proto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n proto$1.weekdays = localeWeekdays;\n proto$1.weekdaysMin = localeWeekdaysMin;\n proto$1.weekdaysShort = localeWeekdaysShort;\n proto$1.weekdaysParse = localeWeekdaysParse;\n\n proto$1.weekdaysRegex = weekdaysRegex;\n proto$1.weekdaysShortRegex = weekdaysShortRegex;\n proto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n proto$1.isPM = localeIsPM;\n proto$1.meridiem = localeMeridiem;\n\n function get$1 (format, index, field, setter) {\n var locale = getLocale();\n var utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n }\n\n function listMonthsImpl (format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n }\n\n // ()\n // (5)\n // (fmt, 5)\n // (fmt)\n // (true)\n // (true, 5)\n // (true, fmt, 5)\n // (true, fmt)\n function listWeekdaysImpl (localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0;\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n }\n\n function listMonths (format, index) {\n return listMonthsImpl(format, index, 'months');\n }\n\n function listMonthsShort (format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n }\n\n function listWeekdays (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n }\n\n function listWeekdaysShort (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n }\n\n function listWeekdaysMin (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n }\n\n getSetGlobalLocale('en', {\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (toInt(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n });\n\n // Side effect imports\n\n hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale);\n hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale);\n\n var mathAbs = Math.abs;\n\n function abs () {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n }\n\n function addSubtract$1 (duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n }\n\n // supports only 2.0-style add(1, 's') or add(duration)\n function add$1 (input, value) {\n return addSubtract$1(this, input, value, 1);\n }\n\n // supports only 2.0-style subtract(1, 's') or subtract(duration)\n function subtract$1 (input, value) {\n return addSubtract$1(this, input, value, -1);\n }\n\n function absCeil (number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n }\n\n function bubble () {\n var milliseconds = this._milliseconds;\n var days = this._days;\n var months = this._months;\n var data = this._data;\n var seconds, minutes, hours, years, monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (!((milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0))) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n }\n\n function daysToMonths (days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return days * 4800 / 146097;\n }\n\n function monthsToDays (months) {\n // the reverse of daysToMonths\n return months * 146097 / 4800;\n }\n\n function as (units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days;\n var months;\n var milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month': return months;\n case 'quarter': return months / 3;\n case 'year': return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week' : return days / 7 + milliseconds / 6048e5;\n case 'day' : return days + milliseconds / 864e5;\n case 'hour' : return days * 24 + milliseconds / 36e5;\n case 'minute' : return days * 1440 + milliseconds / 6e4;\n case 'second' : return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond': return Math.floor(days * 864e5) + milliseconds;\n default: throw new Error('Unknown unit ' + units);\n }\n }\n }\n\n // TODO: Use this.as('ms')?\n function valueOf$1 () {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n }\n\n function makeAs (alias) {\n return function () {\n return this.as(alias);\n };\n }\n\n var asMilliseconds = makeAs('ms');\n var asSeconds = makeAs('s');\n var asMinutes = makeAs('m');\n var asHours = makeAs('h');\n var asDays = makeAs('d');\n var asWeeks = makeAs('w');\n var asMonths = makeAs('M');\n var asQuarters = makeAs('Q');\n var asYears = makeAs('y');\n\n function clone$1 () {\n return createDuration(this);\n }\n\n function get$2 (units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n }\n\n function makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n }\n\n var milliseconds = makeGetter('milliseconds');\n var seconds = makeGetter('seconds');\n var minutes = makeGetter('minutes');\n var hours = makeGetter('hours');\n var days = makeGetter('days');\n var months = makeGetter('months');\n var years = makeGetter('years');\n\n function weeks () {\n return absFloor(this.days() / 7);\n }\n\n var round = Math.round;\n var thresholds = {\n ss: 44, // a few seconds to seconds\n s : 45, // seconds to minute\n m : 45, // minutes to hour\n h : 22, // hours to day\n d : 26, // days to month\n M : 11 // months to year\n };\n\n // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n }\n\n function relativeTime$1 (posNegDuration, withoutSuffix, locale) {\n var duration = createDuration(posNegDuration).abs();\n var seconds = round(duration.as('s'));\n var minutes = round(duration.as('m'));\n var hours = round(duration.as('h'));\n var days = round(duration.as('d'));\n var months = round(duration.as('M'));\n var years = round(duration.as('y'));\n\n var a = seconds <= thresholds.ss && ['s', seconds] ||\n seconds < thresholds.s && ['ss', seconds] ||\n minutes <= 1 && ['m'] ||\n minutes < thresholds.m && ['mm', minutes] ||\n hours <= 1 && ['h'] ||\n hours < thresholds.h && ['hh', hours] ||\n days <= 1 && ['d'] ||\n days < thresholds.d && ['dd', days] ||\n months <= 1 && ['M'] ||\n months < thresholds.M && ['MM', months] ||\n years <= 1 && ['y'] || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n }\n\n // This function allows you to set the rounding function for relative time strings\n function getSetRelativeTimeRounding (roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof(roundingFunction) === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n }\n\n // This function allows you to set a threshold for relative time strings\n function getSetRelativeTimeThreshold (threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n }\n\n function humanize (withSuffix) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var locale = this.localeData();\n var output = relativeTime$1(this, !withSuffix, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n }\n\n var abs$1 = Math.abs;\n\n function sign(x) {\n return ((x > 0) - (x < 0)) || +x;\n }\n\n function toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000;\n var days = abs$1(this._days);\n var months = abs$1(this._months);\n var minutes, hours, years;\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n var Y = years;\n var M = months;\n var D = days;\n var h = hours;\n var m = minutes;\n var s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n var total = this.asSeconds();\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n var totalSign = total < 0 ? '-' : '';\n var ymSign = sign(this._months) !== sign(total) ? '-' : '';\n var daysSign = sign(this._days) !== sign(total) ? '-' : '';\n var hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return totalSign + 'P' +\n (Y ? ymSign + Y + 'Y' : '') +\n (M ? ymSign + M + 'M' : '') +\n (D ? daysSign + D + 'D' : '') +\n ((h || m || s) ? 'T' : '') +\n (h ? hmsSign + h + 'H' : '') +\n (m ? hmsSign + m + 'M' : '') +\n (s ? hmsSign + s + 'S' : '');\n }\n\n var proto$2 = Duration.prototype;\n\n proto$2.isValid = isValid$1;\n proto$2.abs = abs;\n proto$2.add = add$1;\n proto$2.subtract = subtract$1;\n proto$2.as = as;\n proto$2.asMilliseconds = asMilliseconds;\n proto$2.asSeconds = asSeconds;\n proto$2.asMinutes = asMinutes;\n proto$2.asHours = asHours;\n proto$2.asDays = asDays;\n proto$2.asWeeks = asWeeks;\n proto$2.asMonths = asMonths;\n proto$2.asQuarters = asQuarters;\n proto$2.asYears = asYears;\n proto$2.valueOf = valueOf$1;\n proto$2._bubble = bubble;\n proto$2.clone = clone$1;\n proto$2.get = get$2;\n proto$2.milliseconds = milliseconds;\n proto$2.seconds = seconds;\n proto$2.minutes = minutes;\n proto$2.hours = hours;\n proto$2.days = days;\n proto$2.weeks = weeks;\n proto$2.months = months;\n proto$2.years = years;\n proto$2.humanize = humanize;\n proto$2.toISOString = toISOString$1;\n proto$2.toString = toISOString$1;\n proto$2.toJSON = toISOString$1;\n proto$2.locale = locale;\n proto$2.localeData = localeData;\n\n proto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1);\n proto$2.lang = lang;\n\n // Side effect imports\n\n // FORMATTING\n\n addFormatToken('X', 0, 0, 'unix');\n addFormatToken('x', 0, 0, 'valueOf');\n\n // PARSING\n\n addRegexToken('x', matchSigned);\n addRegexToken('X', matchTimestamp);\n addParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input, 10) * 1000);\n });\n addParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n });\n\n // Side effect imports\n\n\n hooks.version = '2.24.0';\n\n setHookCallback(createLocal);\n\n hooks.fn = proto;\n hooks.min = min;\n hooks.max = max;\n hooks.now = now;\n hooks.utc = createUTC;\n hooks.unix = createUnix;\n hooks.months = listMonths;\n hooks.isDate = isDate;\n hooks.locale = getSetGlobalLocale;\n hooks.invalid = createInvalid;\n hooks.duration = createDuration;\n hooks.isMoment = isMoment;\n hooks.weekdays = listWeekdays;\n hooks.parseZone = createInZone;\n hooks.localeData = getLocale;\n hooks.isDuration = isDuration;\n hooks.monthsShort = listMonthsShort;\n hooks.weekdaysMin = listWeekdaysMin;\n hooks.defineLocale = defineLocale;\n hooks.updateLocale = updateLocale;\n hooks.locales = listLocales;\n hooks.weekdaysShort = listWeekdaysShort;\n hooks.normalizeUnits = normalizeUnits;\n hooks.relativeTimeRounding = getSetRelativeTimeRounding;\n hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\n hooks.calendarFormat = getCalendarFormat;\n hooks.prototype = proto;\n\n // currently HTML5 input type only supports 24-hour formats\n hooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // <input type=\"datetime-local\" />\n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // <input type=\"datetime-local\" step=\"1\" />\n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // <input type=\"datetime-local\" step=\"0.001\" />\n DATE: 'YYYY-MM-DD', // <input type=\"date\" />\n TIME: 'HH:mm', // <input type=\"time\" />\n TIME_SECONDS: 'HH:mm:ss', // <input type=\"time\" step=\"1\" />\n TIME_MS: 'HH:mm:ss.SSS', // <input type=\"time\" step=\"0.001\" />\n WEEK: 'GGGG-[W]WW', // <input type=\"week\" />\n MONTH: 'YYYY-MM' // <input type=\"month\" />\n };\n\n return hooks;\n\n})));\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Function equal to merge with the difference being that no reference\n * to original objects is kept.\n *\n * @see merge\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction deepMerge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = deepMerge(result[key], val);\n } else if (typeof val === 'object') {\n result[key] = deepMerge({}, val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n deepMerge: deepMerge,\n extend: extend,\n trim: trim\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","'use strict';\n\nexports.__esModule = true;\nexports.extend = extend;\nexports.indexOf = indexOf;\nexports.escapeExpression = escapeExpression;\nexports.isEmpty = isEmpty;\nexports.createFrame = createFrame;\nexports.blockParams = blockParams;\nexports.appendContextPath = appendContextPath;\nvar escape = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#x27;',\n '`': '&#x60;',\n '=': '&#x3D;'\n};\n\nvar badChars = /[&<>\"'`=]/g,\n possible = /[&<>\"'`=]/;\n\nfunction escapeChar(chr) {\n return escape[chr];\n}\n\nfunction extend(obj /* , ...source */) {\n for (var i = 1; i < arguments.length; i++) {\n for (var key in arguments[i]) {\n if (Object.prototype.hasOwnProperty.call(arguments[i], key)) {\n obj[key] = arguments[i][key];\n }\n }\n }\n\n return obj;\n}\n\nvar toString = Object.prototype.toString;\n\nexports.toString = toString;\n// Sourced from lodash\n// https://github.com/bestiejs/lodash/blob/master/LICENSE.txt\n/* eslint-disable func-style */\nvar isFunction = function isFunction(value) {\n return typeof value === 'function';\n};\n// fallback for older versions of Chrome and Safari\n/* istanbul ignore next */\nif (isFunction(/x/)) {\n exports.isFunction = isFunction = function (value) {\n return typeof value === 'function' && toString.call(value) === '[object Function]';\n };\n}\nexports.isFunction = isFunction;\n\n/* eslint-enable func-style */\n\n/* istanbul ignore next */\nvar isArray = Array.isArray || function (value) {\n return value && typeof value === 'object' ? toString.call(value) === '[object Array]' : false;\n};\n\nexports.isArray = isArray;\n// Older IE versions do not directly support indexOf so we must implement our own, sadly.\n\nfunction indexOf(array, value) {\n for (var i = 0, len = array.length; i < len; i++) {\n if (array[i] === value) {\n return i;\n }\n }\n return -1;\n}\n\nfunction escapeExpression(string) {\n if (typeof string !== 'string') {\n // don't escape SafeStrings, since they're already safe\n if (string && string.toHTML) {\n return string.toHTML();\n } else if (string == null) {\n return '';\n } else if (!string) {\n return string + '';\n }\n\n // Force a string conversion as this will be done by the append regardless and\n // the regex test will do this transparently behind the scenes, causing issues if\n // an object's to string has escaped characters in it.\n string = '' + string;\n }\n\n if (!possible.test(string)) {\n return string;\n }\n return string.replace(badChars, escapeChar);\n}\n\nfunction isEmpty(value) {\n if (!value && value !== 0) {\n return true;\n } else if (isArray(value) && value.length === 0) {\n return true;\n } else {\n return false;\n }\n}\n\nfunction createFrame(object) {\n var frame = extend({}, object);\n frame._parent = object;\n return frame;\n}\n\nfunction blockParams(params, ids) {\n params.path = ids;\n return params;\n}\n\nfunction appendContextPath(contextPath, id) {\n return (contextPath ? contextPath + '.' : '') + id;\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL3V0aWxzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFNLE1BQU0sR0FBRztBQUNiLEtBQUcsRUFBRSxPQUFPO0FBQ1osS0FBRyxFQUFFLE1BQU07QUFDWCxLQUFHLEVBQUUsTUFBTTtBQUNYLEtBQUcsRUFBRSxRQUFRO0FBQ2IsS0FBRyxFQUFFLFFBQVE7QUFDYixLQUFHLEVBQUUsUUFBUTtBQUNiLEtBQUcsRUFBRSxRQUFRO0NBQ2QsQ0FBQzs7QUFFRixJQUFNLFFBQVEsR0FBRyxZQUFZO0lBQzNCLFFBQVEsR0FBRyxXQUFXLENBQUM7O0FBRXpCLFNBQVMsVUFBVSxDQUFDLEdBQUcsRUFBRTtBQUN2QixTQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztDQUNwQjs7QUFFTSxTQUFTLE1BQU0sQ0FBQyxHQUFHLG9CQUFvQjtBQUM1QyxPQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUN6QyxTQUFLLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtBQUM1QixVQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7QUFDM0QsV0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztPQUM5QjtLQUNGO0dBQ0Y7O0FBRUQsU0FBTyxHQUFHLENBQUM7Q0FDWjs7QUFFTSxJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQzs7Ozs7O0FBS2hELElBQUksVUFBVSxHQUFHLG9CQUFTLEtBQUssRUFBRTtBQUMvQixTQUFPLE9BQU8sS0FBSyxLQUFLLFVBQVUsQ0FBQztDQUNwQyxDQUFDOzs7QUFHRixJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtBQUNuQixVQU9PLFVBQVUsR0FQakIsVUFBVSxHQUFHLFVBQVMsS0FBSyxFQUFFO0FBQzNCLFdBQ0UsT0FBTyxLQUFLLEtBQUssVUFBVSxJQUMzQixRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLG1CQUFtQixDQUM1QztHQUNILENBQUM7Q0FDSDtRQUNRLFVBQVUsR0FBVixVQUFVOzs7OztBQUlaLElBQU0sT0FBTyxHQUNsQixLQUFLLENBQUMsT0FBTyxJQUNiLFVBQVMsS0FBSyxFQUFFO0FBQ2QsU0FBTyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxHQUNyQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLGdCQUFnQixHQUN6QyxLQUFLLENBQUM7Q0FDWCxDQUFDOzs7OztBQUdHLFNBQVMsT0FBTyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUU7QUFDcEMsT0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUNoRCxRQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLEVBQUU7QUFDdEIsYUFBTyxDQUFDLENBQUM7S0FDVjtHQUNGO0FBQ0QsU0FBTyxDQUFDLENBQUMsQ0FBQztDQUNYOztBQUVNLFNBQVMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFO0FBQ3ZDLE1BQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFOztBQUU5QixRQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO0FBQzNCLGFBQU8sTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO0tBQ3hCLE1BQU0sSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFO0FBQ3pCLGFBQU8sRUFBRSxDQUFDO0tBQ1gsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFO0FBQ2xCLGFBQU8sTUFBTSxHQUFHLEVBQUUsQ0FBQztLQUNwQjs7Ozs7QUFLRCxVQUFNLEdBQUcsRUFBRSxHQUFHLE1BQU0sQ0FBQztHQUN0Qjs7QUFFRCxNQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRTtBQUMxQixXQUFPLE1BQU0sQ0FBQztHQUNmO0FBQ0QsU0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztDQUM3Qzs7QUFFTSxTQUFTLE9BQU8sQ0FBQyxLQUFLLEVBQUU7QUFDN0IsTUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFO0FBQ3pCLFdBQU8sSUFBSSxDQUFDO0dBQ2IsTUFBTSxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtBQUMvQyxXQUFPLElBQUksQ0FBQztHQUNiLE1BQU07QUFDTCxXQUFPLEtBQUssQ0FBQztHQUNkO0NBQ0Y7O0FBRU0sU0FBUyxXQUFXLENBQUMsTUFBTSxFQUFFO0FBQ2xDLE1BQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDL0IsT0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7QUFDdkIsU0FBTyxLQUFLLENBQUM7Q0FDZDs7QUFFTSxTQUFTLFdBQVcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO0FBQ3ZDLFFBQU0sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO0FBQ2xCLFNBQU8sTUFBTSxDQUFDO0NBQ2Y7O0FBRU0sU0FBUyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFO0FBQ2pELFNBQU8sQ0FBQyxXQUFXLEdBQUcsV0FBVyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUEsR0FBSSxFQUFFLENBQUM7Q0FDcEQiLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBlc2NhcGUgPSB7XG4gICcmJzogJyZhbXA7JyxcbiAgJzwnOiAnJmx0OycsXG4gICc+JzogJyZndDsnLFxuICAnXCInOiAnJnF1b3Q7JyxcbiAgXCInXCI6ICcmI3gyNzsnLFxuICAnYCc6ICcmI3g2MDsnLFxuICAnPSc6ICcmI3gzRDsnXG59O1xuXG5jb25zdCBiYWRDaGFycyA9IC9bJjw+XCInYD1dL2csXG4gIHBvc3NpYmxlID0gL1smPD5cIidgPV0vO1xuXG5mdW5jdGlvbiBlc2NhcGVDaGFyKGNocikge1xuICByZXR1cm4gZXNjYXBlW2Nocl07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmQob2JqIC8qICwgLi4uc291cmNlICovKSB7XG4gIGZvciAobGV0IGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgZm9yIChsZXQga2V5IGluIGFyZ3VtZW50c1tpXSkge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhcmd1bWVudHNbaV0sIGtleSkpIHtcbiAgICAgICAgb2JqW2tleV0gPSBhcmd1bWVudHNbaV1ba2V5XTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gb2JqO1xufVxuXG5leHBvcnQgbGV0IHRvU3RyaW5nID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztcblxuLy8gU291cmNlZCBmcm9tIGxvZGFzaFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2Jlc3RpZWpzL2xvZGFzaC9ibG9iL21hc3Rlci9MSUNFTlNFLnR4dFxuLyogZXNsaW50LWRpc2FibGUgZnVuYy1zdHlsZSAqL1xubGV0IGlzRnVuY3Rpb24gPSBmdW5jdGlvbih2YWx1ZSkge1xuICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nO1xufTtcbi8vIGZhbGxiYWNrIGZvciBvbGRlciB2ZXJzaW9ucyBvZiBDaHJvbWUgYW5kIFNhZmFyaVxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmlmIChpc0Z1bmN0aW9uKC94LykpIHtcbiAgaXNGdW5jdGlvbiA9IGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgdG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IEZ1bmN0aW9uXSdcbiAgICApO1xuICB9O1xufVxuZXhwb3J0IHsgaXNGdW5jdGlvbiB9O1xuLyogZXNsaW50LWVuYWJsZSBmdW5jLXN0eWxlICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5leHBvcnQgY29uc3QgaXNBcnJheSA9XG4gIEFycmF5LmlzQXJyYXkgfHxcbiAgZnVuY3Rpb24odmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0J1xuICAgICAgPyB0b1N0cmluZy5jYWxsKHZhbHVlKSA9PT0gJ1tvYmplY3QgQXJyYXldJ1xuICAgICAgOiBmYWxzZTtcbiAgfTtcblxuLy8gT2xkZXIgSUUgdmVyc2lvbnMgZG8gbm90IGRpcmVjdGx5IHN1cHBvcnQgaW5kZXhPZiBzbyB3ZSBtdXN0IGltcGxlbWVudCBvdXIgb3duLCBzYWRseS5cbmV4cG9ydCBmdW5jdGlvbiBpbmRleE9mKGFycmF5LCB2YWx1ZSkge1xuICBmb3IgKGxldCBpID0gMCwgbGVuID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICBpZiAoYXJyYXlbaV0gPT09IHZhbHVlKSB7XG4gICAgICByZXR1cm4gaTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIC0xO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlRXhwcmVzc2lvbihzdHJpbmcpIHtcbiAgaWYgKHR5cGVvZiBzdHJpbmcgIT09ICdzdHJpbmcnKSB7XG4gICAgLy8gZG9uJ3QgZXNjYXBlIFNhZmVTdHJpbmdzLCBzaW5jZSB0aGV5J3JlIGFscmVhZHkgc2FmZVxuICAgIGlmIChzdHJpbmcgJiYgc3RyaW5nLnRvSFRNTCkge1xuICAgICAgcmV0dXJuIHN0cmluZy50b0hUTUwoKTtcbiAgICB9IGVsc2UgaWYgKHN0cmluZyA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfSBlbHNlIGlmICghc3RyaW5nKSB7XG4gICAgICByZXR1cm4gc3RyaW5nICsgJyc7XG4gICAgfVxuXG4gICAgLy8gRm9yY2UgYSBzdHJpbmcgY29udmVyc2lvbiBhcyB0aGlzIHdpbGwgYmUgZG9uZSBieSB0aGUgYXBwZW5kIHJlZ2FyZGxlc3MgYW5kXG4gICAgLy8gdGhlIHJlZ2V4IHRlc3Qgd2lsbCBkbyB0aGlzIHRyYW5zcGFyZW50bHkgYmVoaW5kIHRoZSBzY2VuZXMsIGNhdXNpbmcgaXNzdWVzIGlmXG4gICAgLy8gYW4gb2JqZWN0J3MgdG8gc3RyaW5nIGhhcyBlc2NhcGVkIGNoYXJhY3RlcnMgaW4gaXQuXG4gICAgc3RyaW5nID0gJycgKyBzdHJpbmc7XG4gIH1cblxuICBpZiAoIXBvc3NpYmxlLnRlc3Qoc3RyaW5nKSkge1xuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cbiAgcmV0dXJuIHN0cmluZy5yZXBsYWNlKGJhZENoYXJzLCBlc2NhcGVDaGFyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRW1wdHkodmFsdWUpIHtcbiAgaWYgKCF2YWx1ZSAmJiB2YWx1ZSAhPT0gMCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9IGVsc2UgaWYgKGlzQXJyYXkodmFsdWUpICYmIHZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRnJhbWUob2JqZWN0KSB7XG4gIGxldCBmcmFtZSA9IGV4dGVuZCh7fSwgb2JqZWN0KTtcbiAgZnJhbWUuX3BhcmVudCA9IG9iamVjdDtcbiAgcmV0dXJuIGZyYW1lO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYmxvY2tQYXJhbXMocGFyYW1zLCBpZHMpIHtcbiAgcGFyYW1zLnBhdGggPSBpZHM7XG4gIHJldHVybiBwYXJhbXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmRDb250ZXh0UGF0aChjb250ZXh0UGF0aCwgaWQpIHtcbiAgcmV0dXJuIChjb250ZXh0UGF0aCA/IGNvbnRleHRQYXRoICsgJy4nIDogJycpICsgaWQ7XG59XG4iXX0=\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","'use strict';\n\nexports.__esModule = true;\nvar errorProps = ['description', 'fileName', 'lineNumber', 'endLineNumber', 'message', 'name', 'number', 'stack'];\n\nfunction Exception(message, node) {\n var loc = node && node.loc,\n line = undefined,\n endLineNumber = undefined,\n column = undefined,\n endColumn = undefined;\n\n if (loc) {\n line = loc.start.line;\n endLineNumber = loc.end.line;\n column = loc.start.column;\n endColumn = loc.end.column;\n\n message += ' - ' + line + ':' + column;\n }\n\n var tmp = Error.prototype.constructor.call(this, message);\n\n // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.\n for (var idx = 0; idx < errorProps.length; idx++) {\n this[errorProps[idx]] = tmp[errorProps[idx]];\n }\n\n /* istanbul ignore else */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, Exception);\n }\n\n try {\n if (loc) {\n this.lineNumber = line;\n this.endLineNumber = endLineNumber;\n\n // Work around issue under safari where we can't directly set the column value\n /* istanbul ignore next */\n if (Object.defineProperty) {\n Object.defineProperty(this, 'column', {\n value: column,\n enumerable: true\n });\n Object.defineProperty(this, 'endColumn', {\n value: endColumn,\n enumerable: true\n });\n } else {\n this.column = column;\n this.endColumn = endColumn;\n }\n }\n } catch (nop) {\n /* Ignore if the browser is very particular */\n }\n}\n\nException.prototype = new Error();\n\nexports['default'] = Exception;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2V4Y2VwdGlvbi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFNLFVBQVUsR0FBRyxDQUNqQixhQUFhLEVBQ2IsVUFBVSxFQUNWLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUNULE1BQU0sRUFDTixRQUFRLEVBQ1IsT0FBTyxDQUNSLENBQUM7O0FBRUYsU0FBUyxTQUFTLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRTtBQUNoQyxNQUFJLEdBQUcsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLEdBQUc7TUFDeEIsSUFBSSxZQUFBO01BQ0osYUFBYSxZQUFBO01BQ2IsTUFBTSxZQUFBO01BQ04sU0FBUyxZQUFBLENBQUM7O0FBRVosTUFBSSxHQUFHLEVBQUU7QUFDUCxRQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7QUFDdEIsaUJBQWEsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztBQUM3QixVQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7QUFDMUIsYUFBUyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDOztBQUUzQixXQUFPLElBQUksS0FBSyxHQUFHLElBQUksR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDO0dBQ3hDOztBQUVELE1BQUksR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7OztBQUcxRCxPQUFLLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRTtBQUNoRCxRQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0dBQzlDOzs7QUFHRCxNQUFJLEtBQUssQ0FBQyxpQkFBaUIsRUFBRTtBQUMzQixTQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0dBQzFDOztBQUVELE1BQUk7QUFDRixRQUFJLEdBQUcsRUFBRTtBQUNQLFVBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0FBQ3ZCLFVBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDOzs7O0FBSW5DLFVBQUksTUFBTSxDQUFDLGNBQWMsRUFBRTtBQUN6QixjQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUU7QUFDcEMsZUFBSyxFQUFFLE1BQU07QUFDYixvQkFBVSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO0FBQ0gsY0FBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO0FBQ3ZDLGVBQUssRUFBRSxTQUFTO0FBQ2hCLG9CQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7T0FDSixNQUFNO0FBQ0wsWUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7QUFDckIsWUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7T0FDNUI7S0FDRjtHQUNGLENBQUMsT0FBTyxHQUFHLEVBQUU7O0dBRWI7Q0FDRjs7QUFFRCxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7O3FCQUVuQixTQUFTIiwiZmlsZSI6ImV4Y2VwdGlvbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGVycm9yUHJvcHMgPSBbXG4gICdkZXNjcmlwdGlvbicsXG4gICdmaWxlTmFtZScsXG4gICdsaW5lTnVtYmVyJyxcbiAgJ2VuZExpbmVOdW1iZXInLFxuICAnbWVzc2FnZScsXG4gICduYW1lJyxcbiAgJ251bWJlcicsXG4gICdzdGFjaydcbl07XG5cbmZ1bmN0aW9uIEV4Y2VwdGlvbihtZXNzYWdlLCBub2RlKSB7XG4gIGxldCBsb2MgPSBub2RlICYmIG5vZGUubG9jLFxuICAgIGxpbmUsXG4gICAgZW5kTGluZU51bWJlcixcbiAgICBjb2x1bW4sXG4gICAgZW5kQ29sdW1uO1xuXG4gIGlmIChsb2MpIHtcbiAgICBsaW5lID0gbG9jLnN0YXJ0LmxpbmU7XG4gICAgZW5kTGluZU51bWJlciA9IGxvYy5lbmQubGluZTtcbiAgICBjb2x1bW4gPSBsb2Muc3RhcnQuY29sdW1uO1xuICAgIGVuZENvbHVtbiA9IGxvYy5lbmQuY29sdW1uO1xuXG4gICAgbWVzc2FnZSArPSAnIC0gJyArIGxpbmUgKyAnOicgKyBjb2x1bW47XG4gIH1cblxuICBsZXQgdG1wID0gRXJyb3IucHJvdG90eXBlLmNvbnN0cnVjdG9yLmNhbGwodGhpcywgbWVzc2FnZSk7XG5cbiAgLy8gVW5mb3J0dW5hdGVseSBlcnJvcnMgYXJlIG5vdCBlbnVtZXJhYmxlIGluIENocm9tZSAoYXQgbGVhc3QpLCBzbyBgZm9yIHByb3AgaW4gdG1wYCBkb2Vzbid0IHdvcmsuXG4gIGZvciAobGV0IGlkeCA9IDA7IGlkeCA8IGVycm9yUHJvcHMubGVuZ3RoOyBpZHgrKykge1xuICAgIHRoaXNbZXJyb3JQcm9wc1tpZHhdXSA9IHRtcFtlcnJvclByb3BzW2lkeF1dO1xuICB9XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgaWYgKEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKSB7XG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgRXhjZXB0aW9uKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgaWYgKGxvYykge1xuICAgICAgdGhpcy5saW5lTnVtYmVyID0gbGluZTtcbiAgICAgIHRoaXMuZW5kTGluZU51bWJlciA9IGVuZExpbmVOdW1iZXI7XG5cbiAgICAgIC8vIFdvcmsgYXJvdW5kIGlzc3VlIHVuZGVyIHNhZmFyaSB3aGVyZSB3ZSBjYW4ndCBkaXJlY3RseSBzZXQgdGhlIGNvbHVtbiB2YWx1ZVxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdjb2x1bW4nLCB7XG4gICAgICAgICAgdmFsdWU6IGNvbHVtbixcbiAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ2VuZENvbHVtbicsIHtcbiAgICAgICAgICB2YWx1ZTogZW5kQ29sdW1uLFxuICAgICAgICAgIGVudW1lcmFibGU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvbHVtbiA9IGNvbHVtbjtcbiAgICAgICAgdGhpcy5lbmRDb2x1bW4gPSBlbmRDb2x1bW47XG4gICAgICB9XG4gICAgfVxuICB9IGNhdGNoIChub3ApIHtcbiAgICAvKiBJZ25vcmUgaWYgdGhlIGJyb3dzZXIgaXMgdmVyeSBwYXJ0aWN1bGFyICovXG4gIH1cbn1cblxuRXhjZXB0aW9uLnByb3RvdHlwZSA9IG5ldyBFcnJvcigpO1xuXG5leHBvcnQgZGVmYXVsdCBFeGNlcHRpb247XG4iXX0=\n","\"use strict\";\n\nrequire(\"core-js/modules/es.object.assign\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _axios = _interopRequireDefault(require(\"axios\"));\n\nvar _auth = require(\"@nextcloud/auth\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar client = _axios.default.create({\n headers: {\n requesttoken: (0, _auth.getRequestToken)()\n }\n});\n\nvar cancelableClient = Object.assign(client, {\n CancelToken: _axios.default.CancelToken,\n isCancel: _axios.default.isCancel\n});\n(0, _auth.onRequestTokenUpdate)(function (token) {\n return client.defaults.headers.requesttoken = token;\n});\nvar _default = cancelableClient;\nexports.default = _default;\n//# sourceMappingURL=index.js.map","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","/*!\n * Vue.js v2.6.11\n * (c) 2014-2019 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a string containing static keys from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (target) {\n targetStack.push(target);\n Dep.target = target;\n}\n\nfunction popTarget () {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n protoAugment(value, arrayMethods);\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar isUsingMicroTask = false;\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n isUsingMicroTask = true;\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n isUsingMicroTask = true;\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive$$1(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject)\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n // #6574 in case the inject object is observed...\n if (key === '__ob__') { continue }\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n if (!children || !children.length) {\n return {}\n }\n var slots = {};\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n (slots.default || (slots.default = [])).push(child);\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\n/* */\n\nfunction normalizeScopedSlots (\n slots,\n normalSlots,\n prevSlots\n) {\n var res;\n var hasNormalSlots = Object.keys(normalSlots).length > 0;\n var isStable = slots ? !!slots.$stable : !hasNormalSlots;\n var key = slots && slots.$key;\n if (!slots) {\n res = {};\n } else if (slots._normalized) {\n // fast path 1: child component re-render only, parent did not change\n return slots._normalized\n } else if (\n isStable &&\n prevSlots &&\n prevSlots !== emptyObject &&\n key === prevSlots.$key &&\n !hasNormalSlots &&\n !prevSlots.$hasNormal\n ) {\n // fast path 2: stable scoped slots w/ no normal slots to proxy,\n // only need to normalize once\n return prevSlots\n } else {\n res = {};\n for (var key$1 in slots) {\n if (slots[key$1] && key$1[0] !== '$') {\n res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);\n }\n }\n }\n // expose normal slots on scopedSlots\n for (var key$2 in normalSlots) {\n if (!(key$2 in res)) {\n res[key$2] = proxyNormalSlot(normalSlots, key$2);\n }\n }\n // avoriaz seems to mock a non-extensible $scopedSlots object\n // and when that is passed down this would cause an error\n if (slots && Object.isExtensible(slots)) {\n (slots)._normalized = res;\n }\n def(res, '$stable', isStable);\n def(res, '$key', key);\n def(res, '$hasNormal', hasNormalSlots);\n return res\n}\n\nfunction normalizeScopedSlot(normalSlots, key, fn) {\n var normalized = function () {\n var res = arguments.length ? fn.apply(null, arguments) : fn({});\n res = res && typeof res === 'object' && !Array.isArray(res)\n ? [res] // single vnode\n : normalizeChildren(res);\n return res && (\n res.length === 0 ||\n (res.length === 1 && res[0].isComment) // #9658\n ) ? undefined\n : res\n };\n // this is a slot using the new v-slot syntax without scope. although it is\n // compiled as a scoped slot, render fn users would expect it to be present\n // on this.$slots because the usage is semantically a normal slot.\n if (fn.proxy) {\n Object.defineProperty(normalSlots, key, {\n get: normalized,\n enumerable: true,\n configurable: true\n });\n }\n return normalized\n}\n\nfunction proxyNormalSlot(slots, key) {\n return function () { return slots[key]; }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n if (hasSymbol && val[Symbol.iterator]) {\n ret = [];\n var iterator = val[Symbol.iterator]();\n var result = iterator.next();\n while (!result.done) {\n ret.push(render(result.value, ret.length));\n result = iterator.next();\n }\n } else {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n }\n if (!isDef(ret)) {\n ret = [];\n }\n (ret)._isVList = true;\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes = scopedSlotFn(props) || fallback;\n } else {\n nodes = this.$slots[name] || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n var camelizedKey = camelize(key);\n var hyphenatedKey = hyphenate(key);\n if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res,\n // the following are added in 2.6\n hasDynamicKeys,\n contentHashKey\n) {\n res = res || { $stable: !hasDynamicKeys };\n for (var i = 0; i < fns.length; i++) {\n var slot = fns[i];\n if (Array.isArray(slot)) {\n resolveScopedSlots(slot, res, hasDynamicKeys);\n } else if (slot) {\n // marker for reverse proxying v-slot without scope on this.$slots\n if (slot.proxy) {\n slot.fn.proxy = true;\n }\n res[slot.key] = slot.fn;\n }\n }\n if (contentHashKey) {\n (res).$key = contentHashKey;\n }\n return res\n}\n\n/* */\n\nfunction bindDynamicKeys (baseObj, values) {\n for (var i = 0; i < values.length; i += 2) {\n var key = values[i];\n if (typeof key === 'string' && key) {\n baseObj[values[i]] = values[i + 1];\n } else if (process.env.NODE_ENV !== 'production' && key !== '' && key !== null) {\n // null is a special value for explicitly removing a binding\n warn(\n (\"Invalid value for dynamic directive argument (expected string or null): \" + key),\n this\n );\n }\n }\n return baseObj\n}\n\n// helper to dynamically append modifier runtime markers to event names.\n// ensure only append when value is already string, otherwise it will be cast\n// to string and cause the type check to miss.\nfunction prependModifier (value, symbol) {\n return typeof value === 'string' ? symbol + value : value\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n target._d = bindDynamicKeys;\n target._p = prependModifier;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var this$1 = this;\n\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () {\n if (!this$1.$slots) {\n normalizeScopedSlots(\n data.scopedSlots,\n this$1.$slots = resolveSlots(children, parent)\n );\n }\n return this$1.$slots\n };\n\n Object.defineProperty(this, 'scopedSlots', ({\n enumerable: true,\n get: function get () {\n return normalizeScopedSlots(data.scopedSlots, this.slots())\n }\n }));\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (process.env.NODE_ENV !== 'production') {\n (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;\n }\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (vnode, hydrating) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent // activeInstance in lifecycle state\n) {\n var options = {\n _isComponent: true,\n _parentVnode: vnode,\n parent: parent\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var existing = hooks[key];\n var toMerge = componentVNodeHooks[key];\n if (existing !== toMerge && !(existing && existing._merged)) {\n hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;\n }\n }\n}\n\nfunction mergeHook$1 (f1, f2) {\n var merged = function (a, b) {\n // flow complains about extra args which is why we use any\n f1(a, b);\n f2(a, b);\n };\n merged._merged = true;\n return merged\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input'\n ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n var existing = on[event];\n var callback = data.model.callback;\n if (isDef(existing)) {\n if (\n Array.isArray(existing)\n ? existing.indexOf(callback) === -1\n : existing !== callback\n ) {\n on[event] = [callback].concat(existing);\n }\n } else {\n on[event] = callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n if (process.env.NODE_ENV !== 'production' && isDef(data) && isDef(data.nativeOn)) {\n warn(\n (\"The .native modifier for v-on is only valid on components but it was used on <\" + tag + \">.\"),\n context\n );\n }\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nvar currentRenderingInstance = null;\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (_parentVnode) {\n vm.$scopedSlots = normalizeScopedSlots(\n _parentVnode.data.scopedSlots,\n vm.$slots,\n vm.$scopedSlots\n );\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n // There's no need to maintain a stack because all render fns are called\n // separately from one another. Nested component's render fns are called\n // when parent component is patched.\n currentRenderingInstance = vm;\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production' && vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } finally {\n currentRenderingInstance = null;\n }\n // if the returned array contains only a single node, allow it\n if (Array.isArray(vnode) && vnode.length === 1) {\n vnode = vnode[0];\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n var owner = currentRenderingInstance;\n if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {\n // already pending\n factory.owners.push(owner);\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (owner && !isDef(factory.owners)) {\n var owners = factory.owners = [owner];\n var sync = true;\n var timerLoading = null;\n var timerTimeout = null\n\n ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });\n\n var forceRender = function (renderCompleted) {\n for (var i = 0, l = owners.length; i < l; i++) {\n (owners[i]).$forceUpdate();\n }\n\n if (renderCompleted) {\n owners.length = 0;\n if (timerLoading !== null) {\n clearTimeout(timerLoading);\n timerLoading = null;\n }\n if (timerTimeout !== null) {\n clearTimeout(timerTimeout);\n timerTimeout = null;\n }\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender(true);\n } else {\n owners.length = 0;\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender(true);\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (isPromise(res)) {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isPromise(res.component)) {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n timerLoading = setTimeout(function () {\n timerLoading = null;\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender(false);\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n timerTimeout = setTimeout(function () {\n timerTimeout = null;\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn) {\n target.$on(event, fn);\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction createOnceHandler (event, fn) {\n var _target = target;\n return function onceHandler () {\n var res = fn.apply(null, arguments);\n if (res !== null) {\n _target.$off(event, onceHandler);\n }\n }\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n vm.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {\n vm.$off(event[i$1], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n // specific handler\n var cb;\n var i = cbs.length;\n while (i--) {\n cb = cbs[i];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i, 1);\n break\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n var info = \"event handler for \\\"\" + event + \"\\\"\";\n for (var i = 0, l = cbs.length; i < l; i++) {\n invokeWithErrorHandling(cbs[i], vm, args, vm, info);\n }\n }\n return vm\n };\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction setActiveInstance(vm) {\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n return function () {\n activeInstance = prevActiveInstance;\n }\n}\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var restoreActiveInstance = setActiveInstance(vm);\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n restoreActiveInstance();\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, {\n before: function before () {\n if (vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'beforeUpdate');\n }\n }\n }, true /* isRenderWatcher */);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren.\n\n // check if there are dynamic scopedSlots (hand-written or compiled but with\n // dynamic slot names). Static scoped slots compiled from template has the\n // \"$stable\" marker.\n var newScopedSlots = parentVnode.data.scopedSlots;\n var oldScopedSlots = vm.$scopedSlots;\n var hasDynamicScopedSlot = !!(\n (newScopedSlots && !newScopedSlots.$stable) ||\n (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||\n (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)\n );\n\n // Any static slot children from the parent may have changed during parent's\n // update. Dynamic scoped slots may also have changed. In such cases, a forced\n // update is necessary to ensure correctness.\n var needsForceUpdate = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n hasDynamicScopedSlot\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (needsForceUpdate) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n invokeWithErrorHandling(handlers[i], vm, null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n// Async edge case #6566 requires saving the timestamp when event listeners are\n// attached. However, calling performance.now() has a perf overhead especially\n// if the page has thousands of event listeners. Instead, we take a timestamp\n// every time the scheduler flushes and use that for all event listeners\n// attached during that flush.\nvar currentFlushTimestamp = 0;\n\n// Async edge case fix requires storing an event listener's attach timestamp.\nvar getNow = Date.now;\n\n// Determine what event timestamp the browser is using. Annoyingly, the\n// timestamp can either be hi-res (relative to page load) or low-res\n// (relative to UNIX epoch), so in order to compare time we have to use the\n// same timestamp type when saving the flush timestamp.\n// All IE versions use low-res event timestamps, and have problematic clock\n// implementations (#9632)\nif (inBrowser && !isIE) {\n var performance = window.performance;\n if (\n performance &&\n typeof performance.now === 'function' &&\n getNow() > document.createEvent('Event').timeStamp\n ) {\n // if the event timestamp, although evaluated AFTER the Date.now(), is\n // smaller than it, it means the event is using a hi-res timestamp,\n // and we need to use the hi-res version for event listener timestamps as\n // well.\n getNow = function () { return performance.now(); };\n }\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n currentFlushTimestamp = getNow();\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n if (watcher.before) {\n watcher.before();\n }\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n flushSchedulerQueue();\n return\n }\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\n\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n this.before = options.before;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = noop;\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var i = this.deps.length;\n while (i--) {\n var dep = this.deps[i];\n if (!this.newDepIds.has(dep.id)) {\n dep.removeSub(this);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var i = this.deps.length;\n while (i--) {\n this.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this.deps[i].removeSub(this);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive$$1(props, key, value, function () {\n if (!isRoot && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive$$1(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : createGetterInvoker(userDef);\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : createGetterInvoker(userDef.get)\n : noop;\n sharedPropertyDefinition.set = userDef.set || noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction createGetterInvoker(fn) {\n return function computedGetter () {\n return fn.call(this, this)\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (typeof methods[key] !== 'function') {\n warn(\n \"Method \\\"\" + key + \"\\\" has type \\\"\" + (typeof methods[key]) + \"\\\" in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function () {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n try {\n cb.call(vm, watcher.value);\n } catch (error) {\n handleError(error, vm, (\"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\"));\n }\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = latest[key];\n }\n }\n return modified\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\n\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n for (var key in this.cache) {\n pruneCacheEntry(this.cache, key, this.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive$$1\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n // 2.6 explicit observable API\n Vue.observable = function (obj) {\n observe(obj);\n return obj\n };\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.6.11';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isValidContentEditableValue = makeMap('events,caret,typing,plaintext-only');\n\nvar convertEnumeratedValue = function (key, value) {\n return isFalsyAttrValue(value) || value === 'false'\n ? 'false'\n // allow arbitrary string value for contenteditable\n : key === 'contenteditable' && isValidContentEditableValue(value)\n ? value\n : 'true'\n};\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode && childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode && parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setStyleScope (node, scopeId) {\n node.setAttribute(scopeId, '');\n}\n\nvar nodeOps = /*#__PURE__*/Object.freeze({\n createElement: createElement$1,\n createElementNS: createElementNS,\n createTextNode: createTextNode,\n createComment: createComment,\n insertBefore: insertBefore,\n removeChild: removeChild,\n appendChild: appendChild,\n parentNode: parentNode,\n nextSibling: nextSibling,\n tagName: tagName,\n setTextContent: setTextContent,\n setStyleScope: setStyleScope\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!isDef(key)) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove$$1 () {\n if (--remove$$1.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove$$1.listeners = listeners;\n return remove$$1\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n function isUnknownElement$$1 (vnode, inVPre) {\n return (\n !inVPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(vnode.tag)\n : ignore === vnode.tag\n })\n ) &&\n config.isUnknownElement(vnode.tag)\n )\n }\n\n var creatingElmInVPre = 0;\n\n function createElm (\n vnode,\n insertedVnodeQueue,\n parentElm,\n refElm,\n nested,\n ownerArray,\n index\n ) {\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // This vnode was used in a previous render!\n // now it's used as a new node, overwriting its elm would cause\n // potential patch errors down the road when it's used as an insertion\n // reference node. Instead, we clone the node on-demand before creating\n // associated DOM element for it.\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n creatingElmInVPre++;\n }\n if (isUnknownElement$$1(vnode, creatingElmInVPre)) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n creatingElmInVPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n insert(parentElm, vnode.elm, refElm);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (nodeOps.parentNode(ref$$1) === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(children);\n }\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.fnScopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.fnContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(newCh);\n }\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n } else {\n vnodeToMove = oldCh[idxInOld];\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function checkDuplicateKeys (children) {\n var seenKeys = {};\n for (var i = 0; i < children.length; i++) {\n var vnode = children[i];\n var key = vnode.key;\n if (isDef(key)) {\n if (seenKeys[key]) {\n warn(\n (\"Duplicate keys detected: '\" + key + \"'. This may cause an update error.\"),\n vnode.context\n );\n } else {\n seenKeys[key] = true;\n }\n }\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (\n oldVnode,\n vnode,\n insertedVnodeQueue,\n ownerArray,\n index,\n removeOnly\n ) {\n if (oldVnode === vnode) {\n return\n }\n\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // clone reused vnode\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(ch);\n }\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var hydrationBailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n // Note: style is excluded because it relies on initial clone for future\n // deep updates (#7063).\n var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {\n var i;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n inVPre = inVPre || (data && data.pre);\n vnode.elm = elm;\n\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.isAsyncPlaceholder = true;\n return true\n }\n // assert node match\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode, inVPre)) {\n return false\n }\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n var fullInvoke = false;\n for (var key in data) {\n if (!isRenderedModule(key)) {\n fullInvoke = true;\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n if (!fullInvoke && data['class']) {\n // ensure collecting deps for deep class bindings for future updates\n traverse(data['class']);\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode, inVPre) {\n if (isDef(vnode.tag)) {\n return vnode.tag.indexOf('vue-component') === 0 || (\n !isUnknownElement$$1(vnode, inVPre) &&\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, null, null, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm = nodeOps.parentNode(oldElm);\n\n // create new node\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm,\n nodeOps.nextSibling(oldElm)\n );\n\n // update parent placeholder node element, recursively\n if (isDef(vnode.parent)) {\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n // destroy old node\n if (isDef(parentElm)) {\n removeVnodes([oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n dir.oldArg = oldDir.arg;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode, 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n // $flow-disable-line\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n // $flow-disable-line\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n // $flow-disable-line\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (el.tagName.indexOf('-') > -1) {\n baseSetAttr(el, key, value);\n } else if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, convertEnumeratedValue(key, value));\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n baseSetAttr(el, key, value);\n }\n}\n\nfunction baseSetAttr (el, key, value) {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // #7138: IE10 & 11 fires input event when setting placeholder on\n // <textarea>... block the first input event and remove the blocker\n // immediately.\n /* istanbul ignore if */\n if (\n isIE && !isIE9 &&\n el.tagName === 'TEXTAREA' &&\n key === 'placeholder' && value !== '' && !el.__ieph\n ) {\n var blocker = function (e) {\n e.stopImmediatePropagation();\n el.removeEventListener('input', blocker);\n };\n el.addEventListener('input', blocker);\n // $flow-disable-line\n el.__ieph = true; /* IE placeholder patched */\n }\n el.setAttribute(key, value);\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + (args !== ')' ? ',' + args : args))\n }\n}\n\n/* */\n\n\n\n/* eslint-disable no-unused-vars */\nfunction baseWarn (msg, range) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n/* eslint-enable no-unused-vars */\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value, range, dynamic) {\n (el.props || (el.props = [])).push(rangeSetItem({ name: name, value: value, dynamic: dynamic }, range));\n el.plain = false;\n}\n\nfunction addAttr (el, name, value, range, dynamic) {\n var attrs = dynamic\n ? (el.dynamicAttrs || (el.dynamicAttrs = []))\n : (el.attrs || (el.attrs = []));\n attrs.push(rangeSetItem({ name: name, value: value, dynamic: dynamic }, range));\n el.plain = false;\n}\n\n// add a raw attr (use this in preTransforms)\nfunction addRawAttr (el, name, value, range) {\n el.attrsMap[name] = value;\n el.attrsList.push(rangeSetItem({ name: name, value: value }, range));\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n isDynamicArg,\n modifiers,\n range\n) {\n (el.directives || (el.directives = [])).push(rangeSetItem({\n name: name,\n rawName: rawName,\n value: value,\n arg: arg,\n isDynamicArg: isDynamicArg,\n modifiers: modifiers\n }, range));\n el.plain = false;\n}\n\nfunction prependModifierMarker (symbol, name, dynamic) {\n return dynamic\n ? (\"_p(\" + name + \",\\\"\" + symbol + \"\\\")\")\n : symbol + name // mark the event as captured\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn,\n range,\n dynamic\n) {\n modifiers = modifiers || emptyObject;\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n process.env.NODE_ENV !== 'production' && warn &&\n modifiers.prevent && modifiers.passive\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.',\n range\n );\n }\n\n // normalize click.right and click.middle since they don't actually fire\n // this is technically browser-specific, but at least for now browsers are\n // the only target envs that have right/middle clicks.\n if (modifiers.right) {\n if (dynamic) {\n name = \"(\" + name + \")==='click'?'contextmenu':(\" + name + \")\";\n } else if (name === 'click') {\n name = 'contextmenu';\n delete modifiers.right;\n }\n } else if (modifiers.middle) {\n if (dynamic) {\n name = \"(\" + name + \")==='click'?'mouseup':(\" + name + \")\";\n } else if (name === 'click') {\n name = 'mouseup';\n }\n }\n\n // check capture modifier\n if (modifiers.capture) {\n delete modifiers.capture;\n name = prependModifierMarker('!', name, dynamic);\n }\n if (modifiers.once) {\n delete modifiers.once;\n name = prependModifierMarker('~', name, dynamic);\n }\n /* istanbul ignore if */\n if (modifiers.passive) {\n delete modifiers.passive;\n name = prependModifierMarker('&', name, dynamic);\n }\n\n var events;\n if (modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n\n var newHandler = rangeSetItem({ value: value.trim(), dynamic: dynamic }, range);\n if (modifiers !== emptyObject) {\n newHandler.modifiers = modifiers;\n }\n\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n\n el.plain = false;\n}\n\nfunction getRawBindingAttr (\n el,\n name\n) {\n return el.rawAttrsMap[':' + name] ||\n el.rawAttrsMap['v-bind:' + name] ||\n el.rawAttrsMap[name]\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\nfunction getAndRemoveAttrByRegex (\n el,\n name\n) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n var attr = list[i];\n if (name.test(attr.name)) {\n list.splice(i, 1);\n return attr\n }\n }\n}\n\nfunction rangeSetItem (\n item,\n range\n) {\n if (range) {\n if (range.start != null) {\n item.start = range.start;\n }\n if (range.end != null) {\n item.end = range.end;\n }\n }\n return item\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: JSON.stringify(value),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len, str, chr, index$1, expressionPos, expressionEndPos;\n\n\n\nfunction parseModel (val) {\n // Fix https://github.com/vuejs/vue/pull/7730\n // allow v-model=\"obj.val \" (trailing whitespace)\n val = val.trim();\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (process.env.NODE_ENV !== 'production') {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\",\n el.rawAttrsMap['v-model']\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (process.env.NODE_ENV !== 'production') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.',\n el.rawAttrsMap['v-model']\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + (genAssignmentCode(value, '$$a.concat([$$v])')) + \")}\" +\n \"else{$$i>-1&&(\" + (genAssignmentCode(value, '$$a.slice(0,$$i).concat($$a.slice($$i+1))')) + \")}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n\n // warn if v-bind:value conflicts with v-model\n // except for inputs with v-bind:type\n if (process.env.NODE_ENV !== 'production') {\n var value$1 = el.attrsMap['v-bind:value'] || el.attrsMap[':value'];\n var typeBinding = el.attrsMap['v-bind:type'] || el.attrsMap[':type'];\n if (value$1 && !typeBinding) {\n var binding = el.attrsMap['v-bind:value'] ? 'v-bind:value' : ':value';\n warn$1(\n binding + \"=\\\"\" + value$1 + \"\\\" conflicts with v-model on the same element \" +\n 'because the latter already expands to a value binding internally',\n el.rawAttrsMap[binding]\n );\n }\n }\n\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler$1 (event, handler, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\n// #9446: Firefox <= 53 (in particular, ESR 52) has incorrect Event.timeStamp\n// implementation and does not fire microtasks in between event propagation, so\n// safe to exclude.\nvar useMicrotaskFix = isUsingMicroTask && !(isFF && Number(isFF[1]) <= 53);\n\nfunction add$1 (\n name,\n handler,\n capture,\n passive\n) {\n // async edge case #6566: inner click event triggers patch, event handler\n // attached to outer element during patch, and triggered again. This\n // happens because browsers fire microtask ticks between event propagation.\n // the solution is simple: we save the timestamp when a handler is attached,\n // and the handler would only fire if the event passed to it was fired\n // AFTER it was attached.\n if (useMicrotaskFix) {\n var attachedTimestamp = currentFlushTimestamp;\n var original = handler;\n handler = original._wrapper = function (e) {\n if (\n // no bubbling, should always fire.\n // this is just a safety net in case event.timeStamp is unreliable in\n // certain weird environments...\n e.target === e.currentTarget ||\n // event is fired after handler attachment\n e.timeStamp >= attachedTimestamp ||\n // bail for environments that have buggy event.timeStamp implementations\n // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState\n // #9681 QtWebEngine event.timeStamp is negative value\n e.timeStamp <= 0 ||\n // #9448 bail if event is fired in another document in a multi-page\n // electron/nw.js app, since event.timeStamp will be using a different\n // starting reference\n e.target.ownerDocument !== document\n ) {\n return original.apply(this, arguments)\n }\n };\n }\n target$1.addEventListener(\n name,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n name,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n name,\n handler._wrapper || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, createOnceHandler$1, vnode.context);\n target$1 = undefined;\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nvar svgContainer;\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (!(key in props)) {\n elm[key] = '';\n }\n }\n\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value' && elm.tagName !== 'PROGRESS') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else if (key === 'innerHTML' && isSVG(elm.tagName) && isUndef(elm.innerHTML)) {\n // IE doesn't support innerHTML for SVG elements\n svgContainer = svgContainer || document.createElement('div');\n svgContainer.innerHTML = \"<svg>\" + cur + \"</svg>\";\n var svg = svgContainer.firstChild;\n while (elm.firstChild) {\n elm.removeChild(elm.firstChild);\n }\n while (svg.firstChild) {\n elm.appendChild(svg.firstChild);\n }\n } else if (\n // skip the update if old and new VDOM state is the same.\n // `value` is handled separately because the DOM value may be temporarily\n // out of sync with VDOM state due to focus, composition and modifiers.\n // This #4521 by skipping the unnecesarry `checked` update.\n cur !== oldProps[key]\n ) {\n // some property updates can throw\n // e.g. `value` on <progress> w/ non-finite value\n try {\n elm[key] = cur;\n } catch (e) {}\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isNotInFocusAndDirty(elm, checkVal) ||\n isDirtyWithModifiers(elm, checkVal)\n ))\n}\n\nfunction isNotInFocusAndDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isDirtyWithModifiers (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers)) {\n if (modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (\n childNode && childNode.data &&\n (styleData = normalizeStyleData(childNode.data))\n ) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(hyphenate(name), val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\nvar whitespaceRE = /\\s+/;\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def$$1) {\n if (!def$$1) {\n return\n }\n /* istanbul ignore else */\n if (typeof def$$1 === 'object') {\n var res = {};\n if (def$$1.css !== false) {\n extend(res, autoCssTransition(def$$1.name || 'v'));\n }\n extend(res, def$$1);\n return res\n } else if (typeof def$$1 === 'string') {\n return autoCssTransition(def$$1)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n // JSDOM may return undefined for transition properties\n var transitionDelays = (styles[transitionProp + 'Delay'] || '').split(', ');\n var transitionDurations = (styles[transitionProp + 'Duration'] || '').split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = (styles[animationProp + 'Delay'] || '').split(', ');\n var animationDurations = (styles[animationProp + 'Duration'] || '').split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\n// Old versions of Chromium (below 61.0.3163.100) formats floating pointer numbers\n// in a locale-dependent way, using a comma instead of a dot.\n// If comma is not replaced with a dot, the input will be rounded down (i.e. acting\n// as a floor function) causing unexpected behaviors\nfunction toMs (s) {\n return Number(s.slice(0, -1).replace(',', '.')) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n context = transitionNode.context;\n transitionNode = transitionNode.parent;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode, 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n removeTransitionClass(el, startClass);\n if (!cb.cancelled) {\n addTransitionClass(el, toClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data) || el.nodeType !== 1) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb)) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show && el.parentNode) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled) {\n addTransitionClass(el, leaveToClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar directive = {\n inserted: function inserted (el, binding, vnode, oldVnode) {\n if (vnode.tag === 'select') {\n // #6903\n if (oldVnode.elm && !oldVnode.elm._vOptions) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n directive.componentUpdated(el, binding, vnode);\n });\n } else {\n setSelected(el, binding, vnode.context);\n }\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (!value === !oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: directive,\n show: show\n};\n\n/* */\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar isNotTextNode = function (c) { return c.tag || isAsyncPlaceholder(c); };\n\nvar isVShowDirective = function (d) { return d.name === 'show'; };\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$slots.default;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(isNotTextNode);\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(isVShowDirective)) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild) &&\n // #6687 component root is a comment node\n !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n beforeMount: function beforeMount () {\n var this$1 = this;\n\n var update = this._update;\n this._update = function (vnode, hydrating) {\n var restoreActiveInstance = setActiveInstance(this$1);\n // force removing pass\n this$1.__patch__(\n this$1._vnode,\n this$1.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this$1._vnode = this$1.kept;\n restoreActiveInstance();\n update.call(this$1, vnode, hydrating);\n };\n },\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (e && e.target !== el) {\n return\n }\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue.config.mustUseProp = mustUseProp;\nVue.config.isReservedTag = isReservedTag;\nVue.config.isReservedAttr = isReservedAttr;\nVue.config.getTagNamespace = getTagNamespace;\nVue.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue.options.directives, platformDirectives);\nextend(Vue.options.components, platformComponents);\n\n// install platform patch function\nVue.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nif (inBrowser) {\n setTimeout(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue);\n } else if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test'\n ) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n config.productionTip !== false &&\n typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n }, 0);\n}\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\r?\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\n\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var rawTokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index, tokenValue;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n rawTokens.push(tokenValue = text.slice(lastIndex, index));\n tokens.push(JSON.stringify(tokenValue));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n rawTokens.push({ '@binding': exp });\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n rawTokens.push(tokenValue = text.slice(lastIndex));\n tokens.push(JSON.stringify(tokenValue));\n }\n return {\n expression: tokens.join('+'),\n tokens: rawTokens\n }\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (process.env.NODE_ENV !== 'production' && staticClass) {\n var res = parseText(staticClass, options.delimiters);\n if (res) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.',\n el.rawAttrsMap['class']\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n};\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(staticStyle, options.delimiters);\n if (res) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.',\n el.rawAttrsMap['style']\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar dynamicArgAttribute = /^\\s*((?:v-[\\w-]+:|@|:|#)\\[[^=]+\\][^\\s\"'<>\\/=]*)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar ncname = \"[a-zA-Z_][\\\\-\\\\.0-9_a-zA-Z\" + (unicodeRegExp.source) + \"]*\";\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\n// #7298: escape - to avoid being passed as HTML comment when inlined in page\nvar comment = /^<!\\--/;\nvar conditionalComment = /^<!\\[/;\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n',\n '&#9;': '\\t',\n '&#39;': \"'\"\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp|#39);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#39|#10|#9);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd), index, index + commentEnd + 3);\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(startTagMatch.tagName, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n }\n\n if (text) {\n advance(text.length);\n }\n\n if (options.chars && text) {\n options.chars(text, index - text.length, index);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!\\--([\\s\\S]*?)-->/g, '$1') // #7298\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (process.env.NODE_ENV !== 'production' && !stack.length && options.warn) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"), { start: index + html.length });\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(dynamicArgAttribute) || html.match(attribute))) {\n attr.start = index;\n advance(attr[0].length);\n attr.end = index;\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n var value = args[3] || args[4] || args[5] || '';\n var shouldDecodeNewlines = tagName === 'a' && args[1] === 'href'\n ? options.shouldDecodeNewlinesForHref\n : options.shouldDecodeNewlines;\n attrs[i] = {\n name: args[1],\n value: decodeAttr(value, shouldDecodeNewlines)\n };\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n attrs[i].start = args.start + args[0].match(/^\\s*/).length;\n attrs[i].end = args.end;\n }\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs, start: match.start, end: match.end });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (process.env.NODE_ENV !== 'production' &&\n (i > pos || !tagName) &&\n options.warn\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\"),\n { start: stack[i].start, end: stack[i].end }\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:|^#/;\nvar forAliasRE = /([\\s\\S]*?)\\s+(?:in|of)\\s+([\\s\\S]*)/;\nvar forIteratorRE = /,([^,\\}\\]]*)(?:,([^,\\}\\]]*))?$/;\nvar stripParensRE = /^\\(|\\)$/g;\nvar dynamicArgRE = /^\\[.*\\]$/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^\\.|^v-bind:/;\nvar modifierRE = /\\.[^.\\]]+(?=[^\\]]*$)/g;\n\nvar slotRE = /^v-slot(:|$)|^#/;\n\nvar lineBreakRE = /[\\r\\n]/;\nvar whitespaceRE$1 = /\\s+/g;\n\nvar invalidAttributeRE = /[\\s\"'<>\\/=]/;\n\nvar decodeHTMLCached = cached(he.decode);\n\nvar emptySlotScopeToken = \"_empty_\";\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\nvar maybeComponent;\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n rawAttrsMap: {},\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n var isReservedTag = options.isReservedTag || no;\n maybeComponent = function (el) { return !!el.component || !isReservedTag(el.tag); };\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var whitespaceOption = options.whitespace;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg, range) {\n if (!warned) {\n warned = true;\n warn$2(msg, range);\n }\n }\n\n function closeElement (element) {\n trimEndingWhitespace(element);\n if (!inVPre && !element.processed) {\n element = processElement(element, options);\n }\n // tree management\n if (!stack.length && element !== root) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n if (process.env.NODE_ENV !== 'production') {\n checkRootConstraints(element);\n }\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\",\n { start: element.start }\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else {\n if (element.slotScope) {\n // scoped slot\n // keep it in the children list so that v-else(-if) conditions can\n // find it as the prev node.\n var name = element.slotTarget || '\"default\"'\n ;(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n }\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n\n // final children cleanup\n // filter out scoped slots\n element.children = element.children.filter(function (c) { return !(c).slotScope; });\n // remove trailing whitespace node again\n trimEndingWhitespace(element);\n\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n // apply post-transforms\n for (var i = 0; i < postTransforms.length; i++) {\n postTransforms[i](element, options);\n }\n }\n\n function trimEndingWhitespace (el) {\n // remove trailing whitespace node\n if (!inPre) {\n var lastNode;\n while (\n (lastNode = el.children[el.children.length - 1]) &&\n lastNode.type === 3 &&\n lastNode.text === ' '\n ) {\n el.children.pop();\n }\n }\n }\n\n function checkRootConstraints (el) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.',\n { start: el.start }\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.',\n el.rawAttrsMap['v-for']\n );\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: options.shouldDecodeNewlinesForHref,\n shouldKeepComment: options.comments,\n outputSourceRange: options.outputSourceRange,\n start: function start (tag, attrs, unary, start$1, end) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (options.outputSourceRange) {\n element.start = start$1;\n element.end = end;\n element.rawAttrsMap = element.attrsList.reduce(function (cumulated, attr) {\n cumulated[attr.name] = attr;\n return cumulated\n }, {});\n }\n attrs.forEach(function (attr) {\n if (invalidAttributeRE.test(attr.name)) {\n warn$2(\n \"Invalid dynamic argument expression: attribute names cannot contain \" +\n \"spaces, quotes, <, >, / or =.\",\n {\n start: attr.start + attr.name.indexOf(\"[\"),\n end: attr.start + attr.name.length\n }\n );\n }\n });\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n process.env.NODE_ENV !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.',\n { start: element.start }\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n }\n\n if (!root) {\n root = element;\n if (process.env.NODE_ENV !== 'production') {\n checkRootConstraints(root);\n }\n }\n\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n closeElement(element);\n }\n },\n\n end: function end (tag, start, end$1) {\n var element = stack[stack.length - 1];\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n element.end = end$1;\n }\n closeElement(element);\n },\n\n chars: function chars (text, start, end) {\n if (!currentParent) {\n if (process.env.NODE_ENV !== 'production') {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.',\n { start: start }\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\"),\n { start: start }\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n if (inPre || text.trim()) {\n text = isTextTag(currentParent) ? text : decodeHTMLCached(text);\n } else if (!children.length) {\n // remove the whitespace-only node right after an opening tag\n text = '';\n } else if (whitespaceOption) {\n if (whitespaceOption === 'condense') {\n // in condense mode, remove the whitespace node if it contains\n // line break, otherwise condense to a single space\n text = lineBreakRE.test(text) ? '' : ' ';\n } else {\n text = ' ';\n }\n } else {\n text = preserveWhitespace ? ' ' : '';\n }\n if (text) {\n if (!inPre && whitespaceOption === 'condense') {\n // condense consecutive whitespaces into single space\n text = text.replace(whitespaceRE$1, ' ');\n }\n var res;\n var child;\n if (!inVPre && text !== ' ' && (res = parseText(text, delimiters))) {\n child = {\n type: 2,\n expression: res.expression,\n tokens: res.tokens,\n text: text\n };\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n child = {\n type: 3,\n text: text\n };\n }\n if (child) {\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n child.start = start;\n child.end = end;\n }\n children.push(child);\n }\n }\n },\n comment: function comment (text, start, end) {\n // adding anyting as a sibling to the root node is forbidden\n // comments should still be allowed, but ignored\n if (currentParent) {\n var child = {\n type: 3,\n text: text,\n isComment: true\n };\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n child.start = start;\n child.end = end;\n }\n currentParent.children.push(child);\n }\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var list = el.attrsList;\n var len = list.length;\n if (len) {\n var attrs = el.attrs = new Array(len);\n for (var i = 0; i < len; i++) {\n attrs[i] = {\n name: list[i].name,\n value: JSON.stringify(list[i].value)\n };\n if (list[i].start != null) {\n attrs[i].start = list[i].start;\n attrs[i].end = list[i].end;\n }\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (\n element,\n options\n) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = (\n !element.key &&\n !element.scopedSlots &&\n !element.attrsList.length\n );\n\n processRef(element);\n processSlotContent(element);\n processSlotOutlet(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n return element\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.tag === 'template') {\n warn$2(\n \"<template> cannot be keyed. Place the key on real elements instead.\",\n getRawBindingAttr(el, 'key')\n );\n }\n if (el.for) {\n var iterator = el.iterator2 || el.iterator1;\n var parent = el.parent;\n if (iterator && iterator === exp && parent && parent.tag === 'transition-group') {\n warn$2(\n \"Do not use v-for index as key on <transition-group> children, \" +\n \"this is the same as not using keys.\",\n getRawBindingAttr(el, 'key'),\n true /* tip */\n );\n }\n }\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var res = parseFor(exp);\n if (res) {\n extend(el, res);\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n (\"Invalid v-for expression: \" + exp),\n el.rawAttrsMap['v-for']\n );\n }\n }\n}\n\n\n\nfunction parseFor (exp) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) { return }\n var res = {};\n res.for = inMatch[2].trim();\n var alias = inMatch[1].trim().replace(stripParensRE, '');\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n res.alias = alias.replace(forIteratorRE, '').trim();\n res.iterator1 = iteratorMatch[1].trim();\n if (iteratorMatch[2]) {\n res.iterator2 = iteratorMatch[2].trim();\n }\n } else {\n res.alias = alias;\n }\n return res\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\",\n el.rawAttrsMap[el.elseif ? 'v-else-if' : 'v-else']\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\",\n children[i]\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\n// handle content being passed to a component as slot,\n// e.g. <template slot=\"xxx\">, <div slot-scope=\"xxx\">\nfunction processSlotContent (el) {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && slotScope) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n el.rawAttrsMap['scope'],\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && el.attrsMap['v-for']) {\n warn$2(\n \"Ambiguous combined usage of slot-scope and v-for on <\" + (el.tag) + \"> \" +\n \"(v-for takes higher priority). Use a wrapper <template> for the \" +\n \"scoped slot to make it clearer.\",\n el.rawAttrsMap['slot-scope'],\n true\n );\n }\n el.slotScope = slotScope;\n }\n\n // slot=\"xxx\"\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n el.slotTargetDynamic = !!(el.attrsMap[':slot'] || el.attrsMap['v-bind:slot']);\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (el.tag !== 'template' && !el.slotScope) {\n addAttr(el, 'slot', slotTarget, getRawBindingAttr(el, 'slot'));\n }\n }\n\n // 2.6 v-slot syntax\n {\n if (el.tag === 'template') {\n // v-slot on <template>\n var slotBinding = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.slotTarget || el.slotScope) {\n warn$2(\n \"Unexpected mixed usage of different slot syntaxes.\",\n el\n );\n }\n if (el.parent && !maybeComponent(el.parent)) {\n warn$2(\n \"<template v-slot> can only appear at the root level inside \" +\n \"the receiving component\",\n el\n );\n }\n }\n var ref = getSlotName(slotBinding);\n var name = ref.name;\n var dynamic = ref.dynamic;\n el.slotTarget = name;\n el.slotTargetDynamic = dynamic;\n el.slotScope = slotBinding.value || emptySlotScopeToken; // force it into a scoped slot for perf\n }\n } else {\n // v-slot on component, denotes default slot\n var slotBinding$1 = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding$1) {\n if (process.env.NODE_ENV !== 'production') {\n if (!maybeComponent(el)) {\n warn$2(\n \"v-slot can only be used on components or <template>.\",\n slotBinding$1\n );\n }\n if (el.slotScope || el.slotTarget) {\n warn$2(\n \"Unexpected mixed usage of different slot syntaxes.\",\n el\n );\n }\n if (el.scopedSlots) {\n warn$2(\n \"To avoid scope ambiguity, the default slot should also use \" +\n \"<template> syntax when there are other named slots.\",\n slotBinding$1\n );\n }\n }\n // add the component's children to its default slot\n var slots = el.scopedSlots || (el.scopedSlots = {});\n var ref$1 = getSlotName(slotBinding$1);\n var name$1 = ref$1.name;\n var dynamic$1 = ref$1.dynamic;\n var slotContainer = slots[name$1] = createASTElement('template', [], el);\n slotContainer.slotTarget = name$1;\n slotContainer.slotTargetDynamic = dynamic$1;\n slotContainer.children = el.children.filter(function (c) {\n if (!c.slotScope) {\n c.parent = slotContainer;\n return true\n }\n });\n slotContainer.slotScope = slotBinding$1.value || emptySlotScopeToken;\n // remove children as they are returned from scopedSlots now\n el.children = [];\n // mark el non-plain so data gets generated\n el.plain = false;\n }\n }\n }\n}\n\nfunction getSlotName (binding) {\n var name = binding.name.replace(slotRE, '');\n if (!name) {\n if (binding.name[0] !== '#') {\n name = 'default';\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-slot shorthand syntax requires a slot name.\",\n binding\n );\n }\n }\n return dynamicArgRE.test(name)\n // dynamic [name]\n ? { name: name.slice(1, -1), dynamic: true }\n // static name\n : { name: (\"\\\"\" + name + \"\\\"\"), dynamic: false }\n}\n\n// handle <slot/> outlets\nfunction processSlotOutlet (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (process.env.NODE_ENV !== 'production' && el.key) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\",\n getRawBindingAttr(el, 'key')\n );\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, syncGen, isDynamic;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name.replace(dirRE, ''));\n // support .foo shorthand syntax for the .prop modifier\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n value.trim().length === 0\n ) {\n warn$2(\n (\"The value for a v-bind expression cannot be empty. Found in \\\"v-bind:\" + name + \"\\\"\")\n );\n }\n if (modifiers) {\n if (modifiers.prop && !isDynamic) {\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel && !isDynamic) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n syncGen = genAssignmentCode(value, \"$event\");\n if (!isDynamic) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n syncGen,\n null,\n false,\n warn$2,\n list[i]\n );\n if (hyphenate(name) !== camelize(name)) {\n addHandler(\n el,\n (\"update:\" + (hyphenate(name))),\n syncGen,\n null,\n false,\n warn$2,\n list[i]\n );\n }\n } else {\n // handler w/ dynamic event name\n addHandler(\n el,\n (\"\\\"update:\\\"+(\" + name + \")\"),\n syncGen,\n null,\n false,\n warn$2,\n list[i],\n true // dynamic\n );\n }\n }\n }\n if ((modifiers && modifiers.prop) || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value, list[i], isDynamic);\n } else {\n addAttr(el, name, value, list[i], isDynamic);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n addHandler(el, name, value, modifiers, false, warn$2, list[i], isDynamic);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n isDynamic = false;\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n if (dynamicArgRE.test(arg)) {\n arg = arg.slice(1, -1);\n isDynamic = true;\n }\n }\n addDirective(el, name, rawName, value, arg, isDynamic, modifiers, list[i]);\n if (process.env.NODE_ENV !== 'production' && name === 'model') {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(value, delimiters);\n if (res) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.',\n list[i]\n );\n }\n }\n addAttr(el, name, JSON.stringify(value), list[i]);\n // #6887 firefox doesn't update muted state if set via attribute\n // even immediately after element creation\n if (!el.component &&\n name === 'muted' &&\n platformMustUseProp(el.tag, el.attrsMap.type, name)) {\n addProp(el, name, 'true', list[i]);\n }\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n process.env.NODE_ENV !== 'production' &&\n map[attrs[i].name] && !isIE && !isEdge\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name, attrs[i]);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\",\n el.rawAttrsMap['v-model']\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (!map['v-model']) {\n return\n }\n\n var typeBinding;\n if (map[':type'] || map['v-bind:type']) {\n typeBinding = getBindingAttr(el, 'type');\n }\n if (!map.type && !typeBinding && map['v-bind']) {\n typeBinding = \"(\" + (map['v-bind']) + \").type\";\n }\n\n if (typeBinding) {\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n var hasElse = getAndRemoveAttr(el, 'v-else', true) != null;\n var elseIfCondition = getAndRemoveAttr(el, 'v-else-if', true);\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n\n if (hasElse) {\n branch0.else = true;\n } else if (elseIfCondition) {\n branch0.elseif = elseIfCondition;\n }\n\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nvar model$1 = {\n preTransformNode: preTransformNode\n};\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$1\n];\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"), dir);\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"), dir);\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n};\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^([\\w$_]+|\\([^)]*?\\))\\s*=>|^function(?:\\s+[\\w$]+)?\\s*\\(/;\nvar fnInvokeRE = /\\([^)]*?\\);*$/;\nvar simplePathRE = /^[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['[^']*?']|\\[\"[^\"]*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*$/;\n\n// KeyboardEvent.keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// KeyboardEvent.key aliases\nvar keyNames = {\n // #7880: IE11 and Edge use `Esc` for Escape key name.\n esc: ['Esc', 'Escape'],\n tab: 'Tab',\n enter: 'Enter',\n // #9112: IE11 uses `Spacebar` for Space key name.\n space: [' ', 'Spacebar'],\n // #7806: IE11 uses key names without `Arrow` prefix for arrow keys.\n up: ['Up', 'ArrowUp'],\n left: ['Left', 'ArrowLeft'],\n right: ['Right', 'ArrowRight'],\n down: ['Down', 'ArrowDown'],\n // #9112: IE11 uses `Del` for Delete key name.\n 'delete': ['Backspace', 'Delete', 'Del']\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative\n) {\n var prefix = isNative ? 'nativeOn:' : 'on:';\n var staticHandlers = \"\";\n var dynamicHandlers = \"\";\n for (var name in events) {\n var handlerCode = genHandler(events[name]);\n if (events[name] && events[name].dynamic) {\n dynamicHandlers += name + \",\" + handlerCode + \",\";\n } else {\n staticHandlers += \"\\\"\" + name + \"\\\":\" + handlerCode + \",\";\n }\n }\n staticHandlers = \"{\" + (staticHandlers.slice(0, -1)) + \"}\";\n if (dynamicHandlers) {\n return prefix + \"_d(\" + staticHandlers + \",[\" + (dynamicHandlers.slice(0, -1)) + \"])\"\n } else {\n return prefix + staticHandlers\n }\n}\n\nfunction genHandler (handler) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n var isFunctionInvocation = simplePathRE.test(handler.value.replace(fnInvokeRE, ''));\n\n if (!handler.modifiers) {\n if (isMethodPath || isFunctionExpression) {\n return handler.value\n }\n return (\"function($event){\" + (isFunctionInvocation ? (\"return \" + (handler.value)) : handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? (\"return \" + (handler.value) + \"($event)\")\n : isFunctionExpression\n ? (\"return (\" + (handler.value) + \")($event)\")\n : isFunctionInvocation\n ? (\"return \" + (handler.value))\n : handler.value;\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\n // make sure the key filters only apply to KeyboardEvents\n // #9441: can't use 'keyCode' in $event because Chrome autofill fires fake\n // key events that do not have keyCode property...\n \"if(!$event.type.indexOf('key')&&\" +\n (keys.map(genFilterCode).join('&&')) + \")return null;\"\n )\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var keyCode = keyCodes[key];\n var keyName = keyNames[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(keyCode)) + \",\" +\n \"$event.key,\" +\n \"\" + (JSON.stringify(keyName)) +\n \")\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (process.env.NODE_ENV !== 'production' && dir.modifiers) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n};\n\n/* */\n\n\n\n\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !!el.component || !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n this.pre = false;\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.parent) {\n el.pre = el.pre || el.parent.pre;\n }\n\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget && !state.pre) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data;\n if (!el.plain || (el.pre && state.maybeComponent(el))) {\n data = genData$2(el, state);\n }\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n // Some elements (templates) need to behave differently inside of a v-pre\n // node. All pre nodes are static roots, so we can use this as a location to\n // wrap a state change and reset it upon exiting the pre node.\n var originalPreState = state.pre;\n if (el.pre) {\n state.pre = el.pre;\n }\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n state.pre = originalPreState;\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n process.env.NODE_ENV !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \",\n el.rawAttrsMap['v-once']\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (process.env.NODE_ENV !== 'production' &&\n state.maybeComponent(el) &&\n el.tag !== 'slot' &&\n el.tag !== 'template' &&\n !el.key\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n el.rawAttrsMap['v-for'],\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:\" + (genProps(el.attrs)) + \",\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:\" + (genProps(el.props)) + \",\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el, el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind dynamic argument wrap\n // v-bind with dynamic arguments must be applied using the same v-bind object\n // merge helper so that class/style/mustUseProp attrs are handled correctly.\n if (el.dynamicAttrs) {\n data = \"_b(\" + data + \",\\\"\" + (el.tag) + \"\\\",\" + (genProps(el.dynamicAttrs)) + \")\";\n }\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\" + (dir.isDynamicArg ? dir.arg : (\"\\\"\" + (dir.arg) + \"\\\"\"))) : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (process.env.NODE_ENV !== 'production' && (\n el.children.length !== 1 || ast.type !== 1\n )) {\n state.warn(\n 'Inline-template components must have exactly one child element.',\n { start: el.start }\n );\n }\n if (ast && ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n el,\n slots,\n state\n) {\n // by default scoped slots are considered \"stable\", this allows child\n // components with only scoped slots to skip forced updates from parent.\n // but in some cases we have to bail-out of this optimization\n // for example if the slot contains dynamic names, has v-if or v-for on them...\n var needsForceUpdate = el.for || Object.keys(slots).some(function (key) {\n var slot = slots[key];\n return (\n slot.slotTargetDynamic ||\n slot.if ||\n slot.for ||\n containsSlotChild(slot) // is passing down slot from parent which may be dynamic\n )\n });\n\n // #9534: if a component with scoped slots is inside a conditional branch,\n // it's possible for the same component to be reused but with different\n // compiled slot content. To avoid that, we generate a unique key based on\n // the generated code of all the slot contents.\n var needsKey = !!el.if;\n\n // OR when it is inside another scoped slot or v-for (the reactivity may be\n // disconnected due to the intermediate scope variable)\n // #9438, #9506\n // TODO: this can be further optimized by properly analyzing in-scope bindings\n // and skip force updating ones that do not actually use scope variables.\n if (!needsForceUpdate) {\n var parent = el.parent;\n while (parent) {\n if (\n (parent.slotScope && parent.slotScope !== emptySlotScopeToken) ||\n parent.for\n ) {\n needsForceUpdate = true;\n break\n }\n if (parent.if) {\n needsKey = true;\n }\n parent = parent.parent;\n }\n }\n\n var generatedSlots = Object.keys(slots)\n .map(function (key) { return genScopedSlot(slots[key], state); })\n .join(',');\n\n return (\"scopedSlots:_u([\" + generatedSlots + \"]\" + (needsForceUpdate ? \",null,true\" : \"\") + (!needsForceUpdate && needsKey ? (\",null,false,\" + (hash(generatedSlots))) : \"\") + \")\")\n}\n\nfunction hash(str) {\n var hash = 5381;\n var i = str.length;\n while(i) {\n hash = (hash * 33) ^ str.charCodeAt(--i);\n }\n return hash >>> 0\n}\n\nfunction containsSlotChild (el) {\n if (el.type === 1) {\n if (el.tag === 'slot') {\n return true\n }\n return el.children.some(containsSlotChild)\n }\n return false\n}\n\nfunction genScopedSlot (\n el,\n state\n) {\n var isLegacySyntax = el.attrsMap['slot-scope'];\n if (el.if && !el.ifProcessed && !isLegacySyntax) {\n return genIf(el, state, genScopedSlot, \"null\")\n }\n if (el.for && !el.forProcessed) {\n return genFor(el, state, genScopedSlot)\n }\n var slotScope = el.slotScope === emptySlotScopeToken\n ? \"\"\n : String(el.slotScope);\n var fn = \"function(\" + slotScope + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if && isLegacySyntax\n ? (\"(\" + (el.if) + \")?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n // reverse proxy v-slot without scope on this.$slots\n var reverseProxy = slotScope ? \"\" : \",proxy:true\";\n return (\"{key:\" + (el.slotTarget || \"\\\"default\\\"\") + \",fn:\" + fn + reverseProxy + \"}\")\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n var normalizationType = checkSkip\n ? state.maybeComponent(el$1) ? \",1\" : \",0\"\n : \"\";\n return (\"\" + ((altGenElement || genElement)(el$1, state)) + normalizationType)\n }\n var normalizationType$1 = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType$1 ? (\",\" + normalizationType$1) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } else if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs || el.dynamicAttrs\n ? genProps((el.attrs || []).concat(el.dynamicAttrs || []).map(function (attr) { return ({\n // slot props are camelized\n name: camelize(attr.name),\n value: attr.value,\n dynamic: attr.dynamic\n }); }))\n : null;\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var staticProps = \"\";\n var dynamicProps = \"\";\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n var value = transformSpecialNewlines(prop.value);\n if (prop.dynamic) {\n dynamicProps += (prop.name) + \",\" + value + \",\";\n } else {\n staticProps += \"\\\"\" + (prop.name) + \"\\\":\" + value + \",\";\n }\n }\n staticProps = \"{\" + (staticProps.slice(0, -1)) + \"}\";\n if (dynamicProps) {\n return (\"_d(\" + staticProps + \",[\" + (dynamicProps.slice(0, -1)) + \"])\")\n } else {\n return staticProps\n }\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast, warn) {\n if (ast) {\n checkNode(ast, warn);\n }\n}\n\nfunction checkNode (node, warn) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n var range = node.rawAttrsMap[name];\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), warn, range);\n } else if (name === 'v-slot' || name[0] === '#') {\n checkFunctionParameterExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), warn, range);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), warn, range);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), warn, range);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], warn);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, warn, node);\n }\n}\n\nfunction checkEvent (exp, text, warn, range) {\n var stripped = exp.replace(stripStringRE, '');\n var keywordMatch = stripped.match(unaryOperatorsRE);\n if (keywordMatch && stripped.charAt(keywordMatch.index - 1) !== '$') {\n warn(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim()),\n range\n );\n }\n checkExpression(exp, text, warn, range);\n}\n\nfunction checkFor (node, text, warn, range) {\n checkExpression(node.for || '', text, warn, range);\n checkIdentifier(node.alias, 'v-for alias', text, warn, range);\n checkIdentifier(node.iterator1, 'v-for iterator', text, warn, range);\n checkIdentifier(node.iterator2, 'v-for iterator', text, warn, range);\n}\n\nfunction checkIdentifier (\n ident,\n type,\n text,\n warn,\n range\n) {\n if (typeof ident === 'string') {\n try {\n new Function((\"var \" + ident + \"=_\"));\n } catch (e) {\n warn((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())), range);\n }\n }\n}\n\nfunction checkExpression (exp, text, warn, range) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n warn(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim()),\n range\n );\n } else {\n warn(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\",\n range\n );\n }\n }\n}\n\nfunction checkFunctionParameterExpression (exp, text, warn, range) {\n try {\n new Function(exp, '');\n } catch (e) {\n warn(\n \"invalid function parameter expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\",\n range\n );\n }\n}\n\n/* */\n\nvar range = 2;\n\nfunction generateCodeFrame (\n source,\n start,\n end\n) {\n if ( start === void 0 ) start = 0;\n if ( end === void 0 ) end = source.length;\n\n var lines = source.split(/\\r?\\n/);\n var count = 0;\n var res = [];\n for (var i = 0; i < lines.length; i++) {\n count += lines[i].length + 1;\n if (count >= start) {\n for (var j = i - range; j <= i + range || end > count; j++) {\n if (j < 0 || j >= lines.length) { continue }\n res.push((\"\" + (j + 1) + (repeat$1(\" \", 3 - String(j + 1).length)) + \"| \" + (lines[j])));\n var lineLength = lines[j].length;\n if (j === i) {\n // push underline\n var pad = start - (count - lineLength) + 1;\n var length = end > count ? lineLength - pad : end - start;\n res.push(\" | \" + repeat$1(\" \", pad) + repeat$1(\"^\", length));\n } else if (j > i) {\n if (end > count) {\n var length$1 = Math.min(end - count, lineLength);\n res.push(\" | \" + repeat$1(\"^\", length$1));\n }\n count += lineLength + 1;\n }\n }\n break\n }\n }\n return res.join('\\n')\n}\n\nfunction repeat$1 (str, n) {\n var result = '';\n if (n > 0) {\n while (true) { // eslint-disable-line\n if (n & 1) { result += str; }\n n >>>= 1;\n if (n <= 0) { break }\n str += str;\n }\n }\n return result\n}\n\n/* */\n\n\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (process.env.NODE_ENV !== 'production') {\n if (compiled.errors && compiled.errors.length) {\n if (options.outputSourceRange) {\n compiled.errors.forEach(function (e) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + (e.msg) + \"\\n\\n\" +\n generateCodeFrame(template, e.start, e.end),\n vm\n );\n });\n } else {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n }\n if (compiled.tips && compiled.tips.length) {\n if (options.outputSourceRange) {\n compiled.tips.forEach(function (e) { return tip(e.msg, vm); });\n } else {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n\n var warn = function (msg, range, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n // $flow-disable-line\n var leadingSpaceLength = template.match(/^\\s*/)[0].length;\n\n warn = function (msg, range, tip) {\n var data = { msg: msg };\n if (range) {\n if (range.start != null) {\n data.start = range.start + leadingSpaceLength;\n }\n if (range.end != null) {\n data.end = range.end + leadingSpaceLength;\n }\n }\n (tip ? tips : errors).push(data);\n };\n }\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives || null),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n finalOptions.warn = warn;\n\n var compiled = baseCompile(template.trim(), finalOptions);\n if (process.env.NODE_ENV !== 'production') {\n detectErrors(compiled.ast, warn);\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n if (options.optimize !== false) {\n optimize(ast, options);\n }\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compile = ref$1.compile;\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nvar div;\nfunction getShouldDecode (href) {\n div = div || document.createElement('div');\n div.innerHTML = href ? \"<a href=\\\"\\n\\\"/>\" : \"<div a=\\\"\\n\\\"/>\";\n return div.innerHTML.indexOf('&#10;') > 0\n}\n\n// #3663: IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? getShouldDecode(false) : false;\n// #6828: chrome encodes content in a[href]\nvar shouldDecodeNewlinesForHref = inBrowser ? getShouldDecode(true) : false;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue.prototype.$mount;\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !template) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n outputSourceRange: process.env.NODE_ENV !== 'production',\n shouldDecodeNewlines: shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: shouldDecodeNewlinesForHref,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue.compile = compileToFunctions;\n\nexport default Vue;\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","module.exports = {};\n","// Create a simple path alias to allow browserify to resolve\n// the runtime on a supported path.\nmodule.exports = require('./dist/cjs/handlebars.runtime')['default'];\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '&quot;';\n break;\n case 38: // &\n escape = '&amp;';\n break;\n case 39: // '\n escape = '&#39;';\n break;\n case 60: // <\n escape = '&lt;';\n break;\n case 62: // >\n escape = '&gt;';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","module.exports = {};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../node_modules/css-loader/dist/cjs.js!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"acc59688\", content, true, {});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\nexports.emit = emit;\n\nvar _ProxyBus = require(\"./ProxyBus\");\n\nvar _SimpleBus = require(\"./SimpleBus\");\n\nfunction getBus() {\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n } // Either use an existing event bus instance or create one\n\n\n if (typeof window._nc_event_bus !== 'undefined') {\n return new _ProxyBus.ProxyBus(window._nc_event_bus);\n } else {\n return window._nc_event_bus = new _SimpleBus.SimpleBus();\n }\n}\n\nvar bus = getBus();\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\n\nfunction subscribe(name, handler) {\n bus.subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\n\n\nfunction unsubscribe(name, handler) {\n bus.unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\n\n\nfunction emit(name, event) {\n bus.emit(name, event);\n}\n//# sourceMappingURL=index.js.map","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = false;\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","exports.f = Object.getOwnPropertySymbols;\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%40/gi, '@').\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(timeoutErrorMessage, config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n var cookies = require('./../helpers/cookies');\n\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (requestData === undefined) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n var valueFromConfig2Keys = ['url', 'method', 'params', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy'];\n var defaultToConfig2Keys = [\n 'baseURL', 'url', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress',\n 'maxContentLength', 'validateStatus', 'maxRedirects', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath'\n ];\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, function mergeDeepProperties(prop) {\n if (utils.isObject(config2[prop])) {\n config[prop] = utils.deepMerge(config1[prop], config2[prop]);\n } else if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (utils.isObject(config1[prop])) {\n config[prop] = utils.deepMerge(config1[prop]);\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys);\n\n var otherKeys = Object\n .keys(config2)\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, function otherKeysDefaultToConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n\n return config;\n};\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","'use strict';\nvar $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n forEach: forEach\n});\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\nmodule.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n} : [].forEach;\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar has = require('../internals/has');\nvar defineProperty = require('../internals/object-define-property').f;\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + ++id, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && meta.REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar meta = module.exports = {\n REQUIRED: false,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) {\n var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1);\n var iterator, iterFn, index, length, result, next, step;\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = AS_ENTRIES\n ? boundFunction(anObject(step = iterable[index])[0], step[1])\n : boundFunction(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES);\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n\niterate.stop = function (result) {\n return new Result(true, result);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n\nexports.__esModule = true;\nexports.HandlebarsEnvironment = HandlebarsEnvironment;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('./utils');\n\nvar _exception = require('./exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nvar _helpers = require('./helpers');\n\nvar _decorators = require('./decorators');\n\nvar _logger = require('./logger');\n\nvar _logger2 = _interopRequireDefault(_logger);\n\nvar _internalProtoAccess = require('./internal/proto-access');\n\nvar VERSION = '4.7.6';\nexports.VERSION = VERSION;\nvar COMPILER_REVISION = 8;\nexports.COMPILER_REVISION = COMPILER_REVISION;\nvar LAST_COMPATIBLE_COMPILER_REVISION = 7;\n\nexports.LAST_COMPATIBLE_COMPILER_REVISION = LAST_COMPATIBLE_COMPILER_REVISION;\nvar REVISION_CHANGES = {\n 1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it\n 2: '== 1.0.0-rc.3',\n 3: '== 1.0.0-rc.4',\n 4: '== 1.x.x',\n 5: '== 2.0.0-alpha.x',\n 6: '>= 2.0.0-beta.1',\n 7: '>= 4.0.0 <4.3.0',\n 8: '>= 4.3.0'\n};\n\nexports.REVISION_CHANGES = REVISION_CHANGES;\nvar objectType = '[object Object]';\n\nfunction HandlebarsEnvironment(helpers, partials, decorators) {\n this.helpers = helpers || {};\n this.partials = partials || {};\n this.decorators = decorators || {};\n\n _helpers.registerDefaultHelpers(this);\n _decorators.registerDefaultDecorators(this);\n}\n\nHandlebarsEnvironment.prototype = {\n constructor: HandlebarsEnvironment,\n\n logger: _logger2['default'],\n log: _logger2['default'].log,\n\n registerHelper: function registerHelper(name, fn) {\n if (_utils.toString.call(name) === objectType) {\n if (fn) {\n throw new _exception2['default']('Arg not supported with multiple helpers');\n }\n _utils.extend(this.helpers, name);\n } else {\n this.helpers[name] = fn;\n }\n },\n unregisterHelper: function unregisterHelper(name) {\n delete this.helpers[name];\n },\n\n registerPartial: function registerPartial(name, partial) {\n if (_utils.toString.call(name) === objectType) {\n _utils.extend(this.partials, name);\n } else {\n if (typeof partial === 'undefined') {\n throw new _exception2['default']('Attempting to register a partial called \"' + name + '\" as undefined');\n }\n this.partials[name] = partial;\n }\n },\n unregisterPartial: function unregisterPartial(name) {\n delete this.partials[name];\n },\n\n registerDecorator: function registerDecorator(name, fn) {\n if (_utils.toString.call(name) === objectType) {\n if (fn) {\n throw new _exception2['default']('Arg not supported with multiple decorators');\n }\n _utils.extend(this.decorators, name);\n } else {\n this.decorators[name] = fn;\n }\n },\n unregisterDecorator: function unregisterDecorator(name) {\n delete this.decorators[name];\n },\n /**\n * Reset the memory of illegal property accesses that have already been logged.\n * @deprecated should only be used in handlebars test-cases\n */\n resetLoggedPropertyAccesses: function resetLoggedPropertyAccesses() {\n _internalProtoAccess.resetLoggedProperties();\n }\n};\n\nvar log = _logger2['default'].log;\n\nexports.log = log;\nexports.createFrame = _utils.createFrame;\nexports.logger = _logger2['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2Jhc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7cUJBQThDLFNBQVM7O3lCQUNqQyxhQUFhOzs7O3VCQUNJLFdBQVc7OzBCQUNSLGNBQWM7O3NCQUNyQyxVQUFVOzs7O21DQUNTLHlCQUF5Qjs7QUFFeEQsSUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDOztBQUN4QixJQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQzs7QUFDNUIsSUFBTSxpQ0FBaUMsR0FBRyxDQUFDLENBQUM7OztBQUU1QyxJQUFNLGdCQUFnQixHQUFHO0FBQzlCLEdBQUMsRUFBRSxhQUFhO0FBQ2hCLEdBQUMsRUFBRSxlQUFlO0FBQ2xCLEdBQUMsRUFBRSxlQUFlO0FBQ2xCLEdBQUMsRUFBRSxVQUFVO0FBQ2IsR0FBQyxFQUFFLGtCQUFrQjtBQUNyQixHQUFDLEVBQUUsaUJBQWlCO0FBQ3BCLEdBQUMsRUFBRSxpQkFBaUI7QUFDcEIsR0FBQyxFQUFFLFVBQVU7Q0FDZCxDQUFDOzs7QUFFRixJQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQzs7QUFFOUIsU0FBUyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRTtBQUNuRSxNQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7QUFDN0IsTUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLElBQUksRUFBRSxDQUFDO0FBQy9CLE1BQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxJQUFJLEVBQUUsQ0FBQzs7QUFFbkMsa0NBQXVCLElBQUksQ0FBQyxDQUFDO0FBQzdCLHdDQUEwQixJQUFJLENBQUMsQ0FBQztDQUNqQzs7QUFFRCxxQkFBcUIsQ0FBQyxTQUFTLEdBQUc7QUFDaEMsYUFBVyxFQUFFLHFCQUFxQjs7QUFFbEMsUUFBTSxxQkFBUTtBQUNkLEtBQUcsRUFBRSxvQkFBTyxHQUFHOztBQUVmLGdCQUFjLEVBQUUsd0JBQVMsSUFBSSxFQUFFLEVBQUUsRUFBRTtBQUNqQyxRQUFJLGdCQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxVQUFVLEVBQUU7QUFDdEMsVUFBSSxFQUFFLEVBQUU7QUFDTixjQUFNLDJCQUFjLHlDQUF5QyxDQUFDLENBQUM7T0FDaEU7QUFDRCxvQkFBTyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQzVCLE1BQU07QUFDTCxVQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztLQUN6QjtHQUNGO0FBQ0Qsa0JBQWdCLEVBQUUsMEJBQVMsSUFBSSxFQUFFO0FBQy9CLFdBQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztHQUMzQjs7QUFFRCxpQkFBZSxFQUFFLHlCQUFTLElBQUksRUFBRSxPQUFPLEVBQUU7QUFDdkMsUUFBSSxnQkFBUyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxFQUFFO0FBQ3RDLG9CQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDN0IsTUFBTTtBQUNMLFVBQUksT0FBTyxPQUFPLEtBQUssV0FBVyxFQUFFO0FBQ2xDLGNBQU0seUVBQ3dDLElBQUksb0JBQ2pELENBQUM7T0FDSDtBQUNELFVBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDO0tBQy9CO0dBQ0Y7QUFDRCxtQkFBaUIsRUFBRSwyQkFBUyxJQUFJLEVBQUU7QUFDaEMsV0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0dBQzVCOztBQUVELG1CQUFpQixFQUFFLDJCQUFTLElBQUksRUFBRSxFQUFFLEVBQUU7QUFDcEMsUUFBSSxnQkFBUyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxFQUFFO0FBQ3RDLFVBQUksRUFBRSxFQUFFO0FBQ04sY0FBTSwyQkFBYyw0Q0FBNEMsQ0FBQyxDQUFDO09BQ25FO0FBQ0Qsb0JBQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUMvQixNQUFNO0FBQ0wsVUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7S0FDNUI7R0FDRjtBQUNELHFCQUFtQixFQUFFLDZCQUFTLElBQUksRUFBRTtBQUNsQyxXQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7R0FDOUI7Ozs7O0FBS0QsNkJBQTJCLEVBQUEsdUNBQUc7QUFDNUIsZ0RBQXVCLENBQUM7R0FDekI7Q0FDRixDQUFDOztBQUVLLElBQUksR0FBRyxHQUFHLG9CQUFPLEdBQUcsQ0FBQzs7O1FBRW5CLFdBQVc7UUFBRSxNQUFNIiwiZmlsZSI6ImJhc2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVGcmFtZSwgZXh0ZW5kLCB0b1N0cmluZyB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tICcuL2V4Y2VwdGlvbic7XG5pbXBvcnQgeyByZWdpc3RlckRlZmF1bHRIZWxwZXJzIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IHJlZ2lzdGVyRGVmYXVsdERlY29yYXRvcnMgfSBmcm9tICcuL2RlY29yYXRvcnMnO1xuaW1wb3J0IGxvZ2dlciBmcm9tICcuL2xvZ2dlcic7XG5pbXBvcnQgeyByZXNldExvZ2dlZFByb3BlcnRpZXMgfSBmcm9tICcuL2ludGVybmFsL3Byb3RvLWFjY2Vzcyc7XG5cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzQuNy42JztcbmV4cG9ydCBjb25zdCBDT01QSUxFUl9SRVZJU0lPTiA9IDg7XG5leHBvcnQgY29uc3QgTEFTVF9DT01QQVRJQkxFX0NPTVBJTEVSX1JFVklTSU9OID0gNztcblxuZXhwb3J0IGNvbnN0IFJFVklTSU9OX0NIQU5HRVMgPSB7XG4gIDE6ICc8PSAxLjAucmMuMicsIC8vIDEuMC5yYy4yIGlzIGFjdHVhbGx5IHJldjIgYnV0IGRvZXNuJ3QgcmVwb3J0IGl0XG4gIDI6ICc9PSAxLjAuMC1yYy4zJyxcbiAgMzogJz09IDEuMC4wLXJjLjQnLFxuICA0OiAnPT0gMS54LngnLFxuICA1OiAnPT0gMi4wLjAtYWxwaGEueCcsXG4gIDY6ICc+PSAyLjAuMC1iZXRhLjEnLFxuICA3OiAnPj0gNC4wLjAgPDQuMy4wJyxcbiAgODogJz49IDQuMy4wJ1xufTtcblxuY29uc3Qgb2JqZWN0VHlwZSA9ICdbb2JqZWN0IE9iamVjdF0nO1xuXG5leHBvcnQgZnVuY3Rpb24gSGFuZGxlYmFyc0Vudmlyb25tZW50KGhlbHBlcnMsIHBhcnRpYWxzLCBkZWNvcmF0b3JzKSB7XG4gIHRoaXMuaGVscGVycyA9IGhlbHBlcnMgfHwge307XG4gIHRoaXMucGFydGlhbHMgPSBwYXJ0aWFscyB8fCB7fTtcbiAgdGhpcy5kZWNvcmF0b3JzID0gZGVjb3JhdG9ycyB8fCB7fTtcblxuICByZWdpc3RlckRlZmF1bHRIZWxwZXJzKHRoaXMpO1xuICByZWdpc3RlckRlZmF1bHREZWNvcmF0b3JzKHRoaXMpO1xufVxuXG5IYW5kbGViYXJzRW52aXJvbm1lbnQucHJvdG90eXBlID0ge1xuICBjb25zdHJ1Y3RvcjogSGFuZGxlYmFyc0Vudmlyb25tZW50LFxuXG4gIGxvZ2dlcjogbG9nZ2VyLFxuICBsb2c6IGxvZ2dlci5sb2csXG5cbiAgcmVnaXN0ZXJIZWxwZXI6IGZ1bmN0aW9uKG5hbWUsIGZuKSB7XG4gICAgaWYgKHRvU3RyaW5nLmNhbGwobmFtZSkgPT09IG9iamVjdFR5cGUpIHtcbiAgICAgIGlmIChmbikge1xuICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdBcmcgbm90IHN1cHBvcnRlZCB3aXRoIG11bHRpcGxlIGhlbHBlcnMnKTtcbiAgICAgIH1cbiAgICAgIGV4dGVuZCh0aGlzLmhlbHBlcnMsIG5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhlbHBlcnNbbmFtZV0gPSBmbjtcbiAgICB9XG4gIH0sXG4gIHVucmVnaXN0ZXJIZWxwZXI6IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICBkZWxldGUgdGhpcy5oZWxwZXJzW25hbWVdO1xuICB9LFxuXG4gIHJlZ2lzdGVyUGFydGlhbDogZnVuY3Rpb24obmFtZSwgcGFydGlhbCkge1xuICAgIGlmICh0b1N0cmluZy5jYWxsKG5hbWUpID09PSBvYmplY3RUeXBlKSB7XG4gICAgICBleHRlbmQodGhpcy5wYXJ0aWFscywgbmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0eXBlb2YgcGFydGlhbCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICAgICBgQXR0ZW1wdGluZyB0byByZWdpc3RlciBhIHBhcnRpYWwgY2FsbGVkIFwiJHtuYW1lfVwiIGFzIHVuZGVmaW5lZGBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMucGFydGlhbHNbbmFtZV0gPSBwYXJ0aWFsO1xuICAgIH1cbiAgfSxcbiAgdW5yZWdpc3RlclBhcnRpYWw6IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICBkZWxldGUgdGhpcy5wYXJ0aWFsc1tuYW1lXTtcbiAgfSxcblxuICByZWdpc3RlckRlY29yYXRvcjogZnVuY3Rpb24obmFtZSwgZm4pIHtcbiAgICBpZiAodG9TdHJpbmcuY2FsbChuYW1lKSA9PT0gb2JqZWN0VHlwZSkge1xuICAgICAgaWYgKGZuKSB7XG4gICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ0FyZyBub3Qgc3VwcG9ydGVkIHdpdGggbXVsdGlwbGUgZGVjb3JhdG9ycycpO1xuICAgICAgfVxuICAgICAgZXh0ZW5kKHRoaXMuZGVjb3JhdG9ycywgbmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGVjb3JhdG9yc1tuYW1lXSA9IGZuO1xuICAgIH1cbiAgfSxcbiAgdW5yZWdpc3RlckRlY29yYXRvcjogZnVuY3Rpb24obmFtZSkge1xuICAgIGRlbGV0ZSB0aGlzLmRlY29yYXRvcnNbbmFtZV07XG4gIH0sXG4gIC8qKlxuICAgKiBSZXNldCB0aGUgbWVtb3J5IG9mIGlsbGVnYWwgcHJvcGVydHkgYWNjZXNzZXMgdGhhdCBoYXZlIGFscmVhZHkgYmVlbiBsb2dnZWQuXG4gICAqIEBkZXByZWNhdGVkIHNob3VsZCBvbmx5IGJlIHVzZWQgaW4gaGFuZGxlYmFycyB0ZXN0LWNhc2VzXG4gICAqL1xuICByZXNldExvZ2dlZFByb3BlcnR5QWNjZXNzZXMoKSB7XG4gICAgcmVzZXRMb2dnZWRQcm9wZXJ0aWVzKCk7XG4gIH1cbn07XG5cbmV4cG9ydCBsZXQgbG9nID0gbG9nZ2VyLmxvZztcblxuZXhwb3J0IHsgY3JlYXRlRnJhbWUsIGxvZ2dlciB9O1xuIl19\n","'use strict';\n\nexports.__esModule = true;\nexports.registerDefaultHelpers = registerDefaultHelpers;\nexports.moveHelperToHooks = moveHelperToHooks;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _helpersBlockHelperMissing = require('./helpers/block-helper-missing');\n\nvar _helpersBlockHelperMissing2 = _interopRequireDefault(_helpersBlockHelperMissing);\n\nvar _helpersEach = require('./helpers/each');\n\nvar _helpersEach2 = _interopRequireDefault(_helpersEach);\n\nvar _helpersHelperMissing = require('./helpers/helper-missing');\n\nvar _helpersHelperMissing2 = _interopRequireDefault(_helpersHelperMissing);\n\nvar _helpersIf = require('./helpers/if');\n\nvar _helpersIf2 = _interopRequireDefault(_helpersIf);\n\nvar _helpersLog = require('./helpers/log');\n\nvar _helpersLog2 = _interopRequireDefault(_helpersLog);\n\nvar _helpersLookup = require('./helpers/lookup');\n\nvar _helpersLookup2 = _interopRequireDefault(_helpersLookup);\n\nvar _helpersWith = require('./helpers/with');\n\nvar _helpersWith2 = _interopRequireDefault(_helpersWith);\n\nfunction registerDefaultHelpers(instance) {\n _helpersBlockHelperMissing2['default'](instance);\n _helpersEach2['default'](instance);\n _helpersHelperMissing2['default'](instance);\n _helpersIf2['default'](instance);\n _helpersLog2['default'](instance);\n _helpersLookup2['default'](instance);\n _helpersWith2['default'](instance);\n}\n\nfunction moveHelperToHooks(instance, helperName, keepHelper) {\n if (instance.helpers[helperName]) {\n instance.hooks[helperName] = instance.helpers[helperName];\n if (!keepHelper) {\n delete instance.helpers[helperName];\n }\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O3lDQUF1QyxnQ0FBZ0M7Ozs7MkJBQzlDLGdCQUFnQjs7OztvQ0FDUCwwQkFBMEI7Ozs7eUJBQ3JDLGNBQWM7Ozs7MEJBQ2IsZUFBZTs7Ozs2QkFDWixrQkFBa0I7Ozs7MkJBQ3BCLGdCQUFnQjs7OztBQUVsQyxTQUFTLHNCQUFzQixDQUFDLFFBQVEsRUFBRTtBQUMvQyx5Q0FBMkIsUUFBUSxDQUFDLENBQUM7QUFDckMsMkJBQWEsUUFBUSxDQUFDLENBQUM7QUFDdkIsb0NBQXNCLFFBQVEsQ0FBQyxDQUFDO0FBQ2hDLHlCQUFXLFFBQVEsQ0FBQyxDQUFDO0FBQ3JCLDBCQUFZLFFBQVEsQ0FBQyxDQUFDO0FBQ3RCLDZCQUFlLFFBQVEsQ0FBQyxDQUFDO0FBQ3pCLDJCQUFhLFFBQVEsQ0FBQyxDQUFDO0NBQ3hCOztBQUVNLFNBQVMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUU7QUFDbEUsTUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO0FBQ2hDLFlBQVEsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUMxRCxRQUFJLENBQUMsVUFBVSxFQUFFO0FBQ2YsYUFBTyxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQ3JDO0dBQ0Y7Q0FDRiIsImZpbGUiOiJoZWxwZXJzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlZ2lzdGVyQmxvY2tIZWxwZXJNaXNzaW5nIGZyb20gJy4vaGVscGVycy9ibG9jay1oZWxwZXItbWlzc2luZyc7XG5pbXBvcnQgcmVnaXN0ZXJFYWNoIGZyb20gJy4vaGVscGVycy9lYWNoJztcbmltcG9ydCByZWdpc3RlckhlbHBlck1pc3NpbmcgZnJvbSAnLi9oZWxwZXJzL2hlbHBlci1taXNzaW5nJztcbmltcG9ydCByZWdpc3RlcklmIGZyb20gJy4vaGVscGVycy9pZic7XG5pbXBvcnQgcmVnaXN0ZXJMb2cgZnJvbSAnLi9oZWxwZXJzL2xvZyc7XG5pbXBvcnQgcmVnaXN0ZXJMb29rdXAgZnJvbSAnLi9oZWxwZXJzL2xvb2t1cCc7XG5pbXBvcnQgcmVnaXN0ZXJXaXRoIGZyb20gJy4vaGVscGVycy93aXRoJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRGVmYXVsdEhlbHBlcnMoaW5zdGFuY2UpIHtcbiAgcmVnaXN0ZXJCbG9ja0hlbHBlck1pc3NpbmcoaW5zdGFuY2UpO1xuICByZWdpc3RlckVhY2goaW5zdGFuY2UpO1xuICByZWdpc3RlckhlbHBlck1pc3NpbmcoaW5zdGFuY2UpO1xuICByZWdpc3RlcklmKGluc3RhbmNlKTtcbiAgcmVnaXN0ZXJMb2coaW5zdGFuY2UpO1xuICByZWdpc3Rlckxvb2t1cChpbnN0YW5jZSk7XG4gIHJlZ2lzdGVyV2l0aChpbnN0YW5jZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb3ZlSGVscGVyVG9Ib29rcyhpbnN0YW5jZSwgaGVscGVyTmFtZSwga2VlcEhlbHBlcikge1xuICBpZiAoaW5zdGFuY2UuaGVscGVyc1toZWxwZXJOYW1lXSkge1xuICAgIGluc3RhbmNlLmhvb2tzW2hlbHBlck5hbWVdID0gaW5zdGFuY2UuaGVscGVyc1toZWxwZXJOYW1lXTtcbiAgICBpZiAoIWtlZXBIZWxwZXIpIHtcbiAgICAgIGRlbGV0ZSBpbnN0YW5jZS5oZWxwZXJzW2hlbHBlck5hbWVdO1xuICAgIH1cbiAgfVxufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n\nvar _utils = require('./utils');\n\nvar logger = {\n methodMap: ['debug', 'info', 'warn', 'error'],\n level: 'info',\n\n // Maps a given level value to the `methodMap` indexes above.\n lookupLevel: function lookupLevel(level) {\n if (typeof level === 'string') {\n var levelMap = _utils.indexOf(logger.methodMap, level.toLowerCase());\n if (levelMap >= 0) {\n level = levelMap;\n } else {\n level = parseInt(level, 10);\n }\n }\n\n return level;\n },\n\n // Can be overridden in the host environment\n log: function log(level) {\n level = logger.lookupLevel(level);\n\n if (typeof console !== 'undefined' && logger.lookupLevel(logger.level) <= level) {\n var method = logger.methodMap[level];\n // eslint-disable-next-line no-console\n if (!console[method]) {\n method = 'log';\n }\n\n for (var _len = arguments.length, message = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n message[_key - 1] = arguments[_key];\n }\n\n console[method].apply(console, message); // eslint-disable-line no-console\n }\n }\n};\n\nexports['default'] = logger;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2xvZ2dlci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O3FCQUF3QixTQUFTOztBQUVqQyxJQUFJLE1BQU0sR0FBRztBQUNYLFdBQVMsRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQztBQUM3QyxPQUFLLEVBQUUsTUFBTTs7O0FBR2IsYUFBVyxFQUFFLHFCQUFTLEtBQUssRUFBRTtBQUMzQixRQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtBQUM3QixVQUFJLFFBQVEsR0FBRyxlQUFRLE1BQU0sQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7QUFDOUQsVUFBSSxRQUFRLElBQUksQ0FBQyxFQUFFO0FBQ2pCLGFBQUssR0FBRyxRQUFRLENBQUM7T0FDbEIsTUFBTTtBQUNMLGFBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO09BQzdCO0tBQ0Y7O0FBRUQsV0FBTyxLQUFLLENBQUM7R0FDZDs7O0FBR0QsS0FBRyxFQUFFLGFBQVMsS0FBSyxFQUFjO0FBQy9CLFNBQUssR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDOztBQUVsQyxRQUNFLE9BQU8sT0FBTyxLQUFLLFdBQVcsSUFDOUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxFQUN6QztBQUNBLFVBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7O0FBRXJDLFVBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7QUFDcEIsY0FBTSxHQUFHLEtBQUssQ0FBQztPQUNoQjs7d0NBWG1CLE9BQU87QUFBUCxlQUFPOzs7QUFZM0IsYUFBTyxDQUFDLE1BQU0sT0FBQyxDQUFmLE9BQU8sRUFBWSxPQUFPLENBQUMsQ0FBQztLQUM3QjtHQUNGO0NBQ0YsQ0FBQzs7cUJBRWEsTUFBTSIsImZpbGUiOiJsb2dnZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmRleE9mIH0gZnJvbSAnLi91dGlscyc7XG5cbmxldCBsb2dnZXIgPSB7XG4gIG1ldGhvZE1hcDogWydkZWJ1ZycsICdpbmZvJywgJ3dhcm4nLCAnZXJyb3InXSxcbiAgbGV2ZWw6ICdpbmZvJyxcblxuICAvLyBNYXBzIGEgZ2l2ZW4gbGV2ZWwgdmFsdWUgdG8gdGhlIGBtZXRob2RNYXBgIGluZGV4ZXMgYWJvdmUuXG4gIGxvb2t1cExldmVsOiBmdW5jdGlvbihsZXZlbCkge1xuICAgIGlmICh0eXBlb2YgbGV2ZWwgPT09ICdzdHJpbmcnKSB7XG4gICAgICBsZXQgbGV2ZWxNYXAgPSBpbmRleE9mKGxvZ2dlci5tZXRob2RNYXAsIGxldmVsLnRvTG93ZXJDYXNlKCkpO1xuICAgICAgaWYgKGxldmVsTWFwID49IDApIHtcbiAgICAgICAgbGV2ZWwgPSBsZXZlbE1hcDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldmVsID0gcGFyc2VJbnQobGV2ZWwsIDEwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbGV2ZWw7XG4gIH0sXG5cbiAgLy8gQ2FuIGJlIG92ZXJyaWRkZW4gaW4gdGhlIGhvc3QgZW52aXJvbm1lbnRcbiAgbG9nOiBmdW5jdGlvbihsZXZlbCwgLi4ubWVzc2FnZSkge1xuICAgIGxldmVsID0gbG9nZ2VyLmxvb2t1cExldmVsKGxldmVsKTtcblxuICAgIGlmIChcbiAgICAgIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgbG9nZ2VyLmxvb2t1cExldmVsKGxvZ2dlci5sZXZlbCkgPD0gbGV2ZWxcbiAgICApIHtcbiAgICAgIGxldCBtZXRob2QgPSBsb2dnZXIubWV0aG9kTWFwW2xldmVsXTtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBpZiAoIWNvbnNvbGVbbWV0aG9kXSkge1xuICAgICAgICBtZXRob2QgPSAnbG9nJztcbiAgICAgIH1cbiAgICAgIGNvbnNvbGVbbWV0aG9kXSguLi5tZXNzYWdlKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1jb25zb2xlXG4gICAgfVxuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBsb2dnZXI7XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\nexports.createProtoAccessControl = createProtoAccessControl;\nexports.resultIsAllowed = resultIsAllowed;\nexports.resetLoggedProperties = resetLoggedProperties;\n// istanbul ignore next\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nvar _createNewLookupObject = require('./create-new-lookup-object');\n\nvar _logger = require('../logger');\n\nvar logger = _interopRequireWildcard(_logger);\n\nvar loggedProperties = Object.create(null);\n\nfunction createProtoAccessControl(runtimeOptions) {\n var defaultMethodWhiteList = Object.create(null);\n defaultMethodWhiteList['constructor'] = false;\n defaultMethodWhiteList['__defineGetter__'] = false;\n defaultMethodWhiteList['__defineSetter__'] = false;\n defaultMethodWhiteList['__lookupGetter__'] = false;\n\n var defaultPropertyWhiteList = Object.create(null);\n // eslint-disable-next-line no-proto\n defaultPropertyWhiteList['__proto__'] = false;\n\n return {\n properties: {\n whitelist: _createNewLookupObject.createNewLookupObject(defaultPropertyWhiteList, runtimeOptions.allowedProtoProperties),\n defaultValue: runtimeOptions.allowProtoPropertiesByDefault\n },\n methods: {\n whitelist: _createNewLookupObject.createNewLookupObject(defaultMethodWhiteList, runtimeOptions.allowedProtoMethods),\n defaultValue: runtimeOptions.allowProtoMethodsByDefault\n }\n };\n}\n\nfunction resultIsAllowed(result, protoAccessControl, propertyName) {\n if (typeof result === 'function') {\n return checkWhiteList(protoAccessControl.methods, propertyName);\n } else {\n return checkWhiteList(protoAccessControl.properties, propertyName);\n }\n}\n\nfunction checkWhiteList(protoAccessControlForType, propertyName) {\n if (protoAccessControlForType.whitelist[propertyName] !== undefined) {\n return protoAccessControlForType.whitelist[propertyName] === true;\n }\n if (protoAccessControlForType.defaultValue !== undefined) {\n return protoAccessControlForType.defaultValue;\n }\n logUnexpecedPropertyAccessOnce(propertyName);\n return false;\n}\n\nfunction logUnexpecedPropertyAccessOnce(propertyName) {\n if (loggedProperties[propertyName] !== true) {\n loggedProperties[propertyName] = true;\n logger.log('error', 'Handlebars: Access has been denied to resolve the property \"' + propertyName + '\" because it is not an \"own property\" of its parent.\\n' + 'You can add a runtime option to disable the check or this warning:\\n' + 'See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details');\n }\n}\n\nfunction resetLoggedProperties() {\n Object.keys(loggedProperties).forEach(function (propertyName) {\n delete loggedProperties[propertyName];\n });\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2ludGVybmFsL3Byb3RvLWFjY2Vzcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O3FDQUFzQyw0QkFBNEI7O3NCQUMxQyxXQUFXOztJQUF2QixNQUFNOztBQUVsQixJQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7O0FBRXRDLFNBQVMsd0JBQXdCLENBQUMsY0FBYyxFQUFFO0FBQ3ZELE1BQUksc0JBQXNCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNqRCx3QkFBc0IsQ0FBQyxhQUFhLENBQUMsR0FBRyxLQUFLLENBQUM7QUFDOUMsd0JBQXNCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxLQUFLLENBQUM7QUFDbkQsd0JBQXNCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxLQUFLLENBQUM7QUFDbkQsd0JBQXNCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxLQUFLLENBQUM7O0FBRW5ELE1BQUksd0JBQXdCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzs7QUFFbkQsMEJBQXdCLENBQUMsV0FBVyxDQUFDLEdBQUcsS0FBSyxDQUFDOztBQUU5QyxTQUFPO0FBQ0wsY0FBVSxFQUFFO0FBQ1YsZUFBUyxFQUFFLDZDQUNULHdCQUF3QixFQUN4QixjQUFjLENBQUMsc0JBQXNCLENBQ3RDO0FBQ0Qsa0JBQVksRUFBRSxjQUFjLENBQUMsNkJBQTZCO0tBQzNEO0FBQ0QsV0FBTyxFQUFFO0FBQ1AsZUFBUyxFQUFFLDZDQUNULHNCQUFzQixFQUN0QixjQUFjLENBQUMsbUJBQW1CLENBQ25DO0FBQ0Qsa0JBQVksRUFBRSxjQUFjLENBQUMsMEJBQTBCO0tBQ3hEO0dBQ0YsQ0FBQztDQUNIOztBQUVNLFNBQVMsZUFBZSxDQUFDLE1BQU0sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUU7QUFDeEUsTUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVLEVBQUU7QUFDaEMsV0FBTyxjQUFjLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO0dBQ2pFLE1BQU07QUFDTCxXQUFPLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7R0FDcEU7Q0FDRjs7QUFFRCxTQUFTLGNBQWMsQ0FBQyx5QkFBeUIsRUFBRSxZQUFZLEVBQUU7QUFDL0QsTUFBSSx5QkFBeUIsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEtBQUssU0FBUyxFQUFFO0FBQ25FLFdBQU8seUJBQXlCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxLQUFLLElBQUksQ0FBQztHQUNuRTtBQUNELE1BQUkseUJBQXlCLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTtBQUN4RCxXQUFPLHlCQUF5QixDQUFDLFlBQVksQ0FBQztHQUMvQztBQUNELGdDQUE4QixDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQzdDLFNBQU8sS0FBSyxDQUFDO0NBQ2Q7O0FBRUQsU0FBUyw4QkFBOEIsQ0FBQyxZQUFZLEVBQUU7QUFDcEQsTUFBSSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLEVBQUU7QUFDM0Msb0JBQWdCLENBQUMsWUFBWSxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBQ3RDLFVBQU0sQ0FBQyxHQUFHLENBQ1IsT0FBTyxFQUNQLGlFQUErRCxZQUFZLG9JQUNILG9IQUMyQyxDQUNwSCxDQUFDO0dBQ0g7Q0FDRjs7QUFFTSxTQUFTLHFCQUFxQixHQUFHO0FBQ3RDLFFBQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQSxZQUFZLEVBQUk7QUFDcEQsV0FBTyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztHQUN2QyxDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJwcm90by1hY2Nlc3MuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVOZXdMb29rdXBPYmplY3QgfSBmcm9tICcuL2NyZWF0ZS1uZXctbG9va3VwLW9iamVjdCc7XG5pbXBvcnQgKiBhcyBsb2dnZXIgZnJvbSAnLi4vbG9nZ2VyJztcblxuY29uc3QgbG9nZ2VkUHJvcGVydGllcyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm90b0FjY2Vzc0NvbnRyb2wocnVudGltZU9wdGlvbnMpIHtcbiAgbGV0IGRlZmF1bHRNZXRob2RXaGl0ZUxpc3QgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBkZWZhdWx0TWV0aG9kV2hpdGVMaXN0Wydjb25zdHJ1Y3RvciddID0gZmFsc2U7XG4gIGRlZmF1bHRNZXRob2RXaGl0ZUxpc3RbJ19fZGVmaW5lR2V0dGVyX18nXSA9IGZhbHNlO1xuICBkZWZhdWx0TWV0aG9kV2hpdGVMaXN0WydfX2RlZmluZVNldHRlcl9fJ10gPSBmYWxzZTtcbiAgZGVmYXVsdE1ldGhvZFdoaXRlTGlzdFsnX19sb29rdXBHZXR0ZXJfXyddID0gZmFsc2U7XG5cbiAgbGV0IGRlZmF1bHRQcm9wZXJ0eVdoaXRlTGlzdCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wcm90b1xuICBkZWZhdWx0UHJvcGVydHlXaGl0ZUxpc3RbJ19fcHJvdG9fXyddID0gZmFsc2U7XG5cbiAgcmV0dXJuIHtcbiAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICB3aGl0ZWxpc3Q6IGNyZWF0ZU5ld0xvb2t1cE9iamVjdChcbiAgICAgICAgZGVmYXVsdFByb3BlcnR5V2hpdGVMaXN0LFxuICAgICAgICBydW50aW1lT3B0aW9ucy5hbGxvd2VkUHJvdG9Qcm9wZXJ0aWVzXG4gICAgICApLFxuICAgICAgZGVmYXVsdFZhbHVlOiBydW50aW1lT3B0aW9ucy5hbGxvd1Byb3RvUHJvcGVydGllc0J5RGVmYXVsdFxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgd2hpdGVsaXN0OiBjcmVhdGVOZXdMb29rdXBPYmplY3QoXG4gICAgICAgIGRlZmF1bHRNZXRob2RXaGl0ZUxpc3QsXG4gICAgICAgIHJ1bnRpbWVPcHRpb25zLmFsbG93ZWRQcm90b01ldGhvZHNcbiAgICAgICksXG4gICAgICBkZWZhdWx0VmFsdWU6IHJ1bnRpbWVPcHRpb25zLmFsbG93UHJvdG9NZXRob2RzQnlEZWZhdWx0XG4gICAgfVxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzdWx0SXNBbGxvd2VkKHJlc3VsdCwgcHJvdG9BY2Nlc3NDb250cm9sLCBwcm9wZXJ0eU5hbWUpIHtcbiAgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gY2hlY2tXaGl0ZUxpc3QocHJvdG9BY2Nlc3NDb250cm9sLm1ldGhvZHMsIHByb3BlcnR5TmFtZSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGNoZWNrV2hpdGVMaXN0KHByb3RvQWNjZXNzQ29udHJvbC5wcm9wZXJ0aWVzLCBwcm9wZXJ0eU5hbWUpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNoZWNrV2hpdGVMaXN0KHByb3RvQWNjZXNzQ29udHJvbEZvclR5cGUsIHByb3BlcnR5TmFtZSkge1xuICBpZiAocHJvdG9BY2Nlc3NDb250cm9sRm9yVHlwZS53aGl0ZWxpc3RbcHJvcGVydHlOYW1lXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHByb3RvQWNjZXNzQ29udHJvbEZvclR5cGUud2hpdGVsaXN0W3Byb3BlcnR5TmFtZV0gPT09IHRydWU7XG4gIH1cbiAgaWYgKHByb3RvQWNjZXNzQ29udHJvbEZvclR5cGUuZGVmYXVsdFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gcHJvdG9BY2Nlc3NDb250cm9sRm9yVHlwZS5kZWZhdWx0VmFsdWU7XG4gIH1cbiAgbG9nVW5leHBlY2VkUHJvcGVydHlBY2Nlc3NPbmNlKHByb3BlcnR5TmFtZSk7XG4gIHJldHVybiBmYWxzZTtcbn1cblxuZnVuY3Rpb24gbG9nVW5leHBlY2VkUHJvcGVydHlBY2Nlc3NPbmNlKHByb3BlcnR5TmFtZSkge1xuICBpZiAobG9nZ2VkUHJvcGVydGllc1twcm9wZXJ0eU5hbWVdICE9PSB0cnVlKSB7XG4gICAgbG9nZ2VkUHJvcGVydGllc1twcm9wZXJ0eU5hbWVdID0gdHJ1ZTtcbiAgICBsb2dnZXIubG9nKFxuICAgICAgJ2Vycm9yJyxcbiAgICAgIGBIYW5kbGViYXJzOiBBY2Nlc3MgaGFzIGJlZW4gZGVuaWVkIHRvIHJlc29sdmUgdGhlIHByb3BlcnR5IFwiJHtwcm9wZXJ0eU5hbWV9XCIgYmVjYXVzZSBpdCBpcyBub3QgYW4gXCJvd24gcHJvcGVydHlcIiBvZiBpdHMgcGFyZW50LlxcbmAgK1xuICAgICAgICBgWW91IGNhbiBhZGQgYSBydW50aW1lIG9wdGlvbiB0byBkaXNhYmxlIHRoZSBjaGVjayBvciB0aGlzIHdhcm5pbmc6XFxuYCArXG4gICAgICAgIGBTZWUgaHR0cHM6Ly9oYW5kbGViYXJzanMuY29tL2FwaS1yZWZlcmVuY2UvcnVudGltZS1vcHRpb25zLmh0bWwjb3B0aW9ucy10by1jb250cm9sLXByb3RvdHlwZS1hY2Nlc3MgZm9yIGRldGFpbHNgXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzZXRMb2dnZWRQcm9wZXJ0aWVzKCkge1xuICBPYmplY3Qua2V5cyhsb2dnZWRQcm9wZXJ0aWVzKS5mb3JFYWNoKHByb3BlcnR5TmFtZSA9PiB7XG4gICAgZGVsZXRlIGxvZ2dlZFByb3BlcnRpZXNbcHJvcGVydHlOYW1lXTtcbiAgfSk7XG59XG4iXX0=\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var af = moment.defineLocale('af', {\n months : 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split('_'),\n monthsShort : 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'),\n weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n meridiemParse: /vm|nm/i,\n isPM : function (input) {\n return /^nm$/i.test(input);\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'vm' : 'VM';\n } else {\n return isLower ? 'nm' : 'NM';\n }\n },\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Vandag om] LT',\n nextDay : '[Môre om] LT',\n nextWeek : 'dddd [om] LT',\n lastDay : '[Gister om] LT',\n lastWeek : '[Laas] dddd [om] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'oor %s',\n past : '%s gelede',\n s : '\\'n paar sekondes',\n ss : '%d sekondes',\n m : '\\'n minuut',\n mm : '%d minute',\n h : '\\'n uur',\n hh : '%d ure',\n d : '\\'n dag',\n dd : '%d dae',\n M : '\\'n maand',\n MM : '%d maande',\n y : '\\'n jaar',\n yy : '%d jaar'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris Röling : https://github.com/jjupiter\n },\n week : {\n dow : 1, // Maandag is die eerste dag van die week.\n doy : 4 // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n }\n });\n\n return af;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '١',\n '2': '٢',\n '3': '٣',\n '4': '٤',\n '5': '٥',\n '6': '٦',\n '7': '٧',\n '8': '٨',\n '9': '٩',\n '0': '٠'\n }, numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0'\n }, pluralForm = function (n) {\n return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;\n }, plurals = {\n s : ['أقل من ثانية', 'ثانية واحدة', ['ثانيتان', 'ثانيتين'], '%d ثوان', '%d ثانية', '%d ثانية'],\n m : ['أقل من دقيقة', 'دقيقة واحدة', ['دقيقتان', 'دقيقتين'], '%d دقائق', '%d دقيقة', '%d دقيقة'],\n h : ['أقل من ساعة', 'ساعة واحدة', ['ساعتان', 'ساعتين'], '%d ساعات', '%d ساعة', '%d ساعة'],\n d : ['أقل من يوم', 'يوم واحد', ['يومان', 'يومين'], '%d أيام', '%d يومًا', '%d يوم'],\n M : ['أقل من شهر', 'شهر واحد', ['شهران', 'شهرين'], '%d أشهر', '%d شهرا', '%d شهر'],\n y : ['أقل من عام', 'عام واحد', ['عامان', 'عامين'], '%d أعوام', '%d عامًا', '%d عام']\n }, pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n }, months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر'\n ];\n\n var ar = moment.defineLocale('ar', {\n months : months,\n monthsShort : months,\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'D/\\u200FM/\\u200FYYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ص|م/,\n isPM : function (input) {\n return 'م' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar : {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'بعد %s',\n past : 'منذ %s',\n s : pluralize('s'),\n ss : pluralize('s'),\n m : pluralize('m'),\n mm : pluralize('m'),\n h : pluralize('h'),\n hh : pluralize('h'),\n d : pluralize('d'),\n dd : pluralize('d'),\n M : pluralize('M'),\n MM : pluralize('M'),\n y : pluralize('y'),\n yy : pluralize('y')\n },\n preparse: function (string) {\n return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return ar;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arDz = moment.defineLocale('ar-dz', {\n months : 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n monthsShort : 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'أح_إث_ثلا_أر_خم_جم_سب'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return arDz;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arKw = moment.defineLocale('ar-kw', {\n months : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n monthsShort : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n weekdays : 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return arKw;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n '0': '0'\n }, pluralForm = function (n) {\n return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;\n }, plurals = {\n s : ['أقل من ثانية', 'ثانية واحدة', ['ثانيتان', 'ثانيتين'], '%d ثوان', '%d ثانية', '%d ثانية'],\n m : ['أقل من دقيقة', 'دقيقة واحدة', ['دقيقتان', 'دقيقتين'], '%d دقائق', '%d دقيقة', '%d دقيقة'],\n h : ['أقل من ساعة', 'ساعة واحدة', ['ساعتان', 'ساعتين'], '%d ساعات', '%d ساعة', '%d ساعة'],\n d : ['أقل من يوم', 'يوم واحد', ['يومان', 'يومين'], '%d أيام', '%d يومًا', '%d يوم'],\n M : ['أقل من شهر', 'شهر واحد', ['شهران', 'شهرين'], '%d أشهر', '%d شهرا', '%d شهر'],\n y : ['أقل من عام', 'عام واحد', ['عامان', 'عامين'], '%d أعوام', '%d عامًا', '%d عام']\n }, pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n }, months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر'\n ];\n\n var arLy = moment.defineLocale('ar-ly', {\n months : months,\n monthsShort : months,\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'D/\\u200FM/\\u200FYYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ص|م/,\n isPM : function (input) {\n return 'م' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar : {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'بعد %s',\n past : 'منذ %s',\n s : pluralize('s'),\n ss : pluralize('s'),\n m : pluralize('m'),\n mm : pluralize('m'),\n h : pluralize('h'),\n hh : pluralize('h'),\n d : pluralize('d'),\n dd : pluralize('d'),\n M : pluralize('M'),\n MM : pluralize('M'),\n y : pluralize('y'),\n yy : pluralize('y')\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return arLy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arMa = moment.defineLocale('ar-ma', {\n months : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n monthsShort : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n weekdays : 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return arMa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '١',\n '2': '٢',\n '3': '٣',\n '4': '٤',\n '5': '٥',\n '6': '٦',\n '7': '٧',\n '8': '٨',\n '9': '٩',\n '0': '٠'\n }, numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0'\n };\n\n var arSa = moment.defineLocale('ar-sa', {\n months : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n monthsShort : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ص|م/,\n isPM : function (input) {\n return 'م' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n preparse: function (string) {\n return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return arSa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arTn = moment.defineLocale('ar-tn', {\n months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss : '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات'\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return arTn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 1: '-inci',\n 5: '-inci',\n 8: '-inci',\n 70: '-inci',\n 80: '-inci',\n 2: '-nci',\n 7: '-nci',\n 20: '-nci',\n 50: '-nci',\n 3: '-üncü',\n 4: '-üncü',\n 100: '-üncü',\n 6: '-ncı',\n 9: '-uncu',\n 10: '-uncu',\n 30: '-uncu',\n 60: '-ıncı',\n 90: '-ıncı'\n };\n\n var az = moment.defineLocale('az', {\n months : 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split('_'),\n monthsShort : 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n weekdays : 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split('_'),\n weekdaysShort : 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),\n weekdaysMin : 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[bugün saat] LT',\n nextDay : '[sabah saat] LT',\n nextWeek : '[gələn həftə] dddd [saat] LT',\n lastDay : '[dünən] LT',\n lastWeek : '[keçən həftə] dddd [saat] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s sonra',\n past : '%s əvvəl',\n s : 'birneçə saniyə',\n ss : '%d saniyə',\n m : 'bir dəqiqə',\n mm : '%d dəqiqə',\n h : 'bir saat',\n hh : '%d saat',\n d : 'bir gün',\n dd : '%d gün',\n M : 'bir ay',\n MM : '%d ay',\n y : 'bir il',\n yy : '%d il'\n },\n meridiemParse: /gecə|səhər|gündüz|axşam/,\n isPM : function (input) {\n return /^(gündüz|axşam)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'gecə';\n } else if (hour < 12) {\n return 'səhər';\n } else if (hour < 17) {\n return 'gündüz';\n } else {\n return 'axşam';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,\n ordinal : function (number) {\n if (number === 0) { // special case for zero\n return number + '-ıncı';\n }\n var a = number % 10,\n b = number % 100 - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return az;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n 'mm': withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',\n 'hh': withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',\n 'dd': 'дзень_дні_дзён',\n 'MM': 'месяц_месяцы_месяцаў',\n 'yy': 'год_гады_гадоў'\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвіліна' : 'хвіліну';\n }\n else if (key === 'h') {\n return withoutSuffix ? 'гадзіна' : 'гадзіну';\n }\n else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n\n var be = moment.defineLocale('be', {\n months : {\n format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split('_'),\n standalone: 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split('_')\n },\n monthsShort : 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),\n weekdays : {\n format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split('_'),\n standalone: 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split('_'),\n isFormat: /\\[ ?[Ууў] ?(?:мінулую|наступную)? ?\\] ?dddd/\n },\n weekdaysShort : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n weekdaysMin : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY г.',\n LLL : 'D MMMM YYYY г., HH:mm',\n LLLL : 'dddd, D MMMM YYYY г., HH:mm'\n },\n calendar : {\n sameDay: '[Сёння ў] LT',\n nextDay: '[Заўтра ў] LT',\n lastDay: '[Учора ў] LT',\n nextWeek: function () {\n return '[У] dddd [ў] LT';\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return '[У мінулую] dddd [ў] LT';\n case 1:\n case 2:\n case 4:\n return '[У мінулы] dddd [ў] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'праз %s',\n past : '%s таму',\n s : 'некалькі секунд',\n m : relativeTimeWithPlural,\n mm : relativeTimeWithPlural,\n h : relativeTimeWithPlural,\n hh : relativeTimeWithPlural,\n d : 'дзень',\n dd : relativeTimeWithPlural,\n M : 'месяц',\n MM : relativeTimeWithPlural,\n y : 'год',\n yy : relativeTimeWithPlural\n },\n meridiemParse: /ночы|раніцы|дня|вечара/,\n isPM : function (input) {\n return /^(дня|вечара)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночы';\n } else if (hour < 12) {\n return 'раніцы';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечара';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(і|ы|га)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return (number % 10 === 2 || number % 10 === 3) && (number % 100 !== 12 && number % 100 !== 13) ? number + '-і' : number + '-ы';\n case 'D':\n return number + '-га';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return be;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var bg = moment.defineLocale('bg', {\n months : 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split('_'),\n monthsShort : 'янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),\n weekdays : 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split('_'),\n weekdaysShort : 'нед_пон_вто_сря_чет_пет_съб'.split('_'),\n weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'D.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY H:mm',\n LLLL : 'dddd, D MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[Днес в] LT',\n nextDay : '[Утре в] LT',\n nextWeek : 'dddd [в] LT',\n lastDay : '[Вчера в] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[В изминалата] dddd [в] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[В изминалия] dddd [в] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'след %s',\n past : 'преди %s',\n s : 'няколко секунди',\n ss : '%d секунди',\n m : 'минута',\n mm : '%d минути',\n h : 'час',\n hh : '%d часа',\n d : 'ден',\n dd : '%d дни',\n M : 'месец',\n MM : '%d месеца',\n y : 'година',\n yy : '%d години'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal : function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return bg;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var bm = moment.defineLocale('bm', {\n months : 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split('_'),\n monthsShort : 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'),\n weekdays : 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),\n weekdaysShort : 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'),\n weekdaysMin : 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'MMMM [tile] D [san] YYYY',\n LLL : 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n LLLL : 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm'\n },\n calendar : {\n sameDay : '[Bi lɛrɛ] LT',\n nextDay : '[Sini lɛrɛ] LT',\n nextWeek : 'dddd [don lɛrɛ] LT',\n lastDay : '[Kunu lɛrɛ] LT',\n lastWeek : 'dddd [tɛmɛnen lɛrɛ] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s kɔnɔ',\n past : 'a bɛ %s bɔ',\n s : 'sanga dama dama',\n ss : 'sekondi %d',\n m : 'miniti kelen',\n mm : 'miniti %d',\n h : 'lɛrɛ kelen',\n hh : 'lɛrɛ %d',\n d : 'tile kelen',\n dd : 'tile %d',\n M : 'kalo kelen',\n MM : 'kalo %d',\n y : 'san kelen',\n yy : 'san %d'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return bm;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '১',\n '2': '২',\n '3': '৩',\n '4': '৪',\n '5': '৫',\n '6': '৬',\n '7': '৭',\n '8': '৮',\n '9': '৯',\n '0': '০'\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0'\n };\n\n var bn = moment.defineLocale('bn', {\n months : 'জানুয়ারী_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split('_'),\n monthsShort : 'জানু_ফেব_মার্চ_এপ্র_মে_জুন_জুল_আগ_সেপ্ট_অক্টো_নভে_ডিসে'.split('_'),\n weekdays : 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split('_'),\n weekdaysShort : 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin : 'রবি_সোম_মঙ্গ_বুধ_বৃহঃ_শুক্র_শনি'.split('_'),\n longDateFormat : {\n LT : 'A h:mm সময়',\n LTS : 'A h:mm:ss সময়',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm সময়',\n LLLL : 'dddd, D MMMM YYYY, A h:mm সময়'\n },\n calendar : {\n sameDay : '[আজ] LT',\n nextDay : '[আগামীকাল] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[গতকাল] LT',\n lastWeek : '[গত] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s পরে',\n past : '%s আগে',\n s : 'কয়েক সেকেন্ড',\n ss : '%d সেকেন্ড',\n m : 'এক মিনিট',\n mm : '%d মিনিট',\n h : 'এক ঘন্টা',\n hh : '%d ঘন্টা',\n d : 'এক দিন',\n dd : '%d দিন',\n M : 'এক মাস',\n MM : '%d মাস',\n y : 'এক বছর',\n yy : '%d বছর'\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if ((meridiem === 'রাত' && hour >= 4) ||\n (meridiem === 'দুপুর' && hour < 5) ||\n meridiem === 'বিকাল') {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 10) {\n return 'সকাল';\n } else if (hour < 17) {\n return 'দুপুর';\n } else if (hour < 20) {\n return 'বিকাল';\n } else {\n return 'রাত';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return bn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '༡',\n '2': '༢',\n '3': '༣',\n '4': '༤',\n '5': '༥',\n '6': '༦',\n '7': '༧',\n '8': '༨',\n '9': '༩',\n '0': '༠'\n },\n numberMap = {\n '༡': '1',\n '༢': '2',\n '༣': '3',\n '༤': '4',\n '༥': '5',\n '༦': '6',\n '༧': '7',\n '༨': '8',\n '༩': '9',\n '༠': '0'\n };\n\n var bo = moment.defineLocale('bo', {\n months : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),\n monthsShort : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),\n weekdays : 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split('_'),\n weekdaysShort : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),\n weekdaysMin : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm',\n LLLL : 'dddd, D MMMM YYYY, A h:mm'\n },\n calendar : {\n sameDay : '[དི་རིང] LT',\n nextDay : '[སང་ཉིན] LT',\n nextWeek : '[བདུན་ཕྲག་རྗེས་མ], LT',\n lastDay : '[ཁ་སང] LT',\n lastWeek : '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ལ་',\n past : '%s སྔན་ལ',\n s : 'ལམ་སང',\n ss : '%d སྐར་ཆ།',\n m : 'སྐར་མ་གཅིག',\n mm : '%d སྐར་མ',\n h : 'ཆུ་ཚོད་གཅིག',\n hh : '%d ཆུ་ཚོད',\n d : 'ཉིན་གཅིག',\n dd : '%d ཉིན་',\n M : 'ཟླ་བ་གཅིག',\n MM : '%d ཟླ་བ',\n y : 'ལོ་གཅིག',\n yy : '%d ལོ'\n },\n preparse: function (string) {\n return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if ((meridiem === 'མཚན་མོ' && hour >= 4) ||\n (meridiem === 'ཉིན་གུང' && hour < 5) ||\n meridiem === 'དགོང་དག') {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'མཚན་མོ';\n } else if (hour < 10) {\n return 'ཞོགས་ཀས';\n } else if (hour < 17) {\n return 'ཉིན་གུང';\n } else if (hour < 20) {\n return 'དགོང་དག';\n } else {\n return 'མཚན་མོ';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return bo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function relativeTimeWithMutation(number, withoutSuffix, key) {\n var format = {\n 'mm': 'munutenn',\n 'MM': 'miz',\n 'dd': 'devezh'\n };\n return number + ' ' + mutation(format[key], number);\n }\n function specialMutationForYears(number) {\n switch (lastNumber(number)) {\n case 1:\n case 3:\n case 4:\n case 5:\n case 9:\n return number + ' bloaz';\n default:\n return number + ' vloaz';\n }\n }\n function lastNumber(number) {\n if (number > 9) {\n return lastNumber(number % 10);\n }\n return number;\n }\n function mutation(text, number) {\n if (number === 2) {\n return softMutation(text);\n }\n return text;\n }\n function softMutation(text) {\n var mutationTable = {\n 'm': 'v',\n 'b': 'v',\n 'd': 'z'\n };\n if (mutationTable[text.charAt(0)] === undefined) {\n return text;\n }\n return mutationTable[text.charAt(0)] + text.substring(1);\n }\n\n var br = moment.defineLocale('br', {\n months : 'Genver_C\\'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split('_'),\n monthsShort : 'Gen_C\\'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n weekdays : 'Sul_Lun_Meurzh_Merc\\'her_Yaou_Gwener_Sadorn'.split('_'),\n weekdaysShort : 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h[e]mm A',\n LTS : 'h[e]mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D [a viz] MMMM YYYY',\n LLL : 'D [a viz] MMMM YYYY h[e]mm A',\n LLLL : 'dddd, D [a viz] MMMM YYYY h[e]mm A'\n },\n calendar : {\n sameDay : '[Hiziv da] LT',\n nextDay : '[Warc\\'hoazh da] LT',\n nextWeek : 'dddd [da] LT',\n lastDay : '[Dec\\'h da] LT',\n lastWeek : 'dddd [paset da] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'a-benn %s',\n past : '%s \\'zo',\n s : 'un nebeud segondennoù',\n ss : '%d eilenn',\n m : 'ur vunutenn',\n mm : relativeTimeWithMutation,\n h : 'un eur',\n hh : '%d eur',\n d : 'un devezh',\n dd : relativeTimeWithMutation,\n M : 'ur miz',\n MM : relativeTimeWithMutation,\n y : 'ur bloaz',\n yy : specialMutationForYears\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(añ|vet)/,\n ordinal : function (number) {\n var output = (number === 1) ? 'añ' : 'vet';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return br;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var bs = moment.defineLocale('bs', {\n months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'),\n monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),\n weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[danas u] LT',\n nextDay : '[sutra u] LT',\n nextWeek : function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[jučer u] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'prije %s',\n s : 'par sekundi',\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : 'dan',\n dd : translate,\n M : 'mjesec',\n MM : translate,\n y : 'godinu',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return bs;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ca = moment.defineLocale('ca', {\n months : {\n standalone: 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split('_'),\n format: 'de gener_de febrer_de març_d\\'abril_de maig_de juny_de juliol_d\\'agost_de setembre_d\\'octubre_de novembre_de desembre'.split('_'),\n isFormat: /D[oD]?(\\s)+MMMM/\n },\n monthsShort : 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split('_'),\n monthsParseExact : true,\n weekdays : 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split('_'),\n weekdaysShort : 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n weekdaysMin : 'dg_dl_dt_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM [de] YYYY',\n ll : 'D MMM YYYY',\n LLL : 'D MMMM [de] YYYY [a les] H:mm',\n lll : 'D MMM YYYY, H:mm',\n LLLL : 'dddd D MMMM [de] YYYY [a les] H:mm',\n llll : 'ddd D MMM YYYY, H:mm'\n },\n calendar : {\n sameDay : function () {\n return '[avui a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n nextDay : function () {\n return '[demà a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n lastDay : function () {\n return '[ahir a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [passat a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'd\\'aquí %s',\n past : 'fa %s',\n s : 'uns segons',\n ss : '%d segons',\n m : 'un minut',\n mm : '%d minuts',\n h : 'una hora',\n hh : '%d hores',\n d : 'un dia',\n dd : '%d dies',\n M : 'un mes',\n MM : '%d mesos',\n y : 'un any',\n yy : '%d anys'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal : function (number, period) {\n var output = (number === 1) ? 'r' :\n (number === 2) ? 'n' :\n (number === 3) ? 'r' :\n (number === 4) ? 't' : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ca;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split('_'),\n monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_');\n\n var monthsParse = [/^led/i, /^úno/i, /^bře/i, /^dub/i, /^kvě/i, /^(čvn|červen$|června)/i, /^(čvc|červenec|července)/i, /^srp/i, /^zář/i, /^říj/i, /^lis/i, /^pro/i];\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n var monthsRegex = /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;\n\n function plural(n) {\n return (n > 1) && (n < 5) && (~~(n / 10) !== 1);\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return (withoutSuffix || isFuture) ? 'pár sekund' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekund');\n } else {\n return result + 'sekundami';\n }\n break;\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minuta' : (isFuture ? 'minutu' : 'minutou');\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minuty' : 'minut');\n } else {\n return result + 'minutami';\n }\n break;\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodin');\n } else {\n return result + 'hodinami';\n }\n break;\n case 'd': // a day / in a day / a day ago\n return (withoutSuffix || isFuture) ? 'den' : 'dnem';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dny' : 'dní');\n } else {\n return result + 'dny';\n }\n break;\n case 'M': // a month / in a month / a month ago\n return (withoutSuffix || isFuture) ? 'měsíc' : 'měsícem';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'měsíce' : 'měsíců');\n } else {\n return result + 'měsíci';\n }\n break;\n case 'y': // a year / in a year / a year ago\n return (withoutSuffix || isFuture) ? 'rok' : 'rokem';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'let');\n } else {\n return result + 'lety';\n }\n break;\n }\n }\n\n var cs = moment.defineLocale('cs', {\n months : months,\n monthsShort : monthsShort,\n monthsRegex : monthsRegex,\n monthsShortRegex : monthsRegex,\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsStrictRegex : /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,\n monthsShortStrictRegex : /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n weekdays : 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),\n weekdaysShort : 'ne_po_út_st_čt_pá_so'.split('_'),\n weekdaysMin : 'ne_po_út_st_čt_pá_so'.split('_'),\n longDateFormat : {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd D. MMMM YYYY H:mm',\n l : 'D. M. YYYY'\n },\n calendar : {\n sameDay: '[dnes v] LT',\n nextDay: '[zítra v] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v neděli v] LT';\n case 1:\n case 2:\n return '[v] dddd [v] LT';\n case 3:\n return '[ve středu v] LT';\n case 4:\n return '[ve čtvrtek v] LT';\n case 5:\n return '[v pátek v] LT';\n case 6:\n return '[v sobotu v] LT';\n }\n },\n lastDay: '[včera v] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulou neděli v] LT';\n case 1:\n case 2:\n return '[minulé] dddd [v] LT';\n case 3:\n return '[minulou středu v] LT';\n case 4:\n case 5:\n return '[minulý] dddd [v] LT';\n case 6:\n return '[minulou sobotu v] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'před %s',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse : /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return cs;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var cv = moment.defineLocale('cv', {\n months : 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split('_'),\n monthsShort : 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),\n weekdays : 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split('_'),\n weekdaysShort : 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),\n weekdaysMin : 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD-MM-YYYY',\n LL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',\n LLL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n LLLL : 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm'\n },\n calendar : {\n sameDay: '[Паян] LT [сехетре]',\n nextDay: '[Ыран] LT [сехетре]',\n lastDay: '[Ӗнер] LT [сехетре]',\n nextWeek: '[Ҫитес] dddd LT [сехетре]',\n lastWeek: '[Иртнӗ] dddd LT [сехетре]',\n sameElse: 'L'\n },\n relativeTime : {\n future : function (output) {\n var affix = /сехет$/i.exec(output) ? 'рен' : /ҫул$/i.exec(output) ? 'тан' : 'ран';\n return output + affix;\n },\n past : '%s каялла',\n s : 'пӗр-ик ҫеккунт',\n ss : '%d ҫеккунт',\n m : 'пӗр минут',\n mm : '%d минут',\n h : 'пӗр сехет',\n hh : '%d сехет',\n d : 'пӗр кун',\n dd : '%d кун',\n M : 'пӗр уйӑх',\n MM : '%d уйӑх',\n y : 'пӗр ҫул',\n yy : '%d ҫул'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-мӗш/,\n ordinal : '%d-мӗш',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return cv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var cy = moment.defineLocale('cy', {\n months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split('_'),\n monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split('_'),\n weekdays: 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split('_'),\n weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n weekdaysParseExact : true,\n // time formats are the same as en-gb\n longDateFormat: {\n LT: 'HH:mm',\n LTS : 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[Heddiw am] LT',\n nextDay: '[Yfory am] LT',\n nextWeek: 'dddd [am] LT',\n lastDay: '[Ddoe am] LT',\n lastWeek: 'dddd [diwethaf am] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'mewn %s',\n past: '%s yn ôl',\n s: 'ychydig eiliadau',\n ss: '%d eiliad',\n m: 'munud',\n mm: '%d munud',\n h: 'awr',\n hh: '%d awr',\n d: 'diwrnod',\n dd: '%d diwrnod',\n M: 'mis',\n MM: '%d mis',\n y: 'blwyddyn',\n yy: '%d flynedd'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n ordinal: function (number) {\n var b = number,\n output = '',\n lookup = [\n '', 'af', 'il', 'ydd', 'ydd', 'ed', 'ed', 'ed', 'fed', 'fed', 'fed', // 1af to 10fed\n 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'fed' // 11eg to 20fed\n ];\n if (b > 20) {\n if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n output = 'fed'; // not 30ain, 70ain or 90ain\n } else {\n output = 'ain';\n }\n } else if (b > 0) {\n output = lookup[b];\n }\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return cy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var da = moment.defineLocale('da', {\n months : 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort : 'søn_man_tir_ons_tor_fre_lør'.split('_'),\n weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd [d.] D. MMMM YYYY [kl.] HH:mm'\n },\n calendar : {\n sameDay : '[i dag kl.] LT',\n nextDay : '[i morgen kl.] LT',\n nextWeek : 'på dddd [kl.] LT',\n lastDay : '[i går kl.] LT',\n lastWeek : '[i] dddd[s kl.] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : '%s siden',\n s : 'få sekunder',\n ss : '%d sekunder',\n m : 'et minut',\n mm : '%d minutter',\n h : 'en time',\n hh : '%d timer',\n d : 'en dag',\n dd : '%d dage',\n M : 'en måned',\n MM : '%d måneder',\n y : 'et år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return da;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eine Minute', 'einer Minute'],\n 'h': ['eine Stunde', 'einer Stunde'],\n 'd': ['ein Tag', 'einem Tag'],\n 'dd': [number + ' Tage', number + ' Tagen'],\n 'M': ['ein Monat', 'einem Monat'],\n 'MM': [number + ' Monate', number + ' Monaten'],\n 'y': ['ein Jahr', 'einem Jahr'],\n 'yy': [number + ' Jahre', number + ' Jahren']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var de = moment.defineLocale('de', {\n months : 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort : 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd, D. MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]'\n },\n relativeTime : {\n future : 'in %s',\n past : 'vor %s',\n s : 'ein paar Sekunden',\n ss : '%d Sekunden',\n m : processRelativeTime,\n mm : '%d Minuten',\n h : processRelativeTime,\n hh : '%d Stunden',\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return de;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eine Minute', 'einer Minute'],\n 'h': ['eine Stunde', 'einer Stunde'],\n 'd': ['ein Tag', 'einem Tag'],\n 'dd': [number + ' Tage', number + ' Tagen'],\n 'M': ['ein Monat', 'einem Monat'],\n 'MM': [number + ' Monate', number + ' Monaten'],\n 'y': ['ein Jahr', 'einem Jahr'],\n 'yy': [number + ' Jahre', number + ' Jahren']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deAt = moment.defineLocale('de-at', {\n months : 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort : 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd, D. MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]'\n },\n relativeTime : {\n future : 'in %s',\n past : 'vor %s',\n s : 'ein paar Sekunden',\n ss : '%d Sekunden',\n m : processRelativeTime,\n mm : '%d Minuten',\n h : processRelativeTime,\n hh : '%d Stunden',\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return deAt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eine Minute', 'einer Minute'],\n 'h': ['eine Stunde', 'einer Stunde'],\n 'd': ['ein Tag', 'einem Tag'],\n 'dd': [number + ' Tage', number + ' Tagen'],\n 'M': ['ein Monat', 'einem Monat'],\n 'MM': [number + ' Monate', number + ' Monaten'],\n 'y': ['ein Jahr', 'einem Jahr'],\n 'yy': [number + ' Jahre', number + ' Jahren']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deCh = moment.defineLocale('de-ch', {\n months : 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort : 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n weekdaysShort : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd, D. MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]'\n },\n relativeTime : {\n future : 'in %s',\n past : 'vor %s',\n s : 'ein paar Sekunden',\n ss : '%d Sekunden',\n m : processRelativeTime,\n mm : '%d Minuten',\n h : processRelativeTime,\n hh : '%d Stunden',\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return deCh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'ޖެނުއަރީ',\n 'ފެބްރުއަރީ',\n 'މާރިޗު',\n 'އޭޕްރީލު',\n 'މޭ',\n 'ޖޫން',\n 'ޖުލައި',\n 'އޯގަސްޓު',\n 'ސެޕްޓެމްބަރު',\n 'އޮކްޓޯބަރު',\n 'ނޮވެމްބަރު',\n 'ޑިސެމްބަރު'\n ], weekdays = [\n 'އާދިއްތަ',\n 'ހޯމަ',\n 'އަންގާރަ',\n 'ބުދަ',\n 'ބުރާސްފަތި',\n 'ހުކުރު',\n 'ހޮނިހިރު'\n ];\n\n var dv = moment.defineLocale('dv', {\n months : months,\n monthsShort : months,\n weekdays : weekdays,\n weekdaysShort : weekdays,\n weekdaysMin : 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'),\n longDateFormat : {\n\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'D/M/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /މކ|މފ/,\n isPM : function (input) {\n return 'މފ' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'މކ';\n } else {\n return 'މފ';\n }\n },\n calendar : {\n sameDay : '[މިއަދު] LT',\n nextDay : '[މާދަމާ] LT',\n nextWeek : 'dddd LT',\n lastDay : '[އިއްޔެ] LT',\n lastWeek : '[ފާއިތުވި] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ތެރޭގައި %s',\n past : 'ކުރިން %s',\n s : 'ސިކުންތުކޮޅެއް',\n ss : 'd% ސިކުންތު',\n m : 'މިނިޓެއް',\n mm : 'މިނިޓު %d',\n h : 'ގަޑިއިރެއް',\n hh : 'ގަޑިއިރު %d',\n d : 'ދުވަހެއް',\n dd : 'ދުވަސް %d',\n M : 'މަހެއް',\n MM : 'މަސް %d',\n y : 'އަހަރެއް',\n yy : 'އަހަރު %d'\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week : {\n dow : 7, // Sunday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return dv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n function isFunction(input) {\n return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';\n }\n\n\n var el = moment.defineLocale('el', {\n monthsNominativeEl : 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split('_'),\n monthsGenitiveEl : 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split('_'),\n months : function (momentToFormat, format) {\n if (!momentToFormat) {\n return this._monthsNominativeEl;\n } else if (typeof format === 'string' && /D/.test(format.substring(0, format.indexOf('MMMM')))) { // if there is a day number before 'MMMM'\n return this._monthsGenitiveEl[momentToFormat.month()];\n } else {\n return this._monthsNominativeEl[momentToFormat.month()];\n }\n },\n monthsShort : 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),\n weekdays : 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split('_'),\n weekdaysShort : 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),\n weekdaysMin : 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'μμ' : 'ΜΜ';\n } else {\n return isLower ? 'πμ' : 'ΠΜ';\n }\n },\n isPM : function (input) {\n return ((input + '').toLowerCase()[0] === 'μ');\n },\n meridiemParse : /[ΠΜ]\\.?Μ?\\.?/i,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendarEl : {\n sameDay : '[Σήμερα {}] LT',\n nextDay : '[Αύριο {}] LT',\n nextWeek : 'dddd [{}] LT',\n lastDay : '[Χθες {}] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 6:\n return '[το προηγούμενο] dddd [{}] LT';\n default:\n return '[την προηγούμενη] dddd [{}] LT';\n }\n },\n sameElse : 'L'\n },\n calendar : function (key, mom) {\n var output = this._calendarEl[key],\n hours = mom && mom.hours();\n if (isFunction(output)) {\n output = output.apply(mom);\n }\n return output.replace('{}', (hours % 12 === 1 ? 'στη' : 'στις'));\n },\n relativeTime : {\n future : 'σε %s',\n past : '%s πριν',\n s : 'λίγα δευτερόλεπτα',\n ss : '%d δευτερόλεπτα',\n m : 'ένα λεπτό',\n mm : '%d λεπτά',\n h : 'μία ώρα',\n hh : '%d ώρες',\n d : 'μία μέρα',\n dd : '%d μέρες',\n M : 'ένας μήνας',\n MM : '%d μήνες',\n y : 'ένας χρόνος',\n yy : '%d χρόνια'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}η/,\n ordinal: '%dη',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4st is the first week of the year.\n }\n });\n\n return el;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enSG = moment.defineLocale('en-SG', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enSG;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enAu = moment.defineLocale('en-au', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enAu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enCa = moment.defineLocale('en-ca', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'YYYY-MM-DD',\n LL : 'MMMM D, YYYY',\n LLL : 'MMMM D, YYYY h:mm A',\n LLLL : 'dddd, MMMM D, YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n });\n\n return enCa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enGb = moment.defineLocale('en-gb', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enGb;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enIe = moment.defineLocale('en-ie', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enIe;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enIl = moment.defineLocale('en-il', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n });\n\n return enIl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enNz = moment.defineLocale('en-nz', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enNz;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var eo = moment.defineLocale('eo', {\n months : 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec'.split('_'),\n weekdays : 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'),\n weekdaysShort : 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'),\n weekdaysMin : 'di_lu_ma_me_ĵa_ve_sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'D[-a de] MMMM, YYYY',\n LLL : 'D[-a de] MMMM, YYYY HH:mm',\n LLLL : 'dddd, [la] D[-a de] MMMM, YYYY HH:mm'\n },\n meridiemParse: /[ap]\\.t\\.m/i,\n isPM: function (input) {\n return input.charAt(0).toLowerCase() === 'p';\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'p.t.m.' : 'P.T.M.';\n } else {\n return isLower ? 'a.t.m.' : 'A.T.M.';\n }\n },\n calendar : {\n sameDay : '[Hodiaŭ je] LT',\n nextDay : '[Morgaŭ je] LT',\n nextWeek : 'dddd [je] LT',\n lastDay : '[Hieraŭ je] LT',\n lastWeek : '[pasinta] dddd [je] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'post %s',\n past : 'antaŭ %s',\n s : 'sekundoj',\n ss : '%d sekundoj',\n m : 'minuto',\n mm : '%d minutoj',\n h : 'horo',\n hh : '%d horoj',\n d : 'tago',//ne 'diurno', ĉar estas uzita por proksimumo\n dd : '%d tagoj',\n M : 'monato',\n MM : '%d monatoj',\n y : 'jaro',\n yy : '%d jaroj'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}a/,\n ordinal : '%da',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return eo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_');\n\n var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i];\n var monthsRegex = /^(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;\n\n var es = moment.defineLocale('es', {\n months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex : monthsRegex,\n monthsShortRegex : monthsRegex,\n monthsStrictRegex : /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex : /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n weekdays : 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY H:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY H:mm'\n },\n calendar : {\n sameDay : function () {\n return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextDay : function () {\n return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastDay : function () {\n return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'en %s',\n past : 'hace %s',\n s : 'unos segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'una hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un año',\n yy : '%d años'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return es;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_');\n\n var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i];\n var monthsRegex = /^(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;\n\n var esDo = moment.defineLocale('es-do', {\n months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays : 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY h:mm A',\n LLLL : 'dddd, D [de] MMMM [de] YYYY h:mm A'\n },\n calendar : {\n sameDay : function () {\n return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextDay : function () {\n return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastDay : function () {\n return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'en %s',\n past : 'hace %s',\n s : 'unos segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'una hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un año',\n yy : '%d años'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return esDo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_');\n\n var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i];\n var monthsRegex = /^(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;\n\n var esUs = moment.defineLocale('es-us', {\n months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays : 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'MM/DD/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY h:mm A',\n LLLL : 'dddd, D [de] MMMM [de] YYYY h:mm A'\n },\n calendar : {\n sameDay : function () {\n return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextDay : function () {\n return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastDay : function () {\n return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'en %s',\n past : 'hace %s',\n s : 'unos segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'una hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un año',\n yy : '%d años'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return esUs;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 's' : ['mõne sekundi', 'mõni sekund', 'paar sekundit'],\n 'ss': [number + 'sekundi', number + 'sekundit'],\n 'm' : ['ühe minuti', 'üks minut'],\n 'mm': [number + ' minuti', number + ' minutit'],\n 'h' : ['ühe tunni', 'tund aega', 'üks tund'],\n 'hh': [number + ' tunni', number + ' tundi'],\n 'd' : ['ühe päeva', 'üks päev'],\n 'M' : ['kuu aja', 'kuu aega', 'üks kuu'],\n 'MM': [number + ' kuu', number + ' kuud'],\n 'y' : ['ühe aasta', 'aasta', 'üks aasta'],\n 'yy': [number + ' aasta', number + ' aastat']\n };\n if (withoutSuffix) {\n return format[key][2] ? format[key][2] : format[key][1];\n }\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var et = moment.defineLocale('et', {\n months : 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split('_'),\n monthsShort : 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),\n weekdays : 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split('_'),\n weekdaysShort : 'P_E_T_K_N_R_L'.split('_'),\n weekdaysMin : 'P_E_T_K_N_R_L'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[Täna,] LT',\n nextDay : '[Homme,] LT',\n nextWeek : '[Järgmine] dddd LT',\n lastDay : '[Eile,] LT',\n lastWeek : '[Eelmine] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s pärast',\n past : '%s tagasi',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : '%d päeva',\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return et;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var eu = moment.defineLocale('eu', {\n months : 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split('_'),\n monthsShort : 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split('_'),\n monthsParseExact : true,\n weekdays : 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split('_'),\n weekdaysShort : 'ig._al._ar._az._og._ol._lr.'.split('_'),\n weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'YYYY[ko] MMMM[ren] D[a]',\n LLL : 'YYYY[ko] MMMM[ren] D[a] HH:mm',\n LLLL : 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',\n l : 'YYYY-M-D',\n ll : 'YYYY[ko] MMM D[a]',\n lll : 'YYYY[ko] MMM D[a] HH:mm',\n llll : 'ddd, YYYY[ko] MMM D[a] HH:mm'\n },\n calendar : {\n sameDay : '[gaur] LT[etan]',\n nextDay : '[bihar] LT[etan]',\n nextWeek : 'dddd LT[etan]',\n lastDay : '[atzo] LT[etan]',\n lastWeek : '[aurreko] dddd LT[etan]',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s barru',\n past : 'duela %s',\n s : 'segundo batzuk',\n ss : '%d segundo',\n m : 'minutu bat',\n mm : '%d minutu',\n h : 'ordu bat',\n hh : '%d ordu',\n d : 'egun bat',\n dd : '%d egun',\n M : 'hilabete bat',\n MM : '%d hilabete',\n y : 'urte bat',\n yy : '%d urte'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return eu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '۱',\n '2': '۲',\n '3': '۳',\n '4': '۴',\n '5': '۵',\n '6': '۶',\n '7': '۷',\n '8': '۸',\n '9': '۹',\n '0': '۰'\n }, numberMap = {\n '۱': '1',\n '۲': '2',\n '۳': '3',\n '۴': '4',\n '۵': '5',\n '۶': '6',\n '۷': '7',\n '۸': '8',\n '۹': '9',\n '۰': '0'\n };\n\n var fa = moment.defineLocale('fa', {\n months : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),\n monthsShort : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),\n weekdays : 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split('_'),\n weekdaysShort : 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split('_'),\n weekdaysMin : 'ی_د_س_چ_پ_ج_ش'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n meridiemParse: /قبل از ظهر|بعد از ظهر/,\n isPM: function (input) {\n return /بعد از ظهر/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'قبل از ظهر';\n } else {\n return 'بعد از ظهر';\n }\n },\n calendar : {\n sameDay : '[امروز ساعت] LT',\n nextDay : '[فردا ساعت] LT',\n nextWeek : 'dddd [ساعت] LT',\n lastDay : '[دیروز ساعت] LT',\n lastWeek : 'dddd [پیش] [ساعت] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'در %s',\n past : '%s پیش',\n s : 'چند ثانیه',\n ss : 'ثانیه d%',\n m : 'یک دقیقه',\n mm : '%d دقیقه',\n h : 'یک ساعت',\n hh : '%d ساعت',\n d : 'یک روز',\n dd : '%d روز',\n M : 'یک ماه',\n MM : '%d ماه',\n y : 'یک سال',\n yy : '%d سال'\n },\n preparse: function (string) {\n return string.replace(/[۰-۹]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n dayOfMonthOrdinalParse: /\\d{1,2}م/,\n ordinal : '%dم',\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return fa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var numbersPast = 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(' '),\n numbersFuture = [\n 'nolla', 'yhden', 'kahden', 'kolmen', 'neljän', 'viiden', 'kuuden',\n numbersPast[7], numbersPast[8], numbersPast[9]\n ];\n function translate(number, withoutSuffix, key, isFuture) {\n var result = '';\n switch (key) {\n case 's':\n return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n case 'ss':\n return isFuture ? 'sekunnin' : 'sekuntia';\n case 'm':\n return isFuture ? 'minuutin' : 'minuutti';\n case 'mm':\n result = isFuture ? 'minuutin' : 'minuuttia';\n break;\n case 'h':\n return isFuture ? 'tunnin' : 'tunti';\n case 'hh':\n result = isFuture ? 'tunnin' : 'tuntia';\n break;\n case 'd':\n return isFuture ? 'päivän' : 'päivä';\n case 'dd':\n result = isFuture ? 'päivän' : 'päivää';\n break;\n case 'M':\n return isFuture ? 'kuukauden' : 'kuukausi';\n case 'MM':\n result = isFuture ? 'kuukauden' : 'kuukautta';\n break;\n case 'y':\n return isFuture ? 'vuoden' : 'vuosi';\n case 'yy':\n result = isFuture ? 'vuoden' : 'vuotta';\n break;\n }\n result = verbalNumber(number, isFuture) + ' ' + result;\n return result;\n }\n function verbalNumber(number, isFuture) {\n return number < 10 ? (isFuture ? numbersFuture[number] : numbersPast[number]) : number;\n }\n\n var fi = moment.defineLocale('fi', {\n months : 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split('_'),\n monthsShort : 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split('_'),\n weekdays : 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split('_'),\n weekdaysShort : 'su_ma_ti_ke_to_pe_la'.split('_'),\n weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD.MM.YYYY',\n LL : 'Do MMMM[ta] YYYY',\n LLL : 'Do MMMM[ta] YYYY, [klo] HH.mm',\n LLLL : 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',\n l : 'D.M.YYYY',\n ll : 'Do MMM YYYY',\n lll : 'Do MMM YYYY, [klo] HH.mm',\n llll : 'ddd, Do MMM YYYY, [klo] HH.mm'\n },\n calendar : {\n sameDay : '[tänään] [klo] LT',\n nextDay : '[huomenna] [klo] LT',\n nextWeek : 'dddd [klo] LT',\n lastDay : '[eilen] [klo] LT',\n lastWeek : '[viime] dddd[na] [klo] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s päästä',\n past : '%s sitten',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var fo = moment.defineLocale('fo', {\n months : 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays : 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split('_'),\n weekdaysShort : 'sun_mán_týs_mik_hós_frí_ley'.split('_'),\n weekdaysMin : 'su_má_tý_mi_hó_fr_le'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D. MMMM, YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Í dag kl.] LT',\n nextDay : '[Í morgin kl.] LT',\n nextWeek : 'dddd [kl.] LT',\n lastDay : '[Í gjár kl.] LT',\n lastWeek : '[síðstu] dddd [kl] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'um %s',\n past : '%s síðani',\n s : 'fá sekund',\n ss : '%d sekundir',\n m : 'ein minuttur',\n mm : '%d minuttir',\n h : 'ein tími',\n hh : '%d tímar',\n d : 'ein dagur',\n dd : '%d dagar',\n M : 'ein mánaður',\n MM : '%d mánaðir',\n y : 'eitt ár',\n yy : '%d ár'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var fr = moment.defineLocale('fr', {\n months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),\n monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),\n monthsParseExact : true,\n weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin : 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Aujourd’hui à] LT',\n nextDay : '[Demain à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[Hier à] LT',\n lastWeek : 'dddd [dernier à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dans %s',\n past : 'il y a %s',\n s : 'quelques secondes',\n ss : '%d secondes',\n m : 'une minute',\n mm : '%d minutes',\n h : 'une heure',\n hh : '%d heures',\n d : 'un jour',\n dd : '%d jours',\n M : 'un mois',\n MM : '%d mois',\n y : 'un an',\n yy : '%d ans'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|)/,\n ordinal : function (number, period) {\n switch (period) {\n // TODO: Return 'e' when day of month > 1. Move this case inside\n // block for masculine words below.\n // See https://github.com/moment/moment/issues/3375\n case 'D':\n return number + (number === 1 ? 'er' : '');\n\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var frCa = moment.defineLocale('fr-ca', {\n months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),\n monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),\n monthsParseExact : true,\n weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin : 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Aujourd’hui à] LT',\n nextDay : '[Demain à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[Hier à] LT',\n lastWeek : 'dddd [dernier à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dans %s',\n past : 'il y a %s',\n s : 'quelques secondes',\n ss : '%d secondes',\n m : 'une minute',\n mm : '%d minutes',\n h : 'une heure',\n hh : '%d heures',\n d : 'un jour',\n dd : '%d jours',\n M : 'un mois',\n MM : '%d mois',\n y : 'un an',\n yy : '%d ans'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal : function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n }\n });\n\n return frCa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var frCh = moment.defineLocale('fr-ch', {\n months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),\n monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),\n monthsParseExact : true,\n weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin : 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Aujourd’hui à] LT',\n nextDay : '[Demain à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[Hier à] LT',\n lastWeek : 'dddd [dernier à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dans %s',\n past : 'il y a %s',\n s : 'quelques secondes',\n ss : '%d secondes',\n m : 'une minute',\n mm : '%d minutes',\n h : 'une heure',\n hh : '%d heures',\n d : 'un jour',\n dd : '%d jours',\n M : 'un mois',\n MM : '%d mois',\n y : 'un an',\n yy : '%d ans'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal : function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return frCh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');\n\n var fy = moment.defineLocale('fy', {\n months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n monthsParseExact : true,\n weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'),\n weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'),\n weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD-MM-YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[hjoed om] LT',\n nextDay: '[moarn om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[juster om] LT',\n lastWeek: '[ôfrûne] dddd [om] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'oer %s',\n past : '%s lyn',\n s : 'in pear sekonden',\n ss : '%d sekonden',\n m : 'ien minút',\n mm : '%d minuten',\n h : 'ien oere',\n hh : '%d oeren',\n d : 'ien dei',\n dd : '%d dagen',\n M : 'ien moanne',\n MM : '%d moannen',\n y : 'ien jier',\n yy : '%d jierren'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n\n var months = [\n 'Eanáir', 'Feabhra', 'Márta', 'Aibreán', 'Bealtaine', 'Méitheamh', 'Iúil', 'Lúnasa', 'Meán Fómhair', 'Deaireadh Fómhair', 'Samhain', 'Nollaig'\n ];\n\n var monthsShort = ['Eaná', 'Feab', 'Márt', 'Aibr', 'Beal', 'Méit', 'Iúil', 'Lúna', 'Meán', 'Deai', 'Samh', 'Noll'];\n\n var weekdays = ['Dé Domhnaigh', 'Dé Luain', 'Dé Máirt', 'Dé Céadaoin', 'Déardaoin', 'Dé hAoine', 'Dé Satharn'];\n\n var weekdaysShort = ['Dom', 'Lua', 'Mái', 'Céa', 'Déa', 'hAo', 'Sat'];\n\n var weekdaysMin = ['Do', 'Lu', 'Má', 'Ce', 'Dé', 'hA', 'Sa'];\n\n var ga = moment.defineLocale('ga', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[Inniu ag] LT',\n nextDay: '[Amárach ag] LT',\n nextWeek: 'dddd [ag] LT',\n lastDay: '[Inné aig] LT',\n lastWeek: 'dddd [seo caite] [ag] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'i %s',\n past: '%s ó shin',\n s: 'cúpla soicind',\n ss: '%d soicind',\n m: 'nóiméad',\n mm: '%d nóiméad',\n h: 'uair an chloig',\n hh: '%d uair an chloig',\n d: 'lá',\n dd: '%d lá',\n M: 'mí',\n MM: '%d mí',\n y: 'bliain',\n yy: '%d bliain'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ga;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'Am Faoilleach', 'An Gearran', 'Am Màrt', 'An Giblean', 'An Cèitean', 'An t-Ògmhios', 'An t-Iuchar', 'An Lùnastal', 'An t-Sultain', 'An Dàmhair', 'An t-Samhain', 'An Dùbhlachd'\n ];\n\n var monthsShort = ['Faoi', 'Gear', 'Màrt', 'Gibl', 'Cèit', 'Ògmh', 'Iuch', 'Lùn', 'Sult', 'Dàmh', 'Samh', 'Dùbh'];\n\n var weekdays = ['Didòmhnaich', 'Diluain', 'Dimàirt', 'Diciadain', 'Diardaoin', 'Dihaoine', 'Disathairne'];\n\n var weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'];\n\n var weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'];\n\n var gd = moment.defineLocale('gd', {\n months : months,\n monthsShort : monthsShort,\n monthsParseExact : true,\n weekdays : weekdays,\n weekdaysShort : weekdaysShort,\n weekdaysMin : weekdaysMin,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[An-diugh aig] LT',\n nextDay : '[A-màireach aig] LT',\n nextWeek : 'dddd [aig] LT',\n lastDay : '[An-dè aig] LT',\n lastWeek : 'dddd [seo chaidh] [aig] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ann an %s',\n past : 'bho chionn %s',\n s : 'beagan diogan',\n ss : '%d diogan',\n m : 'mionaid',\n mm : '%d mionaidean',\n h : 'uair',\n hh : '%d uairean',\n d : 'latha',\n dd : '%d latha',\n M : 'mìos',\n MM : '%d mìosan',\n y : 'bliadhna',\n yy : '%d bliadhna'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}(d|na|mh)/,\n ordinal : function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return gd;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var gl = moment.defineLocale('gl', {\n months : 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split('_'),\n monthsShort : 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mé_xo_ve_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY H:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY H:mm'\n },\n calendar : {\n sameDay : function () {\n return '[hoxe ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';\n },\n nextDay : function () {\n return '[mañá ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';\n },\n lastDay : function () {\n return '[onte ' + ((this.hours() !== 1) ? 'á' : 'a') + '] LT';\n },\n lastWeek : function () {\n return '[o] dddd [pasado ' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : function (str) {\n if (str.indexOf('un') === 0) {\n return 'n' + str;\n }\n return 'en ' + str;\n },\n past : 'hai %s',\n s : 'uns segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'unha hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un ano',\n yy : '%d anos'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return gl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 's': ['thodde secondanim', 'thodde second'],\n 'ss': [number + ' secondanim', number + ' second'],\n 'm': ['eka mintan', 'ek minute'],\n 'mm': [number + ' mintanim', number + ' mintam'],\n 'h': ['eka voran', 'ek vor'],\n 'hh': [number + ' voranim', number + ' voram'],\n 'd': ['eka disan', 'ek dis'],\n 'dd': [number + ' disanim', number + ' dis'],\n 'M': ['eka mhoinean', 'ek mhoino'],\n 'MM': [number + ' mhoineanim', number + ' mhoine'],\n 'y': ['eka vorsan', 'ek voros'],\n 'yy': [number + ' vorsanim', number + ' vorsam']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var gomLatn = moment.defineLocale('gom-latn', {\n months : 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split('_'),\n monthsShort : 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Aitar_Somar_Mongllar_Budvar_Brestar_Sukrar_Son\\'var'.split('_'),\n weekdaysShort : 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),\n weekdaysMin : 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'A h:mm [vazta]',\n LTS : 'A h:mm:ss [vazta]',\n L : 'DD-MM-YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY A h:mm [vazta]',\n LLLL : 'dddd, MMMM[achea] Do, YYYY, A h:mm [vazta]',\n llll: 'ddd, D MMM YYYY, A h:mm [vazta]'\n },\n calendar : {\n sameDay: '[Aiz] LT',\n nextDay: '[Faleam] LT',\n nextWeek: '[Ieta to] dddd[,] LT',\n lastDay: '[Kal] LT',\n lastWeek: '[Fatlo] dddd[,] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s',\n past : '%s adim',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse : /\\d{1,2}(er)/,\n ordinal : function (number, period) {\n switch (period) {\n // the ordinal 'er' only applies to day of the month\n case 'D':\n return number + 'er';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n },\n meridiemParse: /rati|sokalli|donparam|sanje/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'rati') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'sokalli') {\n return hour;\n } else if (meridiem === 'donparam') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'sanje') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'rati';\n } else if (hour < 12) {\n return 'sokalli';\n } else if (hour < 16) {\n return 'donparam';\n } else if (hour < 20) {\n return 'sanje';\n } else {\n return 'rati';\n }\n }\n });\n\n return gomLatn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '૧',\n '2': '૨',\n '3': '૩',\n '4': '૪',\n '5': '૫',\n '6': '૬',\n '7': '૭',\n '8': '૮',\n '9': '૯',\n '0': '૦'\n },\n numberMap = {\n '૧': '1',\n '૨': '2',\n '૩': '3',\n '૪': '4',\n '૫': '5',\n '૬': '6',\n '૭': '7',\n '૮': '8',\n '૯': '9',\n '૦': '0'\n };\n\n var gu = moment.defineLocale('gu', {\n months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split('_'),\n monthsShort: 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split('_'),\n monthsParseExact: true,\n weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split('_'),\n weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),\n weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm વાગ્યે',\n LTS: 'A h:mm:ss વાગ્યે',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm વાગ્યે',\n LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે'\n },\n calendar: {\n sameDay: '[આજ] LT',\n nextDay: '[કાલે] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ગઇકાલે] LT',\n lastWeek: '[પાછલા] dddd, LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: '%s મા',\n past: '%s પેહલા',\n s: 'અમુક પળો',\n ss: '%d સેકંડ',\n m: 'એક મિનિટ',\n mm: '%d મિનિટ',\n h: 'એક કલાક',\n hh: '%d કલાક',\n d: 'એક દિવસ',\n dd: '%d દિવસ',\n M: 'એક મહિનો',\n MM: '%d મહિનો',\n y: 'એક વર્ષ',\n yy: '%d વર્ષ'\n },\n preparse: function (string) {\n return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Gujarati notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.\n meridiemParse: /રાત|બપોર|સવાર|સાંજ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'રાત') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'સવાર') {\n return hour;\n } else if (meridiem === 'બપોર') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'સાંજ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'રાત';\n } else if (hour < 10) {\n return 'સવાર';\n } else if (hour < 17) {\n return 'બપોર';\n } else if (hour < 20) {\n return 'સાંજ';\n } else {\n return 'રાત';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return gu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var he = moment.defineLocale('he', {\n months : 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split('_'),\n monthsShort : 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),\n weekdays : 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),\n weekdaysShort : 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),\n weekdaysMin : 'א_ב_ג_ד_ה_ו_ש'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [ב]MMMM YYYY',\n LLL : 'D [ב]MMMM YYYY HH:mm',\n LLLL : 'dddd, D [ב]MMMM YYYY HH:mm',\n l : 'D/M/YYYY',\n ll : 'D MMM YYYY',\n lll : 'D MMM YYYY HH:mm',\n llll : 'ddd, D MMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[היום ב־]LT',\n nextDay : '[מחר ב־]LT',\n nextWeek : 'dddd [בשעה] LT',\n lastDay : '[אתמול ב־]LT',\n lastWeek : '[ביום] dddd [האחרון בשעה] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'בעוד %s',\n past : 'לפני %s',\n s : 'מספר שניות',\n ss : '%d שניות',\n m : 'דקה',\n mm : '%d דקות',\n h : 'שעה',\n hh : function (number) {\n if (number === 2) {\n return 'שעתיים';\n }\n return number + ' שעות';\n },\n d : 'יום',\n dd : function (number) {\n if (number === 2) {\n return 'יומיים';\n }\n return number + ' ימים';\n },\n M : 'חודש',\n MM : function (number) {\n if (number === 2) {\n return 'חודשיים';\n }\n return number + ' חודשים';\n },\n y : 'שנה',\n yy : function (number) {\n if (number === 2) {\n return 'שנתיים';\n } else if (number % 10 === 0 && number !== 10) {\n return number + ' שנה';\n }\n return number + ' שנים';\n }\n },\n meridiemParse: /אחה\"צ|לפנה\"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,\n isPM : function (input) {\n return /^(אחה\"צ|אחרי הצהריים|בערב)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 5) {\n return 'לפנות בוקר';\n } else if (hour < 10) {\n return 'בבוקר';\n } else if (hour < 12) {\n return isLower ? 'לפנה\"צ' : 'לפני הצהריים';\n } else if (hour < 18) {\n return isLower ? 'אחה\"צ' : 'אחרי הצהריים';\n } else {\n return 'בערב';\n }\n }\n });\n\n return he;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '१',\n '2': '२',\n '3': '३',\n '4': '४',\n '5': '५',\n '6': '६',\n '7': '७',\n '8': '८',\n '9': '९',\n '0': '०'\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0'\n };\n\n var hi = moment.defineLocale('hi', {\n months : 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split('_'),\n monthsShort : 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),\n monthsParseExact: true,\n weekdays : 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort : 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat : {\n LT : 'A h:mm बजे',\n LTS : 'A h:mm:ss बजे',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm बजे',\n LLLL : 'dddd, D MMMM YYYY, A h:mm बजे'\n },\n calendar : {\n sameDay : '[आज] LT',\n nextDay : '[कल] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[कल] LT',\n lastWeek : '[पिछले] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s में',\n past : '%s पहले',\n s : 'कुछ ही क्षण',\n ss : '%d सेकंड',\n m : 'एक मिनट',\n mm : '%d मिनट',\n h : 'एक घंटा',\n hh : '%d घंटे',\n d : 'एक दिन',\n dd : '%d दिन',\n M : 'एक महीने',\n MM : '%d महीने',\n y : 'एक वर्ष',\n yy : '%d वर्ष'\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Hindi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.\n meridiemParse: /रात|सुबह|दोपहर|शाम/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सुबह') {\n return hour;\n } else if (meridiem === 'दोपहर') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'शाम') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात';\n } else if (hour < 10) {\n return 'सुबह';\n } else if (hour < 17) {\n return 'दोपहर';\n } else if (hour < 20) {\n return 'शाम';\n } else {\n return 'रात';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return hi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var hr = moment.defineLocale('hr', {\n months : {\n format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split('_'),\n standalone: 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split('_')\n },\n monthsShort : 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split('_'),\n monthsParseExact: true,\n weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),\n weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[danas u] LT',\n nextDay : '[sutra u] LT',\n nextWeek : function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[jučer u] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'prije %s',\n s : 'par sekundi',\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : 'dan',\n dd : translate,\n M : 'mjesec',\n MM : translate,\n y : 'godinu',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return hr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var weekEndings = 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');\n function translate(number, withoutSuffix, key, isFuture) {\n var num = number;\n switch (key) {\n case 's':\n return (isFuture || withoutSuffix) ? 'néhány másodperc' : 'néhány másodperce';\n case 'ss':\n return num + (isFuture || withoutSuffix) ? ' másodperc' : ' másodperce';\n case 'm':\n return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'mm':\n return num + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'h':\n return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'hh':\n return num + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'd':\n return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'dd':\n return num + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'M':\n return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'MM':\n return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'y':\n return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');\n case 'yy':\n return num + (isFuture || withoutSuffix ? ' év' : ' éve');\n }\n return '';\n }\n function week(isFuture) {\n return (isFuture ? '' : '[múlt] ') + '[' + weekEndings[this.day()] + '] LT[-kor]';\n }\n\n var hu = moment.defineLocale('hu', {\n months : 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split('_'),\n monthsShort : 'jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec'.split('_'),\n weekdays : 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),\n weekdaysShort : 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),\n weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'YYYY.MM.DD.',\n LL : 'YYYY. MMMM D.',\n LLL : 'YYYY. MMMM D. H:mm',\n LLLL : 'YYYY. MMMM D., dddd H:mm'\n },\n meridiemParse: /de|du/i,\n isPM: function (input) {\n return input.charAt(1).toLowerCase() === 'u';\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower === true ? 'de' : 'DE';\n } else {\n return isLower === true ? 'du' : 'DU';\n }\n },\n calendar : {\n sameDay : '[ma] LT[-kor]',\n nextDay : '[holnap] LT[-kor]',\n nextWeek : function () {\n return week.call(this, true);\n },\n lastDay : '[tegnap] LT[-kor]',\n lastWeek : function () {\n return week.call(this, false);\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s múlva',\n past : '%s',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return hu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var hyAm = moment.defineLocale('hy-am', {\n months : {\n format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_'),\n standalone: 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_')\n },\n monthsShort : 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),\n weekdays : 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split('_'),\n weekdaysShort : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n weekdaysMin : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY թ.',\n LLL : 'D MMMM YYYY թ., HH:mm',\n LLLL : 'dddd, D MMMM YYYY թ., HH:mm'\n },\n calendar : {\n sameDay: '[այսօր] LT',\n nextDay: '[վաղը] LT',\n lastDay: '[երեկ] LT',\n nextWeek: function () {\n return 'dddd [օրը ժամը] LT';\n },\n lastWeek: function () {\n return '[անցած] dddd [օրը ժամը] LT';\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s հետո',\n past : '%s առաջ',\n s : 'մի քանի վայրկյան',\n ss : '%d վայրկյան',\n m : 'րոպե',\n mm : '%d րոպե',\n h : 'ժամ',\n hh : '%d ժամ',\n d : 'օր',\n dd : '%d օր',\n M : 'ամիս',\n MM : '%d ամիս',\n y : 'տարի',\n yy : '%d տարի'\n },\n meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,\n isPM: function (input) {\n return /^(ցերեկվա|երեկոյան)$/.test(input);\n },\n meridiem : function (hour) {\n if (hour < 4) {\n return 'գիշերվա';\n } else if (hour < 12) {\n return 'առավոտվա';\n } else if (hour < 17) {\n return 'ցերեկվա';\n } else {\n return 'երեկոյան';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}|\\d{1,2}-(ին|րդ)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'DDD':\n case 'w':\n case 'W':\n case 'DDDo':\n if (number === 1) {\n return number + '-ին';\n }\n return number + '-րդ';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return hyAm;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var id = moment.defineLocale('id', {\n months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),\n weekdays : 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n weekdaysShort : 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /pagi|siang|sore|malam/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'siang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sore' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'siang';\n } else if (hours < 19) {\n return 'sore';\n } else {\n return 'malam';\n }\n },\n calendar : {\n sameDay : '[Hari ini pukul] LT',\n nextDay : '[Besok pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kemarin pukul] LT',\n lastWeek : 'dddd [lalu pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dalam %s',\n past : '%s yang lalu',\n s : 'beberapa detik',\n ss : '%d detik',\n m : 'semenit',\n mm : '%d menit',\n h : 'sejam',\n hh : '%d jam',\n d : 'sehari',\n dd : '%d hari',\n M : 'sebulan',\n MM : '%d bulan',\n y : 'setahun',\n yy : '%d tahun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return id;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(n) {\n if (n % 100 === 11) {\n return true;\n } else if (n % 10 === 1) {\n return false;\n }\n return true;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture ? 'nokkrar sekúndur' : 'nokkrum sekúndum';\n case 'ss':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum');\n }\n return result + 'sekúnda';\n case 'm':\n return withoutSuffix ? 'mínúta' : 'mínútu';\n case 'mm':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum');\n } else if (withoutSuffix) {\n return result + 'mínúta';\n }\n return result + 'mínútu';\n case 'hh':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'klukkustundir' : 'klukkustundum');\n }\n return result + 'klukkustund';\n case 'd':\n if (withoutSuffix) {\n return 'dagur';\n }\n return isFuture ? 'dag' : 'degi';\n case 'dd':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'dagar';\n }\n return result + (isFuture ? 'daga' : 'dögum');\n } else if (withoutSuffix) {\n return result + 'dagur';\n }\n return result + (isFuture ? 'dag' : 'degi');\n case 'M':\n if (withoutSuffix) {\n return 'mánuður';\n }\n return isFuture ? 'mánuð' : 'mánuði';\n case 'MM':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'mánuðir';\n }\n return result + (isFuture ? 'mánuði' : 'mánuðum');\n } else if (withoutSuffix) {\n return result + 'mánuður';\n }\n return result + (isFuture ? 'mánuð' : 'mánuði');\n case 'y':\n return withoutSuffix || isFuture ? 'ár' : 'ári';\n case 'yy':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'ár' : 'árum');\n }\n return result + (withoutSuffix || isFuture ? 'ár' : 'ári');\n }\n }\n\n var is = moment.defineLocale('is', {\n months : 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),\n weekdays : 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split('_'),\n weekdaysShort : 'sun_mán_þri_mið_fim_fös_lau'.split('_'),\n weekdaysMin : 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY [kl.] H:mm',\n LLLL : 'dddd, D. MMMM YYYY [kl.] H:mm'\n },\n calendar : {\n sameDay : '[í dag kl.] LT',\n nextDay : '[á morgun kl.] LT',\n nextWeek : 'dddd [kl.] LT',\n lastDay : '[í gær kl.] LT',\n lastWeek : '[síðasta] dddd [kl.] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'eftir %s',\n past : 'fyrir %s síðan',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : 'klukkustund',\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return is;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var it = moment.defineLocale('it', {\n months : 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split('_'),\n monthsShort : 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays : 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split('_'),\n weekdaysShort : 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin : 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : function (s) {\n return ((/^[0-9].+$/).test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past : '%s fa',\n s : 'alcuni secondi',\n ss : '%d secondi',\n m : 'un minuto',\n mm : '%d minuti',\n h : 'un\\'ora',\n hh : '%d ore',\n d : 'un giorno',\n dd : '%d giorni',\n M : 'un mese',\n MM : '%d mesi',\n y : 'un anno',\n yy : '%d anni'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return it;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var itCh = moment.defineLocale('it-ch', {\n months : 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split('_'),\n monthsShort : 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays : 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split('_'),\n weekdaysShort : 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin : 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : function (s) {\n return ((/^[0-9].+$/).test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past : '%s fa',\n s : 'alcuni secondi',\n ss : '%d secondi',\n m : 'un minuto',\n mm : '%d minuti',\n h : 'un\\'ora',\n hh : '%d ore',\n d : 'un giorno',\n dd : '%d giorni',\n M : 'un mese',\n MM : '%d mesi',\n y : 'un anno',\n yy : '%d anni'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return itCh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ja = moment.defineLocale('ja', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),\n weekdaysShort : '日_月_火_水_木_金_土'.split('_'),\n weekdaysMin : '日_月_火_水_木_金_土'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日 HH:mm',\n LLLL : 'YYYY年M月D日 dddd HH:mm',\n l : 'YYYY/MM/DD',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日(ddd) HH:mm'\n },\n meridiemParse: /午前|午後/i,\n isPM : function (input) {\n return input === '午後';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return '午前';\n } else {\n return '午後';\n }\n },\n calendar : {\n sameDay : '[今日] LT',\n nextDay : '[明日] LT',\n nextWeek : function (now) {\n if (now.week() < this.week()) {\n return '[来週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n lastDay : '[昨日] LT',\n lastWeek : function (now) {\n if (this.week() < now.week()) {\n return '[先週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}日/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n default:\n return number;\n }\n },\n relativeTime : {\n future : '%s後',\n past : '%s前',\n s : '数秒',\n ss : '%d秒',\n m : '1分',\n mm : '%d分',\n h : '1時間',\n hh : '%d時間',\n d : '1日',\n dd : '%d日',\n M : '1ヶ月',\n MM : '%dヶ月',\n y : '1年',\n yy : '%d年'\n }\n });\n\n return ja;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var jv = moment.defineLocale('jv', {\n months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),\n weekdays : 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),\n weekdaysShort : 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),\n weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /enjing|siyang|sonten|ndalu/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'enjing') {\n return hour;\n } else if (meridiem === 'siyang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sonten' || meridiem === 'ndalu') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'enjing';\n } else if (hours < 15) {\n return 'siyang';\n } else if (hours < 19) {\n return 'sonten';\n } else {\n return 'ndalu';\n }\n },\n calendar : {\n sameDay : '[Dinten puniko pukul] LT',\n nextDay : '[Mbenjang pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kala wingi pukul] LT',\n lastWeek : 'dddd [kepengker pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'wonten ing %s',\n past : '%s ingkang kepengker',\n s : 'sawetawis detik',\n ss : '%d detik',\n m : 'setunggal menit',\n mm : '%d menit',\n h : 'setunggal jam',\n hh : '%d jam',\n d : 'sedinten',\n dd : '%d dinten',\n M : 'sewulan',\n MM : '%d wulan',\n y : 'setaun',\n yy : '%d taun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return jv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ka = moment.defineLocale('ka', {\n months : {\n standalone: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split('_'),\n format: 'იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს'.split('_')\n },\n monthsShort : 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),\n weekdays : {\n standalone: 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split('_'),\n format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split('_'),\n isFormat: /(წინა|შემდეგ)/\n },\n weekdaysShort : 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),\n weekdaysMin : 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[დღეს] LT[-ზე]',\n nextDay : '[ხვალ] LT[-ზე]',\n lastDay : '[გუშინ] LT[-ზე]',\n nextWeek : '[შემდეგ] dddd LT[-ზე]',\n lastWeek : '[წინა] dddd LT-ზე',\n sameElse : 'L'\n },\n relativeTime : {\n future : function (s) {\n return (/(წამი|წუთი|საათი|წელი)/).test(s) ?\n s.replace(/ი$/, 'ში') :\n s + 'ში';\n },\n past : function (s) {\n if ((/(წამი|წუთი|საათი|დღე|თვე)/).test(s)) {\n return s.replace(/(ი|ე)$/, 'ის წინ');\n }\n if ((/წელი/).test(s)) {\n return s.replace(/წელი$/, 'წლის წინ');\n }\n },\n s : 'რამდენიმე წამი',\n ss : '%d წამი',\n m : 'წუთი',\n mm : '%d წუთი',\n h : 'საათი',\n hh : '%d საათი',\n d : 'დღე',\n dd : '%d დღე',\n M : 'თვე',\n MM : '%d თვე',\n y : 'წელი',\n yy : '%d წელი'\n },\n dayOfMonthOrdinalParse: /0|1-ლი|მე-\\d{1,2}|\\d{1,2}-ე/,\n ordinal : function (number) {\n if (number === 0) {\n return number;\n }\n if (number === 1) {\n return number + '-ლი';\n }\n if ((number < 20) || (number <= 100 && (number % 20 === 0)) || (number % 100 === 0)) {\n return 'მე-' + number;\n }\n return number + '-ე';\n },\n week : {\n dow : 1,\n doy : 7\n }\n });\n\n return ka;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 0: '-ші',\n 1: '-ші',\n 2: '-ші',\n 3: '-ші',\n 4: '-ші',\n 5: '-ші',\n 6: '-шы',\n 7: '-ші',\n 8: '-ші',\n 9: '-шы',\n 10: '-шы',\n 20: '-шы',\n 30: '-шы',\n 40: '-шы',\n 50: '-ші',\n 60: '-шы',\n 70: '-ші',\n 80: '-ші',\n 90: '-шы',\n 100: '-ші'\n };\n\n var kk = moment.defineLocale('kk', {\n months : 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split('_'),\n monthsShort : 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),\n weekdays : 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split('_'),\n weekdaysShort : 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'),\n weekdaysMin : 'жк_дй_сй_ср_бй_жм_сн'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Бүгін сағат] LT',\n nextDay : '[Ертең сағат] LT',\n nextWeek : 'dddd [сағат] LT',\n lastDay : '[Кеше сағат] LT',\n lastWeek : '[Өткен аптаның] dddd [сағат] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ішінде',\n past : '%s бұрын',\n s : 'бірнеше секунд',\n ss : '%d секунд',\n m : 'бір минут',\n mm : '%d минут',\n h : 'бір сағат',\n hh : '%d сағат',\n d : 'бір күн',\n dd : '%d күн',\n M : 'бір ай',\n MM : '%d ай',\n y : 'бір жыл',\n yy : '%d жыл'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ші|шы)/,\n ordinal : function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return kk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '១',\n '2': '២',\n '3': '៣',\n '4': '៤',\n '5': '៥',\n '6': '៦',\n '7': '៧',\n '8': '៨',\n '9': '៩',\n '0': '០'\n }, numberMap = {\n '១': '1',\n '២': '2',\n '៣': '3',\n '៤': '4',\n '៥': '5',\n '៦': '6',\n '៧': '7',\n '៨': '8',\n '៩': '9',\n '០': '0'\n };\n\n var km = moment.defineLocale('km', {\n months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n monthsShort: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),\n weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm'\n },\n meridiemParse: /ព្រឹក|ល្ងាច/,\n isPM: function (input) {\n return input === 'ល្ងាច';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ព្រឹក';\n } else {\n return 'ល្ងាច';\n }\n },\n calendar: {\n sameDay: '[ថ្ងៃនេះ ម៉ោង] LT',\n nextDay: '[ស្អែក ម៉ោង] LT',\n nextWeek: 'dddd [ម៉ោង] LT',\n lastDay: '[ម្សិលមិញ ម៉ោង] LT',\n lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: '%sទៀត',\n past: '%sមុន',\n s: 'ប៉ុន្មានវិនាទី',\n ss: '%d វិនាទី',\n m: 'មួយនាទី',\n mm: '%d នាទី',\n h: 'មួយម៉ោង',\n hh: '%d ម៉ោង',\n d: 'មួយថ្ងៃ',\n dd: '%d ថ្ងៃ',\n M: 'មួយខែ',\n MM: '%d ខែ',\n y: 'មួយឆ្នាំ',\n yy: '%d ឆ្នាំ'\n },\n dayOfMonthOrdinalParse : /ទី\\d{1,2}/,\n ordinal : 'ទី%d',\n preparse: function (string) {\n return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return km;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '೧',\n '2': '೨',\n '3': '೩',\n '4': '೪',\n '5': '೫',\n '6': '೬',\n '7': '೭',\n '8': '೮',\n '9': '೯',\n '0': '೦'\n },\n numberMap = {\n '೧': '1',\n '೨': '2',\n '೩': '3',\n '೪': '4',\n '೫': '5',\n '೬': '6',\n '೭': '7',\n '೮': '8',\n '೯': '9',\n '೦': '0'\n };\n\n var kn = moment.defineLocale('kn', {\n months : 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split('_'),\n monthsShort : 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split('_'),\n monthsParseExact: true,\n weekdays : 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split('_'),\n weekdaysShort : 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'),\n weekdaysMin : 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm',\n LLLL : 'dddd, D MMMM YYYY, A h:mm'\n },\n calendar : {\n sameDay : '[ಇಂದು] LT',\n nextDay : '[ನಾಳೆ] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[ನಿನ್ನೆ] LT',\n lastWeek : '[ಕೊನೆಯ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ನಂತರ',\n past : '%s ಹಿಂದೆ',\n s : 'ಕೆಲವು ಕ್ಷಣಗಳು',\n ss : '%d ಸೆಕೆಂಡುಗಳು',\n m : 'ಒಂದು ನಿಮಿಷ',\n mm : '%d ನಿಮಿಷ',\n h : 'ಒಂದು ಗಂಟೆ',\n hh : '%d ಗಂಟೆ',\n d : 'ಒಂದು ದಿನ',\n dd : '%d ದಿನ',\n M : 'ಒಂದು ತಿಂಗಳು',\n MM : '%d ತಿಂಗಳು',\n y : 'ಒಂದು ವರ್ಷ',\n yy : '%d ವರ್ಷ'\n },\n preparse: function (string) {\n return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ರಾತ್ರಿ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') {\n return hour;\n } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ಸಂಜೆ') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ರಾತ್ರಿ';\n } else if (hour < 10) {\n return 'ಬೆಳಿಗ್ಗೆ';\n } else if (hour < 17) {\n return 'ಮಧ್ಯಾಹ್ನ';\n } else if (hour < 20) {\n return 'ಸಂಜೆ';\n } else {\n return 'ರಾತ್ರಿ';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ನೇ)/,\n ordinal : function (number) {\n return number + 'ನೇ';\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return kn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ko = moment.defineLocale('ko', {\n months : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),\n monthsShort : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),\n weekdays : '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),\n weekdaysShort : '일_월_화_수_목_금_토'.split('_'),\n weekdaysMin : '일_월_화_수_목_금_토'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'YYYY.MM.DD.',\n LL : 'YYYY년 MMMM D일',\n LLL : 'YYYY년 MMMM D일 A h:mm',\n LLLL : 'YYYY년 MMMM D일 dddd A h:mm',\n l : 'YYYY.MM.DD.',\n ll : 'YYYY년 MMMM D일',\n lll : 'YYYY년 MMMM D일 A h:mm',\n llll : 'YYYY년 MMMM D일 dddd A h:mm'\n },\n calendar : {\n sameDay : '오늘 LT',\n nextDay : '내일 LT',\n nextWeek : 'dddd LT',\n lastDay : '어제 LT',\n lastWeek : '지난주 dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s 후',\n past : '%s 전',\n s : '몇 초',\n ss : '%d초',\n m : '1분',\n mm : '%d분',\n h : '한 시간',\n hh : '%d시간',\n d : '하루',\n dd : '%d일',\n M : '한 달',\n MM : '%d달',\n y : '일 년',\n yy : '%d년'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}(일|월|주)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '일';\n case 'M':\n return number + '월';\n case 'w':\n case 'W':\n return number + '주';\n default:\n return number;\n }\n },\n meridiemParse : /오전|오후/,\n isPM : function (token) {\n return token === '오후';\n },\n meridiem : function (hour, minute, isUpper) {\n return hour < 12 ? '오전' : '오후';\n }\n });\n\n return ko;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '١',\n '2': '٢',\n '3': '٣',\n '4': '٤',\n '5': '٥',\n '6': '٦',\n '7': '٧',\n '8': '٨',\n '9': '٩',\n '0': '٠'\n }, numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0'\n },\n months = [\n 'کانونی دووەم',\n 'شوبات',\n 'ئازار',\n 'نیسان',\n 'ئایار',\n 'حوزەیران',\n 'تەمموز',\n 'ئاب',\n 'ئەیلوول',\n 'تشرینی یەكەم',\n 'تشرینی دووەم',\n 'كانونی یەکەم'\n ];\n\n\n var ku = moment.defineLocale('ku', {\n months : months,\n monthsShort : months,\n weekdays : 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysShort : 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysMin : 'ی_د_س_چ_پ_ه_ش'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n meridiemParse: /ئێواره‌|به‌یانی/,\n isPM: function (input) {\n return /ئێواره‌/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'به‌یانی';\n } else {\n return 'ئێواره‌';\n }\n },\n calendar : {\n sameDay : '[ئه‌مرۆ كاتژمێر] LT',\n nextDay : '[به‌یانی كاتژمێر] LT',\n nextWeek : 'dddd [كاتژمێر] LT',\n lastDay : '[دوێنێ كاتژمێر] LT',\n lastWeek : 'dddd [كاتژمێر] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'له‌ %s',\n past : '%s',\n s : 'چه‌ند چركه‌یه‌ك',\n ss : 'چركه‌ %d',\n m : 'یه‌ك خوله‌ك',\n mm : '%d خوله‌ك',\n h : 'یه‌ك كاتژمێر',\n hh : '%d كاتژمێر',\n d : 'یه‌ك ڕۆژ',\n dd : '%d ڕۆژ',\n M : 'یه‌ك مانگ',\n MM : '%d مانگ',\n y : 'یه‌ك ساڵ',\n yy : '%d ساڵ'\n },\n preparse: function (string) {\n return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return ku;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 0: '-чү',\n 1: '-чи',\n 2: '-чи',\n 3: '-чү',\n 4: '-чү',\n 5: '-чи',\n 6: '-чы',\n 7: '-чи',\n 8: '-чи',\n 9: '-чу',\n 10: '-чу',\n 20: '-чы',\n 30: '-чу',\n 40: '-чы',\n 50: '-чү',\n 60: '-чы',\n 70: '-чи',\n 80: '-чи',\n 90: '-чу',\n 100: '-чү'\n };\n\n var ky = moment.defineLocale('ky', {\n months : 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),\n monthsShort : 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),\n weekdays : 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split('_'),\n weekdaysShort : 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'),\n weekdaysMin : 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Бүгүн саат] LT',\n nextDay : '[Эртең саат] LT',\n nextWeek : 'dddd [саат] LT',\n lastDay : '[Кечээ саат] LT',\n lastWeek : '[Өткөн аптанын] dddd [күнү] [саат] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ичинде',\n past : '%s мурун',\n s : 'бирнече секунд',\n ss : '%d секунд',\n m : 'бир мүнөт',\n mm : '%d мүнөт',\n h : 'бир саат',\n hh : '%d саат',\n d : 'бир күн',\n dd : '%d күн',\n M : 'бир ай',\n MM : '%d ай',\n y : 'бир жыл',\n yy : '%d жыл'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(чи|чы|чү|чу)/,\n ordinal : function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return ky;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eng Minutt', 'enger Minutt'],\n 'h': ['eng Stonn', 'enger Stonn'],\n 'd': ['een Dag', 'engem Dag'],\n 'M': ['ee Mount', 'engem Mount'],\n 'y': ['ee Joer', 'engem Joer']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n function processFutureTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'a ' + string;\n }\n return 'an ' + string;\n }\n function processPastTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'viru ' + string;\n }\n return 'virun ' + string;\n }\n /**\n * Returns true if the word before the given number loses the '-n' ending.\n * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n *\n * @param number {integer}\n * @returns {boolean}\n */\n function eifelerRegelAppliesToNumber(number) {\n number = parseInt(number, 10);\n if (isNaN(number)) {\n return false;\n }\n if (number < 0) {\n // Negative Number --> always true\n return true;\n } else if (number < 10) {\n // Only 1 digit\n if (4 <= number && number <= 7) {\n return true;\n }\n return false;\n } else if (number < 100) {\n // 2 digits\n var lastDigit = number % 10, firstDigit = number / 10;\n if (lastDigit === 0) {\n return eifelerRegelAppliesToNumber(firstDigit);\n }\n return eifelerRegelAppliesToNumber(lastDigit);\n } else if (number < 10000) {\n // 3 or 4 digits --> recursively check first digit\n while (number >= 10) {\n number = number / 10;\n }\n return eifelerRegelAppliesToNumber(number);\n } else {\n // Anything larger than 4 digits: recursively check first n-3 digits\n number = number / 1000;\n return eifelerRegelAppliesToNumber(number);\n }\n }\n\n var lb = moment.defineLocale('lb', {\n months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort: 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays: 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split('_'),\n weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm [Auer]',\n LTS: 'H:mm:ss [Auer]',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm [Auer]',\n LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]'\n },\n calendar: {\n sameDay: '[Haut um] LT',\n sameElse: 'L',\n nextDay: '[Muer um] LT',\n nextWeek: 'dddd [um] LT',\n lastDay: '[Gëschter um] LT',\n lastWeek: function () {\n // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n switch (this.day()) {\n case 2:\n case 4:\n return '[Leschten] dddd [um] LT';\n default:\n return '[Leschte] dddd [um] LT';\n }\n }\n },\n relativeTime : {\n future : processFutureTime,\n past : processPastTime,\n s : 'e puer Sekonnen',\n ss : '%d Sekonnen',\n m : processRelativeTime,\n mm : '%d Minutten',\n h : processRelativeTime,\n hh : '%d Stonnen',\n d : processRelativeTime,\n dd : '%d Deeg',\n M : processRelativeTime,\n MM : '%d Méint',\n y : processRelativeTime,\n yy : '%d Joer'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return lb;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var lo = moment.defineLocale('lo', {\n months : 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split('_'),\n monthsShort : 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split('_'),\n weekdays : 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysShort : 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysMin : 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'ວັນdddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,\n isPM: function (input) {\n return input === 'ຕອນແລງ';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ຕອນເຊົ້າ';\n } else {\n return 'ຕອນແລງ';\n }\n },\n calendar : {\n sameDay : '[ມື້ນີ້ເວລາ] LT',\n nextDay : '[ມື້ອື່ນເວລາ] LT',\n nextWeek : '[ວັນ]dddd[ໜ້າເວລາ] LT',\n lastDay : '[ມື້ວານນີ້ເວລາ] LT',\n lastWeek : '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ອີກ %s',\n past : '%sຜ່ານມາ',\n s : 'ບໍ່ເທົ່າໃດວິນາທີ',\n ss : '%d ວິນາທີ' ,\n m : '1 ນາທີ',\n mm : '%d ນາທີ',\n h : '1 ຊົ່ວໂມງ',\n hh : '%d ຊົ່ວໂມງ',\n d : '1 ມື້',\n dd : '%d ມື້',\n M : '1 ເດືອນ',\n MM : '%d ເດືອນ',\n y : '1 ປີ',\n yy : '%d ປີ'\n },\n dayOfMonthOrdinalParse: /(ທີ່)\\d{1,2}/,\n ordinal : function (number) {\n return 'ທີ່' + number;\n }\n });\n\n return lo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var units = {\n 'ss' : 'sekundė_sekundžių_sekundes',\n 'm' : 'minutė_minutės_minutę',\n 'mm': 'minutės_minučių_minutes',\n 'h' : 'valanda_valandos_valandą',\n 'hh': 'valandos_valandų_valandas',\n 'd' : 'diena_dienos_dieną',\n 'dd': 'dienos_dienų_dienas',\n 'M' : 'mėnuo_mėnesio_mėnesį',\n 'MM': 'mėnesiai_mėnesių_mėnesius',\n 'y' : 'metai_metų_metus',\n 'yy': 'metai_metų_metus'\n };\n function translateSeconds(number, withoutSuffix, key, isFuture) {\n if (withoutSuffix) {\n return 'kelios sekundės';\n } else {\n return isFuture ? 'kelių sekundžių' : 'kelias sekundes';\n }\n }\n function translateSingular(number, withoutSuffix, key, isFuture) {\n return withoutSuffix ? forms(key)[0] : (isFuture ? forms(key)[1] : forms(key)[2]);\n }\n function special(number) {\n return number % 10 === 0 || (number > 10 && number < 20);\n }\n function forms(key) {\n return units[key].split('_');\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n if (number === 1) {\n return result + translateSingular(number, withoutSuffix, key[0], isFuture);\n } else if (withoutSuffix) {\n return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n } else {\n if (isFuture) {\n return result + forms(key)[1];\n } else {\n return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n }\n }\n }\n var lt = moment.defineLocale('lt', {\n months : {\n format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split('_'),\n standalone: 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split('_'),\n isFormat: /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?|MMMM?(\\[[^\\[\\]]*\\]|\\s)+D[oD]?/\n },\n monthsShort : 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n weekdays : {\n format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split('_'),\n standalone: 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split('_'),\n isFormat: /dddd HH:mm/\n },\n weekdaysShort : 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),\n weekdaysMin : 'S_P_A_T_K_Pn_Š'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'YYYY [m.] MMMM D [d.]',\n LLL : 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n LLLL : 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',\n l : 'YYYY-MM-DD',\n ll : 'YYYY [m.] MMMM D [d.]',\n lll : 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n llll : 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]'\n },\n calendar : {\n sameDay : '[Šiandien] LT',\n nextDay : '[Rytoj] LT',\n nextWeek : 'dddd LT',\n lastDay : '[Vakar] LT',\n lastWeek : '[Praėjusį] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'po %s',\n past : 'prieš %s',\n s : translateSeconds,\n ss : translate,\n m : translateSingular,\n mm : translate,\n h : translateSingular,\n hh : translate,\n d : translateSingular,\n dd : translate,\n M : translateSingular,\n MM : translate,\n y : translateSingular,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-oji/,\n ordinal : function (number) {\n return number + '-oji';\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return lt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var units = {\n 'ss': 'sekundes_sekundēm_sekunde_sekundes'.split('_'),\n 'm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n 'mm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n 'h': 'stundas_stundām_stunda_stundas'.split('_'),\n 'hh': 'stundas_stundām_stunda_stundas'.split('_'),\n 'd': 'dienas_dienām_diena_dienas'.split('_'),\n 'dd': 'dienas_dienām_diena_dienas'.split('_'),\n 'M': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n 'MM': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n 'y': 'gada_gadiem_gads_gadi'.split('_'),\n 'yy': 'gada_gadiem_gads_gadi'.split('_')\n };\n /**\n * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.\n */\n function format(forms, number, withoutSuffix) {\n if (withoutSuffix) {\n // E.g. \"21 minūte\", \"3 minūtes\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3];\n } else {\n // E.g. \"21 minūtes\" as in \"pēc 21 minūtes\".\n // E.g. \"3 minūtēm\" as in \"pēc 3 minūtēm\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1];\n }\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n return number + ' ' + format(units[key], number, withoutSuffix);\n }\n function relativeTimeWithSingular(number, withoutSuffix, key) {\n return format(units[key], number, withoutSuffix);\n }\n function relativeSeconds(number, withoutSuffix) {\n return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';\n }\n\n var lv = moment.defineLocale('lv', {\n months : 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split('_'),\n monthsShort : 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),\n weekdays : 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split('_'),\n weekdaysShort : 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY.',\n LL : 'YYYY. [gada] D. MMMM',\n LLL : 'YYYY. [gada] D. MMMM, HH:mm',\n LLLL : 'YYYY. [gada] D. MMMM, dddd, HH:mm'\n },\n calendar : {\n sameDay : '[Šodien pulksten] LT',\n nextDay : '[Rīt pulksten] LT',\n nextWeek : 'dddd [pulksten] LT',\n lastDay : '[Vakar pulksten] LT',\n lastWeek : '[Pagājušā] dddd [pulksten] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'pēc %s',\n past : 'pirms %s',\n s : relativeSeconds,\n ss : relativeTimeWithPlural,\n m : relativeTimeWithSingular,\n mm : relativeTimeWithPlural,\n h : relativeTimeWithSingular,\n hh : relativeTimeWithPlural,\n d : relativeTimeWithSingular,\n dd : relativeTimeWithPlural,\n M : relativeTimeWithSingular,\n MM : relativeTimeWithPlural,\n y : relativeTimeWithSingular,\n yy : relativeTimeWithPlural\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return lv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var translator = {\n words: { //Different grammatical cases\n ss: ['sekund', 'sekunda', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mjesec', 'mjeseca', 'mjeseci'],\n yy: ['godina', 'godine', 'godina']\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n }\n }\n };\n\n var me = moment.defineLocale('me', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split('_'),\n monthsShort: 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact : true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm'\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sjutra u] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[juče u] LT',\n lastWeek : function () {\n var lastWeekDays = [\n '[prošle] [nedjelje] [u] LT',\n '[prošlog] [ponedjeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srijede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT'\n ];\n return lastWeekDays[this.day()];\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'prije %s',\n s : 'nekoliko sekundi',\n ss : translator.translate,\n m : translator.translate,\n mm : translator.translate,\n h : translator.translate,\n hh : translator.translate,\n d : 'dan',\n dd : translator.translate,\n M : 'mjesec',\n MM : translator.translate,\n y : 'godinu',\n yy : translator.translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return me;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var mi = moment.defineLocale('mi', {\n months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split('_'),\n monthsShort: 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split('_'),\n monthsRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,2}/i,\n weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'),\n weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [i] HH:mm',\n LLLL: 'dddd, D MMMM YYYY [i] HH:mm'\n },\n calendar: {\n sameDay: '[i teie mahana, i] LT',\n nextDay: '[apopo i] LT',\n nextWeek: 'dddd [i] LT',\n lastDay: '[inanahi i] LT',\n lastWeek: 'dddd [whakamutunga i] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'i roto i %s',\n past: '%s i mua',\n s: 'te hēkona ruarua',\n ss: '%d hēkona',\n m: 'he meneti',\n mm: '%d meneti',\n h: 'te haora',\n hh: '%d haora',\n d: 'he ra',\n dd: '%d ra',\n M: 'he marama',\n MM: '%d marama',\n y: 'he tau',\n yy: '%d tau'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return mi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var mk = moment.defineLocale('mk', {\n months : 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split('_'),\n monthsShort : 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),\n weekdays : 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split('_'),\n weekdaysShort : 'нед_пон_вто_сре_чет_пет_саб'.split('_'),\n weekdaysMin : 'нe_пo_вт_ср_че_пе_сa'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'D.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY H:mm',\n LLLL : 'dddd, D MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[Денес во] LT',\n nextDay : '[Утре во] LT',\n nextWeek : '[Во] dddd [во] LT',\n lastDay : '[Вчера во] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Изминатата] dddd [во] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Изминатиот] dddd [во] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'после %s',\n past : 'пред %s',\n s : 'неколку секунди',\n ss : '%d секунди',\n m : 'минута',\n mm : '%d минути',\n h : 'час',\n hh : '%d часа',\n d : 'ден',\n dd : '%d дена',\n M : 'месец',\n MM : '%d месеци',\n y : 'година',\n yy : '%d години'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal : function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return mk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ml = moment.defineLocale('ml', {\n months : 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split('_'),\n monthsShort : 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split('_'),\n monthsParseExact : true,\n weekdays : 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split('_'),\n weekdaysShort : 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),\n weekdaysMin : 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm -നു',\n LTS : 'A h:mm:ss -നു',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm -നു',\n LLLL : 'dddd, D MMMM YYYY, A h:mm -നു'\n },\n calendar : {\n sameDay : '[ഇന്ന്] LT',\n nextDay : '[നാളെ] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[ഇന്നലെ] LT',\n lastWeek : '[കഴിഞ്ഞ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s കഴിഞ്ഞ്',\n past : '%s മുൻപ്',\n s : 'അൽപ നിമിഷങ്ങൾ',\n ss : '%d സെക്കൻഡ്',\n m : 'ഒരു മിനിറ്റ്',\n mm : '%d മിനിറ്റ്',\n h : 'ഒരു മണിക്കൂർ',\n hh : '%d മണിക്കൂർ',\n d : 'ഒരു ദിവസം',\n dd : '%d ദിവസം',\n M : 'ഒരു മാസം',\n MM : '%d മാസം',\n y : 'ഒരു വർഷം',\n yy : '%d വർഷം'\n },\n meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if ((meridiem === 'രാത്രി' && hour >= 4) ||\n meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||\n meridiem === 'വൈകുന്നേരം') {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'രാത്രി';\n } else if (hour < 12) {\n return 'രാവിലെ';\n } else if (hour < 17) {\n return 'ഉച്ച കഴിഞ്ഞ്';\n } else if (hour < 20) {\n return 'വൈകുന്നേരം';\n } else {\n return 'രാത്രി';\n }\n }\n });\n\n return ml;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function translate(number, withoutSuffix, key, isFuture) {\n switch (key) {\n case 's':\n return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын';\n case 'ss':\n return number + (withoutSuffix ? ' секунд' : ' секундын');\n case 'm':\n case 'mm':\n return number + (withoutSuffix ? ' минут' : ' минутын');\n case 'h':\n case 'hh':\n return number + (withoutSuffix ? ' цаг' : ' цагийн');\n case 'd':\n case 'dd':\n return number + (withoutSuffix ? ' өдөр' : ' өдрийн');\n case 'M':\n case 'MM':\n return number + (withoutSuffix ? ' сар' : ' сарын');\n case 'y':\n case 'yy':\n return number + (withoutSuffix ? ' жил' : ' жилийн');\n default:\n return number;\n }\n }\n\n var mn = moment.defineLocale('mn', {\n months : 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split('_'),\n monthsShort : '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split('_'),\n monthsParseExact : true,\n weekdays : 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'),\n weekdaysShort : 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'),\n weekdaysMin : 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'YYYY оны MMMMын D',\n LLL : 'YYYY оны MMMMын D HH:mm',\n LLLL : 'dddd, YYYY оны MMMMын D HH:mm'\n },\n meridiemParse: /ҮӨ|ҮХ/i,\n isPM : function (input) {\n return input === 'ҮХ';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ҮӨ';\n } else {\n return 'ҮХ';\n }\n },\n calendar : {\n sameDay : '[Өнөөдөр] LT',\n nextDay : '[Маргааш] LT',\n nextWeek : '[Ирэх] dddd LT',\n lastDay : '[Өчигдөр] LT',\n lastWeek : '[Өнгөрсөн] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s дараа',\n past : '%s өмнө',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2} өдөр/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + ' өдөр';\n default:\n return number;\n }\n }\n });\n\n return mn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '१',\n '2': '२',\n '3': '३',\n '4': '४',\n '5': '५',\n '6': '६',\n '7': '७',\n '8': '८',\n '9': '९',\n '0': '०'\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0'\n };\n\n function relativeTimeMr(number, withoutSuffix, string, isFuture)\n {\n var output = '';\n if (withoutSuffix) {\n switch (string) {\n case 's': output = 'काही सेकंद'; break;\n case 'ss': output = '%d सेकंद'; break;\n case 'm': output = 'एक मिनिट'; break;\n case 'mm': output = '%d मिनिटे'; break;\n case 'h': output = 'एक तास'; break;\n case 'hh': output = '%d तास'; break;\n case 'd': output = 'एक दिवस'; break;\n case 'dd': output = '%d दिवस'; break;\n case 'M': output = 'एक महिना'; break;\n case 'MM': output = '%d महिने'; break;\n case 'y': output = 'एक वर्ष'; break;\n case 'yy': output = '%d वर्षे'; break;\n }\n }\n else {\n switch (string) {\n case 's': output = 'काही सेकंदां'; break;\n case 'ss': output = '%d सेकंदां'; break;\n case 'm': output = 'एका मिनिटा'; break;\n case 'mm': output = '%d मिनिटां'; break;\n case 'h': output = 'एका तासा'; break;\n case 'hh': output = '%d तासां'; break;\n case 'd': output = 'एका दिवसा'; break;\n case 'dd': output = '%d दिवसां'; break;\n case 'M': output = 'एका महिन्या'; break;\n case 'MM': output = '%d महिन्यां'; break;\n case 'y': output = 'एका वर्षा'; break;\n case 'yy': output = '%d वर्षां'; break;\n }\n }\n return output.replace(/%d/i, number);\n }\n\n var mr = moment.defineLocale('mr', {\n months : 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split('_'),\n monthsShort: 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split('_'),\n monthsParseExact : true,\n weekdays : 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort : 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat : {\n LT : 'A h:mm वाजता',\n LTS : 'A h:mm:ss वाजता',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm वाजता',\n LLLL : 'dddd, D MMMM YYYY, A h:mm वाजता'\n },\n calendar : {\n sameDay : '[आज] LT',\n nextDay : '[उद्या] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[काल] LT',\n lastWeek: '[मागील] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future: '%sमध्ये',\n past: '%sपूर्वी',\n s: relativeTimeMr,\n ss: relativeTimeMr,\n m: relativeTimeMr,\n mm: relativeTimeMr,\n h: relativeTimeMr,\n hh: relativeTimeMr,\n d: relativeTimeMr,\n dd: relativeTimeMr,\n M: relativeTimeMr,\n MM: relativeTimeMr,\n y: relativeTimeMr,\n yy: relativeTimeMr\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात्री') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सकाळी') {\n return hour;\n } else if (meridiem === 'दुपारी') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'सायंकाळी') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात्री';\n } else if (hour < 10) {\n return 'सकाळी';\n } else if (hour < 17) {\n return 'दुपारी';\n } else if (hour < 20) {\n return 'सायंकाळी';\n } else {\n return 'रात्री';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return mr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ms = moment.defineLocale('ms', {\n months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),\n monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar : {\n sameDay : '[Hari ini pukul] LT',\n nextDay : '[Esok pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kelmarin pukul] LT',\n lastWeek : 'dddd [lepas pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dalam %s',\n past : '%s yang lepas',\n s : 'beberapa saat',\n ss : '%d saat',\n m : 'seminit',\n mm : '%d minit',\n h : 'sejam',\n hh : '%d jam',\n d : 'sehari',\n dd : '%d hari',\n M : 'sebulan',\n MM : '%d bulan',\n y : 'setahun',\n yy : '%d tahun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return ms;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var msMy = moment.defineLocale('ms-my', {\n months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),\n monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar : {\n sameDay : '[Hari ini pukul] LT',\n nextDay : '[Esok pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kelmarin pukul] LT',\n lastWeek : 'dddd [lepas pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dalam %s',\n past : '%s yang lepas',\n s : 'beberapa saat',\n ss : '%d saat',\n m : 'seminit',\n mm : '%d minit',\n h : 'sejam',\n hh : '%d jam',\n d : 'sehari',\n dd : '%d hari',\n M : 'sebulan',\n MM : '%d bulan',\n y : 'setahun',\n yy : '%d tahun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return msMy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var mt = moment.defineLocale('mt', {\n months : 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split('_'),\n monthsShort : 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'),\n weekdays : 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split('_'),\n weekdaysShort : 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'),\n weekdaysMin : 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Illum fil-]LT',\n nextDay : '[Għada fil-]LT',\n nextWeek : 'dddd [fil-]LT',\n lastDay : '[Il-bieraħ fil-]LT',\n lastWeek : 'dddd [li għadda] [fil-]LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'f’ %s',\n past : '%s ilu',\n s : 'ftit sekondi',\n ss : '%d sekondi',\n m : 'minuta',\n mm : '%d minuti',\n h : 'siegħa',\n hh : '%d siegħat',\n d : 'ġurnata',\n dd : '%d ġranet',\n M : 'xahar',\n MM : '%d xhur',\n y : 'sena',\n yy : '%d sni'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return mt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '၁',\n '2': '၂',\n '3': '၃',\n '4': '၄',\n '5': '၅',\n '6': '၆',\n '7': '၇',\n '8': '၈',\n '9': '၉',\n '0': '၀'\n }, numberMap = {\n '၁': '1',\n '၂': '2',\n '၃': '3',\n '၄': '4',\n '၅': '5',\n '၆': '6',\n '၇': '7',\n '၈': '8',\n '၉': '9',\n '၀': '0'\n };\n\n var my = moment.defineLocale('my', {\n months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split('_'),\n monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),\n weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split('_'),\n weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[ယနေ.] LT [မှာ]',\n nextDay: '[မနက်ဖြန်] LT [မှာ]',\n nextWeek: 'dddd LT [မှာ]',\n lastDay: '[မနေ.က] LT [မှာ]',\n lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'လာမည့် %s မှာ',\n past: 'လွန်ခဲ့သော %s က',\n s: 'စက္ကန်.အနည်းငယ်',\n ss : '%d စက္ကန့်',\n m: 'တစ်မိနစ်',\n mm: '%d မိနစ်',\n h: 'တစ်နာရီ',\n hh: '%d နာရီ',\n d: 'တစ်ရက်',\n dd: '%d ရက်',\n M: 'တစ်လ',\n MM: '%d လ',\n y: 'တစ်နှစ်',\n yy: '%d နှစ်'\n },\n preparse: function (string) {\n return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return my;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var nb = moment.defineLocale('nb', {\n months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n monthsShort : 'jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact : true,\n weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort : 'sø._ma._ti._on._to._fr._lø.'.split('_'),\n weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY [kl.] HH:mm',\n LLLL : 'dddd D. MMMM YYYY [kl.] HH:mm'\n },\n calendar : {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[forrige] dddd [kl.] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : '%s siden',\n s : 'noen sekunder',\n ss : '%d sekunder',\n m : 'ett minutt',\n mm : '%d minutter',\n h : 'en time',\n hh : '%d timer',\n d : 'en dag',\n dd : '%d dager',\n M : 'en måned',\n MM : '%d måneder',\n y : 'ett år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nb;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '१',\n '2': '२',\n '3': '३',\n '4': '४',\n '5': '५',\n '6': '६',\n '7': '७',\n '8': '८',\n '9': '९',\n '0': '०'\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0'\n };\n\n var ne = moment.defineLocale('ne', {\n months : 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split('_'),\n monthsShort : 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split('_'),\n monthsParseExact : true,\n weekdays : 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split('_'),\n weekdaysShort : 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),\n weekdaysMin : 'आ._सो._मं._बु._बि._शु._श.'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'Aको h:mm बजे',\n LTS : 'Aको h:mm:ss बजे',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, Aको h:mm बजे',\n LLLL : 'dddd, D MMMM YYYY, Aको h:mm बजे'\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /राति|बिहान|दिउँसो|साँझ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राति') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'बिहान') {\n return hour;\n } else if (meridiem === 'दिउँसो') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'साँझ') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 3) {\n return 'राति';\n } else if (hour < 12) {\n return 'बिहान';\n } else if (hour < 16) {\n return 'दिउँसो';\n } else if (hour < 20) {\n return 'साँझ';\n } else {\n return 'राति';\n }\n },\n calendar : {\n sameDay : '[आज] LT',\n nextDay : '[भोलि] LT',\n nextWeek : '[आउँदो] dddd[,] LT',\n lastDay : '[हिजो] LT',\n lastWeek : '[गएको] dddd[,] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%sमा',\n past : '%s अगाडि',\n s : 'केही क्षण',\n ss : '%d सेकेण्ड',\n m : 'एक मिनेट',\n mm : '%d मिनेट',\n h : 'एक घण्टा',\n hh : '%d घण्टा',\n d : 'एक दिन',\n dd : '%d दिन',\n M : 'एक महिना',\n MM : '%d महिना',\n y : 'एक बर्ष',\n yy : '%d बर्ष'\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return ne;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');\n\n var monthsParse = [/^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];\n var monthsRegex = /^(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;\n\n var nl = moment.defineLocale('nl', {\n months : 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex: /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n\n weekdays : 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort : 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin : 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD-MM-YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'over %s',\n past : '%s geleden',\n s : 'een paar seconden',\n ss : '%d seconden',\n m : 'één minuut',\n mm : '%d minuten',\n h : 'één uur',\n hh : '%d uur',\n d : 'één dag',\n dd : '%d dagen',\n M : 'één maand',\n MM : '%d maanden',\n y : 'één jaar',\n yy : '%d jaar'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');\n\n var monthsParse = [/^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];\n var monthsRegex = /^(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;\n\n var nlBe = moment.defineLocale('nl-be', {\n months : 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex: /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n\n weekdays : 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort : 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin : 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'over %s',\n past : '%s geleden',\n s : 'een paar seconden',\n ss : '%d seconden',\n m : 'één minuut',\n mm : '%d minuten',\n h : 'één uur',\n hh : '%d uur',\n d : 'één dag',\n dd : '%d dagen',\n M : 'één maand',\n MM : '%d maanden',\n y : 'één jaar',\n yy : '%d jaar'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nlBe;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var nn = moment.defineLocale('nn', {\n months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays : 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n weekdaysShort : 'sun_mån_tys_ons_tor_fre_lau'.split('_'),\n weekdaysMin : 'su_må_ty_on_to_fr_lø'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY [kl.] H:mm',\n LLLL : 'dddd D. MMMM YYYY [kl.] HH:mm'\n },\n calendar : {\n sameDay: '[I dag klokka] LT',\n nextDay: '[I morgon klokka] LT',\n nextWeek: 'dddd [klokka] LT',\n lastDay: '[I går klokka] LT',\n lastWeek: '[Føregåande] dddd [klokka] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : '%s sidan',\n s : 'nokre sekund',\n ss : '%d sekund',\n m : 'eit minutt',\n mm : '%d minutt',\n h : 'ein time',\n hh : '%d timar',\n d : 'ein dag',\n dd : '%d dagar',\n M : 'ein månad',\n MM : '%d månader',\n y : 'eit år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '੧',\n '2': '੨',\n '3': '੩',\n '4': '੪',\n '5': '੫',\n '6': '੬',\n '7': '੭',\n '8': '੮',\n '9': '੯',\n '0': '੦'\n },\n numberMap = {\n '੧': '1',\n '੨': '2',\n '੩': '3',\n '੪': '4',\n '੫': '5',\n '੬': '6',\n '੭': '7',\n '੮': '8',\n '੯': '9',\n '੦': '0'\n };\n\n var paIn = moment.defineLocale('pa-in', {\n // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.\n months : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'),\n monthsShort : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'),\n weekdays : 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split('_'),\n weekdaysShort : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n weekdaysMin : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm ਵਜੇ',\n LTS : 'A h:mm:ss ਵਜੇ',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm ਵਜੇ',\n LLLL : 'dddd, D MMMM YYYY, A h:mm ਵਜੇ'\n },\n calendar : {\n sameDay : '[ਅਜ] LT',\n nextDay : '[ਕਲ] LT',\n nextWeek : '[ਅਗਲਾ] dddd, LT',\n lastDay : '[ਕਲ] LT',\n lastWeek : '[ਪਿਛਲੇ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ਵਿੱਚ',\n past : '%s ਪਿਛਲੇ',\n s : 'ਕੁਝ ਸਕਿੰਟ',\n ss : '%d ਸਕਿੰਟ',\n m : 'ਇਕ ਮਿੰਟ',\n mm : '%d ਮਿੰਟ',\n h : 'ਇੱਕ ਘੰਟਾ',\n hh : '%d ਘੰਟੇ',\n d : 'ਇੱਕ ਦਿਨ',\n dd : '%d ਦਿਨ',\n M : 'ਇੱਕ ਮਹੀਨਾ',\n MM : '%d ਮਹੀਨੇ',\n y : 'ਇੱਕ ਸਾਲ',\n yy : '%d ਸਾਲ'\n },\n preparse: function (string) {\n return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Punjabi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.\n meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ਰਾਤ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ਸਵੇਰ') {\n return hour;\n } else if (meridiem === 'ਦੁਪਹਿਰ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ਸ਼ਾਮ') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ਰਾਤ';\n } else if (hour < 10) {\n return 'ਸਵੇਰ';\n } else if (hour < 17) {\n return 'ਦੁਪਹਿਰ';\n } else if (hour < 20) {\n return 'ਸ਼ਾਮ';\n } else {\n return 'ਰਾਤ';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return paIn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsNominative = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_'),\n monthsSubjective = 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split('_');\n function plural(n) {\n return (n % 10 < 5) && (n % 10 > 1) && ((~~(n / 10) % 10) !== 1);\n }\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n return result + (plural(number) ? 'sekundy' : 'sekund');\n case 'm':\n return withoutSuffix ? 'minuta' : 'minutę';\n case 'mm':\n return result + (plural(number) ? 'minuty' : 'minut');\n case 'h':\n return withoutSuffix ? 'godzina' : 'godzinę';\n case 'hh':\n return result + (plural(number) ? 'godziny' : 'godzin');\n case 'MM':\n return result + (plural(number) ? 'miesiące' : 'miesięcy');\n case 'yy':\n return result + (plural(number) ? 'lata' : 'lat');\n }\n }\n\n var pl = moment.defineLocale('pl', {\n months : function (momentToFormat, format) {\n if (!momentToFormat) {\n return monthsNominative;\n } else if (format === '') {\n // Hack: if format empty we know this is used to generate\n // RegExp by moment. Give then back both valid forms of months\n // in RegExp ready format.\n return '(' + monthsSubjective[momentToFormat.month()] + '|' + monthsNominative[momentToFormat.month()] + ')';\n } else if (/D MMMM/.test(format)) {\n return monthsSubjective[momentToFormat.month()];\n } else {\n return monthsNominative[momentToFormat.month()];\n }\n },\n monthsShort : 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),\n weekdays : 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),\n weekdaysShort : 'ndz_pon_wt_śr_czw_pt_sob'.split('_'),\n weekdaysMin : 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Dziś o] LT',\n nextDay: '[Jutro o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W niedzielę o] LT';\n\n case 2:\n return '[We wtorek o] LT';\n\n case 3:\n return '[W środę o] LT';\n\n case 6:\n return '[W sobotę o] LT';\n\n default:\n return '[W] dddd [o] LT';\n }\n },\n lastDay: '[Wczoraj o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W zeszłą niedzielę o] LT';\n case 3:\n return '[W zeszłą środę o] LT';\n case 6:\n return '[W zeszłą sobotę o] LT';\n default:\n return '[W zeszły] dddd [o] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : '%s temu',\n s : 'kilka sekund',\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : '1 dzień',\n dd : '%d dni',\n M : 'miesiąc',\n MM : translate,\n y : 'rok',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return pl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var pt = moment.defineLocale('pt', {\n months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays : 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split('_'),\n weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin : 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY HH:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return (this.day() === 0 || this.day() === 6) ?\n '[Último] dddd [às] LT' : // Saturday + Sunday\n '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'em %s',\n past : 'há %s',\n s : 'segundos',\n ss : '%d segundos',\n m : 'um minuto',\n mm : '%d minutos',\n h : 'uma hora',\n hh : '%d horas',\n d : 'um dia',\n dd : '%d dias',\n M : 'um mês',\n MM : '%d meses',\n y : 'um ano',\n yy : '%d anos'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return pt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ptBr = moment.defineLocale('pt-br', {\n months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays : 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split('_'),\n weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin : 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY [às] HH:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY [às] HH:mm'\n },\n calendar : {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return (this.day() === 0 || this.day() === 6) ?\n '[Último] dddd [às] LT' : // Saturday + Sunday\n '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'em %s',\n past : 'há %s',\n s : 'poucos segundos',\n ss : '%d segundos',\n m : 'um minuto',\n mm : '%d minutos',\n h : 'uma hora',\n hh : '%d horas',\n d : 'um dia',\n dd : '%d dias',\n M : 'um mês',\n MM : '%d meses',\n y : 'um ano',\n yy : '%d anos'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal : '%dº'\n });\n\n return ptBr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': 'secunde',\n 'mm': 'minute',\n 'hh': 'ore',\n 'dd': 'zile',\n 'MM': 'luni',\n 'yy': 'ani'\n },\n separator = ' ';\n if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n separator = ' de ';\n }\n return number + separator + format[key];\n }\n\n var ro = moment.defineLocale('ro', {\n months : 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split('_'),\n monthsShort : 'ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),\n weekdaysShort : 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),\n weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY H:mm',\n LLLL : 'dddd, D MMMM YYYY H:mm'\n },\n calendar : {\n sameDay: '[azi la] LT',\n nextDay: '[mâine la] LT',\n nextWeek: 'dddd [la] LT',\n lastDay: '[ieri la] LT',\n lastWeek: '[fosta] dddd [la] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'peste %s',\n past : '%s în urmă',\n s : 'câteva secunde',\n ss : relativeTimeWithPlural,\n m : 'un minut',\n mm : relativeTimeWithPlural,\n h : 'o oră',\n hh : relativeTimeWithPlural,\n d : 'o zi',\n dd : relativeTimeWithPlural,\n M : 'o lună',\n MM : relativeTimeWithPlural,\n y : 'un an',\n yy : relativeTimeWithPlural\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return ro;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n 'mm': withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',\n 'hh': 'час_часа_часов',\n 'dd': 'день_дня_дней',\n 'MM': 'месяц_месяца_месяцев',\n 'yy': 'год_года_лет'\n };\n if (key === 'm') {\n return withoutSuffix ? 'минута' : 'минуту';\n }\n else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n var monthsParse = [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[йя]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i];\n\n // http://new.gramota.ru/spravka/rules/139-prop : § 103\n // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637\n // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753\n var ru = moment.defineLocale('ru', {\n months : {\n format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split('_'),\n standalone: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_')\n },\n monthsShort : {\n // по CLDR именно \"июл.\" и \"июн.\", но какой смысл менять букву на точку ?\n format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split('_'),\n standalone: 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split('_')\n },\n weekdays : {\n standalone: 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split('_'),\n format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_'),\n isFormat: /\\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\\] ?dddd/\n },\n weekdaysShort : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n\n // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки\n monthsRegex: /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // копия предыдущего\n monthsShortRegex: /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // полные названия с падежами\n monthsStrictRegex: /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,\n\n // Выражение, которое соотвествует только сокращённым формам\n monthsShortStrictRegex: /^(янв\\.|февр?\\.|мар[т.]|апр\\.|ма[яй]|июн[ья.]|июл[ья.]|авг\\.|сент?\\.|окт\\.|нояб?\\.|дек\\.)/i,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY г.',\n LLL : 'D MMMM YYYY г., H:mm',\n LLLL : 'dddd, D MMMM YYYY г., H:mm'\n },\n calendar : {\n sameDay: '[Сегодня, в] LT',\n nextDay: '[Завтра, в] LT',\n lastDay: '[Вчера, в] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В следующее] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В следующий] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В следующую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n lastWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В прошлое] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В прошлый] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В прошлую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'через %s',\n past : '%s назад',\n s : 'несколько секунд',\n ss : relativeTimeWithPlural,\n m : relativeTimeWithPlural,\n mm : relativeTimeWithPlural,\n h : 'час',\n hh : relativeTimeWithPlural,\n d : 'день',\n dd : relativeTimeWithPlural,\n M : 'месяц',\n MM : relativeTimeWithPlural,\n y : 'год',\n yy : relativeTimeWithPlural\n },\n meridiemParse: /ночи|утра|дня|вечера/i,\n isPM : function (input) {\n return /^(дня|вечера)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночи';\n } else if (hour < 12) {\n return 'утра';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечера';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го|я)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n return number + '-й';\n case 'D':\n return number + '-го';\n case 'w':\n case 'W':\n return number + '-я';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ru;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'جنوري',\n 'فيبروري',\n 'مارچ',\n 'اپريل',\n 'مئي',\n 'جون',\n 'جولاءِ',\n 'آگسٽ',\n 'سيپٽمبر',\n 'آڪٽوبر',\n 'نومبر',\n 'ڊسمبر'\n ];\n var days = [\n 'آچر',\n 'سومر',\n 'اڱارو',\n 'اربع',\n 'خميس',\n 'جمع',\n 'ڇنڇر'\n ];\n\n var sd = moment.defineLocale('sd', {\n months : months,\n monthsShort : months,\n weekdays : days,\n weekdaysShort : days,\n weekdaysMin : days,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd، D MMMM YYYY HH:mm'\n },\n meridiemParse: /صبح|شام/,\n isPM : function (input) {\n return 'شام' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar : {\n sameDay : '[اڄ] LT',\n nextDay : '[سڀاڻي] LT',\n nextWeek : 'dddd [اڳين هفتي تي] LT',\n lastDay : '[ڪالهه] LT',\n lastWeek : '[گزريل هفتي] dddd [تي] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s پوء',\n past : '%s اڳ',\n s : 'چند سيڪنڊ',\n ss : '%d سيڪنڊ',\n m : 'هڪ منٽ',\n mm : '%d منٽ',\n h : 'هڪ ڪلاڪ',\n hh : '%d ڪلاڪ',\n d : 'هڪ ڏينهن',\n dd : '%d ڏينهن',\n M : 'هڪ مهينو',\n MM : '%d مهينا',\n y : 'هڪ سال',\n yy : '%d سال'\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sd;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var se = moment.defineLocale('se', {\n months : 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split('_'),\n monthsShort : 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'),\n weekdays : 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split('_'),\n weekdaysShort : 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'),\n weekdaysMin : 's_v_m_g_d_b_L'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'MMMM D. [b.] YYYY',\n LLL : 'MMMM D. [b.] YYYY [ti.] HH:mm',\n LLLL : 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm'\n },\n calendar : {\n sameDay: '[otne ti] LT',\n nextDay: '[ihttin ti] LT',\n nextWeek: 'dddd [ti] LT',\n lastDay: '[ikte ti] LT',\n lastWeek: '[ovddit] dddd [ti] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s geažes',\n past : 'maŋit %s',\n s : 'moadde sekunddat',\n ss: '%d sekunddat',\n m : 'okta minuhta',\n mm : '%d minuhtat',\n h : 'okta diimmu',\n hh : '%d diimmut',\n d : 'okta beaivi',\n dd : '%d beaivvit',\n M : 'okta mánnu',\n MM : '%d mánut',\n y : 'okta jahki',\n yy : '%d jagit'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return se;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n /*jshint -W100*/\n var si = moment.defineLocale('si', {\n months : 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split('_'),\n monthsShort : 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split('_'),\n weekdays : 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split('_'),\n weekdaysShort : 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),\n weekdaysMin : 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'a h:mm',\n LTS : 'a h:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY MMMM D',\n LLL : 'YYYY MMMM D, a h:mm',\n LLLL : 'YYYY MMMM D [වැනි] dddd, a h:mm:ss'\n },\n calendar : {\n sameDay : '[අද] LT[ට]',\n nextDay : '[හෙට] LT[ට]',\n nextWeek : 'dddd LT[ට]',\n lastDay : '[ඊයේ] LT[ට]',\n lastWeek : '[පසුගිය] dddd LT[ට]',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%sකින්',\n past : '%sකට පෙර',\n s : 'තත්පර කිහිපය',\n ss : 'තත්පර %d',\n m : 'මිනිත්තුව',\n mm : 'මිනිත්තු %d',\n h : 'පැය',\n hh : 'පැය %d',\n d : 'දිනය',\n dd : 'දින %d',\n M : 'මාසය',\n MM : 'මාස %d',\n y : 'වසර',\n yy : 'වසර %d'\n },\n dayOfMonthOrdinalParse: /\\d{1,2} වැනි/,\n ordinal : function (number) {\n return number + ' වැනි';\n },\n meridiemParse : /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,\n isPM : function (input) {\n return input === 'ප.ව.' || input === 'පස් වරු';\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'ප.ව.' : 'පස් වරු';\n } else {\n return isLower ? 'පෙ.ව.' : 'පෙර වරු';\n }\n }\n });\n\n return si;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split('_'),\n monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');\n function plural(n) {\n return (n > 1) && (n < 5);\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return (withoutSuffix || isFuture) ? 'pár sekúnd' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekúnd');\n } else {\n return result + 'sekundami';\n }\n break;\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minúta' : (isFuture ? 'minútu' : 'minútou');\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minúty' : 'minút');\n } else {\n return result + 'minútami';\n }\n break;\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodín');\n } else {\n return result + 'hodinami';\n }\n break;\n case 'd': // a day / in a day / a day ago\n return (withoutSuffix || isFuture) ? 'deň' : 'dňom';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dni' : 'dní');\n } else {\n return result + 'dňami';\n }\n break;\n case 'M': // a month / in a month / a month ago\n return (withoutSuffix || isFuture) ? 'mesiac' : 'mesiacom';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'mesiace' : 'mesiacov');\n } else {\n return result + 'mesiacmi';\n }\n break;\n case 'y': // a year / in a year / a year ago\n return (withoutSuffix || isFuture) ? 'rok' : 'rokom';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'rokov');\n } else {\n return result + 'rokmi';\n }\n break;\n }\n }\n\n var sk = moment.defineLocale('sk', {\n months : months,\n monthsShort : monthsShort,\n weekdays : 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),\n weekdaysShort : 'ne_po_ut_st_št_pi_so'.split('_'),\n weekdaysMin : 'ne_po_ut_st_št_pi_so'.split('_'),\n longDateFormat : {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay: '[dnes o] LT',\n nextDay: '[zajtra o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v nedeľu o] LT';\n case 1:\n case 2:\n return '[v] dddd [o] LT';\n case 3:\n return '[v stredu o] LT';\n case 4:\n return '[vo štvrtok o] LT';\n case 5:\n return '[v piatok o] LT';\n case 6:\n return '[v sobotu o] LT';\n }\n },\n lastDay: '[včera o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulú nedeľu o] LT';\n case 1:\n case 2:\n return '[minulý] dddd [o] LT';\n case 3:\n return '[minulú stredu o] LT';\n case 4:\n case 5:\n return '[minulý] dddd [o] LT';\n case 6:\n return '[minulú sobotu o] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'pred %s',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture ? 'nekaj sekund' : 'nekaj sekundami';\n case 'ss':\n if (number === 1) {\n result += withoutSuffix ? 'sekundo' : 'sekundi';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah';\n } else {\n result += 'sekund';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'ena minuta' : 'eno minuto';\n case 'mm':\n if (number === 1) {\n result += withoutSuffix ? 'minuta' : 'minuto';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'minuti' : 'minutama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'minute' : 'minutami';\n } else {\n result += withoutSuffix || isFuture ? 'minut' : 'minutami';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'ena ura' : 'eno uro';\n case 'hh':\n if (number === 1) {\n result += withoutSuffix ? 'ura' : 'uro';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'uri' : 'urama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'ure' : 'urami';\n } else {\n result += withoutSuffix || isFuture ? 'ur' : 'urami';\n }\n return result;\n case 'd':\n return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';\n case 'dd':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'dan' : 'dnem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';\n } else {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevi';\n }\n return result;\n case 'M':\n return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';\n case 'MM':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'mesece' : 'meseci';\n } else {\n result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';\n }\n return result;\n case 'y':\n return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';\n case 'yy':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'leto' : 'letom';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'leti' : 'letoma';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'leta' : 'leti';\n } else {\n result += withoutSuffix || isFuture ? 'let' : 'leti';\n }\n return result;\n }\n }\n\n var sl = moment.defineLocale('sl', {\n months : 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split('_'),\n monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),\n weekdaysShort : 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),\n weekdaysMin : 'ne_po_to_sr_če_pe_so'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[danes ob] LT',\n nextDay : '[jutri ob] LT',\n\n nextWeek : function () {\n switch (this.day()) {\n case 0:\n return '[v] [nedeljo] [ob] LT';\n case 3:\n return '[v] [sredo] [ob] LT';\n case 6:\n return '[v] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[v] dddd [ob] LT';\n }\n },\n lastDay : '[včeraj ob] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n return '[prejšnjo] [nedeljo] [ob] LT';\n case 3:\n return '[prejšnjo] [sredo] [ob] LT';\n case 6:\n return '[prejšnjo] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prejšnji] dddd [ob] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'čez %s',\n past : 'pred %s',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return sl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var sq = moment.defineLocale('sq', {\n months : 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split('_'),\n monthsShort : 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),\n weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'),\n weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),\n weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'),\n weekdaysParseExact : true,\n meridiemParse: /PD|MD/,\n isPM: function (input) {\n return input.charAt(0) === 'M';\n },\n meridiem : function (hours, minutes, isLower) {\n return hours < 12 ? 'PD' : 'MD';\n },\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Sot në] LT',\n nextDay : '[Nesër në] LT',\n nextWeek : 'dddd [në] LT',\n lastDay : '[Dje në] LT',\n lastWeek : 'dddd [e kaluar në] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'në %s',\n past : '%s më parë',\n s : 'disa sekonda',\n ss : '%d sekonda',\n m : 'një minutë',\n mm : '%d minuta',\n h : 'një orë',\n hh : '%d orë',\n d : 'një ditë',\n dd : '%d ditë',\n M : 'një muaj',\n MM : '%d muaj',\n y : 'një vit',\n yy : '%d vite'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sq;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var translator = {\n words: { //Different grammatical cases\n ss: ['sekunda', 'sekunde', 'sekundi'],\n m: ['jedan minut', 'jedne minute'],\n mm: ['minut', 'minute', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mesec', 'meseca', 'meseci'],\n yy: ['godina', 'godine', 'godina']\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n }\n }\n };\n\n var sr = moment.defineLocale('sr', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split('_'),\n monthsShort: 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split('_'),\n weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm'\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedelju] [u] LT';\n case 3:\n return '[u] [sredu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[juče u] LT',\n lastWeek : function () {\n var lastWeekDays = [\n '[prošle] [nedelje] [u] LT',\n '[prošlog] [ponedeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT'\n ];\n return lastWeekDays[this.day()];\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'pre %s',\n s : 'nekoliko sekundi',\n ss : translator.translate,\n m : translator.translate,\n mm : translator.translate,\n h : translator.translate,\n hh : translator.translate,\n d : 'dan',\n dd : translator.translate,\n M : 'mesec',\n MM : translator.translate,\n y : 'godinu',\n yy : translator.translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return sr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var translator = {\n words: { //Different grammatical cases\n ss: ['секунда', 'секунде', 'секунди'],\n m: ['један минут', 'једне минуте'],\n mm: ['минут', 'минуте', 'минута'],\n h: ['један сат', 'једног сата'],\n hh: ['сат', 'сата', 'сати'],\n dd: ['дан', 'дана', 'дана'],\n MM: ['месец', 'месеца', 'месеци'],\n yy: ['година', 'године', 'година']\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n }\n }\n };\n\n var srCyrl = moment.defineLocale('sr-cyrl', {\n months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split('_'),\n monthsShort: 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),\n monthsParseExact: true,\n weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),\n weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),\n weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm'\n },\n calendar: {\n sameDay: '[данас у] LT',\n nextDay: '[сутра у] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[у] [недељу] [у] LT';\n case 3:\n return '[у] [среду] [у] LT';\n case 6:\n return '[у] [суботу] [у] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[у] dddd [у] LT';\n }\n },\n lastDay : '[јуче у] LT',\n lastWeek : function () {\n var lastWeekDays = [\n '[прошле] [недеље] [у] LT',\n '[прошлог] [понедељка] [у] LT',\n '[прошлог] [уторка] [у] LT',\n '[прошле] [среде] [у] LT',\n '[прошлог] [четвртка] [у] LT',\n '[прошлог] [петка] [у] LT',\n '[прошле] [суботе] [у] LT'\n ];\n return lastWeekDays[this.day()];\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'за %s',\n past : 'пре %s',\n s : 'неколико секунди',\n ss : translator.translate,\n m : translator.translate,\n mm : translator.translate,\n h : translator.translate,\n hh : translator.translate,\n d : 'дан',\n dd : translator.translate,\n M : 'месец',\n MM : translator.translate,\n y : 'годину',\n yy : translator.translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return srCyrl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ss = moment.defineLocale('ss', {\n months : \"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni\".split('_'),\n monthsShort : 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'),\n weekdays : 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split('_'),\n weekdaysShort : 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'),\n weekdaysMin : 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Namuhla nga] LT',\n nextDay : '[Kusasa nga] LT',\n nextWeek : 'dddd [nga] LT',\n lastDay : '[Itolo nga] LT',\n lastWeek : 'dddd [leliphelile] [nga] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'nga %s',\n past : 'wenteka nga %s',\n s : 'emizuzwana lomcane',\n ss : '%d mzuzwana',\n m : 'umzuzu',\n mm : '%d emizuzu',\n h : 'lihora',\n hh : '%d emahora',\n d : 'lilanga',\n dd : '%d emalanga',\n M : 'inyanga',\n MM : '%d tinyanga',\n y : 'umnyaka',\n yy : '%d iminyaka'\n },\n meridiemParse: /ekuseni|emini|entsambama|ebusuku/,\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'ekuseni';\n } else if (hours < 15) {\n return 'emini';\n } else if (hours < 19) {\n return 'entsambama';\n } else {\n return 'ebusuku';\n }\n },\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ekuseni') {\n return hour;\n } else if (meridiem === 'emini') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') {\n if (hour === 0) {\n return 0;\n }\n return hour + 12;\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal : '%d',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ss;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var sv = moment.defineLocale('sv', {\n months : 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays : 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),\n weekdaysShort : 'sön_mån_tis_ons_tor_fre_lör'.split('_'),\n weekdaysMin : 'sö_må_ti_on_to_fr_lö'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [kl.] HH:mm',\n LLLL : 'dddd D MMMM YYYY [kl.] HH:mm',\n lll : 'D MMM YYYY HH:mm',\n llll : 'ddd D MMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Idag] LT',\n nextDay: '[Imorgon] LT',\n lastDay: '[Igår] LT',\n nextWeek: '[På] dddd LT',\n lastWeek: '[I] dddd[s] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : 'för %s sedan',\n s : 'några sekunder',\n ss : '%d sekunder',\n m : 'en minut',\n mm : '%d minuter',\n h : 'en timme',\n hh : '%d timmar',\n d : 'en dag',\n dd : '%d dagar',\n M : 'en månad',\n MM : '%d månader',\n y : 'ett år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(e|a)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'e' :\n (b === 1) ? 'a' :\n (b === 2) ? 'a' :\n (b === 3) ? 'e' : 'e';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var sw = moment.defineLocale('sw', {\n months : 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split('_'),\n monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),\n weekdays : 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split('_'),\n weekdaysShort : 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),\n weekdaysMin : 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[leo saa] LT',\n nextDay : '[kesho saa] LT',\n nextWeek : '[wiki ijayo] dddd [saat] LT',\n lastDay : '[jana] LT',\n lastWeek : '[wiki iliyopita] dddd [saat] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s baadaye',\n past : 'tokea %s',\n s : 'hivi punde',\n ss : 'sekunde %d',\n m : 'dakika moja',\n mm : 'dakika %d',\n h : 'saa limoja',\n hh : 'masaa %d',\n d : 'siku moja',\n dd : 'masiku %d',\n M : 'mwezi mmoja',\n MM : 'miezi %d',\n y : 'mwaka mmoja',\n yy : 'miaka %d'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return sw;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '௧',\n '2': '௨',\n '3': '௩',\n '4': '௪',\n '5': '௫',\n '6': '௬',\n '7': '௭',\n '8': '௮',\n '9': '௯',\n '0': '௦'\n }, numberMap = {\n '௧': '1',\n '௨': '2',\n '௩': '3',\n '௪': '4',\n '௫': '5',\n '௬': '6',\n '௭': '7',\n '௮': '8',\n '௯': '9',\n '௦': '0'\n };\n\n var ta = moment.defineLocale('ta', {\n months : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),\n monthsShort : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),\n weekdays : 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split('_'),\n weekdaysShort : 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split('_'),\n weekdaysMin : 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, HH:mm',\n LLLL : 'dddd, D MMMM YYYY, HH:mm'\n },\n calendar : {\n sameDay : '[இன்று] LT',\n nextDay : '[நாளை] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[நேற்று] LT',\n lastWeek : '[கடந்த வாரம்] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s இல்',\n past : '%s முன்',\n s : 'ஒரு சில விநாடிகள்',\n ss : '%d விநாடிகள்',\n m : 'ஒரு நிமிடம்',\n mm : '%d நிமிடங்கள்',\n h : 'ஒரு மணி நேரம்',\n hh : '%d மணி நேரம்',\n d : 'ஒரு நாள்',\n dd : '%d நாட்கள்',\n M : 'ஒரு மாதம்',\n MM : '%d மாதங்கள்',\n y : 'ஒரு வருடம்',\n yy : '%d ஆண்டுகள்'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}வது/,\n ordinal : function (number) {\n return number + 'வது';\n },\n preparse: function (string) {\n return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // refer http://ta.wikipedia.org/s/1er1\n meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,\n meridiem : function (hour, minute, isLower) {\n if (hour < 2) {\n return ' யாமம்';\n } else if (hour < 6) {\n return ' வைகறை'; // வைகறை\n } else if (hour < 10) {\n return ' காலை'; // காலை\n } else if (hour < 14) {\n return ' நண்பகல்'; // நண்பகல்\n } else if (hour < 18) {\n return ' எற்பாடு'; // எற்பாடு\n } else if (hour < 22) {\n return ' மாலை'; // மாலை\n } else {\n return ' யாமம்';\n }\n },\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'யாமம்') {\n return hour < 2 ? hour : hour + 12;\n } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {\n return hour;\n } else if (meridiem === 'நண்பகல்') {\n return hour >= 10 ? hour : hour + 12;\n } else {\n return hour + 12;\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return ta;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var te = moment.defineLocale('te', {\n months : 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split('_'),\n monthsShort : 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split('_'),\n monthsParseExact : true,\n weekdays : 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split('_'),\n weekdaysShort : 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'),\n weekdaysMin : 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm',\n LLLL : 'dddd, D MMMM YYYY, A h:mm'\n },\n calendar : {\n sameDay : '[నేడు] LT',\n nextDay : '[రేపు] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[నిన్న] LT',\n lastWeek : '[గత] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s లో',\n past : '%s క్రితం',\n s : 'కొన్ని క్షణాలు',\n ss : '%d సెకన్లు',\n m : 'ఒక నిమిషం',\n mm : '%d నిమిషాలు',\n h : 'ఒక గంట',\n hh : '%d గంటలు',\n d : 'ఒక రోజు',\n dd : '%d రోజులు',\n M : 'ఒక నెల',\n MM : '%d నెలలు',\n y : 'ఒక సంవత్సరం',\n yy : '%d సంవత్సరాలు'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}వ/,\n ordinal : '%dవ',\n meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'రాత్రి') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ఉదయం') {\n return hour;\n } else if (meridiem === 'మధ్యాహ్నం') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'సాయంత్రం') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'రాత్రి';\n } else if (hour < 10) {\n return 'ఉదయం';\n } else if (hour < 17) {\n return 'మధ్యాహ్నం';\n } else if (hour < 20) {\n return 'సాయంత్రం';\n } else {\n return 'రాత్రి';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return te;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tet = moment.defineLocale('tet', {\n months : 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays : 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'),\n weekdaysShort : 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'),\n weekdaysMin : 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Ohin iha] LT',\n nextDay: '[Aban iha] LT',\n nextWeek: 'dddd [iha] LT',\n lastDay: '[Horiseik iha] LT',\n lastWeek: 'dddd [semana kotuk] [iha] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'iha %s',\n past : '%s liuba',\n s : 'minutu balun',\n ss : 'minutu %d',\n m : 'minutu ida',\n mm : 'minutu %d',\n h : 'oras ida',\n hh : 'oras %d',\n d : 'loron ida',\n dd : 'loron %d',\n M : 'fulan ida',\n MM : 'fulan %d',\n y : 'tinan ida',\n yy : 'tinan %d'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return tet;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 0: '-ум',\n 1: '-ум',\n 2: '-юм',\n 3: '-юм',\n 4: '-ум',\n 5: '-ум',\n 6: '-ум',\n 7: '-ум',\n 8: '-ум',\n 9: '-ум',\n 10: '-ум',\n 12: '-ум',\n 13: '-ум',\n 20: '-ум',\n 30: '-юм',\n 40: '-ум',\n 50: '-ум',\n 60: '-ум',\n 70: '-ум',\n 80: '-ум',\n 90: '-ум',\n 100: '-ум'\n };\n\n var tg = moment.defineLocale('tg', {\n months : 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split('_'),\n monthsShort : 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays : 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split('_'),\n weekdaysShort : 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'),\n weekdaysMin : 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Имрӯз соати] LT',\n nextDay : '[Пагоҳ соати] LT',\n lastDay : '[Дирӯз соати] LT',\n nextWeek : 'dddd[и] [ҳафтаи оянда соати] LT',\n lastWeek : 'dddd[и] [ҳафтаи гузашта соати] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'баъди %s',\n past : '%s пеш',\n s : 'якчанд сония',\n m : 'як дақиқа',\n mm : '%d дақиқа',\n h : 'як соат',\n hh : '%d соат',\n d : 'як рӯз',\n dd : '%d рӯз',\n M : 'як моҳ',\n MM : '%d моҳ',\n y : 'як сол',\n yy : '%d сол'\n },\n meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'шаб') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'субҳ') {\n return hour;\n } else if (meridiem === 'рӯз') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'бегоҳ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'шаб';\n } else if (hour < 11) {\n return 'субҳ';\n } else if (hour < 16) {\n return 'рӯз';\n } else if (hour < 19) {\n return 'бегоҳ';\n } else {\n return 'шаб';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ум|юм)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 1th is the first week of the year.\n }\n });\n\n return tg;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var th = moment.defineLocale('th', {\n months : 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split('_'),\n monthsShort : 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split('_'),\n monthsParseExact: true,\n weekdays : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),\n weekdaysShort : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference\n weekdaysMin : 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY เวลา H:mm',\n LLLL : 'วันddddที่ D MMMM YYYY เวลา H:mm'\n },\n meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,\n isPM: function (input) {\n return input === 'หลังเที่ยง';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ก่อนเที่ยง';\n } else {\n return 'หลังเที่ยง';\n }\n },\n calendar : {\n sameDay : '[วันนี้ เวลา] LT',\n nextDay : '[พรุ่งนี้ เวลา] LT',\n nextWeek : 'dddd[หน้า เวลา] LT',\n lastDay : '[เมื่อวานนี้ เวลา] LT',\n lastWeek : '[วัน]dddd[ที่แล้ว เวลา] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'อีก %s',\n past : '%sที่แล้ว',\n s : 'ไม่กี่วินาที',\n ss : '%d วินาที',\n m : '1 นาที',\n mm : '%d นาที',\n h : '1 ชั่วโมง',\n hh : '%d ชั่วโมง',\n d : '1 วัน',\n dd : '%d วัน',\n M : '1 เดือน',\n MM : '%d เดือน',\n y : '1 ปี',\n yy : '%d ปี'\n }\n });\n\n return th;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tlPh = moment.defineLocale('tl-ph', {\n months : 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split('_'),\n monthsShort : 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays : 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split('_'),\n weekdaysShort : 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'MM/D/YYYY',\n LL : 'MMMM D, YYYY',\n LLL : 'MMMM D, YYYY HH:mm',\n LLLL : 'dddd, MMMM DD, YYYY HH:mm'\n },\n calendar : {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'sa loob ng %s',\n past : '%s ang nakalipas',\n s : 'ilang segundo',\n ss : '%d segundo',\n m : 'isang minuto',\n mm : '%d minuto',\n h : 'isang oras',\n hh : '%d oras',\n d : 'isang araw',\n dd : '%d araw',\n M : 'isang buwan',\n MM : '%d buwan',\n y : 'isang taon',\n yy : '%d taon'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal : function (number) {\n return number;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return tlPh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_');\n\n function translateFuture(output) {\n var time = output;\n time = (output.indexOf('jaj') !== -1) ?\n time.slice(0, -3) + 'leS' :\n (output.indexOf('jar') !== -1) ?\n time.slice(0, -3) + 'waQ' :\n (output.indexOf('DIS') !== -1) ?\n time.slice(0, -3) + 'nem' :\n time + ' pIq';\n return time;\n }\n\n function translatePast(output) {\n var time = output;\n time = (output.indexOf('jaj') !== -1) ?\n time.slice(0, -3) + 'Hu’' :\n (output.indexOf('jar') !== -1) ?\n time.slice(0, -3) + 'wen' :\n (output.indexOf('DIS') !== -1) ?\n time.slice(0, -3) + 'ben' :\n time + ' ret';\n return time;\n }\n\n function translate(number, withoutSuffix, string, isFuture) {\n var numberNoun = numberAsNoun(number);\n switch (string) {\n case 'ss':\n return numberNoun + ' lup';\n case 'mm':\n return numberNoun + ' tup';\n case 'hh':\n return numberNoun + ' rep';\n case 'dd':\n return numberNoun + ' jaj';\n case 'MM':\n return numberNoun + ' jar';\n case 'yy':\n return numberNoun + ' DIS';\n }\n }\n\n function numberAsNoun(number) {\n var hundred = Math.floor((number % 1000) / 100),\n ten = Math.floor((number % 100) / 10),\n one = number % 10,\n word = '';\n if (hundred > 0) {\n word += numbersNouns[hundred] + 'vatlh';\n }\n if (ten > 0) {\n word += ((word !== '') ? ' ' : '') + numbersNouns[ten] + 'maH';\n }\n if (one > 0) {\n word += ((word !== '') ? ' ' : '') + numbersNouns[one];\n }\n return (word === '') ? 'pagh' : word;\n }\n\n var tlh = moment.defineLocale('tlh', {\n months : 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split('_'),\n monthsShort : 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split('_'),\n monthsParseExact : true,\n weekdays : 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysShort : 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysMin : 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[DaHjaj] LT',\n nextDay: '[wa’leS] LT',\n nextWeek: 'LLL',\n lastDay: '[wa’Hu’] LT',\n lastWeek: 'LLL',\n sameElse: 'L'\n },\n relativeTime : {\n future : translateFuture,\n past : translatePast,\n s : 'puS lup',\n ss : translate,\n m : 'wa’ tup',\n mm : translate,\n h : 'wa’ rep',\n hh : translate,\n d : 'wa’ jaj',\n dd : translate,\n M : 'wa’ jar',\n MM : translate,\n y : 'wa’ DIS',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return tlh;\n\n})));\n","\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n var suffixes = {\n 1: '\\'inci',\n 5: '\\'inci',\n 8: '\\'inci',\n 70: '\\'inci',\n 80: '\\'inci',\n 2: '\\'nci',\n 7: '\\'nci',\n 20: '\\'nci',\n 50: '\\'nci',\n 3: '\\'üncü',\n 4: '\\'üncü',\n 100: '\\'üncü',\n 6: '\\'ncı',\n 9: '\\'uncu',\n 10: '\\'uncu',\n 30: '\\'uncu',\n 60: '\\'ıncı',\n 90: '\\'ıncı'\n };\n\n var tr = moment.defineLocale('tr', {\n months : 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split('_'),\n monthsShort : 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),\n weekdays : 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split('_'),\n weekdaysShort : 'Paz_Pts_Sal_Çar_Per_Cum_Cts'.split('_'),\n weekdaysMin : 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[bugün saat] LT',\n nextDay : '[yarın saat] LT',\n nextWeek : '[gelecek] dddd [saat] LT',\n lastDay : '[dün] LT',\n lastWeek : '[geçen] dddd [saat] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s sonra',\n past : '%s önce',\n s : 'birkaç saniye',\n ss : '%d saniye',\n m : 'bir dakika',\n mm : '%d dakika',\n h : 'bir saat',\n hh : '%d saat',\n d : 'bir gün',\n dd : '%d gün',\n M : 'bir ay',\n MM : '%d ay',\n y : 'bir yıl',\n yy : '%d yıl'\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) { // special case for zero\n return number + '\\'ıncı';\n }\n var a = number % 10,\n b = number % 100 - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return tr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.\n // This is currently too difficult (maybe even impossible) to add.\n var tzl = moment.defineLocale('tzl', {\n months : 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),\n weekdays : 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),\n weekdaysShort : 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),\n weekdaysMin : 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM [dallas] YYYY',\n LLL : 'D. MMMM [dallas] YYYY HH.mm',\n LLLL : 'dddd, [li] D. MMMM [dallas] YYYY HH.mm'\n },\n meridiemParse: /d\\'o|d\\'a/i,\n isPM : function (input) {\n return 'd\\'o' === input.toLowerCase();\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'd\\'o' : 'D\\'O';\n } else {\n return isLower ? 'd\\'a' : 'D\\'A';\n }\n },\n calendar : {\n sameDay : '[oxhi à] LT',\n nextDay : '[demà à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[ieiri à] LT',\n lastWeek : '[sür el] dddd [lasteu à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'osprei %s',\n past : 'ja%s',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 's': ['viensas secunds', '\\'iensas secunds'],\n 'ss': [number + ' secunds', '' + number + ' secunds'],\n 'm': ['\\'n míut', '\\'iens míut'],\n 'mm': [number + ' míuts', '' + number + ' míuts'],\n 'h': ['\\'n þora', '\\'iensa þora'],\n 'hh': [number + ' þoras', '' + number + ' þoras'],\n 'd': ['\\'n ziua', '\\'iensa ziua'],\n 'dd': [number + ' ziuas', '' + number + ' ziuas'],\n 'M': ['\\'n mes', '\\'iens mes'],\n 'MM': [number + ' mesen', '' + number + ' mesen'],\n 'y': ['\\'n ar', '\\'iens ar'],\n 'yy': [number + ' ars', '' + number + ' ars']\n };\n return isFuture ? format[key][0] : (withoutSuffix ? format[key][0] : format[key][1]);\n }\n\n return tzl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tzm = moment.defineLocale('tzm', {\n months : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),\n monthsShort : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),\n weekdays : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysShort : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysMin : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',\n nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',\n nextWeek: 'dddd [ⴴ] LT',\n lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',\n lastWeek: 'dddd [ⴴ] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',\n past : 'ⵢⴰⵏ %s',\n s : 'ⵉⵎⵉⴽ',\n ss : '%d ⵉⵎⵉⴽ',\n m : 'ⵎⵉⵏⵓⴺ',\n mm : '%d ⵎⵉⵏⵓⴺ',\n h : 'ⵙⴰⵄⴰ',\n hh : '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',\n d : 'ⴰⵙⵙ',\n dd : '%d oⵙⵙⴰⵏ',\n M : 'ⴰⵢoⵓⵔ',\n MM : '%d ⵉⵢⵢⵉⵔⵏ',\n y : 'ⴰⵙⴳⴰⵙ',\n yy : '%d ⵉⵙⴳⴰⵙⵏ'\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return tzm;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tzmLatn = moment.defineLocale('tzm-latn', {\n months : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),\n monthsShort : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),\n weekdays : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysShort : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[asdkh g] LT',\n nextDay: '[aska g] LT',\n nextWeek: 'dddd [g] LT',\n lastDay: '[assant g] LT',\n lastWeek: 'dddd [g] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'dadkh s yan %s',\n past : 'yan %s',\n s : 'imik',\n ss : '%d imik',\n m : 'minuḍ',\n mm : '%d minuḍ',\n h : 'saɛa',\n hh : '%d tassaɛin',\n d : 'ass',\n dd : '%d ossan',\n M : 'ayowr',\n MM : '%d iyyirn',\n y : 'asgas',\n yy : '%d isgasn'\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return tzmLatn;\n\n})));\n","//! moment.js language configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ugCn = moment.defineLocale('ug-cn', {\n months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n monthsShort: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(\n '_'\n ),\n weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى',\n LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm'\n },\n meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n meridiem === 'يېرىم كېچە' ||\n meridiem === 'سەھەر' ||\n meridiem === 'چۈشتىن بۇرۇن'\n ) {\n return hour;\n } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') {\n return hour + 12;\n } else {\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return 'يېرىم كېچە';\n } else if (hm < 900) {\n return 'سەھەر';\n } else if (hm < 1130) {\n return 'چۈشتىن بۇرۇن';\n } else if (hm < 1230) {\n return 'چۈش';\n } else if (hm < 1800) {\n return 'چۈشتىن كېيىن';\n } else {\n return 'كەچ';\n }\n },\n calendar: {\n sameDay: '[بۈگۈن سائەت] LT',\n nextDay: '[ئەتە سائەت] LT',\n nextWeek: '[كېلەركى] dddd [سائەت] LT',\n lastDay: '[تۆنۈگۈن] LT',\n lastWeek: '[ئالدىنقى] dddd [سائەت] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: '%s كېيىن',\n past: '%s بۇرۇن',\n s: 'نەچچە سېكونت',\n ss: '%d سېكونت',\n m: 'بىر مىنۇت',\n mm: '%d مىنۇت',\n h: 'بىر سائەت',\n hh: '%d سائەت',\n d: 'بىر كۈن',\n dd: '%d كۈن',\n M: 'بىر ئاي',\n MM: '%d ئاي',\n y: 'بىر يىل',\n yy: '%d يىل'\n },\n\n dayOfMonthOrdinalParse: /\\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '-كۈنى';\n case 'w':\n case 'W':\n return number + '-ھەپتە';\n default:\n return number;\n }\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 7 // The week that contains Jan 1st is the first week of the year.\n }\n });\n\n return ugCn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд',\n 'mm': withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',\n 'hh': withoutSuffix ? 'година_години_годин' : 'годину_години_годин',\n 'dd': 'день_дні_днів',\n 'MM': 'місяць_місяці_місяців',\n 'yy': 'рік_роки_років'\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвилина' : 'хвилину';\n }\n else if (key === 'h') {\n return withoutSuffix ? 'година' : 'годину';\n }\n else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n function weekdaysCaseReplace(m, format) {\n var weekdays = {\n 'nominative': 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split('_'),\n 'accusative': 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split('_'),\n 'genitive': 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split('_')\n };\n\n if (m === true) {\n return weekdays['nominative'].slice(1, 7).concat(weekdays['nominative'].slice(0, 1));\n }\n if (!m) {\n return weekdays['nominative'];\n }\n\n var nounCase = (/(\\[[ВвУу]\\]) ?dddd/).test(format) ?\n 'accusative' :\n ((/\\[?(?:минулої|наступної)? ?\\] ?dddd/).test(format) ?\n 'genitive' :\n 'nominative');\n return weekdays[nounCase][m.day()];\n }\n function processHoursFunction(str) {\n return function () {\n return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';\n };\n }\n\n var uk = moment.defineLocale('uk', {\n months : {\n 'format': 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split('_'),\n 'standalone': 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split('_')\n },\n monthsShort : 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split('_'),\n weekdays : weekdaysCaseReplace,\n weekdaysShort : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY р.',\n LLL : 'D MMMM YYYY р., HH:mm',\n LLLL : 'dddd, D MMMM YYYY р., HH:mm'\n },\n calendar : {\n sameDay: processHoursFunction('[Сьогодні '),\n nextDay: processHoursFunction('[Завтра '),\n lastDay: processHoursFunction('[Вчора '),\n nextWeek: processHoursFunction('[У] dddd ['),\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return processHoursFunction('[Минулої] dddd [').call(this);\n case 1:\n case 2:\n case 4:\n return processHoursFunction('[Минулого] dddd [').call(this);\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'за %s',\n past : '%s тому',\n s : 'декілька секунд',\n ss : relativeTimeWithPlural,\n m : relativeTimeWithPlural,\n mm : relativeTimeWithPlural,\n h : 'годину',\n hh : relativeTimeWithPlural,\n d : 'день',\n dd : relativeTimeWithPlural,\n M : 'місяць',\n MM : relativeTimeWithPlural,\n y : 'рік',\n yy : relativeTimeWithPlural\n },\n // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n meridiemParse: /ночі|ранку|дня|вечора/,\n isPM: function (input) {\n return /^(дня|вечора)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночі';\n } else if (hour < 12) {\n return 'ранку';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечора';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return number + '-й';\n case 'D':\n return number + '-го';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return uk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'جنوری',\n 'فروری',\n 'مارچ',\n 'اپریل',\n 'مئی',\n 'جون',\n 'جولائی',\n 'اگست',\n 'ستمبر',\n 'اکتوبر',\n 'نومبر',\n 'دسمبر'\n ];\n var days = [\n 'اتوار',\n 'پیر',\n 'منگل',\n 'بدھ',\n 'جمعرات',\n 'جمعہ',\n 'ہفتہ'\n ];\n\n var ur = moment.defineLocale('ur', {\n months : months,\n monthsShort : months,\n weekdays : days,\n weekdaysShort : days,\n weekdaysMin : days,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd، D MMMM YYYY HH:mm'\n },\n meridiemParse: /صبح|شام/,\n isPM : function (input) {\n return 'شام' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar : {\n sameDay : '[آج بوقت] LT',\n nextDay : '[کل بوقت] LT',\n nextWeek : 'dddd [بوقت] LT',\n lastDay : '[گذشتہ روز بوقت] LT',\n lastWeek : '[گذشتہ] dddd [بوقت] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s بعد',\n past : '%s قبل',\n s : 'چند سیکنڈ',\n ss : '%d سیکنڈ',\n m : 'ایک منٹ',\n mm : '%d منٹ',\n h : 'ایک گھنٹہ',\n hh : '%d گھنٹے',\n d : 'ایک دن',\n dd : '%d دن',\n M : 'ایک ماہ',\n MM : '%d ماہ',\n y : 'ایک سال',\n yy : '%d سال'\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ur;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var uz = moment.defineLocale('uz', {\n months : 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split('_'),\n monthsShort : 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays : 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),\n weekdaysShort : 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),\n weekdaysMin : 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'D MMMM YYYY, dddd HH:mm'\n },\n calendar : {\n sameDay : '[Бугун соат] LT [да]',\n nextDay : '[Эртага] LT [да]',\n nextWeek : 'dddd [куни соат] LT [да]',\n lastDay : '[Кеча соат] LT [да]',\n lastWeek : '[Утган] dddd [куни соат] LT [да]',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'Якин %s ичида',\n past : 'Бир неча %s олдин',\n s : 'фурсат',\n ss : '%d фурсат',\n m : 'бир дакика',\n mm : '%d дакика',\n h : 'бир соат',\n hh : '%d соат',\n d : 'бир кун',\n dd : '%d кун',\n M : 'бир ой',\n MM : '%d ой',\n y : 'бир йил',\n yy : '%d йил'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return uz;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var uzLatn = moment.defineLocale('uz-latn', {\n months : 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split('_'),\n monthsShort : 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),\n weekdays : 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split('_'),\n weekdaysShort : 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),\n weekdaysMin : 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'D MMMM YYYY, dddd HH:mm'\n },\n calendar : {\n sameDay : '[Bugun soat] LT [da]',\n nextDay : '[Ertaga] LT [da]',\n nextWeek : 'dddd [kuni soat] LT [da]',\n lastDay : '[Kecha soat] LT [da]',\n lastWeek : '[O\\'tgan] dddd [kuni soat] LT [da]',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'Yaqin %s ichida',\n past : 'Bir necha %s oldin',\n s : 'soniya',\n ss : '%d soniya',\n m : 'bir daqiqa',\n mm : '%d daqiqa',\n h : 'bir soat',\n hh : '%d soat',\n d : 'bir kun',\n dd : '%d kun',\n M : 'bir oy',\n MM : '%d oy',\n y : 'bir yil',\n yy : '%d yil'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return uzLatn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var vi = moment.defineLocale('vi', {\n months : 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split('_'),\n monthsShort : 'Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12'.split('_'),\n monthsParseExact : true,\n weekdays : 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split('_'),\n weekdaysShort : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysParseExact : true,\n meridiemParse: /sa|ch/i,\n isPM : function (input) {\n return /^ch$/i.test(input);\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'sa' : 'SA';\n } else {\n return isLower ? 'ch' : 'CH';\n }\n },\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM [năm] YYYY',\n LLL : 'D MMMM [năm] YYYY HH:mm',\n LLLL : 'dddd, D MMMM [năm] YYYY HH:mm',\n l : 'DD/M/YYYY',\n ll : 'D MMM YYYY',\n lll : 'D MMM YYYY HH:mm',\n llll : 'ddd, D MMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Hôm nay lúc] LT',\n nextDay: '[Ngày mai lúc] LT',\n nextWeek: 'dddd [tuần tới lúc] LT',\n lastDay: '[Hôm qua lúc] LT',\n lastWeek: 'dddd [tuần rồi lúc] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s tới',\n past : '%s trước',\n s : 'vài giây',\n ss : '%d giây' ,\n m : 'một phút',\n mm : '%d phút',\n h : 'một giờ',\n hh : '%d giờ',\n d : 'một ngày',\n dd : '%d ngày',\n M : 'một tháng',\n MM : '%d tháng',\n y : 'một năm',\n yy : '%d năm'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal : function (number) {\n return number;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return vi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var xPseudo = moment.defineLocale('x-pseudo', {\n months : 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split('_'),\n monthsShort : 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split('_'),\n monthsParseExact : true,\n weekdays : 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split('_'),\n weekdaysShort : 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'),\n weekdaysMin : 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[T~ódá~ý át] LT',\n nextDay : '[T~ómó~rró~w át] LT',\n nextWeek : 'dddd [át] LT',\n lastDay : '[Ý~ést~érdá~ý át] LT',\n lastWeek : '[L~ást] dddd [át] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'í~ñ %s',\n past : '%s á~gó',\n s : 'á ~féw ~sécó~ñds',\n ss : '%d s~écóñ~ds',\n m : 'á ~míñ~úté',\n mm : '%d m~íñú~tés',\n h : 'á~ñ hó~úr',\n hh : '%d h~óúrs',\n d : 'á ~dáý',\n dd : '%d d~áýs',\n M : 'á ~móñ~th',\n MM : '%d m~óñt~hs',\n y : 'á ~ýéár',\n yy : '%d ý~éárs'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return xPseudo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var yo = moment.defineLocale('yo', {\n months : 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split('_'),\n monthsShort : 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'),\n weekdays : 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'),\n weekdaysShort : 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'),\n weekdaysMin : 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Ònì ni] LT',\n nextDay : '[Ọ̀la ni] LT',\n nextWeek : 'dddd [Ọsẹ̀ tón\\'bọ] [ni] LT',\n lastDay : '[Àna ni] LT',\n lastWeek : 'dddd [Ọsẹ̀ tólọ́] [ni] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ní %s',\n past : '%s kọjá',\n s : 'ìsẹjú aayá die',\n ss :'aayá %d',\n m : 'ìsẹjú kan',\n mm : 'ìsẹjú %d',\n h : 'wákati kan',\n hh : 'wákati %d',\n d : 'ọjọ́ kan',\n dd : 'ọjọ́ %d',\n M : 'osù kan',\n MM : 'osù %d',\n y : 'ọdún kan',\n yy : 'ọdún %d'\n },\n dayOfMonthOrdinalParse : /ọjọ́\\s\\d{1,2}/,\n ordinal : 'ọjọ́ %d',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return yo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var zhCn = moment.defineLocale('zh-cn', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort : '周日_周一_周二_周三_周四_周五_周六'.split('_'),\n weekdaysMin : '日_一_二_三_四_五_六'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日Ah点mm分',\n LLLL : 'YYYY年M月D日ddddAh点mm分',\n l : 'YYYY/M/D',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日dddd HH:mm'\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' ||\n meridiem === '上午') {\n return hour;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n } else {\n // '中午'\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar : {\n sameDay : '[今天]LT',\n nextDay : '[明天]LT',\n nextWeek : '[下]ddddLT',\n lastDay : '[昨天]LT',\n lastWeek : '[上]ddddLT',\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|周)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '周';\n default:\n return number;\n }\n },\n relativeTime : {\n future : '%s内',\n past : '%s前',\n s : '几秒',\n ss : '%d 秒',\n m : '1 分钟',\n mm : '%d 分钟',\n h : '1 小时',\n hh : '%d 小时',\n d : '1 天',\n dd : '%d 天',\n M : '1 个月',\n MM : '%d 个月',\n y : '1 年',\n yy : '%d 年'\n },\n week : {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return zhCn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var zhHk = moment.defineLocale('zh-hk', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort : '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin : '日_一_二_三_四_五_六'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日 HH:mm',\n LLLL : 'YYYY年M月D日dddd HH:mm',\n l : 'YYYY/M/D',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日dddd HH:mm'\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar : {\n sameDay : '[今天]LT',\n nextDay : '[明天]LT',\n nextWeek : '[下]ddddLT',\n lastDay : '[昨天]LT',\n lastWeek : '[上]ddddLT',\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd' :\n case 'D' :\n case 'DDD' :\n return number + '日';\n case 'M' :\n return number + '月';\n case 'w' :\n case 'W' :\n return number + '週';\n default :\n return number;\n }\n },\n relativeTime : {\n future : '%s內',\n past : '%s前',\n s : '幾秒',\n ss : '%d 秒',\n m : '1 分鐘',\n mm : '%d 分鐘',\n h : '1 小時',\n hh : '%d 小時',\n d : '1 天',\n dd : '%d 天',\n M : '1 個月',\n MM : '%d 個月',\n y : '1 年',\n yy : '%d 年'\n }\n });\n\n return zhHk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var zhTw = moment.defineLocale('zh-tw', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort : '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin : '日_一_二_三_四_五_六'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日 HH:mm',\n LLLL : 'YYYY年M月D日dddd HH:mm',\n l : 'YYYY/M/D',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日dddd HH:mm'\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar : {\n sameDay : '[今天] LT',\n nextDay : '[明天] LT',\n nextWeek : '[下]dddd LT',\n lastDay : '[昨天] LT',\n lastWeek : '[上]dddd LT',\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd' :\n case 'D' :\n case 'DDD' :\n return number + '日';\n case 'M' :\n return number + '月';\n case 'w' :\n case 'W' :\n return number + '週';\n default :\n return number;\n }\n },\n relativeTime : {\n future : '%s內',\n past : '%s前',\n s : '幾秒',\n ss : '%d 秒',\n m : '1 分鐘',\n mm : '%d 分鐘',\n h : '1 小時',\n hh : '%d 小時',\n d : '1 天',\n dd : '%d 天',\n M : '1 個月',\n MM : '%d 個月',\n y : '1 年',\n yy : '%d 年'\n }\n });\n\n return zhTw;\n\n})));\n","!function(a,n){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define([],n):\"object\"==typeof exports?exports.NextcloudMoment=n():a.NextcloudMoment=n()}(window,(function(){return function(a){var n={};function e(s){if(n[s])return n[s].exports;var t=n[s]={i:s,l:!1,exports:{}};return a[s].call(t.exports,t,t.exports,e),t.l=!0,t.exports}return e.m=a,e.c=n,e.d=function(a,n,s){e.o(a,n)||Object.defineProperty(a,n,{enumerable:!0,get:s})},e.r=function(a){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(a,\"__esModule\",{value:!0})},e.t=function(a,n){if(1&n&&(a=e(a)),8&n)return a;if(4&n&&\"object\"==typeof a&&a&&a.__esModule)return a;var s=Object.create(null);if(e.r(s),Object.defineProperty(s,\"default\",{enumerable:!0,value:a}),2&n&&\"string\"!=typeof a)for(var t in a)e.d(s,t,function(n){return a[n]}.bind(null,t));return s},e.n=function(a){var n=a&&a.__esModule?function(){return a.default}:function(){return a};return e.d(n,\"a\",n),n},e.o=function(a,n){return Object.prototype.hasOwnProperty.call(a,n)},e.p=\"\",e(e.s=3)}([function(a,n){a.exports=require(\"moment\")},function(a,n){a.exports=require(\"node-gettext\")},function(a,n){a.exports=require(\"@nextcloud/l10n\")},function(a,n,e){\"use strict\";e.r(n);var s=e(0),t=e.n(s),r=e(1),l=e.n(r),o=e(2),m=new l.a,u=Object(o.getLocale)();[{locale:\"ast\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"enolp <enolp@softastur.org>, 2020\",\"Language-Team\":\"Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ast\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nenolp <enolp@softastur.org>, 2020\\n\"},msgstr:[\"Last-Translator: enolp <enolp@softastur.org>, 2020\\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"cs_CZ\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Pavel Borecki <pavel.borecki@gmail.com>, 2020\",\"Language-Team\":\"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"cs_CZ\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekund\"]}}}}},{locale:\"da\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\",\"Language-Team\":\"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"da\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nHenrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\\n\"},msgstr:[\"Last-Translator: Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunder\"]}}}}},{locale:\"de_DE\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Christoph Wurst <christoph@winzerhof-wurst.at>, 2020\",\"Language-Team\":\"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"de_DE\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nChristoph Wurst <christoph@winzerhof-wurst.at>, 2020\\n\"},msgstr:[\"Last-Translator: Christoph Wurst <christoph@winzerhof-wurst.at>, 2020\\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"Sekunden\"]}}}}},{locale:\"el\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"GRMarksman <alexakos01@gmail.com>, 2020\",\"Language-Team\":\"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"el\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nGRMarksman <alexakos01@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: GRMarksman <alexakos01@gmail.com>, 2020\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"δευτερόλεπτα\"]}}}}},{locale:\"en_GB\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\",\"Language-Team\":\"English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"en_GB\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\nLanguage-Team: English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"seconds\"]}}}}},{locale:\"es\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Javier San Juan <javier.sj@trantor.es>, 2020\",\"Language-Team\":\"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"es\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJavier San Juan <javier.sj@trantor.es>, 2020\\n\"},msgstr:[\"Last-Translator: Javier San Juan <javier.sj@trantor.es>, 2020\\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"eu\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\",\"Language-Team\":\"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"eu\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAsier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundo\"]}}}}},{locale:\"fr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Yoplala <yoplala@pataraphe.net>, 2020\",\"Language-Team\":\"French (https://www.transifex.com/nextcloud/teams/64236/fr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"fr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYoplala <yoplala@pataraphe.net>, 2020\\n\"},msgstr:[\"Last-Translator: Yoplala <yoplala@pataraphe.net>, 2020\\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"secondes\"]}}}}},{locale:\"gl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\",\"Language-Team\":\"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"gl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"he\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Yaron Shahrabani <sh.yaron@gmail.com>, 2020\",\"Language-Team\":\"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"he\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYaron Shahrabani <sh.yaron@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>, 2020\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"שניות\"]}}}}},{locale:\"hu_HU\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Balázs Meskó <meskobalazs@gmail.com>, 2020\",\"Language-Team\":\"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"hu_HU\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nBalázs Meskó <meskobalazs@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Balázs Meskó <meskobalazs@gmail.com>, 2020\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"másodperc\"]}}}}},{locale:\"is\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Sveinn í Felli <sv1@fellsnet.is>, 2020\",\"Language-Team\":\"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"is\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nSveinn í Felli <sv1@fellsnet.is>, 2020\\n\"},msgstr:[\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2020\\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekúndur\"]}}}}},{locale:\"it\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Random_R, 2020\",\"Language-Team\":\"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"it\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nRandom_R, 2020\\n\"},msgstr:[\"Last-Translator: Random_R, 2020\\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"secondi\"]}}}}},{locale:\"ja_JP\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"YANO Tetsu <tetuyano+transi@gmail.com>, 2020\",\"Language-Team\":\"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ja_JP\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYANO Tetsu <tetuyano+transi@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: YANO Tetsu <tetuyano+transi@gmail.com>, 2020\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}},{locale:\"lt_LT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Moo, 2020\",\"Language-Team\":\"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lt_LT\",\"Plural-Forms\":\"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMoo, 2020\\n\"},msgstr:[\"Last-Translator: Moo, 2020\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sek.\"]}}}}},{locale:\"lv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"stendec <stendec@inbox.lv>, 2020\",\"Language-Team\":\"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lv\",\"Plural-Forms\":\"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nstendec <stendec@inbox.lv>, 2020\\n\"},msgstr:[\"Last-Translator: stendec <stendec@inbox.lv>, 2020\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundes\"]}}}}},{locale:\"mk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Сашко Тодоров, 2020\",\"Language-Team\":\"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"mk\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nСашко Тодоров, 2020\\n\"},msgstr:[\"Last-Translator: Сашко Тодоров, 2020\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунди\"]}}}}},{locale:\"nl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Roeland Jago Douma <roeland@famdouma.nl>, 2020\",\"Language-Team\":\"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"nl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nRoeland Jago Douma <roeland@famdouma.nl>, 2020\\n\"},msgstr:[\"Last-Translator: Roeland Jago Douma <roeland@famdouma.nl>, 2020\\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"seconden\"]}}}}},{locale:\"oc\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Quentin PAGÈS, 2020\",\"Language-Team\":\"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"oc\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nQuentin PAGÈS, 2020\\n\"},msgstr:[\"Last-Translator: Quentin PAGÈS, 2020\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segondas\"]}}}}},{locale:\"pl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\",\"Language-Team\":\"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pl\",\"Plural-Forms\":\"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJanusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\\n\"},msgstr:[\"Last-Translator: Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundy\"]}}}}},{locale:\"pt_BR\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"André Marcelo Alvarenga <alvarenga@kde.org>, 2020\",\"Language-Team\":\"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_BR\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAndré Marcelo Alvarenga <alvarenga@kde.org>, 2020\\n\"},msgstr:[\"Last-Translator: André Marcelo Alvarenga <alvarenga@kde.org>, 2020\\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"pt_PT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"fpapoila <fpapoila@gmail.com>, 2020\",\"Language-Team\":\"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_PT\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nfpapoila <fpapoila@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: fpapoila <fpapoila@gmail.com>, 2020\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"ru\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Игорь Бондаренко <garbond@yandex.ru>, 2020\",\"Language-Team\":\"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ru\",\"Plural-Forms\":\"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nИгорь Бондаренко <garbond@yandex.ru>, 2020\\n\"},msgstr:[\"Last-Translator: Игорь Бондаренко <garbond@yandex.ru>, 2020\\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунды\"]}}}}},{locale:\"sq\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Greta, 2020\",\"Language-Team\":\"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sq\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nGreta, 2020\\n\"},msgstr:[\"Last-Translator: Greta, 2020\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekonda\"]}}}}},{locale:\"sr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Slobodan Simić <slsimic@gmail.com>, 2020\",\"Language-Team\":\"Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sr\",\"Plural-Forms\":\"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nSlobodan Simić <slsimic@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Slobodan Simić <slsimic@gmail.com>, 2020\\nLanguage-Team: Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунде\"]}}}}},{locale:\"sv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Magnus Höglund, 2020\",\"Language-Team\":\"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sv\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMagnus Höglund, 2020\\n\"},msgstr:[\"Last-Translator: Magnus Höglund, 2020\\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunder\"]}}}}},{locale:\"tr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\",\"Language-Team\":\"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"tr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nHüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\\n\"},msgstr:[\"Last-Translator: Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"saniye\"]}}}}},{locale:\"uk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\",\"Language-Team\":\"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"uk\",\"Plural-Forms\":\"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунди\"]}}}}},{locale:\"zh_CN\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Jay Guo <jayguo921@gmail.com>, 2020\",\"Language-Team\":\"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_CN\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJay Guo <jayguo921@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Jay Guo <jayguo921@gmail.com>, 2020\\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}},{locale:\"zh_TW\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Jim Tsai <poormusic2001@gmail.com>, 2020\",\"Language-Team\":\"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_TW\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJim Tsai <poormusic2001@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Jim Tsai <poormusic2001@gmail.com>, 2020\\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}}].map((function(a){m.addTranslations(a.locale,\"messages\",a.json)})),m.setLocale(u),t.a.locale(u),t.a.updateLocale(t.a.locale(),{parentLocale:t.a.locale(),relativeTime:Object.assign(t.a.localeData(t.a.locale())._relativeTime,{s:m.gettext(\"seconds\")})}),n.default=t.a}])}));\n//# sourceMappingURL=index.js.map","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code\n };\n };\n return error;\n};\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"<scheme>://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"getRequestToken\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.getRequestToken;\n }\n});\nObject.defineProperty(exports, \"onRequestTokenUpdate\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.onRequestTokenUpdate;\n }\n});\nObject.defineProperty(exports, \"getCurrentUser\", {\n enumerable: true,\n get: function get() {\n return _user.getCurrentUser;\n }\n});\n\nvar _requesttoken = require(\"./requesttoken\");\n\nvar _user = require(\"./user\");\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRequestToken = getRequestToken;\nexports.onRequestTokenUpdate = onRequestTokenUpdate;\n\nvar _eventBus = require(\"@nextcloud/event-bus\");\n\nvar tokenElement = document.getElementsByTagName('head')[0];\nvar token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\nvar observers = [];\n\nfunction getRequestToken() {\n return token;\n}\n\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n} // Listen to server event and keep token in sync\n\n\n(0, _eventBus.subscribe)('csrf-token-update', function (e) {\n token = e.token;\n observers.forEach(function (observer) {\n try {\n observer(e.token);\n } catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n//# sourceMappingURL=requesttoken.js.map","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ProxyBus = void 0;\n\nvar _semver = _interopRequireDefault(require(\"semver\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.1.4\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^6.2.1\",\n \"core-js\": \"^3.6.2\",\n semver: \"^6.3.0\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^25.1.0\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^25.1.0\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar ProxyBus = /*#__PURE__*/function () {\n function ProxyBus(bus) {\n _classCallCheck(this, ProxyBus);\n\n _defineProperty(this, \"bus\", void 0);\n\n if (typeof bus.getVersion !== 'function' || !_semver.default.valid(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n } else if (_semver.default.major(bus.getVersion()) !== _semver.default.major(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n\n this.bus = bus;\n }\n\n _createClass(ProxyBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n this.bus.emit(name, event);\n }\n }]);\n\n return ProxyBus;\n}();\n\nexports.ProxyBus = ProxyBus;\n//# sourceMappingURL=ProxyBus.js.map","exports = module.exports = SemVer\n\nvar debug\n/* istanbul ignore next */\nif (typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)) {\n debug = function () {\n var args = Array.prototype.slice.call(arguments, 0)\n args.unshift('SEMVER')\n console.log.apply(console, args)\n }\n} else {\n debug = function () {}\n}\n\n// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nexports.SEMVER_SPEC_VERSION = '2.0.0'\n\nvar MAX_LENGTH = 256\nvar MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n /* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nvar MAX_SAFE_COMPONENT_LENGTH = 16\n\n// The actual regexps go on exports.re\nvar re = exports.re = []\nvar src = exports.src = []\nvar t = exports.tokens = {}\nvar R = 0\n\nfunction tok (n) {\n t[n] = R++\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ntok('NUMERICIDENTIFIER')\nsrc[t.NUMERICIDENTIFIER] = '0|[1-9]\\\\d*'\ntok('NUMERICIDENTIFIERLOOSE')\nsrc[t.NUMERICIDENTIFIERLOOSE] = '[0-9]+'\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ntok('NONNUMERICIDENTIFIER')\nsrc[t.NONNUMERICIDENTIFIER] = '\\\\d*[a-zA-Z-][a-zA-Z0-9-]*'\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ntok('MAINVERSION')\nsrc[t.MAINVERSION] = '(' + src[t.NUMERICIDENTIFIER] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIER] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIER] + ')'\n\ntok('MAINVERSIONLOOSE')\nsrc[t.MAINVERSIONLOOSE] = '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')'\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n\ntok('PRERELEASEIDENTIFIER')\nsrc[t.PRERELEASEIDENTIFIER] = '(?:' + src[t.NUMERICIDENTIFIER] +\n '|' + src[t.NONNUMERICIDENTIFIER] + ')'\n\ntok('PRERELEASEIDENTIFIERLOOSE')\nsrc[t.PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[t.NUMERICIDENTIFIERLOOSE] +\n '|' + src[t.NONNUMERICIDENTIFIER] + ')'\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ntok('PRERELEASE')\nsrc[t.PRERELEASE] = '(?:-(' + src[t.PRERELEASEIDENTIFIER] +\n '(?:\\\\.' + src[t.PRERELEASEIDENTIFIER] + ')*))'\n\ntok('PRERELEASELOOSE')\nsrc[t.PRERELEASELOOSE] = '(?:-?(' + src[t.PRERELEASEIDENTIFIERLOOSE] +\n '(?:\\\\.' + src[t.PRERELEASEIDENTIFIERLOOSE] + ')*))'\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ntok('BUILDIDENTIFIER')\nsrc[t.BUILDIDENTIFIER] = '[0-9A-Za-z-]+'\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ntok('BUILD')\nsrc[t.BUILD] = '(?:\\\\+(' + src[t.BUILDIDENTIFIER] +\n '(?:\\\\.' + src[t.BUILDIDENTIFIER] + ')*))'\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ntok('FULL')\ntok('FULLPLAIN')\nsrc[t.FULLPLAIN] = 'v?' + src[t.MAINVERSION] +\n src[t.PRERELEASE] + '?' +\n src[t.BUILD] + '?'\n\nsrc[t.FULL] = '^' + src[t.FULLPLAIN] + '$'\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ntok('LOOSEPLAIN')\nsrc[t.LOOSEPLAIN] = '[v=\\\\s]*' + src[t.MAINVERSIONLOOSE] +\n src[t.PRERELEASELOOSE] + '?' +\n src[t.BUILD] + '?'\n\ntok('LOOSE')\nsrc[t.LOOSE] = '^' + src[t.LOOSEPLAIN] + '$'\n\ntok('GTLT')\nsrc[t.GTLT] = '((?:<|>)?=?)'\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\ntok('XRANGEIDENTIFIERLOOSE')\nsrc[t.XRANGEIDENTIFIERLOOSE] = src[t.NUMERICIDENTIFIERLOOSE] + '|x|X|\\\\*'\ntok('XRANGEIDENTIFIER')\nsrc[t.XRANGEIDENTIFIER] = src[t.NUMERICIDENTIFIER] + '|x|X|\\\\*'\n\ntok('XRANGEPLAIN')\nsrc[t.XRANGEPLAIN] = '[v=\\\\s]*(' + src[t.XRANGEIDENTIFIER] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIER] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIER] + ')' +\n '(?:' + src[t.PRERELEASE] + ')?' +\n src[t.BUILD] + '?' +\n ')?)?'\n\ntok('XRANGEPLAINLOOSE')\nsrc[t.XRANGEPLAINLOOSE] = '[v=\\\\s]*(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +\n '(?:' + src[t.PRERELEASELOOSE] + ')?' +\n src[t.BUILD] + '?' +\n ')?)?'\n\ntok('XRANGE')\nsrc[t.XRANGE] = '^' + src[t.GTLT] + '\\\\s*' + src[t.XRANGEPLAIN] + '$'\ntok('XRANGELOOSE')\nsrc[t.XRANGELOOSE] = '^' + src[t.GTLT] + '\\\\s*' + src[t.XRANGEPLAINLOOSE] + '$'\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ntok('COERCE')\nsrc[t.COERCE] = '(^|[^\\\\d])' +\n '(\\\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '})' +\n '(?:\\\\.(\\\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +\n '(?:\\\\.(\\\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +\n '(?:$|[^\\\\d])'\ntok('COERCERTL')\nre[t.COERCERTL] = new RegExp(src[t.COERCE], 'g')\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ntok('LONETILDE')\nsrc[t.LONETILDE] = '(?:~>?)'\n\ntok('TILDETRIM')\nsrc[t.TILDETRIM] = '(\\\\s*)' + src[t.LONETILDE] + '\\\\s+'\nre[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], 'g')\nvar tildeTrimReplace = '$1~'\n\ntok('TILDE')\nsrc[t.TILDE] = '^' + src[t.LONETILDE] + src[t.XRANGEPLAIN] + '$'\ntok('TILDELOOSE')\nsrc[t.TILDELOOSE] = '^' + src[t.LONETILDE] + src[t.XRANGEPLAINLOOSE] + '$'\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ntok('LONECARET')\nsrc[t.LONECARET] = '(?:\\\\^)'\n\ntok('CARETTRIM')\nsrc[t.CARETTRIM] = '(\\\\s*)' + src[t.LONECARET] + '\\\\s+'\nre[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], 'g')\nvar caretTrimReplace = '$1^'\n\ntok('CARET')\nsrc[t.CARET] = '^' + src[t.LONECARET] + src[t.XRANGEPLAIN] + '$'\ntok('CARETLOOSE')\nsrc[t.CARETLOOSE] = '^' + src[t.LONECARET] + src[t.XRANGEPLAINLOOSE] + '$'\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ntok('COMPARATORLOOSE')\nsrc[t.COMPARATORLOOSE] = '^' + src[t.GTLT] + '\\\\s*(' + src[t.LOOSEPLAIN] + ')$|^$'\ntok('COMPARATOR')\nsrc[t.COMPARATOR] = '^' + src[t.GTLT] + '\\\\s*(' + src[t.FULLPLAIN] + ')$|^$'\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ntok('COMPARATORTRIM')\nsrc[t.COMPARATORTRIM] = '(\\\\s*)' + src[t.GTLT] +\n '\\\\s*(' + src[t.LOOSEPLAIN] + '|' + src[t.XRANGEPLAIN] + ')'\n\n// this one has to use the /g flag\nre[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], 'g')\nvar comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ntok('HYPHENRANGE')\nsrc[t.HYPHENRANGE] = '^\\\\s*(' + src[t.XRANGEPLAIN] + ')' +\n '\\\\s+-\\\\s+' +\n '(' + src[t.XRANGEPLAIN] + ')' +\n '\\\\s*$'\n\ntok('HYPHENRANGELOOSE')\nsrc[t.HYPHENRANGELOOSE] = '^\\\\s*(' + src[t.XRANGEPLAINLOOSE] + ')' +\n '\\\\s+-\\\\s+' +\n '(' + src[t.XRANGEPLAINLOOSE] + ')' +\n '\\\\s*$'\n\n// Star ranges basically just allow anything at all.\ntok('STAR')\nsrc[t.STAR] = '(<|>)?=?\\\\s*\\\\*'\n\n// Compile to actual regexp objects.\n// All are flag-free, unless they were created above with a flag.\nfor (var i = 0; i < R; i++) {\n debug(i, src[i])\n if (!re[i]) {\n re[i] = new RegExp(src[i])\n }\n}\n\nexports.parse = parse\nfunction parse (version, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n if (version.length > MAX_LENGTH) {\n return null\n }\n\n var r = options.loose ? re[t.LOOSE] : re[t.FULL]\n if (!r.test(version)) {\n return null\n }\n\n try {\n return new SemVer(version, options)\n } catch (er) {\n return null\n }\n}\n\nexports.valid = valid\nfunction valid (version, options) {\n var v = parse(version, options)\n return v ? v.version : null\n}\n\nexports.clean = clean\nfunction clean (version, options) {\n var s = parse(version.trim().replace(/^[=v]+/, ''), options)\n return s ? s.version : null\n}\n\nexports.SemVer = SemVer\n\nfunction SemVer (version, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n if (version instanceof SemVer) {\n if (version.loose === options.loose) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError('Invalid Version: ' + version)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')\n }\n\n if (!(this instanceof SemVer)) {\n return new SemVer(version, options)\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n\n var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError('Invalid Version: ' + version)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map(function (id) {\n if (/^[0-9]+$/.test(id)) {\n var num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n}\n\nSemVer.prototype.format = function () {\n this.version = this.major + '.' + this.minor + '.' + this.patch\n if (this.prerelease.length) {\n this.version += '-' + this.prerelease.join('.')\n }\n return this.version\n}\n\nSemVer.prototype.toString = function () {\n return this.version\n}\n\nSemVer.prototype.compare = function (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return this.compareMain(other) || this.comparePre(other)\n}\n\nSemVer.prototype.compareMain = function (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return compareIdentifiers(this.major, other.major) ||\n compareIdentifiers(this.minor, other.minor) ||\n compareIdentifiers(this.patch, other.patch)\n}\n\nSemVer.prototype.comparePre = function (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n var i = 0\n do {\n var a = this.prerelease[i]\n var b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n}\n\nSemVer.prototype.compareBuild = function (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n var i = 0\n do {\n var a = this.build[i]\n var b = other.build[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n}\n\n// preminor will bump the version up to the next minor release, and immediately\n// down to pre-release. premajor and prepatch work the same way.\nSemVer.prototype.inc = function (release, identifier) {\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier)\n this.inc('pre', identifier)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier)\n }\n this.inc('pre', identifier)\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 \"pre\" would become 1.0.0-0 which is the wrong direction.\n case 'pre':\n if (this.prerelease.length === 0) {\n this.prerelease = [0]\n } else {\n var i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n this.prerelease.push(0)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n if (this.prerelease[0] === identifier) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = [identifier, 0]\n }\n } else {\n this.prerelease = [identifier, 0]\n }\n }\n break\n\n default:\n throw new Error('invalid increment argument: ' + release)\n }\n this.format()\n this.raw = this.version\n return this\n}\n\nexports.inc = inc\nfunction inc (version, release, loose, identifier) {\n if (typeof (loose) === 'string') {\n identifier = loose\n loose = undefined\n }\n\n try {\n return new SemVer(version, loose).inc(release, identifier).version\n } catch (er) {\n return null\n }\n}\n\nexports.diff = diff\nfunction diff (version1, version2) {\n if (eq(version1, version2)) {\n return null\n } else {\n var v1 = parse(version1)\n var v2 = parse(version2)\n var prefix = ''\n if (v1.prerelease.length || v2.prerelease.length) {\n prefix = 'pre'\n var defaultResult = 'prerelease'\n }\n for (var key in v1) {\n if (key === 'major' || key === 'minor' || key === 'patch') {\n if (v1[key] !== v2[key]) {\n return prefix + key\n }\n }\n }\n return defaultResult // may be undefined\n }\n}\n\nexports.compareIdentifiers = compareIdentifiers\n\nvar numeric = /^[0-9]+$/\nfunction compareIdentifiers (a, b) {\n var anum = numeric.test(a)\n var bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nexports.rcompareIdentifiers = rcompareIdentifiers\nfunction rcompareIdentifiers (a, b) {\n return compareIdentifiers(b, a)\n}\n\nexports.major = major\nfunction major (a, loose) {\n return new SemVer(a, loose).major\n}\n\nexports.minor = minor\nfunction minor (a, loose) {\n return new SemVer(a, loose).minor\n}\n\nexports.patch = patch\nfunction patch (a, loose) {\n return new SemVer(a, loose).patch\n}\n\nexports.compare = compare\nfunction compare (a, b, loose) {\n return new SemVer(a, loose).compare(new SemVer(b, loose))\n}\n\nexports.compareLoose = compareLoose\nfunction compareLoose (a, b) {\n return compare(a, b, true)\n}\n\nexports.compareBuild = compareBuild\nfunction compareBuild (a, b, loose) {\n var versionA = new SemVer(a, loose)\n var versionB = new SemVer(b, loose)\n return versionA.compare(versionB) || versionA.compareBuild(versionB)\n}\n\nexports.rcompare = rcompare\nfunction rcompare (a, b, loose) {\n return compare(b, a, loose)\n}\n\nexports.sort = sort\nfunction sort (list, loose) {\n return list.sort(function (a, b) {\n return exports.compareBuild(a, b, loose)\n })\n}\n\nexports.rsort = rsort\nfunction rsort (list, loose) {\n return list.sort(function (a, b) {\n return exports.compareBuild(b, a, loose)\n })\n}\n\nexports.gt = gt\nfunction gt (a, b, loose) {\n return compare(a, b, loose) > 0\n}\n\nexports.lt = lt\nfunction lt (a, b, loose) {\n return compare(a, b, loose) < 0\n}\n\nexports.eq = eq\nfunction eq (a, b, loose) {\n return compare(a, b, loose) === 0\n}\n\nexports.neq = neq\nfunction neq (a, b, loose) {\n return compare(a, b, loose) !== 0\n}\n\nexports.gte = gte\nfunction gte (a, b, loose) {\n return compare(a, b, loose) >= 0\n}\n\nexports.lte = lte\nfunction lte (a, b, loose) {\n return compare(a, b, loose) <= 0\n}\n\nexports.cmp = cmp\nfunction cmp (a, op, b, loose) {\n switch (op) {\n case '===':\n if (typeof a === 'object')\n a = a.version\n if (typeof b === 'object')\n b = b.version\n return a === b\n\n case '!==':\n if (typeof a === 'object')\n a = a.version\n if (typeof b === 'object')\n b = b.version\n return a !== b\n\n case '':\n case '=':\n case '==':\n return eq(a, b, loose)\n\n case '!=':\n return neq(a, b, loose)\n\n case '>':\n return gt(a, b, loose)\n\n case '>=':\n return gte(a, b, loose)\n\n case '<':\n return lt(a, b, loose)\n\n case '<=':\n return lte(a, b, loose)\n\n default:\n throw new TypeError('Invalid operator: ' + op)\n }\n}\n\nexports.Comparator = Comparator\nfunction Comparator (comp, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n if (comp instanceof Comparator) {\n if (comp.loose === !!options.loose) {\n return comp\n } else {\n comp = comp.value\n }\n }\n\n if (!(this instanceof Comparator)) {\n return new Comparator(comp, options)\n }\n\n debug('comparator', comp, options)\n this.options = options\n this.loose = !!options.loose\n this.parse(comp)\n\n if (this.semver === ANY) {\n this.value = ''\n } else {\n this.value = this.operator + this.semver.version\n }\n\n debug('comp', this)\n}\n\nvar ANY = {}\nComparator.prototype.parse = function (comp) {\n var r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n var m = comp.match(r)\n\n if (!m) {\n throw new TypeError('Invalid comparator: ' + comp)\n }\n\n this.operator = m[1] !== undefined ? m[1] : ''\n if (this.operator === '=') {\n this.operator = ''\n }\n\n // if it literally is just '>' or '' then allow anything.\n if (!m[2]) {\n this.semver = ANY\n } else {\n this.semver = new SemVer(m[2], this.options.loose)\n }\n}\n\nComparator.prototype.toString = function () {\n return this.value\n}\n\nComparator.prototype.test = function (version) {\n debug('Comparator.test', version, this.options.loose)\n\n if (this.semver === ANY || version === ANY) {\n return true\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n return cmp(version, this.operator, this.semver, this.options)\n}\n\nComparator.prototype.intersects = function (comp, options) {\n if (!(comp instanceof Comparator)) {\n throw new TypeError('a Comparator is required')\n }\n\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n var rangeTmp\n\n if (this.operator === '') {\n if (this.value === '') {\n return true\n }\n rangeTmp = new Range(comp.value, options)\n return satisfies(this.value, rangeTmp, options)\n } else if (comp.operator === '') {\n if (comp.value === '') {\n return true\n }\n rangeTmp = new Range(this.value, options)\n return satisfies(comp.semver, rangeTmp, options)\n }\n\n var sameDirectionIncreasing =\n (this.operator === '>=' || this.operator === '>') &&\n (comp.operator === '>=' || comp.operator === '>')\n var sameDirectionDecreasing =\n (this.operator === '<=' || this.operator === '<') &&\n (comp.operator === '<=' || comp.operator === '<')\n var sameSemVer = this.semver.version === comp.semver.version\n var differentDirectionsInclusive =\n (this.operator === '>=' || this.operator === '<=') &&\n (comp.operator === '>=' || comp.operator === '<=')\n var oppositeDirectionsLessThan =\n cmp(this.semver, '<', comp.semver, options) &&\n ((this.operator === '>=' || this.operator === '>') &&\n (comp.operator === '<=' || comp.operator === '<'))\n var oppositeDirectionsGreaterThan =\n cmp(this.semver, '>', comp.semver, options) &&\n ((this.operator === '<=' || this.operator === '<') &&\n (comp.operator === '>=' || comp.operator === '>'))\n\n return sameDirectionIncreasing || sameDirectionDecreasing ||\n (sameSemVer && differentDirectionsInclusive) ||\n oppositeDirectionsLessThan || oppositeDirectionsGreaterThan\n}\n\nexports.Range = Range\nfunction Range (range, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n if (range instanceof Range) {\n if (range.loose === !!options.loose &&\n range.includePrerelease === !!options.includePrerelease) {\n return range\n } else {\n return new Range(range.raw, options)\n }\n }\n\n if (range instanceof Comparator) {\n return new Range(range.value, options)\n }\n\n if (!(this instanceof Range)) {\n return new Range(range, options)\n }\n\n this.options = options\n this.loose = !!options.loose\n this.includePrerelease = !!options.includePrerelease\n\n // First, split based on boolean or ||\n this.raw = range\n this.set = range.split(/\\s*\\|\\|\\s*/).map(function (range) {\n return this.parseRange(range.trim())\n }, this).filter(function (c) {\n // throw out any that are not relevant for whatever reason\n return c.length\n })\n\n if (!this.set.length) {\n throw new TypeError('Invalid SemVer Range: ' + range)\n }\n\n this.format()\n}\n\nRange.prototype.format = function () {\n this.range = this.set.map(function (comps) {\n return comps.join(' ').trim()\n }).join('||').trim()\n return this.range\n}\n\nRange.prototype.toString = function () {\n return this.range\n}\n\nRange.prototype.parseRange = function (range) {\n var loose = this.options.loose\n range = range.trim()\n // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`\n var hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]\n range = range.replace(hr, hyphenReplace)\n debug('hyphen replace', range)\n // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`\n range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)\n debug('comparator trim', range, re[t.COMPARATORTRIM])\n\n // `~ 1.2.3` => `~1.2.3`\n range = range.replace(re[t.TILDETRIM], tildeTrimReplace)\n\n // `^ 1.2.3` => `^1.2.3`\n range = range.replace(re[t.CARETTRIM], caretTrimReplace)\n\n // normalize spaces\n range = range.split(/\\s+/).join(' ')\n\n // At this point, the range is completely trimmed and\n // ready to be split into comparators.\n\n var compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n var set = range.split(' ').map(function (comp) {\n return parseComparator(comp, this.options)\n }, this).join(' ').split(/\\s+/)\n if (this.options.loose) {\n // in loose mode, throw out any that are not valid comparators\n set = set.filter(function (comp) {\n return !!comp.match(compRe)\n })\n }\n set = set.map(function (comp) {\n return new Comparator(comp, this.options)\n }, this)\n\n return set\n}\n\nRange.prototype.intersects = function (range, options) {\n if (!(range instanceof Range)) {\n throw new TypeError('a Range is required')\n }\n\n return this.set.some(function (thisComparators) {\n return (\n isSatisfiable(thisComparators, options) &&\n range.set.some(function (rangeComparators) {\n return (\n isSatisfiable(rangeComparators, options) &&\n thisComparators.every(function (thisComparator) {\n return rangeComparators.every(function (rangeComparator) {\n return thisComparator.intersects(rangeComparator, options)\n })\n })\n )\n })\n )\n })\n}\n\n// take a set of comparators and determine whether there\n// exists a version which can satisfy it\nfunction isSatisfiable (comparators, options) {\n var result = true\n var remainingComparators = comparators.slice()\n var testComparator = remainingComparators.pop()\n\n while (result && remainingComparators.length) {\n result = remainingComparators.every(function (otherComparator) {\n return testComparator.intersects(otherComparator, options)\n })\n\n testComparator = remainingComparators.pop()\n }\n\n return result\n}\n\n// Mostly just for testing and legacy API reasons\nexports.toComparators = toComparators\nfunction toComparators (range, options) {\n return new Range(range, options).set.map(function (comp) {\n return comp.map(function (c) {\n return c.value\n }).join(' ').trim().split(' ')\n })\n}\n\n// comprised of xranges, tildes, stars, and gtlt's at this point.\n// already replaced the hyphen ranges\n// turn into a set of JUST comparators.\nfunction parseComparator (comp, options) {\n debug('comp', comp, options)\n comp = replaceCarets(comp, options)\n debug('caret', comp)\n comp = replaceTildes(comp, options)\n debug('tildes', comp)\n comp = replaceXRanges(comp, options)\n debug('xrange', comp)\n comp = replaceStars(comp, options)\n debug('stars', comp)\n return comp\n}\n\nfunction isX (id) {\n return !id || id.toLowerCase() === 'x' || id === '*'\n}\n\n// ~, ~> --> * (any, kinda silly)\n// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0\n// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0\n// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0\n// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0\n// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0\nfunction replaceTildes (comp, options) {\n return comp.trim().split(/\\s+/).map(function (comp) {\n return replaceTilde(comp, options)\n }).join(' ')\n}\n\nfunction replaceTilde (comp, options) {\n var r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]\n return comp.replace(r, function (_, M, m, p, pr) {\n debug('tilde', comp, _, M, m, p, pr)\n var ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'\n } else if (isX(p)) {\n // ~1.2 == >=1.2.0 <1.3.0\n ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'\n } else if (pr) {\n debug('replaceTilde pr', pr)\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + M + '.' + (+m + 1) + '.0'\n } else {\n // ~1.2.3 == >=1.2.3 <1.3.0\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + M + '.' + (+m + 1) + '.0'\n }\n\n debug('tilde return', ret)\n return ret\n })\n}\n\n// ^ --> * (any, kinda silly)\n// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0\n// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0\n// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0\n// ^1.2.3 --> >=1.2.3 <2.0.0\n// ^1.2.0 --> >=1.2.0 <2.0.0\nfunction replaceCarets (comp, options) {\n return comp.trim().split(/\\s+/).map(function (comp) {\n return replaceCaret(comp, options)\n }).join(' ')\n}\n\nfunction replaceCaret (comp, options) {\n debug('caret', comp, options)\n var r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]\n return comp.replace(r, function (_, M, m, p, pr) {\n debug('caret', comp, _, M, m, p, pr)\n var ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'\n } else if (isX(p)) {\n if (M === '0') {\n ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'\n } else {\n ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0'\n }\n } else if (pr) {\n debug('replaceCaret pr', pr)\n if (M === '0') {\n if (m === '0') {\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + M + '.' + m + '.' + (+p + 1)\n } else {\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + M + '.' + (+m + 1) + '.0'\n }\n } else {\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + (+M + 1) + '.0.0'\n }\n } else {\n debug('no pr')\n if (M === '0') {\n if (m === '0') {\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + M + '.' + m + '.' + (+p + 1)\n } else {\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + M + '.' + (+m + 1) + '.0'\n }\n } else {\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + (+M + 1) + '.0.0'\n }\n }\n\n debug('caret return', ret)\n return ret\n })\n}\n\nfunction replaceXRanges (comp, options) {\n debug('replaceXRanges', comp, options)\n return comp.split(/\\s+/).map(function (comp) {\n return replaceXRange(comp, options)\n }).join(' ')\n}\n\nfunction replaceXRange (comp, options) {\n comp = comp.trim()\n var r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]\n return comp.replace(r, function (ret, gtlt, M, m, p, pr) {\n debug('xRange', comp, ret, gtlt, M, m, p, pr)\n var xM = isX(M)\n var xm = xM || isX(m)\n var xp = xm || isX(p)\n var anyX = xp\n\n if (gtlt === '=' && anyX) {\n gtlt = ''\n }\n\n // if we're including prereleases in the match, then we need\n // to fix this to -0, the lowest possible prerelease value\n pr = options.includePrerelease ? '-0' : ''\n\n if (xM) {\n if (gtlt === '>' || gtlt === '<') {\n // nothing is allowed\n ret = '<0.0.0-0'\n } else {\n // nothing is forbidden\n ret = '*'\n }\n } else if (gtlt && anyX) {\n // we know patch is an x, because we have any x at all.\n // replace X with 0\n if (xm) {\n m = 0\n }\n p = 0\n\n if (gtlt === '>') {\n // >1 => >=2.0.0\n // >1.2 => >=1.3.0\n // >1.2.3 => >= 1.2.4\n gtlt = '>='\n if (xm) {\n M = +M + 1\n m = 0\n p = 0\n } else {\n m = +m + 1\n p = 0\n }\n } else if (gtlt === '<=') {\n // <=0.7.x is actually <0.8.0, since any 0.7.x should\n // pass. Similarly, <=7.x is actually <8.0.0, etc.\n gtlt = '<'\n if (xm) {\n M = +M + 1\n } else {\n m = +m + 1\n }\n }\n\n ret = gtlt + M + '.' + m + '.' + p + pr\n } else if (xm) {\n ret = '>=' + M + '.0.0' + pr + ' <' + (+M + 1) + '.0.0' + pr\n } else if (xp) {\n ret = '>=' + M + '.' + m + '.0' + pr +\n ' <' + M + '.' + (+m + 1) + '.0' + pr\n }\n\n debug('xRange return', ret)\n\n return ret\n })\n}\n\n// Because * is AND-ed with everything else in the comparator,\n// and '' means \"any version\", just remove the *s entirely.\nfunction replaceStars (comp, options) {\n debug('replaceStars', comp, options)\n // Looseness is ignored here. star is always as loose as it gets!\n return comp.trim().replace(re[t.STAR], '')\n}\n\n// This function is passed to string.replace(re[t.HYPHENRANGE])\n// M, m, patch, prerelease, build\n// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5\n// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do\n// 1.2 - 3.4 => >=1.2.0 <3.5.0\nfunction hyphenReplace ($0,\n from, fM, fm, fp, fpr, fb,\n to, tM, tm, tp, tpr, tb) {\n if (isX(fM)) {\n from = ''\n } else if (isX(fm)) {\n from = '>=' + fM + '.0.0'\n } else if (isX(fp)) {\n from = '>=' + fM + '.' + fm + '.0'\n } else {\n from = '>=' + from\n }\n\n if (isX(tM)) {\n to = ''\n } else if (isX(tm)) {\n to = '<' + (+tM + 1) + '.0.0'\n } else if (isX(tp)) {\n to = '<' + tM + '.' + (+tm + 1) + '.0'\n } else if (tpr) {\n to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr\n } else {\n to = '<=' + to\n }\n\n return (from + ' ' + to).trim()\n}\n\n// if ANY of the sets match ALL of its comparators, then pass\nRange.prototype.test = function (version) {\n if (!version) {\n return false\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n for (var i = 0; i < this.set.length; i++) {\n if (testSet(this.set[i], version, this.options)) {\n return true\n }\n }\n return false\n}\n\nfunction testSet (set, version, options) {\n for (var i = 0; i < set.length; i++) {\n if (!set[i].test(version)) {\n return false\n }\n }\n\n if (version.prerelease.length && !options.includePrerelease) {\n // Find the set of versions that are allowed to have prereleases\n // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0\n // That should allow `1.2.3-pr.2` to pass.\n // However, `1.2.4-alpha.notready` should NOT be allowed,\n // even though it's within the range set by the comparators.\n for (i = 0; i < set.length; i++) {\n debug(set[i].semver)\n if (set[i].semver === ANY) {\n continue\n }\n\n if (set[i].semver.prerelease.length > 0) {\n var allowed = set[i].semver\n if (allowed.major === version.major &&\n allowed.minor === version.minor &&\n allowed.patch === version.patch) {\n return true\n }\n }\n }\n\n // Version has a -pre, but it's not one of the ones we like.\n return false\n }\n\n return true\n}\n\nexports.satisfies = satisfies\nfunction satisfies (version, range, options) {\n try {\n range = new Range(range, options)\n } catch (er) {\n return false\n }\n return range.test(version)\n}\n\nexports.maxSatisfying = maxSatisfying\nfunction maxSatisfying (versions, range, options) {\n var max = null\n var maxSV = null\n try {\n var rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach(function (v) {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!max || maxSV.compare(v) === -1) {\n // compare(max, v, true)\n max = v\n maxSV = new SemVer(max, options)\n }\n }\n })\n return max\n}\n\nexports.minSatisfying = minSatisfying\nfunction minSatisfying (versions, range, options) {\n var min = null\n var minSV = null\n try {\n var rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach(function (v) {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!min || minSV.compare(v) === 1) {\n // compare(min, v, true)\n min = v\n minSV = new SemVer(min, options)\n }\n }\n })\n return min\n}\n\nexports.minVersion = minVersion\nfunction minVersion (range, loose) {\n range = new Range(range, loose)\n\n var minver = new SemVer('0.0.0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = new SemVer('0.0.0-0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = null\n for (var i = 0; i < range.set.length; ++i) {\n var comparators = range.set[i]\n\n comparators.forEach(function (comparator) {\n // Clone to avoid manipulating the comparator's semver object.\n var compver = new SemVer(comparator.semver.version)\n switch (comparator.operator) {\n case '>':\n if (compver.prerelease.length === 0) {\n compver.patch++\n } else {\n compver.prerelease.push(0)\n }\n compver.raw = compver.format()\n /* fallthrough */\n case '':\n case '>=':\n if (!minver || gt(minver, compver)) {\n minver = compver\n }\n break\n case '<':\n case '<=':\n /* Ignore maximum versions */\n break\n /* istanbul ignore next */\n default:\n throw new Error('Unexpected operation: ' + comparator.operator)\n }\n })\n }\n\n if (minver && range.test(minver)) {\n return minver\n }\n\n return null\n}\n\nexports.validRange = validRange\nfunction validRange (range, options) {\n try {\n // Return '*' instead of '' so that truthiness works.\n // This will throw if it's invalid anyway\n return new Range(range, options).range || '*'\n } catch (er) {\n return null\n }\n}\n\n// Determine if version is less than all the versions possible in the range\nexports.ltr = ltr\nfunction ltr (version, range, options) {\n return outside(version, range, '<', options)\n}\n\n// Determine if version is greater than all the versions possible in the range.\nexports.gtr = gtr\nfunction gtr (version, range, options) {\n return outside(version, range, '>', options)\n}\n\nexports.outside = outside\nfunction outside (version, range, hilo, options) {\n version = new SemVer(version, options)\n range = new Range(range, options)\n\n var gtfn, ltefn, ltfn, comp, ecomp\n switch (hilo) {\n case '>':\n gtfn = gt\n ltefn = lte\n ltfn = lt\n comp = '>'\n ecomp = '>='\n break\n case '<':\n gtfn = lt\n ltefn = gte\n ltfn = gt\n comp = '<'\n ecomp = '<='\n break\n default:\n throw new TypeError('Must provide a hilo val of \"<\" or \">\"')\n }\n\n // If it satisifes the range it is not outside\n if (satisfies(version, range, options)) {\n return false\n }\n\n // From now on, variable terms are as if we're in \"gtr\" mode.\n // but note that everything is flipped for the \"ltr\" function.\n\n for (var i = 0; i < range.set.length; ++i) {\n var comparators = range.set[i]\n\n var high = null\n var low = null\n\n comparators.forEach(function (comparator) {\n if (comparator.semver === ANY) {\n comparator = new Comparator('>=0.0.0')\n }\n high = high || comparator\n low = low || comparator\n if (gtfn(comparator.semver, high.semver, options)) {\n high = comparator\n } else if (ltfn(comparator.semver, low.semver, options)) {\n low = comparator\n }\n })\n\n // If the edge version comparator has a operator then our version\n // isn't outside it\n if (high.operator === comp || high.operator === ecomp) {\n return false\n }\n\n // If the lowest version comparator has an operator and our version\n // is less than it then it isn't higher than the range\n if ((!low.operator || low.operator === comp) &&\n ltefn(version, low.semver)) {\n return false\n } else if (low.operator === ecomp && ltfn(version, low.semver)) {\n return false\n }\n }\n return true\n}\n\nexports.prerelease = prerelease\nfunction prerelease (version, options) {\n var parsed = parse(version, options)\n return (parsed && parsed.prerelease.length) ? parsed.prerelease : null\n}\n\nexports.intersects = intersects\nfunction intersects (r1, r2, options) {\n r1 = new Range(r1, options)\n r2 = new Range(r2, options)\n return r1.intersects(r2)\n}\n\nexports.coerce = coerce\nfunction coerce (version, options) {\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version === 'number') {\n version = String(version)\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n options = options || {}\n\n var match = null\n if (!options.rtl) {\n match = version.match(re[t.COERCE])\n } else {\n // Find the right-most coercible string that does not share\n // a terminus with a more left-ward coercible string.\n // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'\n //\n // Walk through the string checking with a /g regexp\n // Manually set the index so as to pick up overlapping matches.\n // Stop when we get a match that ends at the string end, since no\n // coercible string can be more right-ward without the same terminus.\n var next\n while ((next = re[t.COERCERTL].exec(version)) &&\n (!match || match.index + match[0].length !== version.length)\n ) {\n if (!match ||\n next.index + next[0].length !== match.index + match[0].length) {\n match = next\n }\n re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length\n }\n // leave it in a clean state\n re[t.COERCERTL].lastIndex = -1\n }\n\n if (match === null) {\n return null\n }\n\n return parse(match[2] +\n '.' + (match[3] || '0') +\n '.' + (match[4] || '0'), options)\n}\n","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nrequire(\"core-js/modules/es.array.iterator\");\n\nrequire(\"core-js/modules/es.map\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.string.iterator\");\n\nrequire(\"core-js/modules/web.dom-collections.for-each\");\n\nrequire(\"core-js/modules/web.dom-collections.iterator\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SimpleBus = void 0;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.1.4\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^6.2.1\",\n \"core-js\": \"^3.6.2\",\n semver: \"^6.3.0\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^25.1.0\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^25.1.0\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar SimpleBus = /*#__PURE__*/function () {\n function SimpleBus() {\n _classCallCheck(this, SimpleBus);\n\n _defineProperty(this, \"handlers\", new Map());\n }\n\n _createClass(SimpleBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) {\n return h != handler;\n }));\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n } catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n }]);\n\n return SimpleBus;\n}();\n\nexports.SimpleBus = SimpleBus;\n//# sourceMappingURL=SimpleBus.js.map","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n concat: function concat(arg) { // eslint-disable-line no-unused-vars\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.github.io/ecma262/#sec-map-objects\nmodule.exports = collection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var nativeMethod = NativePrototype[KEY];\n redefine(NativePrototype, KEY,\n KEY == 'add' ? function add(value) {\n nativeMethod.call(this, value === 0 ? 0 : value);\n return this;\n } : KEY == 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);\n } : KEY == 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : nativeMethod.call(this, key === 0 ? 0 : key);\n } : KEY == 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n nativeMethod.call(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n // eslint-disable-next-line max-len\n if (isForced(CONSTRUCTOR_NAME, typeof NativeConstructor != 'function' || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n })))) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.REQUIRED = true;\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, Constructor, CONSTRUCTOR_NAME);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, forced: Constructor != NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n typeof (NewTarget = dummy.constructor) == 'function' &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar create = require('../internals/object-create');\nvar redefineAll = require('../internals/redefine-all');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/define-iterator');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, CONSTRUCTOR_NAME);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n });\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n redefineAll(C.prototype, IS_MAP ? {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineProperty(C.prototype, 'size', {\n get: function () {\n return getInternalState(this).size;\n }\n });\n return C;\n },\n setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return { value: undefined, done: true };\n }\n // return step by kind\n if (kind == 'keys') return { value: entry.key, done: false };\n if (kind == 'values') return { value: entry.value, done: false };\n return { value: [entry.key, entry.value], done: false };\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCurrentUser = getCurrentUser;\nvar uidElement = document.getElementsByTagName('head')[0];\nvar uid = uidElement ? uidElement.getAttribute('data-user') : null;\nvar displayNameElement = document.getElementsByTagName('head')[0];\nvar displayName = displayNameElement ? displayNameElement.getAttribute('data-user-displayname') : null;\n\nfunction getCurrentUser() {\n if (uid === null) {\n return null;\n }\n\n return {\n uid: uid,\n displayName: displayName\n };\n}\n//# sourceMappingURL=user.js.map","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<a class=\\\"filename has-tooltip\\\" href=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"link\") || (depth0 != null ? lookupProperty(depth0,\"link\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"link\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":38},\"end\":{\"line\":1,\"column\":46}}}) : helper)))\n + \"\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"title\") || (depth0 != null ? lookupProperty(depth0,\"title\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"title\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":55},\"end\":{\"line\":1,\"column\":64}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":66},\"end\":{\"line\":1,\"column\":74}}}) : helper)))\n + \"</a>\\n\";\n},\"useData\":true});","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n// istanbul ignore next\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nvar _handlebarsBase = require('./handlebars/base');\n\nvar base = _interopRequireWildcard(_handlebarsBase);\n\n// Each of these augment the Handlebars object. No need to setup here.\n// (This is done to easily share code between commonjs and browse envs)\n\nvar _handlebarsSafeString = require('./handlebars/safe-string');\n\nvar _handlebarsSafeString2 = _interopRequireDefault(_handlebarsSafeString);\n\nvar _handlebarsException = require('./handlebars/exception');\n\nvar _handlebarsException2 = _interopRequireDefault(_handlebarsException);\n\nvar _handlebarsUtils = require('./handlebars/utils');\n\nvar Utils = _interopRequireWildcard(_handlebarsUtils);\n\nvar _handlebarsRuntime = require('./handlebars/runtime');\n\nvar runtime = _interopRequireWildcard(_handlebarsRuntime);\n\nvar _handlebarsNoConflict = require('./handlebars/no-conflict');\n\nvar _handlebarsNoConflict2 = _interopRequireDefault(_handlebarsNoConflict);\n\n// For compatibility and usage outside of module systems, make the Handlebars object a namespace\nfunction create() {\n var hb = new base.HandlebarsEnvironment();\n\n Utils.extend(hb, base);\n hb.SafeString = _handlebarsSafeString2['default'];\n hb.Exception = _handlebarsException2['default'];\n hb.Utils = Utils;\n hb.escapeExpression = Utils.escapeExpression;\n\n hb.VM = runtime;\n hb.template = function (spec) {\n return runtime.template(spec, hb);\n };\n\n return hb;\n}\n\nvar inst = create();\ninst.create = create;\n\n_handlebarsNoConflict2['default'](inst);\n\ninst['default'] = inst;\n\nexports['default'] = inst;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9oYW5kbGViYXJzLnJ1bnRpbWUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OEJBQXNCLG1CQUFtQjs7SUFBN0IsSUFBSTs7Ozs7b0NBSU8sMEJBQTBCOzs7O21DQUMzQix3QkFBd0I7Ozs7K0JBQ3ZCLG9CQUFvQjs7SUFBL0IsS0FBSzs7aUNBQ1Esc0JBQXNCOztJQUFuQyxPQUFPOztvQ0FFSSwwQkFBMEI7Ozs7O0FBR2pELFNBQVMsTUFBTSxHQUFHO0FBQ2hCLE1BQUksRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7O0FBRTFDLE9BQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ3ZCLElBQUUsQ0FBQyxVQUFVLG9DQUFhLENBQUM7QUFDM0IsSUFBRSxDQUFDLFNBQVMsbUNBQVksQ0FBQztBQUN6QixJQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztBQUNqQixJQUFFLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDOztBQUU3QyxJQUFFLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQztBQUNoQixJQUFFLENBQUMsUUFBUSxHQUFHLFVBQVMsSUFBSSxFQUFFO0FBQzNCLFdBQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7R0FDbkMsQ0FBQzs7QUFFRixTQUFPLEVBQUUsQ0FBQztDQUNYOztBQUVELElBQUksSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDO0FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDOztBQUVyQixrQ0FBVyxJQUFJLENBQUMsQ0FBQzs7QUFFakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQzs7cUJBRVIsSUFBSSIsImZpbGUiOiJoYW5kbGViYXJzLnJ1bnRpbWUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBiYXNlIGZyb20gJy4vaGFuZGxlYmFycy9iYXNlJztcblxuLy8gRWFjaCBvZiB0aGVzZSBhdWdtZW50IHRoZSBIYW5kbGViYXJzIG9iamVjdC4gTm8gbmVlZCB0byBzZXR1cCBoZXJlLlxuLy8gKFRoaXMgaXMgZG9uZSB0byBlYXNpbHkgc2hhcmUgY29kZSBiZXR3ZWVuIGNvbW1vbmpzIGFuZCBicm93c2UgZW52cylcbmltcG9ydCBTYWZlU3RyaW5nIGZyb20gJy4vaGFuZGxlYmFycy9zYWZlLXN0cmluZyc7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gJy4vaGFuZGxlYmFycy9leGNlcHRpb24nO1xuaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi9oYW5kbGViYXJzL3V0aWxzJztcbmltcG9ydCAqIGFzIHJ1bnRpbWUgZnJvbSAnLi9oYW5kbGViYXJzL3J1bnRpbWUnO1xuXG5pbXBvcnQgbm9Db25mbGljdCBmcm9tICcuL2hhbmRsZWJhcnMvbm8tY29uZmxpY3QnO1xuXG4vLyBGb3IgY29tcGF0aWJpbGl0eSBhbmQgdXNhZ2Ugb3V0c2lkZSBvZiBtb2R1bGUgc3lzdGVtcywgbWFrZSB0aGUgSGFuZGxlYmFycyBvYmplY3QgYSBuYW1lc3BhY2VcbmZ1bmN0aW9uIGNyZWF0ZSgpIHtcbiAgbGV0IGhiID0gbmV3IGJhc2UuSGFuZGxlYmFyc0Vudmlyb25tZW50KCk7XG5cbiAgVXRpbHMuZXh0ZW5kKGhiLCBiYXNlKTtcbiAgaGIuU2FmZVN0cmluZyA9IFNhZmVTdHJpbmc7XG4gIGhiLkV4Y2VwdGlvbiA9IEV4Y2VwdGlvbjtcbiAgaGIuVXRpbHMgPSBVdGlscztcbiAgaGIuZXNjYXBlRXhwcmVzc2lvbiA9IFV0aWxzLmVzY2FwZUV4cHJlc3Npb247XG5cbiAgaGIuVk0gPSBydW50aW1lO1xuICBoYi50ZW1wbGF0ZSA9IGZ1bmN0aW9uKHNwZWMpIHtcbiAgICByZXR1cm4gcnVudGltZS50ZW1wbGF0ZShzcGVjLCBoYik7XG4gIH07XG5cbiAgcmV0dXJuIGhiO1xufVxuXG5sZXQgaW5zdCA9IGNyZWF0ZSgpO1xuaW5zdC5jcmVhdGUgPSBjcmVhdGU7XG5cbm5vQ29uZmxpY3QoaW5zdCk7XG5cbmluc3RbJ2RlZmF1bHQnXSA9IGluc3Q7XG5cbmV4cG9ydCBkZWZhdWx0IGluc3Q7XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\n\nvar _utils = require('../utils');\n\nexports['default'] = function (instance) {\n instance.registerHelper('blockHelperMissing', function (context, options) {\n var inverse = options.inverse,\n fn = options.fn;\n\n if (context === true) {\n return fn(this);\n } else if (context === false || context == null) {\n return inverse(this);\n } else if (_utils.isArray(context)) {\n if (context.length > 0) {\n if (options.ids) {\n options.ids = [options.name];\n }\n\n return instance.helpers.each(context, options);\n } else {\n return inverse(this);\n }\n } else {\n if (options.data && options.ids) {\n var data = _utils.createFrame(options.data);\n data.contextPath = _utils.appendContextPath(options.data.contextPath, options.name);\n options = { data: data };\n }\n\n return fn(context, options);\n }\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvYmxvY2staGVscGVyLW1pc3NpbmcuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztxQkFBd0QsVUFBVTs7cUJBRW5ELFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsVUFBUyxPQUFPLEVBQUUsT0FBTyxFQUFFO0FBQ3ZFLFFBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPO1FBQzNCLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDOztBQUVsQixRQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7QUFDcEIsYUFBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDakIsTUFBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLElBQUksT0FBTyxJQUFJLElBQUksRUFBRTtBQUMvQyxhQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUN0QixNQUFNLElBQUksZUFBUSxPQUFPLENBQUMsRUFBRTtBQUMzQixVQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO0FBQ3RCLFlBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUNmLGlCQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzlCOztBQUVELGVBQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO09BQ2hELE1BQU07QUFDTCxlQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztPQUN0QjtLQUNGLE1BQU07QUFDTCxVQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUMvQixZQUFJLElBQUksR0FBRyxtQkFBWSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDckMsWUFBSSxDQUFDLFdBQVcsR0FBRyx5QkFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQ2IsQ0FBQztBQUNGLGVBQU8sR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQztPQUMxQjs7QUFFRCxhQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDN0I7R0FDRixDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJibG9jay1oZWxwZXItbWlzc2luZy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFwcGVuZENvbnRleHRQYXRoLCBjcmVhdGVGcmFtZSwgaXNBcnJheSB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2Jsb2NrSGVscGVyTWlzc2luZycsIGZ1bmN0aW9uKGNvbnRleHQsIG9wdGlvbnMpIHtcbiAgICBsZXQgaW52ZXJzZSA9IG9wdGlvbnMuaW52ZXJzZSxcbiAgICAgIGZuID0gb3B0aW9ucy5mbjtcblxuICAgIGlmIChjb250ZXh0ID09PSB0cnVlKSB7XG4gICAgICByZXR1cm4gZm4odGhpcyk7XG4gICAgfSBlbHNlIGlmIChjb250ZXh0ID09PSBmYWxzZSB8fCBjb250ZXh0ID09IG51bGwpIHtcbiAgICAgIHJldHVybiBpbnZlcnNlKHRoaXMpO1xuICAgIH0gZWxzZSBpZiAoaXNBcnJheShjb250ZXh0KSkge1xuICAgICAgaWYgKGNvbnRleHQubGVuZ3RoID4gMCkge1xuICAgICAgICBpZiAob3B0aW9ucy5pZHMpIHtcbiAgICAgICAgICBvcHRpb25zLmlkcyA9IFtvcHRpb25zLm5hbWVdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGluc3RhbmNlLmhlbHBlcnMuZWFjaChjb250ZXh0LCBvcHRpb25zKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBpbnZlcnNlKHRoaXMpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAob3B0aW9ucy5kYXRhICYmIG9wdGlvbnMuaWRzKSB7XG4gICAgICAgIGxldCBkYXRhID0gY3JlYXRlRnJhbWUob3B0aW9ucy5kYXRhKTtcbiAgICAgICAgZGF0YS5jb250ZXh0UGF0aCA9IGFwcGVuZENvbnRleHRQYXRoKFxuICAgICAgICAgIG9wdGlvbnMuZGF0YS5jb250ZXh0UGF0aCxcbiAgICAgICAgICBvcHRpb25zLm5hbWVcbiAgICAgICAgKTtcbiAgICAgICAgb3B0aW9ucyA9IHsgZGF0YTogZGF0YSB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZm4oY29udGV4dCwgb3B0aW9ucyk7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('../utils');\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('each', function (context, options) {\n if (!options) {\n throw new _exception2['default']('Must pass iterator to #each');\n }\n\n var fn = options.fn,\n inverse = options.inverse,\n i = 0,\n ret = '',\n data = undefined,\n contextPath = undefined;\n\n if (options.data && options.ids) {\n contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]) + '.';\n }\n\n if (_utils.isFunction(context)) {\n context = context.call(this);\n }\n\n if (options.data) {\n data = _utils.createFrame(options.data);\n }\n\n function execIteration(field, index, last) {\n if (data) {\n data.key = field;\n data.index = index;\n data.first = index === 0;\n data.last = !!last;\n\n if (contextPath) {\n data.contextPath = contextPath + field;\n }\n }\n\n ret = ret + fn(context[field], {\n data: data,\n blockParams: _utils.blockParams([context[field], field], [contextPath + field, null])\n });\n }\n\n if (context && typeof context === 'object') {\n if (_utils.isArray(context)) {\n for (var j = context.length; i < j; i++) {\n if (i in context) {\n execIteration(i, i, i === context.length - 1);\n }\n }\n } else if (global.Symbol && context[global.Symbol.iterator]) {\n var newContext = [];\n var iterator = context[global.Symbol.iterator]();\n for (var it = iterator.next(); !it.done; it = iterator.next()) {\n newContext.push(it.value);\n }\n context = newContext;\n for (var j = context.length; i < j; i++) {\n execIteration(i, i, i === context.length - 1);\n }\n } else {\n (function () {\n var priorKey = undefined;\n\n Object.keys(context).forEach(function (key) {\n // We're running the iterations one step out of sync so we can detect\n // the last iteration without have to scan the object twice and create\n // an itermediate keys array.\n if (priorKey !== undefined) {\n execIteration(priorKey, i - 1);\n }\n priorKey = key;\n i++;\n });\n if (priorKey !== undefined) {\n execIteration(priorKey, i - 1, true);\n }\n })();\n }\n }\n\n if (i === 0) {\n ret = inverse(this);\n }\n\n return ret;\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvZWFjaC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O3FCQU1PLFVBQVU7O3lCQUNLLGNBQWM7Ozs7cUJBRXJCLFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFVBQVMsT0FBTyxFQUFFLE9BQU8sRUFBRTtBQUN6RCxRQUFJLENBQUMsT0FBTyxFQUFFO0FBQ1osWUFBTSwyQkFBYyw2QkFBNkIsQ0FBQyxDQUFDO0tBQ3BEOztBQUVELFFBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFO1FBQ2pCLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTztRQUN6QixDQUFDLEdBQUcsQ0FBQztRQUNMLEdBQUcsR0FBRyxFQUFFO1FBQ1IsSUFBSSxZQUFBO1FBQ0osV0FBVyxZQUFBLENBQUM7O0FBRWQsUUFBSSxPQUFPLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7QUFDL0IsaUJBQVcsR0FDVCx5QkFBa0IsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztLQUNyRTs7QUFFRCxRQUFJLGtCQUFXLE9BQU8sQ0FBQyxFQUFFO0FBQ3ZCLGFBQU8sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQzlCOztBQUVELFFBQUksT0FBTyxDQUFDLElBQUksRUFBRTtBQUNoQixVQUFJLEdBQUcsbUJBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ2xDOztBQUVELGFBQVMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO0FBQ3pDLFVBQUksSUFBSSxFQUFFO0FBQ1IsWUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7QUFDakIsWUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7QUFDbkIsWUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDO0FBQ3pCLFlBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQzs7QUFFbkIsWUFBSSxXQUFXLEVBQUU7QUFDZixjQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsR0FBRyxLQUFLLENBQUM7U0FDeEM7T0FDRjs7QUFFRCxTQUFHLEdBQ0QsR0FBRyxHQUNILEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7QUFDakIsWUFBSSxFQUFFLElBQUk7QUFDVixtQkFBVyxFQUFFLG1CQUNYLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUN2QixDQUFDLFdBQVcsR0FBRyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQzVCO09BQ0YsQ0FBQyxDQUFDO0tBQ047O0FBRUQsUUFBSSxPQUFPLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxFQUFFO0FBQzFDLFVBQUksZUFBUSxPQUFPLENBQUMsRUFBRTtBQUNwQixhQUFLLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUN2QyxjQUFJLENBQUMsSUFBSSxPQUFPLEVBQUU7QUFDaEIseUJBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1dBQy9DO1NBQ0Y7T0FDRixNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRTtBQUMzRCxZQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7QUFDdEIsWUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztBQUNuRCxhQUFLLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxHQUFHLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRTtBQUM3RCxvQkFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDM0I7QUFDRCxlQUFPLEdBQUcsVUFBVSxDQUFDO0FBQ3JCLGFBQUssSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO0FBQ3ZDLHVCQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUMvQztPQUNGLE1BQU07O0FBQ0wsY0FBSSxRQUFRLFlBQUEsQ0FBQzs7QUFFYixnQkFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQSxHQUFHLEVBQUk7Ozs7QUFJbEMsZ0JBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtBQUMxQiwyQkFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDaEM7QUFDRCxvQkFBUSxHQUFHLEdBQUcsQ0FBQztBQUNmLGFBQUMsRUFBRSxDQUFDO1dBQ0wsQ0FBQyxDQUFDO0FBQ0gsY0FBSSxRQUFRLEtBQUssU0FBUyxFQUFFO0FBQzFCLHlCQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7V0FDdEM7O09BQ0Y7S0FDRjs7QUFFRCxRQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7QUFDWCxTQUFHLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ3JCOztBQUVELFdBQU8sR0FBRyxDQUFDO0dBQ1osQ0FBQyxDQUFDO0NBQ0oiLCJmaWxlIjoiZWFjaC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFwcGVuZENvbnRleHRQYXRoLFxuICBibG9ja1BhcmFtcyxcbiAgY3JlYXRlRnJhbWUsXG4gIGlzQXJyYXksXG4gIGlzRnVuY3Rpb25cbn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tICcuLi9leGNlcHRpb24nO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbihpbnN0YW5jZSkge1xuICBpbnN0YW5jZS5yZWdpc3RlckhlbHBlcignZWFjaCcsIGZ1bmN0aW9uKGNvbnRleHQsIG9wdGlvbnMpIHtcbiAgICBpZiAoIW9wdGlvbnMpIHtcbiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ011c3QgcGFzcyBpdGVyYXRvciB0byAjZWFjaCcpO1xuICAgIH1cblxuICAgIGxldCBmbiA9IG9wdGlvbnMuZm4sXG4gICAgICBpbnZlcnNlID0gb3B0aW9ucy5pbnZlcnNlLFxuICAgICAgaSA9IDAsXG4gICAgICByZXQgPSAnJyxcbiAgICAgIGRhdGEsXG4gICAgICBjb250ZXh0UGF0aDtcblxuICAgIGlmIChvcHRpb25zLmRhdGEgJiYgb3B0aW9ucy5pZHMpIHtcbiAgICAgIGNvbnRleHRQYXRoID1cbiAgICAgICAgYXBwZW5kQ29udGV4dFBhdGgob3B0aW9ucy5kYXRhLmNvbnRleHRQYXRoLCBvcHRpb25zLmlkc1swXSkgKyAnLic7XG4gICAgfVxuXG4gICAgaWYgKGlzRnVuY3Rpb24oY29udGV4dCkpIHtcbiAgICAgIGNvbnRleHQgPSBjb250ZXh0LmNhbGwodGhpcyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuZGF0YSkge1xuICAgICAgZGF0YSA9IGNyZWF0ZUZyYW1lKG9wdGlvbnMuZGF0YSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZXhlY0l0ZXJhdGlvbihmaWVsZCwgaW5kZXgsIGxhc3QpIHtcbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIGRhdGEua2V5ID0gZmllbGQ7XG4gICAgICAgIGRhdGEuaW5kZXggPSBpbmRleDtcbiAgICAgICAgZGF0YS5maXJzdCA9IGluZGV4ID09PSAwO1xuICAgICAgICBkYXRhLmxhc3QgPSAhIWxhc3Q7XG5cbiAgICAgICAgaWYgKGNvbnRleHRQYXRoKSB7XG4gICAgICAgICAgZGF0YS5jb250ZXh0UGF0aCA9IGNvbnRleHRQYXRoICsgZmllbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0ID1cbiAgICAgICAgcmV0ICtcbiAgICAgICAgZm4oY29udGV4dFtmaWVsZF0sIHtcbiAgICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICAgIGJsb2NrUGFyYW1zOiBibG9ja1BhcmFtcyhcbiAgICAgICAgICAgIFtjb250ZXh0W2ZpZWxkXSwgZmllbGRdLFxuICAgICAgICAgICAgW2NvbnRleHRQYXRoICsgZmllbGQsIG51bGxdXG4gICAgICAgICAgKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoY29udGV4dCAmJiB0eXBlb2YgY29udGV4dCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGlmIChpc0FycmF5KGNvbnRleHQpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBjb250ZXh0Lmxlbmd0aDsgaSA8IGo7IGkrKykge1xuICAgICAgICAgIGlmIChpIGluIGNvbnRleHQpIHtcbiAgICAgICAgICAgIGV4ZWNJdGVyYXRpb24oaSwgaSwgaSA9PT0gY29udGV4dC5sZW5ndGggLSAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoZ2xvYmFsLlN5bWJvbCAmJiBjb250ZXh0W2dsb2JhbC5TeW1ib2wuaXRlcmF0b3JdKSB7XG4gICAgICAgIGNvbnN0IG5ld0NvbnRleHQgPSBbXTtcbiAgICAgICAgY29uc3QgaXRlcmF0b3IgPSBjb250ZXh0W2dsb2JhbC5TeW1ib2wuaXRlcmF0b3JdKCk7XG4gICAgICAgIGZvciAobGV0IGl0ID0gaXRlcmF0b3IubmV4dCgpOyAhaXQuZG9uZTsgaXQgPSBpdGVyYXRvci5uZXh0KCkpIHtcbiAgICAgICAgICBuZXdDb250ZXh0LnB1c2goaXQudmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRleHQgPSBuZXdDb250ZXh0O1xuICAgICAgICBmb3IgKGxldCBqID0gY29udGV4dC5sZW5ndGg7IGkgPCBqOyBpKyspIHtcbiAgICAgICAgICBleGVjSXRlcmF0aW9uKGksIGksIGkgPT09IGNvbnRleHQubGVuZ3RoIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBwcmlvcktleTtcblxuICAgICAgICBPYmplY3Qua2V5cyhjb250ZXh0KS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgLy8gV2UncmUgcnVubmluZyB0aGUgaXRlcmF0aW9ucyBvbmUgc3RlcCBvdXQgb2Ygc3luYyBzbyB3ZSBjYW4gZGV0ZWN0XG4gICAgICAgICAgLy8gdGhlIGxhc3QgaXRlcmF0aW9uIHdpdGhvdXQgaGF2ZSB0byBzY2FuIHRoZSBvYmplY3QgdHdpY2UgYW5kIGNyZWF0ZVxuICAgICAgICAgIC8vIGFuIGl0ZXJtZWRpYXRlIGtleXMgYXJyYXkuXG4gICAgICAgICAgaWYgKHByaW9yS2V5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGV4ZWNJdGVyYXRpb24ocHJpb3JLZXksIGkgLSAxKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcHJpb3JLZXkgPSBrZXk7XG4gICAgICAgICAgaSsrO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHByaW9yS2V5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBleGVjSXRlcmF0aW9uKHByaW9yS2V5LCBpIC0gMSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgcmV0ID0gaW52ZXJzZSh0aGlzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmV0O1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('helperMissing', function () /* [args, ]options */{\n if (arguments.length === 1) {\n // A missing field in a {{foo}} construct.\n return undefined;\n } else {\n // Someone is actually trying to call something, blow up.\n throw new _exception2['default']('Missing helper: \"' + arguments[arguments.length - 1].name + '\"');\n }\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvaGVscGVyLW1pc3NpbmcuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozt5QkFBc0IsY0FBYzs7OztxQkFFckIsVUFBUyxRQUFRLEVBQUU7QUFDaEMsVUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsaUNBQWdDO0FBQ3ZFLFFBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7O0FBRTFCLGFBQU8sU0FBUyxDQUFDO0tBQ2xCLE1BQU07O0FBRUwsWUFBTSwyQkFDSixtQkFBbUIsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUNqRSxDQUFDO0tBQ0g7R0FDRixDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJoZWxwZXItbWlzc2luZy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeGNlcHRpb24gZnJvbSAnLi4vZXhjZXB0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2hlbHBlck1pc3NpbmcnLCBmdW5jdGlvbigvKiBbYXJncywgXW9wdGlvbnMgKi8pIHtcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgLy8gQSBtaXNzaW5nIGZpZWxkIGluIGEge3tmb299fSBjb25zdHJ1Y3QuXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTb21lb25lIGlzIGFjdHVhbGx5IHRyeWluZyB0byBjYWxsIHNvbWV0aGluZywgYmxvdyB1cC5cbiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oXG4gICAgICAgICdNaXNzaW5nIGhlbHBlcjogXCInICsgYXJndW1lbnRzW2FyZ3VtZW50cy5sZW5ndGggLSAxXS5uYW1lICsgJ1wiJ1xuICAgICAgKTtcbiAgICB9XG4gIH0pO1xufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('../utils');\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('if', function (conditional, options) {\n if (arguments.length != 2) {\n throw new _exception2['default']('#if requires exactly one argument');\n }\n if (_utils.isFunction(conditional)) {\n conditional = conditional.call(this);\n }\n\n // Default behavior is to render the positive path if the value is truthy and not empty.\n // The `includeZero` option may be set to treat the condtional as purely not empty based on the\n // behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.\n if (!options.hash.includeZero && !conditional || _utils.isEmpty(conditional)) {\n return options.inverse(this);\n } else {\n return options.fn(this);\n }\n });\n\n instance.registerHelper('unless', function (conditional, options) {\n if (arguments.length != 2) {\n throw new _exception2['default']('#unless requires exactly one argument');\n }\n return instance.helpers['if'].call(this, conditional, {\n fn: options.inverse,\n inverse: options.fn,\n hash: options.hash\n });\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvaWYuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztxQkFBb0MsVUFBVTs7eUJBQ3hCLGNBQWM7Ozs7cUJBRXJCLFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFVBQVMsV0FBVyxFQUFFLE9BQU8sRUFBRTtBQUMzRCxRQUFJLFNBQVMsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO0FBQ3pCLFlBQU0sMkJBQWMsbUNBQW1DLENBQUMsQ0FBQztLQUMxRDtBQUNELFFBQUksa0JBQVcsV0FBVyxDQUFDLEVBQUU7QUFDM0IsaUJBQVcsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ3RDOzs7OztBQUtELFFBQUksQUFBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsV0FBVyxJQUFLLGVBQVEsV0FBVyxDQUFDLEVBQUU7QUFDdkUsYUFBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQzlCLE1BQU07QUFDTCxhQUFPLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDekI7R0FDRixDQUFDLENBQUM7O0FBRUgsVUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsVUFBUyxXQUFXLEVBQUUsT0FBTyxFQUFFO0FBQy9ELFFBQUksU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7QUFDekIsWUFBTSwyQkFBYyx1Q0FBdUMsQ0FBQyxDQUFDO0tBQzlEO0FBQ0QsV0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO0FBQ3BELFFBQUUsRUFBRSxPQUFPLENBQUMsT0FBTztBQUNuQixhQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUU7QUFDbkIsVUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO0tBQ25CLENBQUMsQ0FBQztHQUNKLENBQUMsQ0FBQztDQUNKIiwiZmlsZSI6ImlmLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eSwgaXNGdW5jdGlvbiB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCBFeGNlcHRpb24gZnJvbSAnLi4vZXhjZXB0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2lmJywgZnVuY3Rpb24oY29uZGl0aW9uYWwsIG9wdGlvbnMpIHtcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCAhPSAyKSB7XG4gICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCcjaWYgcmVxdWlyZXMgZXhhY3RseSBvbmUgYXJndW1lbnQnKTtcbiAgICB9XG4gICAgaWYgKGlzRnVuY3Rpb24oY29uZGl0aW9uYWwpKSB7XG4gICAgICBjb25kaXRpb25hbCA9IGNvbmRpdGlvbmFsLmNhbGwodGhpcyk7XG4gICAgfVxuXG4gICAgLy8gRGVmYXVsdCBiZWhhdmlvciBpcyB0byByZW5kZXIgdGhlIHBvc2l0aXZlIHBhdGggaWYgdGhlIHZhbHVlIGlzIHRydXRoeSBhbmQgbm90IGVtcHR5LlxuICAgIC8vIFRoZSBgaW5jbHVkZVplcm9gIG9wdGlvbiBtYXkgYmUgc2V0IHRvIHRyZWF0IHRoZSBjb25kdGlvbmFsIGFzIHB1cmVseSBub3QgZW1wdHkgYmFzZWQgb24gdGhlXG4gICAgLy8gYmVoYXZpb3Igb2YgaXNFbXB0eS4gRWZmZWN0aXZlbHkgdGhpcyBkZXRlcm1pbmVzIGlmIDAgaXMgaGFuZGxlZCBieSB0aGUgcG9zaXRpdmUgcGF0aCBvciBuZWdhdGl2ZS5cbiAgICBpZiAoKCFvcHRpb25zLmhhc2guaW5jbHVkZVplcm8gJiYgIWNvbmRpdGlvbmFsKSB8fCBpc0VtcHR5KGNvbmRpdGlvbmFsKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbnMuaW52ZXJzZSh0aGlzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG9wdGlvbnMuZm4odGhpcyk7XG4gICAgfVxuICB9KTtcblxuICBpbnN0YW5jZS5yZWdpc3RlckhlbHBlcigndW5sZXNzJywgZnVuY3Rpb24oY29uZGl0aW9uYWwsIG9wdGlvbnMpIHtcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCAhPSAyKSB7XG4gICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCcjdW5sZXNzIHJlcXVpcmVzIGV4YWN0bHkgb25lIGFyZ3VtZW50Jyk7XG4gICAgfVxuICAgIHJldHVybiBpbnN0YW5jZS5oZWxwZXJzWydpZiddLmNhbGwodGhpcywgY29uZGl0aW9uYWwsIHtcbiAgICAgIGZuOiBvcHRpb25zLmludmVyc2UsXG4gICAgICBpbnZlcnNlOiBvcHRpb25zLmZuLFxuICAgICAgaGFzaDogb3B0aW9ucy5oYXNoXG4gICAgfSk7XG4gIH0pO1xufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n\nexports['default'] = function (instance) {\n instance.registerHelper('log', function () /* message, options */{\n var args = [undefined],\n options = arguments[arguments.length - 1];\n for (var i = 0; i < arguments.length - 1; i++) {\n args.push(arguments[i]);\n }\n\n var level = 1;\n if (options.hash.level != null) {\n level = options.hash.level;\n } else if (options.data && options.data.level != null) {\n level = options.data.level;\n }\n args[0] = level;\n\n instance.log.apply(instance, args);\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvbG9nLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQWUsVUFBUyxRQUFRLEVBQUU7QUFDaEMsVUFBUSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsa0NBQWlDO0FBQzlELFFBQUksSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQ3BCLE9BQU8sR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztBQUM1QyxTQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7QUFDN0MsVUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN6Qjs7QUFFRCxRQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7QUFDZCxRQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRTtBQUM5QixXQUFLLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7S0FDNUIsTUFBTSxJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFFO0FBQ3JELFdBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztLQUM1QjtBQUNELFFBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUM7O0FBRWhCLFlBQVEsQ0FBQyxHQUFHLE1BQUEsQ0FBWixRQUFRLEVBQVEsSUFBSSxDQUFDLENBQUM7R0FDdkIsQ0FBQyxDQUFDO0NBQ0oiLCJmaWxlIjoibG9nLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2xvZycsIGZ1bmN0aW9uKC8qIG1lc3NhZ2UsIG9wdGlvbnMgKi8pIHtcbiAgICBsZXQgYXJncyA9IFt1bmRlZmluZWRdLFxuICAgICAgb3B0aW9ucyA9IGFyZ3VtZW50c1thcmd1bWVudHMubGVuZ3RoIC0gMV07XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmd1bWVudHMubGVuZ3RoIC0gMTsgaSsrKSB7XG4gICAgICBhcmdzLnB1c2goYXJndW1lbnRzW2ldKTtcbiAgICB9XG5cbiAgICBsZXQgbGV2ZWwgPSAxO1xuICAgIGlmIChvcHRpb25zLmhhc2gubGV2ZWwgIT0gbnVsbCkge1xuICAgICAgbGV2ZWwgPSBvcHRpb25zLmhhc2gubGV2ZWw7XG4gICAgfSBlbHNlIGlmIChvcHRpb25zLmRhdGEgJiYgb3B0aW9ucy5kYXRhLmxldmVsICE9IG51bGwpIHtcbiAgICAgIGxldmVsID0gb3B0aW9ucy5kYXRhLmxldmVsO1xuICAgIH1cbiAgICBhcmdzWzBdID0gbGV2ZWw7XG5cbiAgICBpbnN0YW5jZS5sb2coLi4uYXJncyk7XG4gIH0pO1xufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n\nexports['default'] = function (instance) {\n instance.registerHelper('lookup', function (obj, field, options) {\n if (!obj) {\n // Note for 5.0: Change to \"obj == null\" in 5.0\n return obj;\n }\n return options.lookupProperty(obj, field);\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvbG9va3VwLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQWUsVUFBUyxRQUFRLEVBQUU7QUFDaEMsVUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsVUFBUyxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtBQUM5RCxRQUFJLENBQUMsR0FBRyxFQUFFOztBQUVSLGFBQU8sR0FBRyxDQUFDO0tBQ1o7QUFDRCxXQUFPLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0dBQzNDLENBQUMsQ0FBQztDQUNKIiwiZmlsZSI6Imxvb2t1cC5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKGluc3RhbmNlKSB7XG4gIGluc3RhbmNlLnJlZ2lzdGVySGVscGVyKCdsb29rdXAnLCBmdW5jdGlvbihvYmosIGZpZWxkLCBvcHRpb25zKSB7XG4gICAgaWYgKCFvYmopIHtcbiAgICAgIC8vIE5vdGUgZm9yIDUuMDogQ2hhbmdlIHRvIFwib2JqID09IG51bGxcIiBpbiA1LjBcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zLmxvb2t1cFByb3BlcnR5KG9iaiwgZmllbGQpO1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('../utils');\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('with', function (context, options) {\n if (arguments.length != 2) {\n throw new _exception2['default']('#with requires exactly one argument');\n }\n if (_utils.isFunction(context)) {\n context = context.call(this);\n }\n\n var fn = options.fn;\n\n if (!_utils.isEmpty(context)) {\n var data = options.data;\n if (options.data && options.ids) {\n data = _utils.createFrame(options.data);\n data.contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]);\n }\n\n return fn(context, {\n data: data,\n blockParams: _utils.blockParams([context], [data && data.contextPath])\n });\n } else {\n return options.inverse(this);\n }\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvd2l0aC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O3FCQU1PLFVBQVU7O3lCQUNLLGNBQWM7Ozs7cUJBRXJCLFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFVBQVMsT0FBTyxFQUFFLE9BQU8sRUFBRTtBQUN6RCxRQUFJLFNBQVMsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO0FBQ3pCLFlBQU0sMkJBQWMscUNBQXFDLENBQUMsQ0FBQztLQUM1RDtBQUNELFFBQUksa0JBQVcsT0FBTyxDQUFDLEVBQUU7QUFDdkIsYUFBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDOUI7O0FBRUQsUUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQzs7QUFFcEIsUUFBSSxDQUFDLGVBQVEsT0FBTyxDQUFDLEVBQUU7QUFDckIsVUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztBQUN4QixVQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUMvQixZQUFJLEdBQUcsbUJBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2pDLFlBQUksQ0FBQyxXQUFXLEdBQUcseUJBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7T0FDSDs7QUFFRCxhQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUU7QUFDakIsWUFBSSxFQUFFLElBQUk7QUFDVixtQkFBVyxFQUFFLG1CQUFZLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO09BQ2hFLENBQUMsQ0FBQztLQUNKLE1BQU07QUFDTCxhQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDOUI7R0FDRixDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJ3aXRoLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYXBwZW5kQ29udGV4dFBhdGgsXG4gIGJsb2NrUGFyYW1zLFxuICBjcmVhdGVGcmFtZSxcbiAgaXNFbXB0eSxcbiAgaXNGdW5jdGlvblxufSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gJy4uL2V4Y2VwdGlvbic7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKGluc3RhbmNlKSB7XG4gIGluc3RhbmNlLnJlZ2lzdGVySGVscGVyKCd3aXRoJywgZnVuY3Rpb24oY29udGV4dCwgb3B0aW9ucykge1xuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoICE9IDIpIHtcbiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJyN3aXRoIHJlcXVpcmVzIGV4YWN0bHkgb25lIGFyZ3VtZW50Jyk7XG4gICAgfVxuICAgIGlmIChpc0Z1bmN0aW9uKGNvbnRleHQpKSB7XG4gICAgICBjb250ZXh0ID0gY29udGV4dC5jYWxsKHRoaXMpO1xuICAgIH1cblxuICAgIGxldCBmbiA9IG9wdGlvbnMuZm47XG5cbiAgICBpZiAoIWlzRW1wdHkoY29udGV4dCkpIHtcbiAgICAgIGxldCBkYXRhID0gb3B0aW9ucy5kYXRhO1xuICAgICAgaWYgKG9wdGlvbnMuZGF0YSAmJiBvcHRpb25zLmlkcykge1xuICAgICAgICBkYXRhID0gY3JlYXRlRnJhbWUob3B0aW9ucy5kYXRhKTtcbiAgICAgICAgZGF0YS5jb250ZXh0UGF0aCA9IGFwcGVuZENvbnRleHRQYXRoKFxuICAgICAgICAgIG9wdGlvbnMuZGF0YS5jb250ZXh0UGF0aCxcbiAgICAgICAgICBvcHRpb25zLmlkc1swXVxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZm4oY29udGV4dCwge1xuICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICBibG9ja1BhcmFtczogYmxvY2tQYXJhbXMoW2NvbnRleHRdLCBbZGF0YSAmJiBkYXRhLmNvbnRleHRQYXRoXSlcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gb3B0aW9ucy5pbnZlcnNlKHRoaXMpO1xuICAgIH1cbiAgfSk7XG59XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\nexports.registerDefaultDecorators = registerDefaultDecorators;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _decoratorsInline = require('./decorators/inline');\n\nvar _decoratorsInline2 = _interopRequireDefault(_decoratorsInline);\n\nfunction registerDefaultDecorators(instance) {\n _decoratorsInline2['default'](instance);\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2RlY29yYXRvcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Z0NBQTJCLHFCQUFxQjs7OztBQUV6QyxTQUFTLHlCQUF5QixDQUFDLFFBQVEsRUFBRTtBQUNsRCxnQ0FBZSxRQUFRLENBQUMsQ0FBQztDQUMxQiIsImZpbGUiOiJkZWNvcmF0b3JzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlZ2lzdGVySW5saW5lIGZyb20gJy4vZGVjb3JhdG9ycy9pbmxpbmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJEZWZhdWx0RGVjb3JhdG9ycyhpbnN0YW5jZSkge1xuICByZWdpc3RlcklubGluZShpbnN0YW5jZSk7XG59XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\n\nvar _utils = require('../utils');\n\nexports['default'] = function (instance) {\n instance.registerDecorator('inline', function (fn, props, container, options) {\n var ret = fn;\n if (!props.partials) {\n props.partials = {};\n ret = function (context, options) {\n // Create a new partials stack frame prior to exec.\n var original = container.partials;\n container.partials = _utils.extend({}, original, props.partials);\n var ret = fn(context, options);\n container.partials = original;\n return ret;\n };\n }\n\n props.partials[options.args[0]] = options.fn;\n\n return ret;\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2RlY29yYXRvcnMvaW5saW5lLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQXVCLFVBQVU7O3FCQUVsQixVQUFTLFFBQVEsRUFBRTtBQUNoQyxVQUFRLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLFVBQVMsRUFBRSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFO0FBQzNFLFFBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztBQUNiLFFBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO0FBQ25CLFdBQUssQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0FBQ3BCLFNBQUcsR0FBRyxVQUFTLE9BQU8sRUFBRSxPQUFPLEVBQUU7O0FBRS9CLFlBQUksUUFBUSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUM7QUFDbEMsaUJBQVMsQ0FBQyxRQUFRLEdBQUcsY0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUMxRCxZQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9CLGlCQUFTLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztBQUM5QixlQUFPLEdBQUcsQ0FBQztPQUNaLENBQUM7S0FDSDs7QUFFRCxTQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDOztBQUU3QyxXQUFPLEdBQUcsQ0FBQztHQUNaLENBQUMsQ0FBQztDQUNKIiwiZmlsZSI6ImlubGluZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4dGVuZCB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJEZWNvcmF0b3IoJ2lubGluZScsIGZ1bmN0aW9uKGZuLCBwcm9wcywgY29udGFpbmVyLCBvcHRpb25zKSB7XG4gICAgbGV0IHJldCA9IGZuO1xuICAgIGlmICghcHJvcHMucGFydGlhbHMpIHtcbiAgICAgIHByb3BzLnBhcnRpYWxzID0ge307XG4gICAgICByZXQgPSBmdW5jdGlvbihjb250ZXh0LCBvcHRpb25zKSB7XG4gICAgICAgIC8vIENyZWF0ZSBhIG5ldyBwYXJ0aWFscyBzdGFjayBmcmFtZSBwcmlvciB0byBleGVjLlxuICAgICAgICBsZXQgb3JpZ2luYWwgPSBjb250YWluZXIucGFydGlhbHM7XG4gICAgICAgIGNvbnRhaW5lci5wYXJ0aWFscyA9IGV4dGVuZCh7fSwgb3JpZ2luYWwsIHByb3BzLnBhcnRpYWxzKTtcbiAgICAgICAgbGV0IHJldCA9IGZuKGNvbnRleHQsIG9wdGlvbnMpO1xuICAgICAgICBjb250YWluZXIucGFydGlhbHMgPSBvcmlnaW5hbDtcbiAgICAgICAgcmV0dXJuIHJldDtcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcHJvcHMucGFydGlhbHNbb3B0aW9ucy5hcmdzWzBdXSA9IG9wdGlvbnMuZm47XG5cbiAgICByZXR1cm4gcmV0O1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\nexports.createNewLookupObject = createNewLookupObject;\n\nvar _utils = require('../utils');\n\n/**\n * Create a new object with \"null\"-prototype to avoid truthy results on prototype properties.\n * The resulting object can be used with \"object[property]\" to check if a property exists\n * @param {...object} sources a varargs parameter of source objects that will be merged\n * @returns {object}\n */\n\nfunction createNewLookupObject() {\n for (var _len = arguments.length, sources = Array(_len), _key = 0; _key < _len; _key++) {\n sources[_key] = arguments[_key];\n }\n\n return _utils.extend.apply(undefined, [Object.create(null)].concat(sources));\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2ludGVybmFsL2NyZWF0ZS1uZXctbG9va3VwLW9iamVjdC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztxQkFBdUIsVUFBVTs7Ozs7Ozs7O0FBUTFCLFNBQVMscUJBQXFCLEdBQWE7b0NBQVQsT0FBTztBQUFQLFdBQU87OztBQUM5QyxTQUFPLGdDQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQUssT0FBTyxFQUFDLENBQUM7Q0FDaEQiLCJmaWxlIjoiY3JlYXRlLW5ldy1sb29rdXAtb2JqZWN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXh0ZW5kIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG4vKipcbiAqIENyZWF0ZSBhIG5ldyBvYmplY3Qgd2l0aCBcIm51bGxcIi1wcm90b3R5cGUgdG8gYXZvaWQgdHJ1dGh5IHJlc3VsdHMgb24gcHJvdG90eXBlIHByb3BlcnRpZXMuXG4gKiBUaGUgcmVzdWx0aW5nIG9iamVjdCBjYW4gYmUgdXNlZCB3aXRoIFwib2JqZWN0W3Byb3BlcnR5XVwiIHRvIGNoZWNrIGlmIGEgcHJvcGVydHkgZXhpc3RzXG4gKiBAcGFyYW0gey4uLm9iamVjdH0gc291cmNlcyBhIHZhcmFyZ3MgcGFyYW1ldGVyIG9mIHNvdXJjZSBvYmplY3RzIHRoYXQgd2lsbCBiZSBtZXJnZWRcbiAqIEByZXR1cm5zIHtvYmplY3R9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOZXdMb29rdXBPYmplY3QoLi4uc291cmNlcykge1xuICByZXR1cm4gZXh0ZW5kKE9iamVjdC5jcmVhdGUobnVsbCksIC4uLnNvdXJjZXMpO1xufVxuIl19\n","// Build out our basic SafeString type\n'use strict';\n\nexports.__esModule = true;\nfunction SafeString(string) {\n this.string = string;\n}\n\nSafeString.prototype.toString = SafeString.prototype.toHTML = function () {\n return '' + this.string;\n};\n\nexports['default'] = SafeString;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL3NhZmUtc3RyaW5nLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxTQUFTLFVBQVUsQ0FBQyxNQUFNLEVBQUU7QUFDMUIsTUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7Q0FDdEI7O0FBRUQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsWUFBVztBQUN2RSxTQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0NBQ3pCLENBQUM7O3FCQUVhLFVBQVUiLCJmaWxlIjoic2FmZS1zdHJpbmcuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBCdWlsZCBvdXQgb3VyIGJhc2ljIFNhZmVTdHJpbmcgdHlwZVxuZnVuY3Rpb24gU2FmZVN0cmluZyhzdHJpbmcpIHtcbiAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG59XG5cblNhZmVTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nID0gU2FmZVN0cmluZy5wcm90b3R5cGUudG9IVE1MID0gZnVuY3Rpb24oKSB7XG4gIHJldHVybiAnJyArIHRoaXMuc3RyaW5nO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgU2FmZVN0cmluZztcbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\nexports.checkRevision = checkRevision;\nexports.template = template;\nexports.wrapProgram = wrapProgram;\nexports.resolvePartial = resolvePartial;\nexports.invokePartial = invokePartial;\nexports.noop = noop;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n// istanbul ignore next\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nvar _utils = require('./utils');\n\nvar Utils = _interopRequireWildcard(_utils);\n\nvar _exception = require('./exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nvar _base = require('./base');\n\nvar _helpers = require('./helpers');\n\nvar _internalWrapHelper = require('./internal/wrapHelper');\n\nvar _internalProtoAccess = require('./internal/proto-access');\n\nfunction checkRevision(compilerInfo) {\n var compilerRevision = compilerInfo && compilerInfo[0] || 1,\n currentRevision = _base.COMPILER_REVISION;\n\n if (compilerRevision >= _base.LAST_COMPATIBLE_COMPILER_REVISION && compilerRevision <= _base.COMPILER_REVISION) {\n return;\n }\n\n if (compilerRevision < _base.LAST_COMPATIBLE_COMPILER_REVISION) {\n var runtimeVersions = _base.REVISION_CHANGES[currentRevision],\n compilerVersions = _base.REVISION_CHANGES[compilerRevision];\n throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');\n } else {\n // Use the embedded version info since the runtime doesn't know about this revision yet\n throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');\n }\n}\n\nfunction template(templateSpec, env) {\n /* istanbul ignore next */\n if (!env) {\n throw new _exception2['default']('No environment passed to template');\n }\n if (!templateSpec || !templateSpec.main) {\n throw new _exception2['default']('Unknown template object: ' + typeof templateSpec);\n }\n\n templateSpec.main.decorator = templateSpec.main_d;\n\n // Note: Using env.VM references rather than local var references throughout this section to allow\n // for external users to override these as pseudo-supported APIs.\n env.VM.checkRevision(templateSpec.compiler);\n\n // backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)\n var templateWasPrecompiledWithCompilerV7 = templateSpec.compiler && templateSpec.compiler[0] === 7;\n\n function invokePartialWrapper(partial, context, options) {\n if (options.hash) {\n context = Utils.extend({}, context, options.hash);\n if (options.ids) {\n options.ids[0] = true;\n }\n }\n partial = env.VM.resolvePartial.call(this, partial, context, options);\n\n var extendedOptions = Utils.extend({}, options, {\n hooks: this.hooks,\n protoAccessControl: this.protoAccessControl\n });\n\n var result = env.VM.invokePartial.call(this, partial, context, extendedOptions);\n\n if (result == null && env.compile) {\n options.partials[options.name] = env.compile(partial, templateSpec.compilerOptions, env);\n result = options.partials[options.name](context, extendedOptions);\n }\n if (result != null) {\n if (options.indent) {\n var lines = result.split('\\n');\n for (var i = 0, l = lines.length; i < l; i++) {\n if (!lines[i] && i + 1 === l) {\n break;\n }\n\n lines[i] = options.indent + lines[i];\n }\n result = lines.join('\\n');\n }\n return result;\n } else {\n throw new _exception2['default']('The partial ' + options.name + ' could not be compiled when running in runtime-only mode');\n }\n }\n\n // Just add water\n var container = {\n strict: function strict(obj, name, loc) {\n if (!obj || !(name in obj)) {\n throw new _exception2['default']('\"' + name + '\" not defined in ' + obj, {\n loc: loc\n });\n }\n return obj[name];\n },\n lookupProperty: function lookupProperty(parent, propertyName) {\n var result = parent[propertyName];\n if (result == null) {\n return result;\n }\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return result;\n }\n\n if (_internalProtoAccess.resultIsAllowed(result, container.protoAccessControl, propertyName)) {\n return result;\n }\n return undefined;\n },\n lookup: function lookup(depths, name) {\n var len = depths.length;\n for (var i = 0; i < len; i++) {\n var result = depths[i] && container.lookupProperty(depths[i], name);\n if (result != null) {\n return depths[i][name];\n }\n }\n },\n lambda: function lambda(current, context) {\n return typeof current === 'function' ? current.call(context) : current;\n },\n\n escapeExpression: Utils.escapeExpression,\n invokePartial: invokePartialWrapper,\n\n fn: function fn(i) {\n var ret = templateSpec[i];\n ret.decorator = templateSpec[i + '_d'];\n return ret;\n },\n\n programs: [],\n program: function program(i, data, declaredBlockParams, blockParams, depths) {\n var programWrapper = this.programs[i],\n fn = this.fn(i);\n if (data || depths || blockParams || declaredBlockParams) {\n programWrapper = wrapProgram(this, i, fn, data, declaredBlockParams, blockParams, depths);\n } else if (!programWrapper) {\n programWrapper = this.programs[i] = wrapProgram(this, i, fn);\n }\n return programWrapper;\n },\n\n data: function data(value, depth) {\n while (value && depth--) {\n value = value._parent;\n }\n return value;\n },\n mergeIfNeeded: function mergeIfNeeded(param, common) {\n var obj = param || common;\n\n if (param && common && param !== common) {\n obj = Utils.extend({}, common, param);\n }\n\n return obj;\n },\n // An empty object to use as replacement for null-contexts\n nullContext: Object.seal({}),\n\n noop: env.VM.noop,\n compilerInfo: templateSpec.compiler\n };\n\n function ret(context) {\n var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];\n\n var data = options.data;\n\n ret._setup(options);\n if (!options.partial && templateSpec.useData) {\n data = initData(context, data);\n }\n var depths = undefined,\n blockParams = templateSpec.useBlockParams ? [] : undefined;\n if (templateSpec.useDepths) {\n if (options.depths) {\n depths = context != options.depths[0] ? [context].concat(options.depths) : options.depths;\n } else {\n depths = [context];\n }\n }\n\n function main(context /*, options*/) {\n return '' + templateSpec.main(container, context, container.helpers, container.partials, data, blockParams, depths);\n }\n\n main = executeDecorators(templateSpec.main, main, container, options.depths || [], data, blockParams);\n return main(context, options);\n }\n\n ret.isTop = true;\n\n ret._setup = function (options) {\n if (!options.partial) {\n var mergedHelpers = Utils.extend({}, env.helpers, options.helpers);\n wrapHelpersToPassLookupProperty(mergedHelpers, container);\n container.helpers = mergedHelpers;\n\n if (templateSpec.usePartial) {\n // Use mergeIfNeeded here to prevent compiling global partials multiple times\n container.partials = container.mergeIfNeeded(options.partials, env.partials);\n }\n if (templateSpec.usePartial || templateSpec.useDecorators) {\n container.decorators = Utils.extend({}, env.decorators, options.decorators);\n }\n\n container.hooks = {};\n container.protoAccessControl = _internalProtoAccess.createProtoAccessControl(options);\n\n var keepHelperInHelpers = options.allowCallsToHelperMissing || templateWasPrecompiledWithCompilerV7;\n _helpers.moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);\n _helpers.moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);\n } else {\n container.protoAccessControl = options.protoAccessControl; // internal option\n container.helpers = options.helpers;\n container.partials = options.partials;\n container.decorators = options.decorators;\n container.hooks = options.hooks;\n }\n };\n\n ret._child = function (i, data, blockParams, depths) {\n if (templateSpec.useBlockParams && !blockParams) {\n throw new _exception2['default']('must pass block params');\n }\n if (templateSpec.useDepths && !depths) {\n throw new _exception2['default']('must pass parent depths');\n }\n\n return wrapProgram(container, i, templateSpec[i], data, 0, blockParams, depths);\n };\n return ret;\n}\n\nfunction wrapProgram(container, i, fn, data, declaredBlockParams, blockParams, depths) {\n function prog(context) {\n var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];\n\n var currentDepths = depths;\n if (depths && context != depths[0] && !(context === container.nullContext && depths[0] === null)) {\n currentDepths = [context].concat(depths);\n }\n\n return fn(container, context, container.helpers, container.partials, options.data || data, blockParams && [options.blockParams].concat(blockParams), currentDepths);\n }\n\n prog = executeDecorators(fn, prog, container, depths, data, blockParams);\n\n prog.program = i;\n prog.depth = depths ? depths.length : 0;\n prog.blockParams = declaredBlockParams || 0;\n return prog;\n}\n\n/**\n * This is currently part of the official API, therefore implementation details should not be changed.\n */\n\nfunction resolvePartial(partial, context, options) {\n if (!partial) {\n if (options.name === '@partial-block') {\n partial = options.data['partial-block'];\n } else {\n partial = options.partials[options.name];\n }\n } else if (!partial.call && !options.name) {\n // This is a dynamic partial that returned a string\n options.name = partial;\n partial = options.partials[partial];\n }\n return partial;\n}\n\nfunction invokePartial(partial, context, options) {\n // Use the current closure context to save the partial-block if this partial\n var currentPartialBlock = options.data && options.data['partial-block'];\n options.partial = true;\n if (options.ids) {\n options.data.contextPath = options.ids[0] || options.data.contextPath;\n }\n\n var partialBlock = undefined;\n if (options.fn && options.fn !== noop) {\n (function () {\n options.data = _base.createFrame(options.data);\n // Wrapper function to get access to currentPartialBlock from the closure\n var fn = options.fn;\n partialBlock = options.data['partial-block'] = function partialBlockWrapper(context) {\n var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];\n\n // Restore the partial-block from the closure for the execution of the block\n // i.e. the part inside the block of the partial call.\n options.data = _base.createFrame(options.data);\n options.data['partial-block'] = currentPartialBlock;\n return fn(context, options);\n };\n if (fn.partials) {\n options.partials = Utils.extend({}, options.partials, fn.partials);\n }\n })();\n }\n\n if (partial === undefined && partialBlock) {\n partial = partialBlock;\n }\n\n if (partial === undefined) {\n throw new _exception2['default']('The partial ' + options.name + ' could not be found');\n } else if (partial instanceof Function) {\n return partial(context, options);\n }\n}\n\nfunction noop() {\n return '';\n}\n\nfunction initData(context, data) {\n if (!data || !('root' in data)) {\n data = data ? _base.createFrame(data) : {};\n data.root = context;\n }\n return data;\n}\n\nfunction executeDecorators(fn, prog, container, depths, data, blockParams) {\n if (fn.decorator) {\n var props = {};\n prog = fn.decorator(prog, props, container, depths && depths[0], data, blockParams, depths);\n Utils.extend(prog, props);\n }\n return prog;\n}\n\nfunction wrapHelpersToPassLookupProperty(mergedHelpers, container) {\n Object.keys(mergedHelpers).forEach(function (helperName) {\n var helper = mergedHelpers[helperName];\n mergedHelpers[helperName] = passLookupPropertyOption(helper, container);\n });\n}\n\nfunction passLookupPropertyOption(helper, container) {\n var lookupProperty = container.lookupProperty;\n return _internalWrapHelper.wrapHelper(helper, function (options) {\n return Utils.extend({ lookupProperty: lookupProperty }, options);\n });\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL3J1bnRpbWUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7cUJBQXVCLFNBQVM7O0lBQXBCLEtBQUs7O3lCQUNLLGFBQWE7Ozs7b0JBTTVCLFFBQVE7O3VCQUNtQixXQUFXOztrQ0FDbEIsdUJBQXVCOzttQ0FJM0MseUJBQXlCOztBQUV6QixTQUFTLGFBQWEsQ0FBQyxZQUFZLEVBQUU7QUFDMUMsTUFBTSxnQkFBZ0IsR0FBRyxBQUFDLFlBQVksSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUssQ0FBQztNQUM3RCxlQUFlLDBCQUFvQixDQUFDOztBQUV0QyxNQUNFLGdCQUFnQiwyQ0FBcUMsSUFDckQsZ0JBQWdCLDJCQUFxQixFQUNyQztBQUNBLFdBQU87R0FDUjs7QUFFRCxNQUFJLGdCQUFnQiwwQ0FBb0MsRUFBRTtBQUN4RCxRQUFNLGVBQWUsR0FBRyx1QkFBaUIsZUFBZSxDQUFDO1FBQ3ZELGdCQUFnQixHQUFHLHVCQUFpQixnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3hELFVBQU0sMkJBQ0oseUZBQXlGLEdBQ3ZGLHFEQUFxRCxHQUNyRCxlQUFlLEdBQ2YsbURBQW1ELEdBQ25ELGdCQUFnQixHQUNoQixJQUFJLENBQ1AsQ0FBQztHQUNILE1BQU07O0FBRUwsVUFBTSwyQkFDSix3RkFBd0YsR0FDdEYsaURBQWlELEdBQ2pELFlBQVksQ0FBQyxDQUFDLENBQUMsR0FDZixJQUFJLENBQ1AsQ0FBQztHQUNIO0NBQ0Y7O0FBRU0sU0FBUyxRQUFRLENBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRTs7QUFFMUMsTUFBSSxDQUFDLEdBQUcsRUFBRTtBQUNSLFVBQU0sMkJBQWMsbUNBQW1DLENBQUMsQ0FBQztHQUMxRDtBQUNELE1BQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFO0FBQ3ZDLFVBQU0sMkJBQWMsMkJBQTJCLEdBQUcsT0FBTyxZQUFZLENBQUMsQ0FBQztH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LE1BQU0sQ0FBQyxFQUFFLGNBQWMsRUFBZCxjQUFjLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztHQUNsRCxDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJydW50aW1lLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gJy4vZXhjZXB0aW9uJztcbmltcG9ydCB7XG4gIENPTVBJTEVSX1JFVklTSU9OLFxuICBjcmVhdGVGcmFtZSxcbiAgTEFTVF9DT01QQVRJQkxFX0NPTVBJTEVSX1JFVklTSU9OLFxuICBSRVZJU0lPTl9DSEFOR0VTXG59IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBtb3ZlSGVscGVyVG9Ib29rcyB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyB3cmFwSGVscGVyIH0gZnJvbSAnLi9pbnRlcm5hbC93cmFwSGVscGVyJztcbmltcG9ydCB7XG4gIGNyZWF0ZVByb3RvQWNjZXNzQ29udHJvbCxcbiAgcmVzdWx0SXNBbGxvd2VkXG59IGZyb20gJy4vaW50ZXJuYWwvcHJvdG8tYWNjZXNzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrUmV2aXNpb24oY29tcGlsZXJJbmZvKSB7XG4gIGNvbnN0IGNvbXBpbGVyUmV2aXNpb24gPSAoY29tcGlsZXJJbmZvICYmIGNvbXBpbGVySW5mb1swXSkgfHwgMSxcbiAgICBjdXJyZW50UmV2aXNpb24gPSBDT01QSUxFUl9SRVZJU0lPTjtcblxuICBpZiAoXG4gICAgY29tcGlsZXJSZXZpc2lvbiA+PSBMQVNUX0NPTVBBVElCTEVfQ09NUElMRVJfUkVWSVNJT04gJiZcbiAgICBjb21waWxlclJldmlzaW9uIDw9IENPTVBJTEVSX1JFVklTSU9OXG4gICkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmIChjb21waWxlclJldmlzaW9uIDwgTEFTVF9DT01QQVRJQkxFX0NPTVBJTEVSX1JFVklTSU9OKSB7XG4gICAgY29uc3QgcnVudGltZVZlcnNpb25zID0gUkVWSVNJT05fQ0hBTkdFU1tjdXJyZW50UmV2aXNpb25dLFxuICAgICAgY29tcGlsZXJWZXJzaW9ucyA9IFJFVklTSU9OX0NIQU5HRVNbY29tcGlsZXJSZXZpc2lvbl07XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICdUZW1wbGF0ZSB3YXMgcHJlY29tcGlsZWQgd2l0aCBhbiBvbGRlciB2ZXJzaW9uIG9mIEhhbmRsZWJhcnMgdGhhbiB0aGUgY3VycmVudCBydW50aW1lLiAnICtcbiAgICAgICAgJ1BsZWFzZSB1cGRhdGUgeW91ciBwcmVjb21waWxlciB0byBhIG5ld2VyIHZlcnNpb24gKCcgK1xuICAgICAgICBydW50aW1lVmVyc2lvbnMgK1xuICAgICAgICAnKSBvciBkb3duZ3JhZGUgeW91ciBydW50aW1lIHRvIGFuIG9sZGVyIHZlcnNpb24gKCcgK1xuICAgICAgICBjb21waWxlclZlcnNpb25zICtcbiAgICAgICAgJykuJ1xuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgLy8gVXNlIHRoZSBlbWJlZGRlZCB2ZXJzaW9uIGluZm8gc2luY2UgdGhlIHJ1bnRpbWUgZG9lc24ndCBrbm93IGFib3V0IHRoaXMgcmV2aXNpb24geWV0XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICdUZW1wbGF0ZSB3YXMgcHJlY29tcGlsZWQgd2l0aCBhIG5ld2VyIHZlcnNpb24gb2YgSGFuZGxlYmFycyB0aGFuIHRoZSBjdXJyZW50IHJ1bnRpbWUuICcgK1xuICAgICAgICAnUGxlYXNlIHVwZGF0ZSB5b3VyIHJ1bnRpbWUgdG8gYSBuZXdlciB2ZXJzaW9uICgnICtcbiAgICAgICAgY29tcGlsZXJJbmZvWzFdICtcbiAgICAgICAgJykuJ1xuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlbXBsYXRlKHRlbXBsYXRlU3BlYywgZW52KSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGlmICghZW52KSB7XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignTm8gZW52aXJvbm1lbnQgcGFzc2VkIHRvIHRlbXBsYXRlJyk7XG4gIH1cbiAgaWYgKCF0ZW1wbGF0ZVNwZWMgfHwgIXRlbXBsYXRlU3BlYy5tYWluKSB7XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignVW5rbm93biB0ZW1wbGF0ZSBvYmplY3Q6ICcgKyB0eXBlb2YgdGVtcGxhdGVTcGVjKTtcbiAgfVxuXG4gIHRlbXBsYXRlU3BlYy5tYWluLmRlY29yYXRvciA9IHRlbXBsYXRlU3BlYy5tYWluX2Q7XG5cbiAgLy8gTm90ZTogVXNpbmcgZW52LlZNIHJlZmVyZW5jZXMgcmF0aGVyIHRoYW4gbG9jYWwgdmFyIHJlZmVyZW5jZXMgdGhyb3VnaG91dCB0aGlzIHNlY3Rpb24gdG8gYWxsb3dcbiAgLy8gZm9yIGV4dGVybmFsIHVzZXJzIHRvIG92ZXJyaWRlIHRoZXNlIGFzIHBzZXVkby1zdXBwb3J0ZWQgQVBJcy5cbiAgZW52LlZNLmNoZWNrUmV2aXNpb24odGVtcGxhdGVTcGVjLmNvbXBpbGVyKTtcblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBmb3IgcHJlY29tcGlsZWQgdGVtcGxhdGVzIHdpdGggY29tcGlsZXItdmVyc2lvbiA3ICg8NC4zLjApXG4gIGNvbnN0IHRlbXBsYXRlV2FzUHJlY29tcGlsZWRXaXRoQ29tcGlsZXJWNyA9XG4gICAgdGVtcGxhdGVTcGVjLmNvbXBpbGVyICYmIHRlbXBsYXRlU3BlYy5jb21waWxlclswXSA9PT0gNztcblxuICBmdW5jdGlvbiBpbnZva2VQYXJ0aWFsV3JhcHBlcihwYXJ0aWFsLCBjb250ZXh0LCBvcHRpb25zKSB7XG4gICAgaWYgKG9wdGlvbnMuaGFzaCkge1xuICAgICAgY29udGV4dCA9IFV0aWxzLmV4dGVuZCh7fSwgY29udGV4dCwgb3B0aW9ucy5oYXNoKTtcbiAgICAgIGlmIChvcHRpb25zLmlkcykge1xuICAgICAgICBvcHRpb25zLmlkc1swXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHBhcnRpYWwgPSBlbnYuVk0ucmVzb2x2ZVBhcnRpYWwuY2FsbCh0aGlzLCBwYXJ0aWFsLCBjb250ZXh0LCBvcHRpb25zKTtcblxuICAgIGxldCBleHRlbmRlZE9wdGlvbnMgPSBVdGlscy5leHRlbmQoe30sIG9wdGlvbnMsIHtcbiAgICAgIGhvb2tzOiB0aGlzLmhvb2tzLFxuICAgICAgcHJvdG9BY2Nlc3NDb250cm9sOiB0aGlzLnByb3RvQWNjZXNzQ29udHJvbFxuICAgIH0pO1xuXG4gICAgbGV0IHJlc3VsdCA9IGVudi5WTS5pbnZva2VQYXJ0aWFsLmNhbGwoXG4gICAgICB0aGlzLFxuICAgICAgcGFydGlhbCxcbiAgICAgIGNvbnRleHQsXG4gICAgICBleHRlbmRlZE9wdGlvbnNcbiAgICApO1xuXG4gICAgaWYgKHJlc3VsdCA9PSBudWxsICYmIGVudi5jb21waWxlKSB7XG4gICAgICBvcHRpb25zLnBhcnRpYWxzW29wdGlvbnMubmFtZV0gPSBlbnYuY29tcGlsZShcbiAgICAgICAgcGFydGlhbCxcbiAgICAgICAgdGVtcGxhdGVTcGVjLmNvbXBpbGVyT3B0aW9ucyxcbiAgICAgICAgZW52XG4gICAgICApO1xuICAgICAgcmVzdWx0ID0gb3B0aW9ucy5wYXJ0aWFsc1tvcHRpb25zLm5hbWVdKGNvbnRleHQsIGV4dGVuZGVkT3B0aW9ucyk7XG4gICAgfVxuICAgIGlmIChyZXN1bHQgIT0gbnVsbCkge1xuICAgICAgaWYgKG9wdGlvbnMuaW5kZW50KSB7XG4gICAgICAgIGxldCBsaW5lcyA9IHJlc3VsdC5zcGxpdCgnXFxuJyk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBsID0gbGluZXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgaWYgKCFsaW5lc1tpXSAmJiBpICsgMSA9PT0gbCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGluZXNbaV0gPSBvcHRpb25zLmluZGVudCArIGxpbmVzW2ldO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdCA9IGxpbmVzLmpvaW4oJ1xcbicpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICAgJ1RoZSBwYXJ0aWFsICcgK1xuICAgICAgICAgIG9wdGlvbnMubmFtZSArXG4gICAgICAgICAgJyBjb3VsZCBub3QgYmUgY29tcGlsZWQgd2hlbiBydW5uaW5nIGluIHJ1bnRpbWUtb25seSBtb2RlJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvLyBKdXN0IGFkZCB3YXRlclxuICBsZXQgY29udGFpbmVyID0ge1xuICAgIHN0cmljdDogZnVuY3Rpb24ob2JqLCBuYW1lLCBsb2MpIHtcbiAgICAgIGlmICghb2JqIHx8ICEobmFtZSBpbiBvYmopKSB7XG4gICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ1wiJyArIG5hbWUgKyAnXCIgbm90IGRlZmluZWQgaW4gJyArIG9iaiwge1xuICAgICAgICAgIGxvYzogbG9jXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG9ialtuYW1lXTtcbiAgICB9LFxuICAgIGxvb2t1cFByb3BlcnR5OiBmdW5jdGlvbihwYXJlbnQsIHByb3BlcnR5TmFtZSkge1xuICAgICAgbGV0IHJlc3VsdCA9IHBhcmVudFtwcm9wZXJ0eU5hbWVdO1xuICAgICAgaWYgKHJlc3VsdCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHBhcmVudCwgcHJvcGVydHlOYW1lKSkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuXG4gICAgICBpZiAocmVzdWx0SXNBbGxvd2VkKHJlc3VsdCwgY29udGFpbmVyLnByb3RvQWNjZXNzQ29udHJvbCwgcHJvcGVydHlOYW1lKSkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9LFxuICAgIGxvb2t1cDogZnVuY3Rpb24oZGVwdGhzLCBuYW1lKSB7XG4gICAgICBjb25zdCBsZW4gPSBkZXB0aHMubGVuZ3RoO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xuICAgICAgICBsZXQgcmVzdWx0ID0gZGVwdGhzW2ldICYmIGNvbnRhaW5lci5sb29rdXBQcm9wZXJ0eShkZXB0aHNbaV0sIG5hbWUpO1xuICAgICAgICBpZiAocmVzdWx0ICE9IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gZGVwdGhzW2ldW25hbWVdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBsYW1iZGE6IGZ1bmN0aW9uKGN1cnJlbnQsIGNvbnRleHQpIHtcbiAgICAgIHJldHVybiB0eXBlb2YgY3VycmVudCA9PT0gJ2Z1bmN0aW9uJyA/IGN1cnJlbnQuY2FsbChjb250ZXh0KSA6IGN1cnJlbnQ7XG4gICAgfSxcblxuICAgIGVzY2FwZUV4cHJlc3Npb246IFV0aWxzLmVzY2FwZUV4cHJlc3Npb24sXG4gICAgaW52b2tlUGFydGlhbDogaW52b2tlUGFydGlhbFdyYXBwZXIsXG5cbiAgICBmbjogZnVuY3Rpb24oaSkge1xuICAgICAgbGV0IHJldCA9IHRlbXBsYXRlU3BlY1tpXTtcbiAgICAgIHJldC5kZWNvcmF0b3IgPSB0ZW1wbGF0ZVNwZWNbaSArICdfZCddO1xuICAgICAgcmV0dXJuIHJldDtcbiAgICB9LFxuXG4gICAgcHJvZ3JhbXM6IFtdLFxuICAgIHByb2dyYW06IGZ1bmN0aW9uKGksIGRhdGEsIGRlY2xhcmVkQmxvY2tQYXJhbXMsIGJsb2NrUGFyYW1zLCBkZXB0aHMpIHtcbiAgICAgIGxldCBwcm9ncmFtV3JhcHBlciA9IHRoaXMucHJvZ3JhbXNbaV0sXG4gICAgICAgIGZuID0gdGhpcy5mbihpKTtcbiAgICAgIGlmIChkYXRhIHx8IGRlcHRocyB8fCBibG9ja1BhcmFtcyB8fCBkZWNsYXJlZEJsb2NrUGFyYW1zKSB7XG4gICAgICAgIHByb2dyYW1XcmFwcGVyID0gd3JhcFByb2dyYW0oXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgICBpLFxuICAgICAgICAgIGZuLFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgZGVjbGFyZWRCbG9ja1BhcmFtcyxcbiAgICAgICAgICBibG9ja1BhcmFtcyxcbiAgICAgICAgICBkZXB0aHNcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAoIXByb2dyYW1XcmFwcGVyKSB7XG4gICAgICAgIHByb2dyYW1XcmFwcGVyID0gdGhpcy5wcm9ncmFtc1tpXSA9IHdyYXBQcm9ncmFtKHRoaXMsIGksIGZuKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBwcm9ncmFtV3JhcHBlcjtcbiAgICB9LFxuXG4gICAgZGF0YTogZnVuY3Rpb24odmFsdWUsIGRlcHRoKSB7XG4gICAgICB3aGlsZSAodmFsdWUgJiYgZGVwdGgtLSkge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlLl9wYXJlbnQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfSxcbiAgICBtZXJnZUlmTmVlZGVkOiBmdW5jdGlvbihwYXJhbSwgY29tbW9uKSB7XG4gICAgICBsZXQgb2JqID0gcGFyYW0gfHwgY29tbW9uO1xuXG4gICAgICBpZiAocGFyYW0gJiYgY29tbW9uICYmIHBhcmFtICE9PSBjb21tb24pIHtcbiAgICAgICAgb2JqID0gVXRpbHMuZXh0ZW5kKHt9LCBjb21tb24sIHBhcmFtKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG9iajtcbiAgICB9LFxuICAgIC8vIEFuIGVtcHR5IG9iamVjdCB0byB1c2UgYXMgcmVwbGFjZW1lbnQgZm9yIG51bGwtY29udGV4dHNcbiAgICBudWxsQ29udGV4dDogT2JqZWN0LnNlYWwoe30pLFxuXG4gICAgbm9vcDogZW52LlZNLm5vb3AsXG4gICAgY29tcGlsZXJJbmZvOiB0ZW1wbGF0ZVNwZWMuY29tcGlsZXJcbiAgfTtcblxuICBmdW5jdGlvbiByZXQoY29udGV4dCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgbGV0IGRhdGEgPSBvcHRpb25zLmRhdGE7XG5cbiAgICByZXQuX3NldHVwKG9wdGlvbnMpO1xuICAgIGlmICghb3B0aW9ucy5wYXJ0aWFsICYmIHRlbXBsYXRlU3BlYy51c2VEYXRhKSB7XG4gICAgICBkYXRhID0gaW5pdERhdGEoY29udGV4dCwgZGF0YSk7XG4gICAgfVxuICAgIGxldCBkZXB0aHMsXG4gICAgICBibG9ja1BhcmFtcyA9IHRlbXBsYXRlU3BlYy51c2VCbG9ja1BhcmFtcyA/IFtdIDogdW5kZWZpbmVkO1xuICAgIGlmICh0ZW1wbGF0ZVNwZWMudXNlRGVwdGhzKSB7XG4gICAgICBpZiAob3B0aW9ucy5kZXB0aHMpIHtcbiAgICAgICAgZGVwdGhzID1cbiAgICAgICAgICBjb250ZXh0ICE9IG9wdGlvbnMuZGVwdGhzWzBdXG4gICAgICAgICAgICA/IFtjb250ZXh0XS5jb25jYXQob3B0aW9ucy5kZXB0aHMpXG4gICAgICAgICAgICA6IG9wdGlvbnMuZGVwdGhzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGVwdGhzID0gW2NvbnRleHRdO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIG1haW4oY29udGV4dCAvKiwgb3B0aW9ucyovKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAnJyArXG4gICAgICAgIHRlbXBsYXRlU3BlYy5tYWluKFxuICAgICAgICAgIGNvbnRhaW5lcixcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgIGNvbnRhaW5lci5oZWxwZXJzLFxuICAgICAgICAgIGNvbnRhaW5lci5wYXJ0aWFscyxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGJsb2NrUGFyYW1zLFxuICAgICAgICAgIGRlcHRoc1xuICAgICAgICApXG4gICAgICApO1xuICAgIH1cblxuICAgIG1haW4gPSBleGVjdXRlRGVjb3JhdG9ycyhcbiAgICAgIHRlbXBsYXRlU3BlYy5tYWluLFxuICAgICAgbWFpbixcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIG9wdGlvbnMuZGVwdGhzIHx8IFtdLFxuICAgICAgZGF0YSxcbiAgICAgIGJsb2NrUGFyYW1zXG4gICAgKTtcbiAgICByZXR1cm4gbWFpbihjb250ZXh0LCBvcHRpb25zKTtcbiAgfVxuXG4gIHJldC5pc1RvcCA9IHRydWU7XG5cbiAgcmV0Ll9zZXR1cCA9IGZ1bmN0aW9uKG9wdGlvbnMpIHtcbiAgICBpZiAoIW9wdGlvbnMucGFydGlhbCkge1xuICAgICAgbGV0IG1lcmdlZEhlbHBlcnMgPSBVdGlscy5leHRlbmQoe30sIGVudi5oZWxwZXJzLCBvcHRpb25zLmhlbHBlcnMpO1xuICAgICAgd3JhcEhlbHBlcnNUb1Bhc3NMb29rdXBQcm9wZXJ0eShtZXJnZWRIZWxwZXJzLCBjb250YWluZXIpO1xuICAgICAgY29udGFpbmVyLmhlbHBlcnMgPSBtZXJnZWRIZWxwZXJzO1xuXG4gICAgICBpZiAodGVtcGxhdGVTcGVjLnVzZVBhcnRpYWwpIHtcbiAgICAgICAgLy8gVXNlIG1lcmdlSWZOZWVkZWQgaGVyZSB0byBwcmV2ZW50IGNvbXBpbGluZyBnbG9iYWwgcGFydGlhbHMgbXVsdGlwbGUgdGltZXNcbiAgICAgICAgY29udGFpbmVyLnBhcnRpYWxzID0gY29udGFpbmVyLm1lcmdlSWZOZWVkZWQoXG4gICAgICAgICAgb3B0aW9ucy5wYXJ0aWFscyxcbiAgICAgICAgICBlbnYucGFydGlhbHNcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmICh0ZW1wbGF0ZVNwZWMudXNlUGFydGlhbCB8fCB0ZW1wbGF0ZVNwZWMudXNlRGVjb3JhdG9ycykge1xuICAgICAgICBjb250YWluZXIuZGVjb3JhdG9ycyA9IFV0aWxzLmV4dGVuZChcbiAgICAgICAgICB7fSxcbiAgICAgICAgICBlbnYuZGVjb3JhdG9ycyxcbiAgICAgICAgICBvcHRpb25zLmRlY29yYXRvcnNcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgY29udGFpbmVyLmhvb2tzID0ge307XG4gICAgICBjb250YWluZXIucHJvdG9BY2Nlc3NDb250cm9sID0gY3JlYXRlUHJvdG9BY2Nlc3NDb250cm9sKG9wdGlvbnMpO1xuXG4gICAgICBsZXQga2VlcEhlbHBlckluSGVscGVycyA9XG4gICAgICAgIG9wdGlvbnMuYWxsb3dDYWxsc1RvSGVscGVyTWlzc2luZyB8fFxuICAgICAgICB0ZW1wbGF0ZVdhc1ByZWNvbXBpbGVkV2l0aENvbXBpbGVyVjc7XG4gICAgICBtb3ZlSGVscGVyVG9Ib29rcyhjb250YWluZXIsICdoZWxwZXJNaXNzaW5nJywga2VlcEhlbHBlckluSGVscGVycyk7XG4gICAgICBtb3ZlSGVscGVyVG9Ib29rcyhjb250YWluZXIsICdibG9ja0hlbHBlck1pc3NpbmcnLCBrZWVwSGVscGVySW5IZWxwZXJzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29udGFpbmVyLnByb3RvQWNjZXNzQ29udHJvbCA9IG9wdGlvbnMucHJvdG9BY2Nlc3NDb250cm9sOyAvLyBpbnRlcm5hbCBvcHRpb25cbiAgICAgIGNvbnRhaW5lci5oZWxwZXJzID0gb3B0aW9ucy5oZWxwZXJzO1xuICAgICAgY29udGFpbmVyLnBhcnRpYWxzID0gb3B0aW9ucy5wYXJ0aWFscztcbiAgICAgIGNvbnRhaW5lci5kZWNvcmF0b3JzID0gb3B0aW9ucy5kZWNvcmF0b3JzO1xuICAgICAgY29udGFpbmVyLmhvb2tzID0gb3B0aW9ucy5ob29rcztcbiAgICB9XG4gIH07XG5cbiAgcmV0Ll9jaGlsZCA9IGZ1bmN0aW9uKGksIGRhdGEsIGJsb2NrUGFyYW1zLCBkZXB0aHMpIHtcbiAgICBpZiAodGVtcGxhdGVTcGVjLnVzZUJsb2NrUGFyYW1zICYmICFibG9ja1BhcmFtcykge1xuICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignbXVzdCBwYXNzIGJsb2NrIHBhcmFtcycpO1xuICAgIH1cbiAgICBpZiAodGVtcGxhdGVTcGVjLnVzZURlcHRocyAmJiAhZGVwdGhzKSB7XG4gICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdtdXN0IHBhc3MgcGFyZW50IGRlcHRocycpO1xuICAgIH1cblxuICAgIHJldHVybiB3cmFwUHJvZ3JhbShcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGksXG4gICAgICB0ZW1wbGF0ZVNwZWNbaV0sXG4gICAgICBkYXRhLFxuICAgICAgMCxcbiAgICAgIGJsb2NrUGFyYW1zLFxuICAgICAgZGVwdGhzXG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIHJldDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdyYXBQcm9ncmFtKFxuICBjb250YWluZXIsXG4gIGksXG4gIGZuLFxuICBkYXRhLFxuICBkZWNsYXJlZEJsb2NrUGFyYW1zLFxuICBibG9ja1BhcmFtcyxcbiAgZGVwdGhzXG4pIHtcbiAgZnVuY3Rpb24gcHJvZyhjb250ZXh0LCBvcHRpb25zID0ge30pIHtcbiAgICBsZXQgY3VycmVudERlcHRocyA9IGRlcHRocztcbiAgICBpZiAoXG4gICAgICBkZXB0aHMgJiZcbiAgICAgIGNvbnRleHQgIT0gZGVwdGhzWzBdICYmXG4gICAgICAhKGNvbnRleHQgPT09IGNvbnRhaW5lci5udWxsQ29udGV4dCAmJiBkZXB0aHNbMF0gPT09IG51bGwpXG4gICAgKSB7XG4gICAgICBjdXJyZW50RGVwdGhzID0gW2NvbnRleHRdLmNvbmNhdChkZXB0aHMpO1xuICAgIH1cblxuICAgIHJldHVybiBmbihcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGNvbnRleHQsXG4gICAgICBjb250YWluZXIuaGVscGVycyxcbiAgICAgIGNvbnRhaW5lci5wYXJ0aWFscyxcbiAgICAgIG9wdGlvbnMuZGF0YSB8fCBkYXRhLFxuICAgICAgYmxvY2tQYXJhbXMgJiYgW29wdGlvbnMuYmxvY2tQYXJhbXNdLmNvbmNhdChibG9ja1BhcmFtcyksXG4gICAgICBjdXJyZW50RGVwdGhzXG4gICAgKTtcbiAgfVxuXG4gIHByb2cgPSBleGVjdXRlRGVjb3JhdG9ycyhmbiwgcHJvZywgY29udGFpbmVyLCBkZXB0aHMsIGRhdGEsIGJsb2NrUGFyYW1zKTtcblxuICBwcm9nLnByb2dyYW0gPSBpO1xuICBwcm9nLmRlcHRoID0gZGVwdGhzID8gZGVwdGhzLmxlbmd0aCA6IDA7XG4gIHByb2cuYmxvY2tQYXJhbXMgPSBkZWNsYXJlZEJsb2NrUGFyYW1zIHx8IDA7XG4gIHJldHVybiBwcm9nO1xufVxuXG4vKipcbiAqIFRoaXMgaXMgY3VycmVudGx5IHBhcnQgb2YgdGhlIG9mZmljaWFsIEFQSSwgdGhlcmVmb3JlIGltcGxlbWVudGF0aW9uIGRldGFpbHMgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVBhcnRpYWwocGFydGlhbCwgY29udGV4dCwgb3B0aW9ucykge1xuICBpZiAoIXBhcnRpYWwpIHtcbiAgICBpZiAob3B0aW9ucy5uYW1lID09PSAnQHBhcnRpYWwtYmxvY2snKSB7XG4gICAgICBwYXJ0aWFsID0gb3B0aW9ucy5kYXRhWydwYXJ0aWFsLWJsb2NrJ107XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnRpYWwgPSBvcHRpb25zLnBhcnRpYWxzW29wdGlvbnMubmFtZV07XG4gICAgfVxuICB9IGVsc2UgaWYgKCFwYXJ0aWFsLmNhbGwgJiYgIW9wdGlvbnMubmFtZSkge1xuICAgIC8vIFRoaXMgaXMgYSBkeW5hbWljIHBhcnRpYWwgdGhhdCByZXR1cm5lZCBhIHN0cmluZ1xuICAgIG9wdGlvbnMubmFtZSA9IHBhcnRpYWw7XG4gICAgcGFydGlhbCA9IG9wdGlvbnMucGFydGlhbHNbcGFydGlhbF07XG4gIH1cbiAgcmV0dXJuIHBhcnRpYWw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnZva2VQYXJ0aWFsKHBhcnRpYWwsIGNvbnRleHQsIG9wdGlvbnMpIHtcbiAgLy8gVXNlIHRoZSBjdXJyZW50IGNsb3N1cmUgY29udGV4dCB0byBzYXZlIHRoZSBwYXJ0aWFsLWJsb2NrIGlmIHRoaXMgcGFydGlhbFxuICBjb25zdCBjdXJyZW50UGFydGlhbEJsb2NrID0gb3B0aW9ucy5kYXRhICYmIG9wdGlvbnMuZGF0YVsncGFydGlhbC1ibG9jayddO1xuICBvcHRpb25zLnBhcnRpYWwgPSB0cnVlO1xuICBpZiAob3B0aW9ucy5pZHMpIHtcbiAgICBvcHRpb25zLmRhdGEuY29udGV4dFBhdGggPSBvcHRpb25zLmlkc1swXSB8fCBvcHRpb25zLmRhdGEuY29udGV4dFBhdGg7XG4gIH1cblxuICBsZXQgcGFydGlhbEJsb2NrO1xuICBpZiAob3B0aW9ucy5mbiAmJiBvcHRpb25zLmZuICE9PSBub29wKSB7XG4gICAgb3B0aW9ucy5kYXRhID0gY3JlYXRlRnJhbWUob3B0aW9ucy5kYXRhKTtcbiAgICAvLyBXcmFwcGVyIGZ1bmN0aW9uIHRvIGdldCBhY2Nlc3MgdG8gY3VycmVudFBhcnRpYWxCbG9jayBmcm9tIHRoZSBjbG9zdXJlXG4gICAgbGV0IGZuID0gb3B0aW9ucy5mbjtcbiAgICBwYXJ0aWFsQmxvY2sgPSBvcHRpb25zLmRhdGFbJ3BhcnRpYWwtYmxvY2snXSA9IGZ1bmN0aW9uIHBhcnRpYWxCbG9ja1dyYXBwZXIoXG4gICAgICBjb250ZXh0LFxuICAgICAgb3B0aW9ucyA9IHt9XG4gICAgKSB7XG4gICAgICAvLyBSZXN0b3JlIHRoZSBwYXJ0aWFsLWJsb2NrIGZyb20gdGhlIGNsb3N1cmUgZm9yIHRoZSBleGVjdXRpb24gb2YgdGhlIGJsb2NrXG4gICAgICAvLyBpLmUuIHRoZSBwYXJ0IGluc2lkZSB0aGUgYmxvY2sgb2YgdGhlIHBhcnRpYWwgY2FsbC5cbiAgICAgIG9wdGlvbnMuZGF0YSA9IGNyZWF0ZUZyYW1lKG9wdGlvbnMuZGF0YSk7XG4gICAgICBvcHRpb25zLmRhdGFbJ3BhcnRpYWwtYmxvY2snXSA9IGN1cnJlbnRQYXJ0aWFsQmxvY2s7XG4gICAgICByZXR1cm4gZm4oY29udGV4dCwgb3B0aW9ucyk7XG4gICAgfTtcbiAgICBpZiAoZm4ucGFydGlhbHMpIHtcbiAgICAgIG9wdGlvbnMucGFydGlhbHMgPSBVdGlscy5leHRlbmQoe30sIG9wdGlvbnMucGFydGlhbHMsIGZuLnBhcnRpYWxzKTtcbiAgICB9XG4gIH1cblxuICBpZiAocGFydGlhbCA9PT0gdW5kZWZpbmVkICYmIHBhcnRpYWxCbG9jaykge1xuICAgIHBhcnRpYWwgPSBwYXJ0aWFsQmxvY2s7XG4gIH1cblxuICBpZiAocGFydGlhbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignVGhlIHBhcnRpYWwgJyArIG9wdGlvbnMubmFtZSArICcgY291bGQgbm90IGJlIGZvdW5kJyk7XG4gIH0gZWxzZSBpZiAocGFydGlhbCBpbnN0YW5jZW9mIEZ1bmN0aW9uKSB7XG4gICAgcmV0dXJuIHBhcnRpYWwoY29udGV4dCwgb3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vb3AoKSB7XG4gIHJldHVybiAnJztcbn1cblxuZnVuY3Rpb24gaW5pdERhdGEoY29udGV4dCwgZGF0YSkge1xuICBpZiAoIWRhdGEgfHwgISgncm9vdCcgaW4gZGF0YSkpIHtcbiAgICBkYXRhID0gZGF0YSA/IGNyZWF0ZUZyYW1lKGRhdGEpIDoge307XG4gICAgZGF0YS5yb290ID0gY29udGV4dDtcbiAgfVxuICByZXR1cm4gZGF0YTtcbn1cblxuZnVuY3Rpb24gZXhlY3V0ZURlY29yYXRvcnMoZm4sIHByb2csIGNvbnRhaW5lciwgZGVwdGhzLCBkYXRhLCBibG9ja1BhcmFtcykge1xuICBpZiAoZm4uZGVjb3JhdG9yKSB7XG4gICAgbGV0IHByb3BzID0ge307XG4gICAgcHJvZyA9IGZuLmRlY29yYXRvcihcbiAgICAgIHByb2csXG4gICAgICBwcm9wcyxcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGRlcHRocyAmJiBkZXB0aHNbMF0sXG4gICAgICBkYXRhLFxuICAgICAgYmxvY2tQYXJhbXMsXG4gICAgICBkZXB0aHNcbiAgICApO1xuICAgIFV0aWxzLmV4dGVuZChwcm9nLCBwcm9wcyk7XG4gIH1cbiAgcmV0dXJuIHByb2c7XG59XG5cbmZ1bmN0aW9uIHdyYXBIZWxwZXJzVG9QYXNzTG9va3VwUHJvcGVydHkobWVyZ2VkSGVscGVycywgY29udGFpbmVyKSB7XG4gIE9iamVjdC5rZXlzKG1lcmdlZEhlbHBlcnMpLmZvckVhY2goaGVscGVyTmFtZSA9PiB7XG4gICAgbGV0IGhlbHBlciA9IG1lcmdlZEhlbHBlcnNbaGVscGVyTmFtZV07XG4gICAgbWVyZ2VkSGVscGVyc1toZWxwZXJOYW1lXSA9IHBhc3NMb29rdXBQcm9wZXJ0eU9wdGlvbihoZWxwZXIsIGNvbnRhaW5lcik7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBwYXNzTG9va3VwUHJvcGVydHlPcHRpb24oaGVscGVyLCBjb250YWluZXIpIHtcbiAgY29uc3QgbG9va3VwUHJvcGVydHkgPSBjb250YWluZXIubG9va3VwUHJvcGVydHk7XG4gIHJldHVybiB3cmFwSGVscGVyKGhlbHBlciwgb3B0aW9ucyA9PiB7XG4gICAgcmV0dXJuIFV0aWxzLmV4dGVuZCh7IGxvb2t1cFByb3BlcnR5IH0sIG9wdGlvbnMpO1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\nexports.wrapHelper = wrapHelper;\n\nfunction wrapHelper(helper, transformOptionsFn) {\n if (typeof helper !== 'function') {\n // This should not happen, but apparently it does in https://github.com/wycats/handlebars.js/issues/1639\n // We try to make the wrapper least-invasive by not wrapping it, if the helper is not a function.\n return helper;\n }\n var wrapper = function wrapper() /* dynamic arguments */{\n var options = arguments[arguments.length - 1];\n arguments[arguments.length - 1] = transformOptionsFn(options);\n return helper.apply(this, arguments);\n };\n return wrapper;\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2ludGVybmFsL3dyYXBIZWxwZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBTyxTQUFTLFVBQVUsQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUU7QUFDckQsTUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVLEVBQUU7OztBQUdoQyxXQUFPLE1BQU0sQ0FBQztHQUNmO0FBQ0QsTUFBSSxPQUFPLEdBQUcsU0FBVixPQUFPLDBCQUFxQztBQUM5QyxRQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNoRCxhQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM5RCxXQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0dBQ3RDLENBQUM7QUFDRixTQUFPLE9BQU8sQ0FBQztDQUNoQiIsImZpbGUiOiJ3cmFwSGVscGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHdyYXBIZWxwZXIoaGVscGVyLCB0cmFuc2Zvcm1PcHRpb25zRm4pIHtcbiAgaWYgKHR5cGVvZiBoZWxwZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAvLyBUaGlzIHNob3VsZCBub3QgaGFwcGVuLCBidXQgYXBwYXJlbnRseSBpdCBkb2VzIGluIGh0dHBzOi8vZ2l0aHViLmNvbS93eWNhdHMvaGFuZGxlYmFycy5qcy9pc3N1ZXMvMTYzOVxuICAgIC8vIFdlIHRyeSB0byBtYWtlIHRoZSB3cmFwcGVyIGxlYXN0LWludmFzaXZlIGJ5IG5vdCB3cmFwcGluZyBpdCwgaWYgdGhlIGhlbHBlciBpcyBub3QgYSBmdW5jdGlvbi5cbiAgICByZXR1cm4gaGVscGVyO1xuICB9XG4gIGxldCB3cmFwcGVyID0gZnVuY3Rpb24oLyogZHluYW1pYyBhcmd1bWVudHMgKi8pIHtcbiAgICBjb25zdCBvcHRpb25zID0gYXJndW1lbnRzW2FyZ3VtZW50cy5sZW5ndGggLSAxXTtcbiAgICBhcmd1bWVudHNbYXJndW1lbnRzLmxlbmd0aCAtIDFdID0gdHJhbnNmb3JtT3B0aW9uc0ZuKG9wdGlvbnMpO1xuICAgIHJldHVybiBoZWxwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgfTtcbiAgcmV0dXJuIHdyYXBwZXI7XG59XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\n\nexports['default'] = function (Handlebars) {\n /* istanbul ignore next */\n var root = typeof global !== 'undefined' ? global : window,\n $Handlebars = root.Handlebars;\n /* istanbul ignore next */\n Handlebars.noConflict = function () {\n if (root.Handlebars === Handlebars) {\n root.Handlebars = $Handlebars;\n }\n return Handlebars;\n };\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL25vLWNvbmZsaWN0LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQWUsVUFBUyxVQUFVLEVBQUU7O0FBRWxDLE1BQUksSUFBSSxHQUFHLE9BQU8sTUFBTSxLQUFLLFdBQVcsR0FBRyxNQUFNLEdBQUcsTUFBTTtNQUN4RCxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQzs7QUFFaEMsWUFBVSxDQUFDLFVBQVUsR0FBRyxZQUFXO0FBQ2pDLFFBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLEVBQUU7QUFDbEMsVUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUM7S0FDL0I7QUFDRCxXQUFPLFVBQVUsQ0FBQztHQUNuQixDQUFDO0NBQ0giLCJmaWxlIjoibm8tY29uZmxpY3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbihIYW5kbGViYXJzKSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGxldCByb290ID0gdHlwZW9mIGdsb2JhbCAhPT0gJ3VuZGVmaW5lZCcgPyBnbG9iYWwgOiB3aW5kb3csXG4gICAgJEhhbmRsZWJhcnMgPSByb290LkhhbmRsZWJhcnM7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIEhhbmRsZWJhcnMubm9Db25mbGljdCA9IGZ1bmN0aW9uKCkge1xuICAgIGlmIChyb290LkhhbmRsZWJhcnMgPT09IEhhbmRsZWJhcnMpIHtcbiAgICAgIHJvb3QuSGFuZGxlYmFycyA9ICRIYW5kbGViYXJzO1xuICAgIH1cbiAgICByZXR1cm4gSGFuZGxlYmFycztcbiAgfTtcbn1cbiJdfQ==\n","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<span class=\\\"avatar-name-wrapper\\\" data-user=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":45},\"end\":{\"line\":1,\"column\":51}}}) : helper)))\n + \"\\\"><div class=\\\"avatar\\\" data-user=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":84},\"end\":{\"line\":1,\"column\":90}}}) : helper)))\n + \"\\\" data-user-display-name=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":116},\"end\":{\"line\":1,\"column\":124}}}) : helper)))\n + \"\\\"></div><strong>\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":140},\"end\":{\"line\":1,\"column\":148}}}) : helper)))\n + \"</strong></span>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<strong title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":15},\"end\":{\"line\":1,\"column\":21}}}) : helper)))\n + \"@\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"server\") || (depth0 != null ? lookupProperty(depth0,\"server\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"server\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":22},\"end\":{\"line\":1,\"column\":32}}}) : helper)))\n + \"\\\" class=\\\"has-tooltip\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":54},\"end\":{\"line\":1,\"column\":62}}}) : helper)))\n + \"</strong>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<strong>\"\n + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":8},\"end\":{\"line\":1,\"column\":16}}}) : helper)))\n + \"</strong>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<a href=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"link\") || (depth0 != null ? lookupProperty(depth0,\"link\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"link\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":9},\"end\":{\"line\":1,\"column\":17}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":19},\"end\":{\"line\":1,\"column\":27}}}) : helper)))\n + \"</a>\\n\";\n},\"useData\":true});","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","var map = {\n\t\"./af\": 87,\n\t\"./af.js\": 87,\n\t\"./ar\": 88,\n\t\"./ar-dz\": 89,\n\t\"./ar-dz.js\": 89,\n\t\"./ar-kw\": 90,\n\t\"./ar-kw.js\": 90,\n\t\"./ar-ly\": 91,\n\t\"./ar-ly.js\": 91,\n\t\"./ar-ma\": 92,\n\t\"./ar-ma.js\": 92,\n\t\"./ar-sa\": 93,\n\t\"./ar-sa.js\": 93,\n\t\"./ar-tn\": 94,\n\t\"./ar-tn.js\": 94,\n\t\"./ar.js\": 88,\n\t\"./az\": 95,\n\t\"./az.js\": 95,\n\t\"./be\": 96,\n\t\"./be.js\": 96,\n\t\"./bg\": 97,\n\t\"./bg.js\": 97,\n\t\"./bm\": 98,\n\t\"./bm.js\": 98,\n\t\"./bn\": 99,\n\t\"./bn.js\": 99,\n\t\"./bo\": 100,\n\t\"./bo.js\": 100,\n\t\"./br\": 101,\n\t\"./br.js\": 101,\n\t\"./bs\": 102,\n\t\"./bs.js\": 102,\n\t\"./ca\": 103,\n\t\"./ca.js\": 103,\n\t\"./cs\": 104,\n\t\"./cs.js\": 104,\n\t\"./cv\": 105,\n\t\"./cv.js\": 105,\n\t\"./cy\": 106,\n\t\"./cy.js\": 106,\n\t\"./da\": 107,\n\t\"./da.js\": 107,\n\t\"./de\": 108,\n\t\"./de-at\": 109,\n\t\"./de-at.js\": 109,\n\t\"./de-ch\": 110,\n\t\"./de-ch.js\": 110,\n\t\"./de.js\": 108,\n\t\"./dv\": 111,\n\t\"./dv.js\": 111,\n\t\"./el\": 112,\n\t\"./el.js\": 112,\n\t\"./en-SG\": 113,\n\t\"./en-SG.js\": 113,\n\t\"./en-au\": 114,\n\t\"./en-au.js\": 114,\n\t\"./en-ca\": 115,\n\t\"./en-ca.js\": 115,\n\t\"./en-gb\": 116,\n\t\"./en-gb.js\": 116,\n\t\"./en-ie\": 117,\n\t\"./en-ie.js\": 117,\n\t\"./en-il\": 118,\n\t\"./en-il.js\": 118,\n\t\"./en-nz\": 119,\n\t\"./en-nz.js\": 119,\n\t\"./eo\": 120,\n\t\"./eo.js\": 120,\n\t\"./es\": 121,\n\t\"./es-do\": 122,\n\t\"./es-do.js\": 122,\n\t\"./es-us\": 123,\n\t\"./es-us.js\": 123,\n\t\"./es.js\": 121,\n\t\"./et\": 124,\n\t\"./et.js\": 124,\n\t\"./eu\": 125,\n\t\"./eu.js\": 125,\n\t\"./fa\": 126,\n\t\"./fa.js\": 126,\n\t\"./fi\": 127,\n\t\"./fi.js\": 127,\n\t\"./fo\": 128,\n\t\"./fo.js\": 128,\n\t\"./fr\": 129,\n\t\"./fr-ca\": 130,\n\t\"./fr-ca.js\": 130,\n\t\"./fr-ch\": 131,\n\t\"./fr-ch.js\": 131,\n\t\"./fr.js\": 129,\n\t\"./fy\": 132,\n\t\"./fy.js\": 132,\n\t\"./ga\": 133,\n\t\"./ga.js\": 133,\n\t\"./gd\": 134,\n\t\"./gd.js\": 134,\n\t\"./gl\": 135,\n\t\"./gl.js\": 135,\n\t\"./gom-latn\": 136,\n\t\"./gom-latn.js\": 136,\n\t\"./gu\": 137,\n\t\"./gu.js\": 137,\n\t\"./he\": 138,\n\t\"./he.js\": 138,\n\t\"./hi\": 139,\n\t\"./hi.js\": 139,\n\t\"./hr\": 140,\n\t\"./hr.js\": 140,\n\t\"./hu\": 141,\n\t\"./hu.js\": 141,\n\t\"./hy-am\": 142,\n\t\"./hy-am.js\": 142,\n\t\"./id\": 143,\n\t\"./id.js\": 143,\n\t\"./is\": 144,\n\t\"./is.js\": 144,\n\t\"./it\": 145,\n\t\"./it-ch\": 146,\n\t\"./it-ch.js\": 146,\n\t\"./it.js\": 145,\n\t\"./ja\": 147,\n\t\"./ja.js\": 147,\n\t\"./jv\": 148,\n\t\"./jv.js\": 148,\n\t\"./ka\": 149,\n\t\"./ka.js\": 149,\n\t\"./kk\": 150,\n\t\"./kk.js\": 150,\n\t\"./km\": 151,\n\t\"./km.js\": 151,\n\t\"./kn\": 152,\n\t\"./kn.js\": 152,\n\t\"./ko\": 153,\n\t\"./ko.js\": 153,\n\t\"./ku\": 154,\n\t\"./ku.js\": 154,\n\t\"./ky\": 155,\n\t\"./ky.js\": 155,\n\t\"./lb\": 156,\n\t\"./lb.js\": 156,\n\t\"./lo\": 157,\n\t\"./lo.js\": 157,\n\t\"./lt\": 158,\n\t\"./lt.js\": 158,\n\t\"./lv\": 159,\n\t\"./lv.js\": 159,\n\t\"./me\": 160,\n\t\"./me.js\": 160,\n\t\"./mi\": 161,\n\t\"./mi.js\": 161,\n\t\"./mk\": 162,\n\t\"./mk.js\": 162,\n\t\"./ml\": 163,\n\t\"./ml.js\": 163,\n\t\"./mn\": 164,\n\t\"./mn.js\": 164,\n\t\"./mr\": 165,\n\t\"./mr.js\": 165,\n\t\"./ms\": 166,\n\t\"./ms-my\": 167,\n\t\"./ms-my.js\": 167,\n\t\"./ms.js\": 166,\n\t\"./mt\": 168,\n\t\"./mt.js\": 168,\n\t\"./my\": 169,\n\t\"./my.js\": 169,\n\t\"./nb\": 170,\n\t\"./nb.js\": 170,\n\t\"./ne\": 171,\n\t\"./ne.js\": 171,\n\t\"./nl\": 172,\n\t\"./nl-be\": 173,\n\t\"./nl-be.js\": 173,\n\t\"./nl.js\": 172,\n\t\"./nn\": 174,\n\t\"./nn.js\": 174,\n\t\"./pa-in\": 175,\n\t\"./pa-in.js\": 175,\n\t\"./pl\": 176,\n\t\"./pl.js\": 176,\n\t\"./pt\": 177,\n\t\"./pt-br\": 178,\n\t\"./pt-br.js\": 178,\n\t\"./pt.js\": 177,\n\t\"./ro\": 179,\n\t\"./ro.js\": 179,\n\t\"./ru\": 180,\n\t\"./ru.js\": 180,\n\t\"./sd\": 181,\n\t\"./sd.js\": 181,\n\t\"./se\": 182,\n\t\"./se.js\": 182,\n\t\"./si\": 183,\n\t\"./si.js\": 183,\n\t\"./sk\": 184,\n\t\"./sk.js\": 184,\n\t\"./sl\": 185,\n\t\"./sl.js\": 185,\n\t\"./sq\": 186,\n\t\"./sq.js\": 186,\n\t\"./sr\": 187,\n\t\"./sr-cyrl\": 188,\n\t\"./sr-cyrl.js\": 188,\n\t\"./sr.js\": 187,\n\t\"./ss\": 189,\n\t\"./ss.js\": 189,\n\t\"./sv\": 190,\n\t\"./sv.js\": 190,\n\t\"./sw\": 191,\n\t\"./sw.js\": 191,\n\t\"./ta\": 192,\n\t\"./ta.js\": 192,\n\t\"./te\": 193,\n\t\"./te.js\": 193,\n\t\"./tet\": 194,\n\t\"./tet.js\": 194,\n\t\"./tg\": 195,\n\t\"./tg.js\": 195,\n\t\"./th\": 196,\n\t\"./th.js\": 196,\n\t\"./tl-ph\": 197,\n\t\"./tl-ph.js\": 197,\n\t\"./tlh\": 198,\n\t\"./tlh.js\": 198,\n\t\"./tr\": 199,\n\t\"./tr.js\": 199,\n\t\"./tzl\": 200,\n\t\"./tzl.js\": 200,\n\t\"./tzm\": 201,\n\t\"./tzm-latn\": 202,\n\t\"./tzm-latn.js\": 202,\n\t\"./tzm.js\": 201,\n\t\"./ug-cn\": 203,\n\t\"./ug-cn.js\": 203,\n\t\"./uk\": 204,\n\t\"./uk.js\": 204,\n\t\"./ur\": 205,\n\t\"./ur.js\": 205,\n\t\"./uz\": 206,\n\t\"./uz-latn\": 207,\n\t\"./uz-latn.js\": 207,\n\t\"./uz.js\": 206,\n\t\"./vi\": 208,\n\t\"./vi.js\": 208,\n\t\"./x-pseudo\": 209,\n\t\"./x-pseudo.js\": 209,\n\t\"./yo\": 210,\n\t\"./yo.js\": 210,\n\t\"./zh-cn\": 211,\n\t\"./zh-cn.js\": 211,\n\t\"./zh-hk\": 212,\n\t\"./zh-hk.js\": 212,\n\t\"./zh-tw\": 213,\n\t\"./zh-tw.js\": 213\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 298;","'use strict';\n\nvar get = require('lodash.get');\nvar plurals = require('./plurals');\n\nmodule.exports = Gettext;\n\n/**\n * Creates and returns a new Gettext instance.\n *\n * @constructor\n * @param {Object} [options] A set of options\n * @param {String} options.sourceLocale The locale that the source code and its\n * texts are written in. Translations for\n * this locale is not necessary.\n * @param {Boolean} options.debug Whether to output debug info into the\n * console.\n * @return {Object} A Gettext instance\n */\nfunction Gettext(options) {\n options = options || {};\n\n this.catalogs = {};\n this.locale = '';\n this.domain = 'messages';\n\n this.listeners = [];\n\n // Set source locale\n this.sourceLocale = '';\n if (options.sourceLocale) {\n if (typeof options.sourceLocale === 'string') {\n this.sourceLocale = options.sourceLocale;\n }\n else {\n this.warn('The `sourceLocale` option should be a string');\n }\n }\n\n // Set debug flag\n if ('debug' in options) {\n this.debug = options.debug === true;\n }\n else if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV) {\n this.debug = process.env.NODE_ENV !== 'production';\n }\n else {\n this.debug = false;\n }\n}\n\n/**\n * Adds an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback An event handler function\n */\nGettext.prototype.on = function(eventName, callback) {\n this.listeners.push({\n eventName: eventName,\n callback: callback\n });\n};\n\n/**\n * Removes an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback A previously registered event handler function\n */\nGettext.prototype.off = function(eventName, callback) {\n this.listeners = this.listeners.filter(function(listener) {\n return (\n listener.eventName === eventName &&\n listener.callback === callback\n ) === false;\n });\n};\n\n/**\n * Emits an event to all registered event listener.\n *\n * @private\n * @param {String} eventName An event name\n * @param {any} eventData Data to pass to event listeners\n */\nGettext.prototype.emit = function(eventName, eventData) {\n for (var i = 0; i < this.listeners.length; i++) {\n var listener = this.listeners[i];\n if (listener.eventName === eventName) {\n listener.callback(eventData);\n }\n }\n};\n\n/**\n * Logs a warning to the console if debug mode is enabled.\n *\n * @ignore\n * @param {String} message A warning message\n */\nGettext.prototype.warn = function(message) {\n if (this.debug) {\n console.warn(message);\n }\n\n this.emit('error', message);\n};\n\n/**\n * Stores a set of translations in the set of gettext\n * catalogs.\n *\n * @example\n * gt.addTranslations('sv-SE', 'messages', translationsObject)\n *\n * @param {String} locale A locale string\n * @param {String} domain A domain name\n * @param {Object} translations An object of gettext-parser JSON shape\n */\nGettext.prototype.addTranslations = function(locale, domain, translations) {\n if (!this.catalogs[locale]) {\n this.catalogs[locale] = {};\n }\n\n this.catalogs[locale][domain] = translations;\n};\n\n/**\n * Sets the locale to get translated messages for.\n *\n * @example\n * gt.setLocale('sv-SE')\n *\n * @param {String} locale A locale\n */\nGettext.prototype.setLocale = function(locale) {\n if (typeof locale !== 'string') {\n this.warn(\n 'You called setLocale() with an argument of type ' + (typeof locale) + '. ' +\n 'The locale must be a string.'\n );\n return;\n }\n\n if (locale.trim() === '') {\n this.warn('You called setLocale() with an empty value, which makes little sense.');\n }\n\n if (locale !== this.sourceLocale && !this.catalogs[locale]) {\n this.warn('You called setLocale() with \"' + locale + '\", but no translations for that locale has been added.');\n }\n\n this.locale = locale;\n};\n\n/**\n * Sets the default gettext domain.\n *\n * @example\n * gt.setTextDomain('domainname')\n *\n * @param {String} domain A gettext domain name\n */\nGettext.prototype.setTextDomain = function(domain) {\n if (typeof domain !== 'string') {\n this.warn(\n 'You called setTextDomain() with an argument of type ' + (typeof domain) + '. ' +\n 'The domain must be a string.'\n );\n return;\n }\n\n if (domain.trim() === '') {\n this.warn('You called setTextDomain() with an empty `domain` value.');\n }\n\n this.domain = domain;\n};\n\n/**\n * Translates a string using the default textdomain\n *\n * @example\n * gt.gettext('Some text')\n *\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.gettext = function(msgid) {\n return this.dnpgettext(this.domain, '', msgid);\n};\n\n/**\n * Translates a string using a specific domain\n *\n * @example\n * gt.dgettext('domainname', 'Some text')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dgettext = function(domain, msgid) {\n return this.dnpgettext(domain, '', msgid);\n};\n\n/**\n * Translates a plural string using the default textdomain\n *\n * @example\n * gt.ngettext('One thing', 'Many things', numberOfThings)\n *\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.ngettext = function(msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string using a specific textdomain\n *\n * @example\n * gt.dngettext('domainname', 'One thing', 'Many things', numberOfThings)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dngettext = function(domain, msgid, msgidPlural, count) {\n return this.dnpgettext(domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a string from a specific context using the default textdomain\n *\n * @example\n * gt.pgettext('sports', 'Back')\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.pgettext = function(msgctxt, msgid) {\n return this.dnpgettext(this.domain, msgctxt, msgid);\n};\n\n/**\n * Translates a string from a specific context using s specific textdomain\n *\n * @example\n * gt.dpgettext('domainname', 'sports', 'Back')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dpgettext = function(domain, msgctxt, msgid) {\n return this.dnpgettext(domain, msgctxt, msgid);\n};\n\n/**\n * Translates a plural string from a specific context using the default textdomain\n *\n * @example\n * gt.npgettext('sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.npgettext = function(msgctxt, msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, msgctxt, msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string from a specifi context using a specific textdomain\n *\n * @example\n * gt.dnpgettext('domainname', 'sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @param {String} msgidPlural If no translation was found, return this on count!=1\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dnpgettext = function(domain, msgctxt, msgid, msgidPlural, count) {\n var defaultTranslation = msgid;\n var translation;\n var index;\n\n msgctxt = msgctxt || '';\n\n if (!isNaN(count) && count !== 1) {\n defaultTranslation = msgidPlural || msgid;\n }\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n\n if (translation) {\n if (typeof count === 'number') {\n var pluralsFunc = plurals[Gettext.getLanguageCode(this.locale)].pluralsFunc;\n index = pluralsFunc(count);\n if (typeof index === 'boolean') {\n index = index ? 1 : 0;\n }\n } else {\n index = 0;\n }\n\n return translation.msgstr[index] || defaultTranslation;\n }\n else if (!this.sourceLocale || this.locale !== this.sourceLocale) {\n this.warn('No translation was found for msgid \"' + msgid + '\" in msgctxt \"' + msgctxt + '\" and domain \"' + domain + '\"');\n }\n\n return defaultTranslation;\n};\n\n/**\n * Retrieves comments object for a translation. The comments object\n * has the shape `{ translator, extracted, reference, flag, previous }`.\n *\n * @example\n * const comment = gt.getComment('domainname', 'sports', 'Backs')\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Comments object or false if not found\n */\nGettext.prototype.getComment = function(domain, msgctxt, msgid) {\n var translation;\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n if (translation) {\n return translation.comments || {};\n }\n\n return {};\n};\n\n/**\n * Retrieves translation object from the domain and context\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Translation object or false if not found\n */\nGettext.prototype._getTranslation = function(domain, msgctxt, msgid) {\n msgctxt = msgctxt || '';\n\n return get(this.catalogs, [this.locale, domain, 'translations', msgctxt, msgid]);\n};\n\n/**\n * Returns the language code part of a locale\n *\n * @example\n * Gettext.getLanguageCode('sv-SE')\n * // -> \"sv\"\n *\n * @private\n * @param {String} locale A case-insensitive locale string\n * @returns {String} A language code\n */\nGettext.getLanguageCode = function(locale) {\n return locale.split(/[\\-_]/)[0].toLowerCase();\n};\n\n/* C-style aliases */\n\n/**\n * C-style alias for [setTextDomain](#gettextsettextdomaindomain)\n *\n * @see Gettext#setTextDomain\n */\nGettext.prototype.textdomain = function(domain) {\n if (this.debug) {\n console.warn('textdomain(domain) was used to set locales in node-gettext v1. ' +\n 'Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\\n\\n ' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\\n\\n' +\n 'This warning will be removed in the final 2.0.0');\n }\n\n this.setTextDomain(domain);\n};\n\n/**\n * C-style alias for [setLocale](#gettextsetlocalelocale)\n *\n * @see Gettext#setLocale\n */\nGettext.prototype.setlocale = function(locale) {\n this.setLocale(locale);\n};\n\n/* Deprecated functions */\n\n/**\n * This function will be removed in the final 2.0.0 release.\n *\n * @deprecated\n */\nGettext.prototype.addTextdomain = function() {\n console.error('addTextdomain() is deprecated.\\n\\n' +\n '* To add translations, use addTranslations()\\n' +\n '* To set the default domain, use setTextDomain() (or its alias textdomain())\\n' +\n '\\n' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x');\n};\n","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** `Object#toString` result references. */\nvar funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n symbolTag = '[object Symbol]';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n reLeadingDot = /^\\./,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Checks if `value` is a host object in IE < 9.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a host object, else `false`.\n */\nfunction isHostObject(value) {\n // Many host objects are `Object` objects that can coerce to strings\n // despite having improperly defined `toString` methods.\n var result = false;\n if (value != null && typeof value.toString != 'function') {\n try {\n result = !!(value + '');\n } catch (e) {}\n }\n return result;\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Symbol = root.Symbol,\n splice = arrayProto.splice;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n return this.has(key) && delete this.__data__[key];\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n return getMapData(this, key)['delete'](key);\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n getMapData(this, key).set(key, value);\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = isKey(path, object) ? [path] : castPath(path);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value) {\n return isArray(value) ? value : stringToPath(value);\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoize(function(string) {\n string = toString(string);\n\n var result = [];\n if (reLeadingDot.test(string)) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, string) {\n result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to process.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result);\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Assign cache to `_.memoize`.\nmemoize.Cache = MapCache;\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 8-9 which returns 'object' for typed array and other constructors.\n var tag = isObject(value) ? objectToString.call(value) : '';\n return tag == funcTag || tag == genTag;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","'use strict';\n\nmodule.exports = {\n ach: {\n name: 'Acholi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n af: {\n name: 'Afrikaans',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ak: {\n name: 'Akan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n am: {\n name: 'Amharic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n an: {\n name: 'Aragonese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ar: {\n name: 'Arabic',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }, {\n plural: 3,\n sample: 3\n }, {\n plural: 4,\n sample: 11\n }, {\n plural: 5,\n sample: 100\n }],\n nplurals: 6,\n pluralsText: 'nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n }\n },\n arn: {\n name: 'Mapudungun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ast: {\n name: 'Asturian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ay: {\n name: 'Aymará',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n az: {\n name: 'Azerbaijani',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n be: {\n name: 'Belarusian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n bg: {\n name: 'Bulgarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bn: {\n name: 'Bengali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bo: {\n name: 'Tibetan',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n br: {\n name: 'Breton',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n brx: {\n name: 'Bodo',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bs: {\n name: 'Bosnian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ca: {\n name: 'Catalan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n cgg: {\n name: 'Chiga',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n cs: {\n name: 'Czech',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n csb: {\n name: 'Kashubian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n cy: {\n name: 'Welsh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 8\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3);\n }\n },\n da: {\n name: 'Danish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n de: {\n name: 'German',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n doi: {\n name: 'Dogri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n dz: {\n name: 'Dzongkha',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n el: {\n name: 'Greek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n en: {\n name: 'English',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eo: {\n name: 'Esperanto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n es: {\n name: 'Spanish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n et: {\n name: 'Estonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eu: {\n name: 'Basque',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fa: {\n name: 'Persian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ff: {\n name: 'Fulah',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fi: {\n name: 'Finnish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fil: {\n name: 'Filipino',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fo: {\n name: 'Faroese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fr: {\n name: 'French',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fur: {\n name: 'Friulian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fy: {\n name: 'Frisian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ga: {\n name: 'Irish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 7\n }, {\n plural: 4,\n sample: 11\n }],\n nplurals: 5,\n pluralsText: 'nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n }\n },\n gd: {\n name: 'Scottish Gaelic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)',\n pluralsFunc: function(n) {\n return ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3);\n }\n },\n gl: {\n name: 'Galician',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gu: {\n name: 'Gujarati',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gun: {\n name: 'Gun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ha: {\n name: 'Hausa',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n he: {\n name: 'Hebrew',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hi: {\n name: 'Hindi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hne: {\n name: 'Chhattisgarhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hr: {\n name: 'Croatian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n hu: {\n name: 'Hungarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hy: {\n name: 'Armenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n id: {\n name: 'Indonesian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n is: {\n name: 'Icelandic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)',\n pluralsFunc: function(n) {\n return (n % 10 !== 1 || n % 100 === 11);\n }\n },\n it: {\n name: 'Italian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ja: {\n name: 'Japanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jbo: {\n name: 'Lojban',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jv: {\n name: 'Javanese',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 0)',\n pluralsFunc: function(n) {\n return (n !== 0);\n }\n },\n ka: {\n name: 'Georgian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kk: {\n name: 'Kazakh',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n km: {\n name: 'Khmer',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kn: {\n name: 'Kannada',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ko: {\n name: 'Korean',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ku: {\n name: 'Kurdish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n kw: {\n name: 'Cornish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 4\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3);\n }\n },\n ky: {\n name: 'Kyrgyz',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lb: {\n name: 'Letzeburgesch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ln: {\n name: 'Lingala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n lo: {\n name: 'Lao',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lt: {\n name: 'Lithuanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 10\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n lv: {\n name: 'Latvian',\n examples: [{\n plural: 2,\n sample: 0\n }, {\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2);\n }\n },\n mai: {\n name: 'Maithili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mfe: {\n name: 'Mauritian Creole',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mg: {\n name: 'Malagasy',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mi: {\n name: 'Maori',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mk: {\n name: 'Macedonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)',\n pluralsFunc: function(n) {\n return (n === 1 || n % 10 === 1 ? 0 : 1);\n }\n },\n ml: {\n name: 'Malayalam',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mn: {\n name: 'Mongolian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mni: {\n name: 'Manipuri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mnk: {\n name: 'Mandinka',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : 2);\n }\n },\n mr: {\n name: 'Marathi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ms: {\n name: 'Malay',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n mt: {\n name: 'Maltese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 11\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 0 || (n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20) ? 2 : 3);\n }\n },\n my: {\n name: 'Burmese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n nah: {\n name: 'Nahuatl',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nap: {\n name: 'Neapolitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nb: {\n name: 'Norwegian Bokmal',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ne: {\n name: 'Nepali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nl: {\n name: 'Dutch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nn: {\n name: 'Norwegian Nynorsk',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n no: {\n name: 'Norwegian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nso: {\n name: 'Northern Sotho',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n oc: {\n name: 'Occitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n or: {\n name: 'Oriya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pa: {\n name: 'Punjabi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pap: {\n name: 'Papiamento',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pl: {\n name: 'Polish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n pms: {\n name: 'Piemontese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ps: {\n name: 'Pashto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pt: {\n name: 'Portuguese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n rm: {\n name: 'Romansh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ro: {\n name: 'Romanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 20\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2);\n }\n },\n ru: {\n name: 'Russian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n rw: {\n name: 'Kinyarwanda',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sah: {\n name: 'Yakut',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sat: {\n name: 'Santali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sco: {\n name: 'Scots',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sd: {\n name: 'Sindhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n se: {\n name: 'Northern Sami',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n si: {\n name: 'Sinhala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sk: {\n name: 'Slovak',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n sl: {\n name: 'Slovenian',\n examples: [{\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }, {\n plural: 3,\n sample: 3\n }, {\n plural: 0,\n sample: 5\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 1 : n % 100 === 2 ? 2 : n % 100 === 3 || n % 100 === 4 ? 3 : 0)',\n pluralsFunc: function(n) {\n return (n % 100 === 1 ? 1 : n % 100 === 2 ? 2 : n % 100 === 3 || n % 100 === 4 ? 3 : 0);\n }\n },\n so: {\n name: 'Somali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n son: {\n name: 'Songhay',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sq: {\n name: 'Albanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sr: {\n name: 'Serbian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n su: {\n name: 'Sundanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sv: {\n name: 'Swedish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sw: {\n name: 'Swahili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ta: {\n name: 'Tamil',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n te: {\n name: 'Telugu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tg: {\n name: 'Tajik',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n th: {\n name: 'Thai',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ti: {\n name: 'Tigrinya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tk: {\n name: 'Turkmen',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tr: {\n name: 'Turkish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tt: {\n name: 'Tatar',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ug: {\n name: 'Uyghur',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n uk: {\n name: 'Ukrainian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ur: {\n name: 'Urdu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n uz: {\n name: 'Uzbek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n vi: {\n name: 'Vietnamese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n wa: {\n name: 'Walloon',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n wo: {\n name: 'Wolof',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n yo: {\n name: 'Yoruba',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n zh: {\n name: 'Chinese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n }\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getLocale = getLocale;\nexports.getLanguage = getLanguage;\nexports.translate = translate;\nexports.translatePlural = translatePlural;\nexports.getFirstDay = getFirstDay;\nexports.getDayNames = getDayNames;\nexports.getDayNamesShort = getDayNamesShort;\nexports.getDayNamesMin = getDayNamesMin;\nexports.getMonthNames = getMonthNames;\nexports.getMonthNamesShort = getMonthNamesShort;\n\n/// <reference types=\"@nextcloud/typings\" />\n\n/**\n * Returns the user's locale\n */\nfunction getLocale() {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return 'en';\n }\n\n return OC.getLocale();\n}\n/**\n * Returns the user's language\n */\n\n\nfunction getLanguage() {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return 'en';\n }\n\n return OC.getLanguage();\n}\n\n/**\n * Translate a string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} text the string to translate\n * @param {object} vars map of placeholder key to value\n * @param {number} number to replace %n with\n * @param {object} [options] options object\n * @return {string}\n */\nfunction translate(app, text, vars, count, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return text;\n }\n\n return OC.L10N.translate(app, text, vars, count, options);\n}\n/**\n * Translate a plural string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} textSingular the string to translate for exactly one object\n * @param {string} textPlural the string to translate for n objects\n * @param {number} count number to determine whether to use singular or plural\n * @param {Object} vars of placeholder key to value\n * @param {object} options options object\n * @return {string}\n */\n\n\nfunction translatePlural(app, textSingular, textPlural, count, vars, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return textSingular;\n }\n\n return OC.L10N.translatePlural(app, textSingular, textPlural, count, vars, options);\n}\n/**\n * Get the first day of the week\n *\n * @return {number}\n */\n\n\nfunction getFirstDay() {\n if (typeof window.firstDay === 'undefined') {\n console.warn('No firstDay found');\n return 1;\n }\n\n return window.firstDay;\n}\n/**\n * Get a list of day names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNames() {\n if (typeof window.dayNames === 'undefined') {\n console.warn('No dayNames found');\n return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n }\n\n return window.dayNames;\n}\n/**\n * Get a list of day names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesShort() {\n if (typeof window.dayNamesShort === 'undefined') {\n console.warn('No dayNamesShort found');\n return ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.'];\n }\n\n return window.dayNamesShort;\n}\n/**\n * Get a list of day names (minified names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesMin() {\n if (typeof window.dayNamesMin === 'undefined') {\n console.warn('No dayNamesMin found');\n return ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\n }\n\n return window.dayNamesMin;\n}\n/**\n * Get a list of month names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNames() {\n if (typeof window.monthNames === 'undefined') {\n console.warn('No monthNames found');\n return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\n }\n\n return window.monthNames;\n}\n/**\n * Get a list of month names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNamesShort() {\n if (typeof window.monthNamesShort === 'undefined') {\n console.warn('No monthNamesShort found');\n return ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.'];\n }\n\n return window.monthNamesShort;\n}\n//# sourceMappingURL=index.js.map","import mod from \"-!../node_modules/vue-style-loader/index.js!../node_modules/css-loader/dist/cjs.js!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\"; export default mod; export * from \"-!../node_modules/vue-style-loader/index.js!../node_modules/css-loader/dist/cjs.js!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"\\n.fade-enter-active[data-v-6e2a9f70],\\n.fade-leave-active[data-v-6e2a9f70],\\n.fade-collapse-enter-active[data-v-6e2a9f70],\\n.fade-collapse-leave-active[data-v-6e2a9f70] {\\n\\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\\n}\\n.fade-collapse-enter[data-v-6e2a9f70],\\n.fade-collapse-leave-to[data-v-6e2a9f70] {\\n\\topacity: 0;\\n\\tmax-height: 0;\\n}\\n.fade-enter[data-v-6e2a9f70],\\n.fade-leave-to[data-v-6e2a9f70] {\\n\\topacity: 0;\\n}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (useSourceMap) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item, useSourceMap);\n\n if (item[2]) {\n return \"@media \".concat(item[2], \" {\").concat(content, \"}\");\n }\n\n return content;\n }).join('');\n }; // import a list of modules into the list\n // eslint-disable-next-line func-names\n\n\n list.i = function (modules, mediaQuery, dedupe) {\n if (typeof modules === 'string') {\n // eslint-disable-next-line no-param-reassign\n modules = [[null, modules, '']];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var i = 0; i < this.length; i++) {\n // eslint-disable-next-line prefer-destructuring\n var id = this[i][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _i = 0; _i < modules.length; _i++) {\n var item = [].concat(modules[_i]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (mediaQuery) {\n if (!item[2]) {\n item[2] = mediaQuery;\n } else {\n item[2] = \"\".concat(mediaQuery, \" and \").concat(item[2]);\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring\n\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (useSourceMap && typeof btoa === 'function') {\n var sourceMapping = toComment(cssMapping);\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || '').concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n }\n\n return [content].join('\\n');\n} // Adapted from convert-source-map (MIT)\n\n\nfunction toComment(sourceMap) {\n // eslint-disable-next-line no-undef\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n return \"/*# \".concat(data, \" */\");\n}","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./Action.vue?vue&type=template&id=64def693&\"\nimport script from \"./Action.vue?vue&type=script&lang=js&\"\nexport * from \"./Action.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n\t<button class=\"action-button pull-right\"\n\t\t:class=\"{ primary: primary }\"\n\t\t:data-type=\"type\"\n\t\t:data-href=\"link\"\n\t\t@click=\"onClickActionButton\">\n\t\t{{ label }}\n\t</button>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nexport default {\n\tname: 'Action',\n\n\tprops: {\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tprimary: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tmethods: {\n\t\tasync onClickActionButton() {\n\t\t\tconst type = this.type || 'GET'\n\t\t\tif (type === 'WEB') {\n\t\t\t\tOC.redirect(this.link)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\t// execute action\n\t\t\t\tawait axios({\n\t\t\t\t\tmethod: type,\n\t\t\t\t\turl: this.link,\n\t\t\t\t})\n\n\t\t\t\t// emit event to current app\n\t\t\t\tthis.$parent._$el.fadeOut(OC.menuSpeed)\n\t\t\t\tthis.$parent.$emit('remove')\n\t\t\t\ttry {\n\t\t\t\t\t$('body').trigger(new $.Event('OCA.Notification.Action', {\n\t\t\t\t\t\tnotification: this.$parent,\n\t\t\t\t\t\taction: {\n\t\t\t\t\t\t\turl: this.link,\n\t\t\t\t\t\t\ttype: type,\n\t\t\t\t\t\t},\n\t\t\t\t\t}))\n\t\t\t\t// do not do anything but log, the action went fine\n\t\t\t\t// only the event bus listener failed, this is not our problem\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.error(error)\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Failed to perform action', error)\n\t\t\t\tOC.Notification.showTemporary(t('notifications', 'Failed to perform action'))\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"action-button pull-right\",class:{ primary: _vm.primary },attrs:{\"data-type\":_vm.type,\"data-href\":_vm.link},on:{\"click\":_vm.onClickActionButton}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.label)+\"\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright (c) 2016 Joas Schilling <coding@schilljs.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n *\n * This file is licensed under the Affero General Public License version 3 or\n * later. See the COPYING file.\n */\n\nimport escapeHTML from 'escape-html'\n\nexport default {\n\tfileTemplate: require('./templates/file.handlebars'),\n\n\tuserLocalTemplate: require('./templates/userLocal.handlebars'),\n\tuserRemoteTemplate: require('./templates/userRemote.handlebars'),\n\n\tunknownTemplate: require('./templates/unkown.handlebars'),\n\tunknownLinkTemplate: require('./templates/unkownLink.handlebars'),\n\n\t/**\n\t * @param {string} message The rich object message with placeholders\n\t * @param {Object} parameters The rich objects to be parsed into the message\n\t * @returns {string} The HTML to render this message\n\t */\n\tparseMessage: function(message, parameters) {\n\t\tmessage = escapeHTML(message)\n\t\tconst regex = /\\{([a-z\\-_0-9]+)\\}/gi\n\t\tconst matches = message.match(regex)\n\n\t\tif (!matches) {\n\t\t\treturn message\n\t\t}\n\n\t\tmatches.forEach(parameter => {\n\t\t\tparameter = parameter.substring(1, parameter.length - 1)\n\t\t\tif (!Object.prototype.hasOwnProperty.call(parameters, parameter) || !parameters[parameter]) {\n\t\t\t\t// Malformed translation?\n\t\t\t\tconsole.error('Potential malformed ROS string: parameter {' + parameter + '} was found in the string but is missing from the parameter list')\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst parsed = this.parseParameter(parameters[parameter])\n\t\t\tmessage = message.replace('{' + parameter + '}', parsed)\n\t\t})\n\n\t\treturn message.replace(new RegExp('\\n', 'g'), '<br>')\n\t},\n\n\t/**\n\t * @param {Object} parameter Rich Object\n\t * @param {string} parameter.type Type of the object\n\t * @param {string} parameter.id Identifier of the object\n\t * @param {string} parameter.name Name of the object\n\t * @param {string} parameter.link Absolute link to the object\n\t * @param {string} [parameter.server] Server the user is on\n\t * @param {string} [parameter.path] User visible path of the file\n\t * @returns {string} The HTML to render this object\n\t */\n\tparseParameter: function(parameter) {\n\t\tswitch (parameter.type) {\n\t\tcase 'file':\n\t\t\treturn this.parseFileParameter(parameter).trim('\\n')\n\n\t\tcase 'user':\n\t\t\tif (parameter.server === undefined) {\n\t\t\t\treturn this.userLocalTemplate(parameter).trim('\\n')\n\t\t\t}\n\n\t\t\treturn this.userRemoteTemplate(parameter).trim('\\n')\n\n\t\tdefault:\n\t\t\tif (parameter.link !== undefined) {\n\t\t\t\treturn this.unknownLinkTemplate(parameter).trim('\\n')\n\t\t\t}\n\n\t\t\treturn this.unknownTemplate(parameter).trim('\\n')\n\t\t}\n\t},\n\n\t/**\n\t * @param {Object} parameter Rich Object file\n\t * @param {string} parameter.id Numeric ID of the file\n\t * @param {string} parameter.name Name of the file/folder\n\t * @param {string} parameter.path User visible path of the file\n\t * @param {string} parameter.link Absolute link to the file\n\t * @returns {string} The HTML to render this parameter\n\t */\n\tparseFileParameter: function(parameter) {\n\t\tconst lastSlashPosition = parameter.path.lastIndexOf('/')\n\t\tconst firstSlashPosition = parameter.path.indexOf('/')\n\t\tparameter.path = parameter.path.substring(firstSlashPosition === 0 ? 1 : 0, lastSlashPosition)\n\n\t\treturn this.fileTemplate(Object.assign({}, parameter, {\n\t\t\ttitle: parameter.path.length === 0 ? '' : t('notifications', 'in {path}', parameter),\n\t\t}))\n\t},\n}\n","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=18596d05&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n\t<div class=\"notification\" :data-id=\"notificationId\" :data-timestamp=\"timestamp\">\n\t\t<div class=\"notification-heading\">\n\t\t\t<span class=\"notification-time has-tooltip live-relative-timestamp\" :data-timestamp=\"timestamp\" :title=\"absoluteDate\">{{ relativeDate }}</span>\n\t\t\t<div class=\"notification-delete\" @click=\"onDismissNotification\">\n\t\t\t\t<span class=\"icon icon-close svg\" :title=\"t('notifications', 'Dismiss')\" />\n\t\t\t</div>\n\t\t</div>\n\t\t<a v-if=\"useLink\" :href=\"link\" class=\"notification-subject full-subject-link\">\n\t\t\t<span v-if=\"icon\" class=\"image\"><img :src=\"icon\" class=\"notification-icon\"></span>\n\t\t\t<span class=\"text\" v-html=\"renderedSubject\" />\n\t\t</a>\n\t\t<div v-else class=\"notification-subject\">\n\t\t\t<span v-if=\"icon\" class=\"image\"><img :src=\"icon\" class=\"notification-icon\"></span>\n\t\t\t<span class=\"text\" v-html=\"renderedSubject\" />\n\t\t</div>\n\t\t<div v-if=\"message\" class=\"notification-message\" @click=\"onClickMessage\">\n\t\t\t<div class=\"message-container\" :class=\"{ collapsed: isCollapsedMessage }\" v-html=\"renderedMessage\" />\n\t\t\t<div v-if=\"isCollapsedMessage\" class=\"notification-overflow\" />\n\t\t</div>\n\t\t<div v-if=\"actions.length\" class=\"notification-actions\">\n\t\t\t<Action v-for=\"(a, i) in actions\" :key=\"i\" v-bind=\"a\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nimport Action from './Action'\nimport parser from '../richObjectStringParser'\nimport escapeHTML from 'escape-html'\nimport moment from '@nextcloud/moment'\n\nexport default {\n\tname: 'Notification',\n\n\tcomponents: {\n\t\tAction,\n\t},\n\n\tprops: {\n\t\tnotificationId: {\n\t\t\ttype: Number,\n\t\t\tdefault: -1,\n\t\t\trequired: true,\n\t\t},\n\t\tdatetime: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tapp: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tuser: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tmessage: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tmessageRich: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tmessageRichParameters: {\n\t\t\ttype: [Object, Array],\n\t\t\tdefault() {\n\t\t\t\treturn {}\n\t\t\t},\n\t\t\trequired: true,\n\t\t},\n\t\tsubject: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tsubjectRich: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tsubjectRichParameters: {\n\t\t\ttype: [Object, Array],\n\t\t\tdefault() {\n\t\t\t\treturn {}\n\t\t\t},\n\t\t\trequired: true,\n\t\t},\n\t\tobjectType: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tobjectId: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tactions: {\n\t\t\ttype: Array,\n\t\t\tdefault() {\n\t\t\t\treturn []\n\t\t\t},\n\t\t\trequired: true,\n\t\t},\n\n\t\tindex: {\n\t\t\ttype: Number,\n\t\t\tdefault: -1,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowFullMessage: false,\n\t\t}\n\t},\n\n\t_$el: null,\n\n\tcomputed: {\n\t\ttimestamp: function() {\n\t\t\treturn moment(this.datetime).format('X') * 1000\n\t\t},\n\t\tabsoluteDate: function() {\n\t\t\treturn OC.Util.formatDate(this.timestamp)\n\t\t},\n\t\trelativeDate: function() {\n\t\t\treturn OC.Util.relativeModifiedDate(this.timestamp)\n\t\t},\n\t\tuseLink: function() {\n\t\t\treturn this.link && this.renderedSubject.indexOf('<a ') === -1\n\t\t},\n\t\trenderedSubject: function() {\n\t\t\tif (this.subjectRich.length !== 0) {\n\t\t\t\treturn parser.parseMessage(\n\t\t\t\t\tthis.subjectRich.replace(new RegExp('\\n', 'g'), ' '),\n\t\t\t\t\tthis.subjectRichParameters\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn escapeHTML(this.subject).replace(new RegExp('\\n', 'g'), ' ')\n\t\t},\n\t\tisCollapsedMessage: function() {\n\t\t\treturn this.message.length > 200 && !this.showFullMessage\n\t\t},\n\t\trenderedMessage: function() {\n\t\t\tif (this.messageRich.length !== 0) {\n\t\t\t\treturn parser.parseMessage(\n\t\t\t\t\tthis.messageRich,\n\t\t\t\t\tthis.messageRichParameters\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn escapeHTML(this.message).replace(new RegExp('\\n', 'g'), '<br>')\n\t\t},\n\t},\n\n\tmounted: function() {\n\t\tthis._$el = $(this.$el)\n\n\t\tthis._$el.find('.avatar').each(function() {\n\t\t\tconst element = $(this)\n\t\t\tif (element.data('user-display-name')) {\n\t\t\t\telement.avatar(element.data('user'), 21, undefined, false, undefined, element.data('user-display-name'))\n\t\t\t} else {\n\t\t\t\telement.avatar(element.data('user'), 21)\n\t\t\t}\n\t\t})\n\n\t\tthis._$el.find('.avatar-name-wrapper').each(function() {\n\t\t\tconst element = $(this)\n\t\t\tconst avatar = element.find('.avatar')\n\t\t\tconst label = element.find('strong')\n\n\t\t\t$.merge(avatar, label).contactsMenu(element.data('user'), 0, element)\n\t\t})\n\n\t\tthis._$el.find('.has-tooltip').tooltip({\n\t\t\t// container: this.$container.find('.notification-wrapper'),\n\t\t\tplacement: 'bottom',\n\t\t})\n\n\t\t// Parents: TransitionGroup > NotificationsList\n\t\tif (this.$parent.$parent.backgroundFetching\n\t\t\t&& this.$parent.$parent.webNotificationsGranted) {\n\t\t\tthis._createWebNotification()\n\t\t}\n\t},\n\n\tmethods: {\n\t\tonClickMessage: function(e) {\n\t\t\tif (e.target.classList.contains('message-container')) {\n\t\t\t\tthis.showFullMessage = !this.showFullMessage\n\t\t\t}\n\t\t},\n\n\t\tonDismissNotification: function() {\n\t\t\taxios\n\t\t\t\t.delete(OC.linkToOCS('apps/notifications/api/v2', 2) + 'notifications/' + this.notificationId)\n\t\t\t\t.then(() => {\n\t\t\t\t\t// this._$el.fadeOut(OC.menuSpeed)\n\t\t\t\t\tthis.$emit('remove', this.index)\n\t\t\t\t})\n\t\t\t\t.catch(() => {\n\t\t\t\t\tOC.Notification.showTemporary(t('notifications', 'Failed to dismiss notification'))\n\t\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Create a browser notification\n\t\t * @see https://developer.mozilla.org/en/docs/Web/API/notification\n\t\t */\n\t\t_createWebNotification: function() {\n\t\t\tconst n = new Notification(this.subject, {\n\t\t\t\ttitle: this.subject,\n\t\t\t\tlang: OC.getLocale(),\n\t\t\t\tbody: this.message,\n\t\t\t\ticon: this.icon,\n\t\t\t\ttag: this.notificationId,\n\t\t\t})\n\n\t\t\tif (this.link) {\n\t\t\t\tn.onclick = function(event) {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\twindow.location.href = this.link\n\t\t\t\t}.bind(this)\n\t\t\t}\n\n\t\t\tsetTimeout(n.close.bind(n), 5000)\n\t\t},\n\t},\n}\n</script>\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification\",attrs:{\"data-id\":_vm.notificationId,\"data-timestamp\":_vm.timestamp}},[_c('div',{staticClass:\"notification-heading\"},[_c('span',{staticClass:\"notification-time has-tooltip live-relative-timestamp\",attrs:{\"data-timestamp\":_vm.timestamp,\"title\":_vm.absoluteDate}},[_vm._v(_vm._s(_vm.relativeDate))]),_vm._v(\" \"),_c('div',{staticClass:\"notification-delete\",on:{\"click\":_vm.onDismissNotification}},[_c('span',{staticClass:\"icon icon-close svg\",attrs:{\"title\":_vm.t('notifications', 'Dismiss')}})])]),_vm._v(\" \"),(_vm.useLink)?_c('a',{staticClass:\"notification-subject full-subject-link\",attrs:{\"href\":_vm.link}},[(_vm.icon)?_c('span',{staticClass:\"image\"},[_c('img',{staticClass:\"notification-icon\",attrs:{\"src\":_vm.icon}})]):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"text\",domProps:{\"innerHTML\":_vm._s(_vm.renderedSubject)}})]):_c('div',{staticClass:\"notification-subject\"},[(_vm.icon)?_c('span',{staticClass:\"image\"},[_c('img',{staticClass:\"notification-icon\",attrs:{\"src\":_vm.icon}})]):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"text\",domProps:{\"innerHTML\":_vm._s(_vm.renderedSubject)}})]),_vm._v(\" \"),(_vm.message)?_c('div',{staticClass:\"notification-message\",on:{\"click\":_vm.onClickMessage}},[_c('div',{staticClass:\"message-container\",class:{ collapsed: _vm.isCollapsedMessage },domProps:{\"innerHTML\":_vm._s(_vm.renderedMessage)}}),_vm._v(\" \"),(_vm.isCollapsedMessage)?_c('div',{staticClass:\"notification-overflow\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.actions.length)?_c('div',{staticClass:\"notification-actions\"},_vm._l((_vm.actions),function(a,i){return _c('Action',_vm._b({key:i},'Action',a,false))}),1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div v-if=\"!shutdown\" class=\"notifications\">\n\t\t<div ref=\"button\"\n\t\t\tclass=\"notifications-button menutoggle\"\n\t\t\t:class=\"{ hasNotifications: notifications.length }\"\n\t\t\ttabindex=\"0\"\n\t\t\trole=\"button\"\n\t\t\t:aria-label=\"t('notifications', 'Notifications')\"\n\t\t\taria-haspopup=\"true\"\n\t\t\taria-controls=\"notification-container\"\n\t\t\taria-expanded=\"false\"\n\t\t\t@click=\"requestWebNotificationPermissions\">\n\t\t\t<img ref=\"icon\"\n\t\t\t\tclass=\"svg\"\n\t\t\t\talt=\"\"\n\t\t\t\t:title=\"t('notifications', 'Notifications')\"\n\t\t\t\t:src=\"iconPath\">\n\t\t</div>\n\t\t<div ref=\"container\" class=\"notification-container\">\n\t\t\t<transition name=\"fade\">\n\t\t\t\t<ul v-if=\"notifications.length > 0\" class=\"notification-wrapper\">\n\t\t\t\t\t<transition-group name=\"fade-collapse\" tag=\"li\">\n\t\t\t\t\t\t<Notification\n\t\t\t\t\t\t\tv-for=\"(n, index) in notifications\"\n\t\t\t\t\t\t\t:key=\"n.notification_id\"\n\t\t\t\t\t\t\tv-bind=\"n\"\n\t\t\t\t\t\t\t:index=\"index\"\n\t\t\t\t\t\t\t:notification-id=\"n.notification_id\"\n\t\t\t\t\t\t\t:object-id=\"n.object_id\"\n\t\t\t\t\t\t\t:object-type=\"n.object_type\"\n\t\t\t\t\t\t\t@remove=\"onRemove\" />\n\t\t\t\t\t</transition-group>\n\t\t\t\t\t<li v-if=\"notifications.length > 2\">\n\t\t\t\t\t\t<div class=\"dismiss-all\" @click=\"onDismissAll\">\n\t\t\t\t\t\t\t<span class=\"icon icon-close svg\" :title=\"t('notifications', 'Dismiss all notifications')\" /> {{ t('notifications', 'Dismiss all notifications') }}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<div v-else class=\"emptycontent\">\n\t\t\t\t\t<div class=\"icon icon-notifications-dark\" />\n\t\t\t\t\t<h2 v-if=\"webNotificationsGranted === null\">\n\t\t\t\t\t\t{{ t('notifications', 'Requesting browser permissions to show notifications') }}\n\t\t\t\t\t</h2>\n\t\t\t\t\t<h2 v-else>\n\t\t\t\t\t\t{{ t('notifications', 'No notifications') }}\n\t\t\t\t\t</h2>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport Notification from './Components/Notification'\nimport axios from '@nextcloud/axios'\nimport { subscribe } from '@nextcloud/event-bus'\n\nexport default {\n\tname: 'App',\n\n\tcomponents: {\n\t\tNotification,\n\t},\n\n\tdata: function() {\n\t\treturn {\n\t\t\twebNotificationsGranted: null,\n\t\t\thadNotifications: false,\n\t\t\tbackgroundFetching: false,\n\t\t\tshutdown: false,\n\t\t\tnotifications: [],\n\t\t\tlastETag: null,\n\n\t\t\t/** @type {number} */\n\t\t\tpollInterval: 30000, // milliseconds\n\n\t\t\t/** @type {number|null} */\n\t\t\tinterval: null,\n\t\t}\n\t},\n\n\t_$icon: null,\n\n\tcomputed: {\n\t\ticonPath: function() {\n\t\t\tlet iconPath = 'notifications'\n\n\t\t\tif (this.webNotificationsGranted === null || this.notifications.length) {\n\t\t\t\tif (this.isRedThemed()) {\n\t\t\t\t\ticonPath += '-red'\n\t\t\t\t}\n\t\t\t\ticonPath += '-new'\n\t\t\t}\n\n\t\t\tif (this.invertedTheme()) {\n\t\t\t\ticonPath += '-dark'\n\t\t\t}\n\n\t\t\treturn OC.imagePath('notifications', iconPath)\n\t\t},\n\t},\n\n\tmounted: function() {\n\t\tthis._$icon = $(this.$refs.icon)\n\n\t\t// Bind the button click event\n\t\tOC.registerMenu($(this.$refs.button), $(this.$refs.container), undefined, true)\n\n\t\tthis.checkWebNotificationPermissions()\n\n\t\t// Initial call to the notification endpoint\n\t\tthis._fetch()\n\n\t\t// Setup the background checker\n\t\tthis.setupBackgroundFetcher()\n\n\t\tsubscribe('networkOffline', () => {\n\t\t\tthis._shutDownNotifications(true)\n\t\t})\n\t\tsubscribe('networkOnline', () => {\n\t\t\tthis._fetch()\n\t\t\tthis.setupBackgroundFetcher()\n\t\t})\n\t},\n\n\tupdated: function() {\n\t\tthis._$icon.attr('src', this.iconPath)\n\n\t\tif (!this.hadNotifications && this.notifications.length) {\n\t\t\tthis._$icon\n\t\t\t\t.animate({ opacity: 0.6 }, 600)\n\t\t\t\t.animate({ opacity: 1 }, 600)\n\t\t\t\t.animate({ opacity: 0.6 }, 600)\n\t\t\t\t.animate({ opacity: 1 }, 600)\n\t\t}\n\n\t\tthis.hadNotifications = this.notifications.length > 0\n\t},\n\n\tmethods: {\n\t\tsetupBackgroundFetcher() {\n\t\t\tif (OC.config.session_keepalive) {\n\t\t\t\tthis.interval = setInterval(this._backgroundFetch.bind(this), this.pollInterval)\n\t\t\t}\n\t\t},\n\n\t\tonDismissAll: function() {\n\t\t\taxios\n\t\t\t\t.delete(OC.linkToOCS('apps/notifications/api/v2', 2) + 'notifications')\n\t\t\t\t.then(() => {\n\t\t\t\t\tthis.notifications = []\n\t\t\t\t})\n\t\t\t\t.catch(() => {\n\t\t\t\t\tOC.Notification.showTemporary(t('notifications', 'Failed to dismiss all notifications'))\n\t\t\t\t})\n\t\t},\n\t\tonRemove: function(index) {\n\t\t\tthis.notifications.splice(index, 1)\n\t\t},\n\n\t\tinvertedTheme: function() {\n\t\t\treturn OCA.Theming && OCA.Theming.inverted\n\t\t},\n\n\t\tisRedThemed: function() {\n\t\t\tif (OCA.Theming && OCA.Theming.color) {\n\t\t\t\tconst hsl = this.rgbToHsl(OCA.Theming.color.substring(1, 3),\n\t\t\t\t\tOCA.Theming.color.substring(3, 5),\n\t\t\t\t\tOCA.Theming.color.substring(5, 7))\n\t\t\t\tconst h = hsl[0] * 360\n\t\t\t\treturn (h >= 330 || h <= 15) && hsl[1] > 0.7 && (hsl[2] > 0.1 || hsl[2] < 0.6)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\n\t\trgbToHsl: function(r, g, b) {\n\t\t\tr = parseInt(r, 16) / 255; g = parseInt(g, 16) / 255; b = parseInt(b, 16) / 255\n\t\t\tconst max = Math.max(r, g, b); const min = Math.min(r, g, b)\n\t\t\tlet h; let s; const l = (max + min) / 2\n\n\t\t\tif (max === min) {\n\t\t\t\th = s = 0\n\t\t\t} else {\n\t\t\t\tconst d = max - min\n\t\t\t\ts = l > 0.5 ? d / (2 - max - min) : d / (max + min)\n\t\t\t\tswitch (max) {\n\t\t\t\tcase r: h = (g - b) / d + (g < b ? 6 : 0); break\n\t\t\t\tcase g: h = (b - r) / d + 2; break\n\t\t\t\tcase b: h = (r - g) / d + 4; break\n\t\t\t\t}\n\t\t\t\th /= 6\n\t\t\t}\n\n\t\t\treturn [h, s, l]\n\t\t},\n\n\t\t/**\n\t\t\t * Performs the AJAX request to retrieve the notifications\n\t\t\t */\n\t\t_fetch: function() {\n\t\t\tlet requestConfig = {}\n\t\t\tif (this.lastETag) {\n\t\t\t\trequestConfig = {\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t'If-None-Match': this.lastETag,\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t}\n\n\t\t\taxios\n\t\t\t\t.get(OC.linkToOCS('apps/notifications/api/v2', 2) + 'notifications', requestConfig)\n\t\t\t\t.then(response => {\n\t\t\t\t\tif (response.status === 204) {\n\t\t\t\t\t\t// 204 No Content - Intercept when no notifiers are there.\n\t\t\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else if (response.data !== undefined && response.data.ocs !== undefined && response.data.ocs.data !== undefined && Array.isArray(response.data.ocs.data)) {\n\t\t\t\t\t\tthis.lastETag = response.headers.etag\n\t\t\t\t\t\tthis.notifications = response.data.ocs.data\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.info('data.ocs.data is undefined or not an array')\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._setPollingInterval(30000)\n\t\t\t\t})\n\t\t\t\t.catch(err => {\n\t\t\t\t\tif (!err.response) {\n\t\t\t\t\t\tconsole.info('No response received, retrying')\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else if (err.response.status === 304) {\n\t\t\t\t\t\t// 304 - Not modified\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else if (err.response.status === 503) {\n\t\t\t\t\t\t// 503 - Maintenance mode\n\t\t\t\t\t\tconsole.info('Slowing down notifications: instance is in maintenance mode.')\n\t\t\t\t\t} else if (err.response.status === 404) {\n\t\t\t\t\t\t// 404 - App disabled\n\t\t\t\t\t\tconsole.info('Shutting down notifications: app is disabled.')\n\t\t\t\t\t\tthis._shutDownNotifications(false)\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.info('Slowing down notifications: [' + err.response.status + '] ' + err.response.statusText)\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t\t})\n\t\t},\n\n\t\t_backgroundFetch: function() {\n\t\t\tthis.backgroundFetching = true\n\t\t\tthis._fetch()\n\t\t},\n\n\t\t_setPollingInterval(pollInterval) {\n\t\t\tif (pollInterval === this.pollInterval) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.interval) {\n\t\t\t\twindow.clearInterval(this.interval)\n\t\t\t\tthis.interval = null\n\t\t\t}\n\n\t\t\tthis.pollInterval = pollInterval\n\t\t\tthis.setupBackgroundFetcher()\n\t\t},\n\n\t\t/**\n\t\t * The app was disabled or has no notifiers, so we can stop polling\n\t\t * And hide the UI as well\n\t\t * @param {Boolean} temporary If false, the notification bell will be hidden\n\t\t */\n\t\t_shutDownNotifications: function(temporary) {\n\t\t\tif (this.interval) {\n\t\t\t\twindow.clearInterval(this.interval)\n\t\t\t\tthis.interval = null\n\t\t\t}\n\t\t\tthis.shutdown = !temporary\n\t\t},\n\n\t\t/**\n\t\t * Check if we can do web notifications\n\t\t */\n\t\tcheckWebNotificationPermissions: function() {\n\t\t\tif (!('Notification' in window)) {\n\t\t\t\tconsole.info('Browser does not support notifications')\n\t\t\t\tthis.webNotificationsGranted = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (window.Notification.permission === 'granted') {\n\t\t\t\tconsole.debug('Notifications permissions granted')\n\t\t\t\tthis.webNotificationsGranted = true\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (window.Notification.permission === 'denied') {\n\t\t\t\tconsole.debug('Notifications permissions denied')\n\t\t\t\tthis.webNotificationsGranted = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconsole.info('Notifications permissions not yet requested')\n\t\t},\n\n\t\t/**\n\t\t * Check if we can do web notifications\n\t\t */\n\t\trequestWebNotificationPermissions: async function() {\n\t\t\tif (this.webNotificationsGranted !== null) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconsole.info('Requesting notifications permissions')\n\t\t\twindow.Notification.requestPermission()\n\t\t\t\t.then((permissions) => {\n\t\t\t\t\tthis.webNotificationsGranted = permissions === 'granted'\n\t\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style scoped>\n\t.fade-enter-active,\n\t.fade-leave-active,\n\t.fade-collapse-enter-active,\n\t.fade-collapse-leave-active {\n\t\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\n\t}\n\t.fade-collapse-enter,\n\t.fade-collapse-leave-to {\n\t\topacity: 0;\n\t\tmax-height: 0;\n\t}\n\t.fade-enter,\n\t.fade-leave-to {\n\t\topacity: 0;\n\t}\n</style>\n","import mod from \"-!../node_modules/babel-loader/lib/index.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/babel-loader/lib/index.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=6e2a9f70&scoped=true&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6e2a9f70\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.shutdown)?_c('div',{staticClass:\"notifications\"},[_c('div',{ref:\"button\",staticClass:\"notifications-button menutoggle\",class:{ hasNotifications: _vm.notifications.length },attrs:{\"tabindex\":\"0\",\"role\":\"button\",\"aria-label\":_vm.t('notifications', 'Notifications'),\"aria-haspopup\":\"true\",\"aria-controls\":\"notification-container\",\"aria-expanded\":\"false\"},on:{\"click\":_vm.requestWebNotificationPermissions}},[_c('img',{ref:\"icon\",staticClass:\"svg\",attrs:{\"alt\":\"\",\"title\":_vm.t('notifications', 'Notifications'),\"src\":_vm.iconPath}})]),_vm._v(\" \"),_c('div',{ref:\"container\",staticClass:\"notification-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.notifications.length > 0)?_c('ul',{staticClass:\"notification-wrapper\"},[_c('transition-group',{attrs:{\"name\":\"fade-collapse\",\"tag\":\"li\"}},_vm._l((_vm.notifications),function(n,index){return _c('Notification',_vm._b({key:n.notification_id,attrs:{\"index\":index,\"notification-id\":n.notification_id,\"object-id\":n.object_id,\"object-type\":n.object_type},on:{\"remove\":_vm.onRemove}},'Notification',n,false))}),1),_vm._v(\" \"),(_vm.notifications.length > 2)?_c('li',[_c('div',{staticClass:\"dismiss-all\",on:{\"click\":_vm.onDismissAll}},[_c('span',{staticClass:\"icon icon-close svg\",attrs:{\"title\":_vm.t('notifications', 'Dismiss all notifications')}}),_vm._v(\" \"+_vm._s(_vm.t('notifications', 'Dismiss all notifications'))+\"\\n\\t\\t\\t\\t\\t\")])]):_vm._e()],1):_c('div',{staticClass:\"emptycontent\"},[_c('div',{staticClass:\"icon icon-notifications-dark\"}),_vm._v(\" \"),(_vm.webNotificationsGranted === null)?_c('h2',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('notifications', 'Requesting browser permissions to show notifications'))+\"\\n\\t\\t\\t\\t\")]):_c('h2',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('notifications', 'No notifications'))+\"\\n\\t\\t\\t\\t\")])])])],1)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2018 Joas Schilling <coding@schilljs.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\nimport App from './App'\n\nVue.prototype.t = t\nVue.prototype.n = n\nVue.prototype.OC = OC\nVue.prototype.OCA = OCA\n\nconst searchBox = document.getElementsByClassName('searchbox')\nconst notificationsBell = document.createElement('div')\nnotificationsBell.setAttribute('id', 'notifications')\n\nArray.prototype.map.call(searchBox, (el) => {\n\tif (el.nodeName !== 'FORM') {\n\t\treturn\n\t}\n\n\tel.insertAdjacentHTML('afterend', notificationsBell.outerHTML)\n})\n\nexport default new Vue({\n\tel: '#notifications',\n\tname: 'Init',\n\trender: h => h(App),\n})\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nexport default function addStylesClient (parentId, list, _isProduction, _options) {\n isProduction = _isProduction\n\n options = _options || {}\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[' + ssrIdKey + '~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n if (options.ssrId) {\n styleElement.setAttribute(ssrIdKey, obj.id)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/moment/moment.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/utils.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/exception.js","webpack:///./node_modules/@nextcloud/axios/dist/index.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/vue/dist/vue.esm.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/handlebars/runtime.js","webpack:///./node_modules/escape-html/index.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/process/browser.js","webpack:///./src/App.vue?1ea4","webpack:///./node_modules/@nextcloud/event-bus/dist/index.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/axios/lib/defaults.js","webpack:///./node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/axios/lib/core/createError.js","webpack:///./node_modules/axios/lib/core/mergeConfig.js","webpack:///./node_modules/axios/lib/cancel/Cancel.js","webpack:///./node_modules/core-js/modules/es.array.for-each.js","webpack:///./node_modules/core-js/internals/array-for-each.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/core-js/internals/internal-metadata.js","webpack:///./node_modules/core-js/internals/iterate.js","webpack:///./node_modules/core-js/internals/classof.js","webpack:///./node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/base.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/logger.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/internal/proto-access.js","webpack:///./node_modules/moment/locale/af.js","webpack:///./node_modules/moment/locale/ar.js","webpack:///./node_modules/moment/locale/ar-dz.js","webpack:///./node_modules/moment/locale/ar-kw.js","webpack:///./node_modules/moment/locale/ar-ly.js","webpack:///./node_modules/moment/locale/ar-ma.js","webpack:///./node_modules/moment/locale/ar-sa.js","webpack:///./node_modules/moment/locale/ar-tn.js","webpack:///./node_modules/moment/locale/az.js","webpack:///./node_modules/moment/locale/be.js","webpack:///./node_modules/moment/locale/bg.js","webpack:///./node_modules/moment/locale/bm.js","webpack:///./node_modules/moment/locale/bn.js","webpack:///./node_modules/moment/locale/bo.js","webpack:///./node_modules/moment/locale/br.js","webpack:///./node_modules/moment/locale/bs.js","webpack:///./node_modules/moment/locale/ca.js","webpack:///./node_modules/moment/locale/cs.js","webpack:///./node_modules/moment/locale/cv.js","webpack:///./node_modules/moment/locale/cy.js","webpack:///./node_modules/moment/locale/da.js","webpack:///./node_modules/moment/locale/de.js","webpack:///./node_modules/moment/locale/de-at.js","webpack:///./node_modules/moment/locale/de-ch.js","webpack:///./node_modules/moment/locale/dv.js","webpack:///./node_modules/moment/locale/el.js","webpack:///./node_modules/moment/locale/en-SG.js","webpack:///./node_modules/moment/locale/en-au.js","webpack:///./node_modules/moment/locale/en-ca.js","webpack:///./node_modules/moment/locale/en-gb.js","webpack:///./node_modules/moment/locale/en-ie.js","webpack:///./node_modules/moment/locale/en-il.js","webpack:///./node_modules/moment/locale/en-nz.js","webpack:///./node_modules/moment/locale/eo.js","webpack:///./node_modules/moment/locale/es.js","webpack:///./node_modules/moment/locale/es-do.js","webpack:///./node_modules/moment/locale/es-us.js","webpack:///./node_modules/moment/locale/et.js","webpack:///./node_modules/moment/locale/eu.js","webpack:///./node_modules/moment/locale/fa.js","webpack:///./node_modules/moment/locale/fi.js","webpack:///./node_modules/moment/locale/fo.js","webpack:///./node_modules/moment/locale/fr.js","webpack:///./node_modules/moment/locale/fr-ca.js","webpack:///./node_modules/moment/locale/fr-ch.js","webpack:///./node_modules/moment/locale/fy.js","webpack:///./node_modules/moment/locale/ga.js","webpack:///./node_modules/moment/locale/gd.js","webpack:///./node_modules/moment/locale/gl.js","webpack:///./node_modules/moment/locale/gom-latn.js","webpack:///./node_modules/moment/locale/gu.js","webpack:///./node_modules/moment/locale/he.js","webpack:///./node_modules/moment/locale/hi.js","webpack:///./node_modules/moment/locale/hr.js","webpack:///./node_modules/moment/locale/hu.js","webpack:///./node_modules/moment/locale/hy-am.js","webpack:///./node_modules/moment/locale/id.js","webpack:///./node_modules/moment/locale/is.js","webpack:///./node_modules/moment/locale/it.js","webpack:///./node_modules/moment/locale/it-ch.js","webpack:///./node_modules/moment/locale/ja.js","webpack:///./node_modules/moment/locale/jv.js","webpack:///./node_modules/moment/locale/ka.js","webpack:///./node_modules/moment/locale/kk.js","webpack:///./node_modules/moment/locale/km.js","webpack:///./node_modules/moment/locale/kn.js","webpack:///./node_modules/moment/locale/ko.js","webpack:///./node_modules/moment/locale/ku.js","webpack:///./node_modules/moment/locale/ky.js","webpack:///./node_modules/moment/locale/lb.js","webpack:///./node_modules/moment/locale/lo.js","webpack:///./node_modules/moment/locale/lt.js","webpack:///./node_modules/moment/locale/lv.js","webpack:///./node_modules/moment/locale/me.js","webpack:///./node_modules/moment/locale/mi.js","webpack:///./node_modules/moment/locale/mk.js","webpack:///./node_modules/moment/locale/ml.js","webpack:///./node_modules/moment/locale/mn.js","webpack:///./node_modules/moment/locale/mr.js","webpack:///./node_modules/moment/locale/ms.js","webpack:///./node_modules/moment/locale/ms-my.js","webpack:///./node_modules/moment/locale/mt.js","webpack:///./node_modules/moment/locale/my.js","webpack:///./node_modules/moment/locale/nb.js","webpack:///./node_modules/moment/locale/ne.js","webpack:///./node_modules/moment/locale/nl.js","webpack:///./node_modules/moment/locale/nl-be.js","webpack:///./node_modules/moment/locale/nn.js","webpack:///./node_modules/moment/locale/pa-in.js","webpack:///./node_modules/moment/locale/pl.js","webpack:///./node_modules/moment/locale/pt.js","webpack:///./node_modules/moment/locale/pt-br.js","webpack:///./node_modules/moment/locale/ro.js","webpack:///./node_modules/moment/locale/ru.js","webpack:///./node_modules/moment/locale/sd.js","webpack:///./node_modules/moment/locale/se.js","webpack:///./node_modules/moment/locale/si.js","webpack:///./node_modules/moment/locale/sk.js","webpack:///./node_modules/moment/locale/sl.js","webpack:///./node_modules/moment/locale/sq.js","webpack:///./node_modules/moment/locale/sr.js","webpack:///./node_modules/moment/locale/sr-cyrl.js","webpack:///./node_modules/moment/locale/ss.js","webpack:///./node_modules/moment/locale/sv.js","webpack:///./node_modules/moment/locale/sw.js","webpack:///./node_modules/moment/locale/ta.js","webpack:///./node_modules/moment/locale/te.js","webpack:///./node_modules/moment/locale/tet.js","webpack:///./node_modules/moment/locale/tg.js","webpack:///./node_modules/moment/locale/th.js","webpack:///./node_modules/moment/locale/tl-ph.js","webpack:///./node_modules/moment/locale/tlh.js","webpack:///./node_modules/moment/locale/tr.js","webpack:///./node_modules/moment/locale/tzl.js","webpack:///./node_modules/moment/locale/tzm.js","webpack:///./node_modules/moment/locale/tzm-latn.js","webpack:///./node_modules/moment/locale/ug-cn.js","webpack:///./node_modules/moment/locale/uk.js","webpack:///./node_modules/moment/locale/ur.js","webpack:///./node_modules/moment/locale/uz.js","webpack:///./node_modules/moment/locale/uz-latn.js","webpack:///./node_modules/moment/locale/vi.js","webpack:///./node_modules/moment/locale/x-pseudo.js","webpack:///./node_modules/moment/locale/yo.js","webpack:///./node_modules/moment/locale/zh-cn.js","webpack:///./node_modules/moment/locale/zh-hk.js","webpack:///./node_modules/moment/locale/zh-tw.js","webpack:///./node_modules/@nextcloud/moment/dist/index.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/axios/index.js","webpack:///./node_modules/axios/lib/axios.js","webpack:///./node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/axios/lib/core/InterceptorManager.js","webpack:///./node_modules/axios/lib/core/dispatchRequest.js","webpack:///./node_modules/axios/lib/core/transformData.js","webpack:///./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///./node_modules/axios/lib/core/settle.js","webpack:///./node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/axios/lib/core/buildFullPath.js","webpack:///./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///./node_modules/axios/lib/helpers/combineURLs.js","webpack:///./node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/axios/lib/helpers/cookies.js","webpack:///./node_modules/axios/lib/cancel/CancelToken.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/@nextcloud/auth/dist/index.js","webpack:///./node_modules/@nextcloud/auth/dist/requesttoken.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/@nextcloud/event-bus/dist/ProxyBus.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/semver.js","webpack:///./node_modules/@nextcloud/event-bus/dist/SimpleBus.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/core-js/internals/create-property.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/create-iterator-constructor.js","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/modules/es.map.js","webpack:///./node_modules/core-js/internals/collection.js","webpack:///./node_modules/core-js/internals/freezing.js","webpack:///./node_modules/core-js/internals/is-array-iterator-method.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/collection-strong.js","webpack:///./node_modules/core-js/internals/redefine-all.js","webpack:///./node_modules/core-js/internals/set-species.js","webpack:///./node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/@nextcloud/auth/dist/user.js","webpack:///./src/templates/file.handlebars","webpack:///./node_modules/handlebars/dist/cjs/handlebars.runtime.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/block-helper-missing.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/each.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/helper-missing.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/if.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/log.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/lookup.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/helpers/with.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/decorators.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/decorators/inline.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/internal/create-new-lookup-object.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/safe-string.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/runtime.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/internal/wrapHelper.js","webpack:///./node_modules/handlebars/dist/cjs/handlebars/no-conflict.js","webpack:///./src/templates/userLocal.handlebars","webpack:///./src/templates/userRemote.handlebars","webpack:///./src/templates/unkown.handlebars","webpack:///./src/templates/unkownLink.handlebars","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./node_modules/node-gettext/lib/gettext.js","webpack:///./node_modules/lodash.get/index.js","webpack:///./node_modules/node-gettext/lib/plurals.js","webpack:///./node_modules/@nextcloud/l10n/dist/index.js","webpack:///./src/App.vue?6107","webpack:///./src/App.vue?ed8d","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./src/Components/Action.vue","webpack:///src/Components/Action.vue","webpack:///./src/Components/Action.vue?643e","webpack:///./src/richObjectStringParser.js","webpack:///./src/Components/Notification.vue","webpack:///src/Components/Notification.vue","webpack:///./src/Components/Notification.vue?dae5","webpack:///src/App.vue","webpack:///./src/App.vue?7e76","webpack:///./src/App.vue","webpack:///./src/App.vue?66f9","webpack:///./src/Init.js","webpack:///./node_modules/vue-style-loader/lib/listToStyles.js","webpack:///./node_modules/vue-style-loader/lib/addStylesClient.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","hookCallback","some","hooks","apply","arguments","isArray","input","Array","toString","isObject","isUndefined","isNumber","isDate","Date","map","arr","fn","res","length","push","hasOwnProp","a","b","extend","valueOf","createUTC","format","locale","strict","createLocalOrUTC","utc","getParsingFlags","_pf","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","meridiem","rfc2822","weekdayMismatch","isValid","_isValid","flags","parsedParts","isNowValid","isNaN","_d","getTime","invalidWeekday","_strict","undefined","bigHour","isFrozen","createInvalid","NaN","fun","this","len","momentProperties","copyConfig","to","from","prop","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","updateInProgress","Moment","config","updateOffset","isMoment","obj","absFloor","number","Math","ceil","floor","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","array1","array2","dontConvert","min","lengthDiff","abs","diffs","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecationHandler","arg","args","slice","join","Error","stack","keys","deprecations","deprecateSimple","isFunction","Function","mergeConfigs","parentConfig","childConfig","Locale","set","aliases","addUnitAlias","unit","shorthand","lowerCase","toLowerCase","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","priorities","addUnitPriority","priority","zeroFill","targetLength","forceSign","absNumber","zerosToFill","pow","max","substr","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","addFormatToken","token","padded","ordinal","callback","func","localeData","formatMoment","expandFormat","array","match","replace","mom","output","makeFormatFunction","invalidDate","replaceLongDateFormatTokens","longDateFormat","lastIndex","test","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchWord","regexes","addRegexToken","regex","strictRegex","isStrict","getParseRegexForToken","RegExp","regexEscape","matched","p1","p2","p3","p4","tokens","addParseToken","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInYear","year","isLeapYear","y","parseTwoDigitYear","parseInt","indexOf","getSetYear","makeGetSet","keepTime","set$1","month","date","daysInMonth","modMonth","x","mod","monthsShort","months","monthsShortRegex","monthsRegex","monthsParse","MONTHS_IN_FORMAT","defaultLocaleMonths","split","defaultLocaleMonthsShort","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","setMonth","dayOfMonth","getSetMonth","defaultMonthsShortRegex","defaultMonthsRegex","computeMonthsParse","cmpLenRev","shortPieces","longPieces","mixedPieces","sort","_monthsRegex","_monthsShortRegex","_monthsStrictRegex","_monthsShortStrictRegex","createDate","h","M","ms","getFullYear","setFullYear","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","dow","doy","fwd","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","shiftWeekdays","ws","concat","weekdaysMin","weekdaysShort","weekdays","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","weekdaysParse","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","day","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","computeWeekdaysParse","minp","shortp","longp","minPieces","_weekdaysRegex","_weekdaysShortRegex","_weekdaysMinRegex","_weekdaysStrictRegex","_weekdaysShortStrictRegex","_weekdaysMinStrictRegex","hFormat","hours","lowercase","minutes","matchMeridiem","_meridiemParse","seconds","kInput","_isPm","isPM","_meridiem","pos","pos1","pos2","globalLocale","getSetHour","baseConfig","calendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","LTS","LT","L","LL","LLL","LLLL","dayOfMonthOrdinalParse","relativeTime","future","past","ss","mm","hh","dd","MM","yy","meridiemParse","locales","localeFamilies","normalizeLocale","loadLocale","oldLocale","_abbr","getSetGlobalLocale","e","values","data","getLocale","defineLocale","abbr","_config","parentLocale","forEach","names","j","next","chooseLocale","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","defaults","configFromArray","currentDate","expectedWeekday","yearToUse","nowValue","now","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","currentDateArray","w","weekYear","temp","weekdayOverflow","GG","W","E","createLocal","_week","curWeek","gg","_dayOfYear","dayOfYearFromWeekInfo","_nextDay","getDay","setUTCMinutes","getUTCMinutes","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","configFromISO","allowTime","dateFormat","timeFormat","tzFormat","string","exec","configFromStringAndFormat","untruncateYear","yearStr","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","configFromRFC2822","monthStr","dayStr","hourStr","minuteStr","secondStr","result","parsedArray","weekdayStr","parsedInput","checkWeekday","obsOffset","militaryOffset","numOffset","hm","calculateOffset","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","hour","isPm","meridiemHour","meridiemFixWrap","prepareConfig","preparse","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromStringAndArray","createFromInputFallback","configFromString","minute","second","millisecond","configFromObject","configFromInput","isUTC","getOwnPropertyNames","k","isObjectEmpty","add","prototypeMin","other","prototypeMax","pickBy","moments","ordering","Duration","duration","years","quarters","quarter","weeks","isoWeek","days","milliseconds","unitHasDecimal","parseFloat","isDurationValid","_milliseconds","_days","_months","_data","_bubble","isDuration","absRound","round","offset","separator","utcOffset","sign","offsetFromString","chunkOffset","matcher","matches","parts","cloneWithOffset","model","diff","clone","setTime","local","getDateOffset","getTimezoneOffset","isUtc","aspNetRegex","isoRegex","createDuration","ret","diffRes","base","parseIso","isBefore","positiveMomentsDifference","inp","isAfter","createAdder","direction","period","tmp","addSubtract","isAdding","invalid","subtract","monthDiff","wholeMonthDiff","anchor","newLocaleData","defaultFormat","defaultFormatUtc","lang","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","addWeekYearFormatToken","getSetWeekYearHelper","weeksTarget","setWeekAll","dayOfYearData","isoWeekYear","_dayOfMonthOrdinalParse","_ordinalParse","_dayOfMonthOrdinalParseLenient","getSetDayOfMonth","getSetMinute","getSetSecond","parseMs","getSetMillisecond","proto","preParsePostFormat","time","formats","sod","startOf","calendarFormat","asFloat","that","zoneDelta","endOf","startOfDate","isoWeekday","inputString","postformat","withoutSuffix","humanize","fromNow","toNow","invalidAt","localInput","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","parsingFlags","prioritized","unitsObj","u","getPrioritizedUnits","toArray","toObject","toDate","toISOString","keepOffset","inspect","zone","isLocal","prefix","suffix","toJSON","unix","creationData","isoWeeks","weekInfo","isoWeeksInYear","parseWeekday","parseIsoWeekday","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","parseZone","tZone","hasAlignedHourOffset","isDST","isUtcOffset","zoneAbbr","zoneName","dates","isDSTShifted","_isDSTShifted","proto$1","get$1","index","field","setter","listMonthsImpl","out","listWeekdaysImpl","localeSorted","shift","_calendar","_longDateFormat","formatUpper","toUpperCase","_invalidDate","_ordinal","isFuture","_relativeTime","pastFuture","source","isFormat","_monthsShort","_monthsParseExact","firstDayOfYear","firstDayOfWeek","_weekdays","_weekdaysMin","_weekdaysShort","_weekdaysParseExact","_fullWeekdaysParse","charAt","isLower","langData","mathAbs","addSubtract$1","absCeil","daysToMonths","monthsToDays","makeAs","alias","as","asMilliseconds","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","makeGetter","thresholds","substituteTimeAgo","abs$1","toISOString$1","Y","D","toFixed","total","totalSign","ymSign","daysSign","hmsSign","proto$2","monthsFromDays","withSuffix","posNegDuration","relativeTime$1","toIsoString","version","updateLocale","tmpLocale","relativeTimeRounding","roundingFunction","relativeTimeThreshold","threshold","limit","myMoment","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","DATE","TIME","TIME_SECONDS","TIME_MS","WEEK","MONTH","factory","it","check","globalThis","window","self","global","shared","has","uid","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","error","isArrayBuffer","isBuffer","constructor","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","navigator","product","document","merge","assignValue","deepMerge","thisArg","trim","str","escapeExpression","toHTML","possible","badChars","escapeChar","isEmpty","createFrame","frame","_parent","blockParams","params","ids","path","appendContextPath","contextPath","id","escape","chr","fails","DESCRIPTORS","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","f","O","P","Attributes","TypeError","definePropertyModule","createPropertyDescriptor","g","String","errorProps","Exception","message","node","loc","line","endLineNumber","column","endColumn","start","end","idx","captureStackTrace","lineNumber","nop","default","_axios","_auth","client","headers","requesttoken","getRequestToken","cancelableClient","assign","CancelToken","isCancel","onRequestTokenUpdate","_default","getOwnPropertyDescriptor","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","options","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","emptyObject","freeze","isUndef","v","isDef","isTrue","isPrimitive","_toString","isPlainObject","isRegExp","isValidArrayIndex","isPromise","then","catch","JSON","stringify","toNumber","makeMap","expectsLowerCase","list","isBuiltInTag","isReservedAttribute","remove","item","splice","hasOwn","cached","cache","camelizeRE","camelize","_","capitalize","hyphenateRE","hyphenate","ctx","boundFn","_length","_from","noop","no","identity","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","every","keysA","keysB","looseIndexOf","once","called","ASSET_TYPES","LIFECYCLE_HOOKS","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","async","_lifecycleHooks","unicodeRegExp","isReserved","charCodeAt","def","writable","configurable","bailRE","_isServer","hasProto","inBrowser","inWeex","WXEnvironment","platform","weexPlatform","UA","userAgent","isIE","isIE9","isEdge","isIOS","isFF","nativeWatch","watch","supportsPassive","opts","addEventListener","isServerRendering","env","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","Ctor","_Set","hasSymbol","Reflect","ownKeys","Set","clear","Dep","subs","addSub","sub","removeSub","depend","addDep","notify","update","targetStack","pushTarget","popTarget","pop","VNode","tag","children","text","elm","context","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","parent","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","method","original","inserted","ob","__ob__","observeArray","dep","arrayKeys","shouldObserve","toggleObserving","Observer","vmCount","src","__proto__","protoAugment","copyAugment","walk","observe","asRootData","isExtensible","_isVue","defineReactive$$1","customSetter","shallow","childOb","dependArray","newVal","del","items","strats","mergeData","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","dedupeHooks","mergeAssets","hook","type","key$1","props","methods","inject","computed","provide","defaultStrat","mergeOptions","normalizeProps","normalized","normalizeInject","dirs","directives","def$$1","normalizeDirectives","_base","extends","mixins","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","absent","booleanIndex","getTypeIndex","Boolean","stringIndex","$options","_props","getType","getPropDefaultValue","prevShouldObserve","isSameType","expectedTypes","handleError","err","info","cur","$parent","errorCaptured","globalHandleError","invokeWithErrorHandling","handler","_handled","logError","timerFunc","isUsingMicroTask","callbacks","pending","flushCallbacks","copies","Promise","resolve","setTimeout","MutationObserver","setImmediate","counter","observer","textNode","createTextNode","characterData","nextTick","cb","_resolve","seenObjects","traverse","_traverse","seen","isA","depId","normalizeEvent","passive","once$$1","capture","createFnInvoker","fns","invoker","arguments$1","updateListeners","on","oldOn","remove$$1","createOnceHandler","old","event","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","hash","altKey","preserve","normalizeChildren","normalizeArrayChildren","nestedIndex","last","isTextNode","_isVList","resolveInject","provideKey","_provided","provideDefault","resolveSlots","slots","attrs","slot","name$1","isWhitespace","normalizeScopedSlots","normalSlots","prevSlots","hasNormalSlots","isStable","$stable","$key","_normalized","$hasNormal","normalizeScopedSlot","key$2","proxyNormalSlot","proxy","renderList","render","iterator","done","renderSlot","fallback","bindObject","nodes","scopedSlotFn","$scopedSlots","$slots","$createElement","resolveFilter","isKeyNotMatch","expect","actual","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","loop","domProps","camelizedKey","hyphenatedKey","$event","renderStatic","isInFor","_staticTrees","tree","markStatic","staticRenderFns","_renderProxy","markOnce","markStaticNode","bindObjectListeners","existing","ours","resolveScopedSlots","hasDynamicKeys","contentHashKey","bindDynamicKeys","baseObj","prependModifier","symbol","installRenderHelpers","_o","_n","_s","_t","_q","_m","_k","_b","_v","_e","_u","_g","_p","FunctionalRenderContext","contextVm","this$1","_original","isCompiled","_compiled","needNormalization","listeners","injections","scopedSlots","_scopeId","_c","createElement","cloneAndMarkFunctionalResult","renderContext","mergeProps","componentVNodeHooks","init","hydrating","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","inlineTemplate","createComponentInstanceForVnode","activeInstance","$mount","oldVnode","parentVnode","renderChildren","newScopedSlots","oldScopedSlots","hasDynamicScopedSlot","needsForceUpdate","_renderChildren","$vnode","_vnode","$attrs","$listeners","propKeys","_propKeys","oldListeners","_parentListeners","updateComponentListeners","$forceUpdate","updateChildComponent","insert","_isMounted","callHook","_inactive","activatedChildren","activateChildComponent","destroy","deactivateChildComponent","direct","_directInactive","isInInactiveTree","$children","$destroy","hooksToMerge","createComponent","baseCtor","cid","errorComp","resolved","owner","currentRenderingInstance","owners","loading","loadingComp","sync","timerLoading","timerTimeout","$on","forceRender","renderCompleted","clearTimeout","ensureCtor","reject","reason","component","delay","timeout","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","transformModel","extractPropsFromVNodeData","functional","vnodes","createFunctionalComponent","nativeOn","abstract","toMerge","_merged","mergeHook$1","installComponentHooks","f1","f2","normalizationType","alwaysNormalize","is","simpleNormalizeChildren","pre","applyNS","force","style","class","registerDeepBindings","_createElement","comp","getFirstComponentChild","remove$1","$off","_target","onceHandler","setActiveInstance","prevActiveInstance","handlers","_hasHookEvent","$emit","queue","waiting","flushing","currentFlushTimestamp","getNow","createEvent","timeStamp","flushSchedulerQueue","watcher","before","run","activatedQueue","updatedQueue","callActivatedHooks","_watcher","callUpdatedHooks","emit","uid$2","Watcher","expOrFn","isRenderWatcher","_watchers","deep","user","lazy","active","dirty","deps","newDeps","depIds","newDepIds","expression","segments","parsePath","cleanupDeps","queueWatcher","oldValue","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","sourceKey","initState","propsOptions","initProps","initMethods","getData","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","createWatcher","initWatch","shouldCache","createComputedGetter","createGetterInvoker","$watch","uid$3","super","superOptions","modifiedOptions","modified","latest","sealed","sealedOptions","resolveModifiedOptions","extendOptions","components","Vue","_init","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","Comp","initProps$1","initComputed$1","mixin","use","getComponentName","pattern","pruneCache","keepAliveInstance","filter","cachedNode","pruneCacheEntry","current","cached$$1","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","_self","$root","$refs","initLifecycle","_events","initEvents","parentData","initRender","initInjections","initProvide","el","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","$once","i$1","cbs","eventsMixin","_update","prevEl","$el","prevVnode","restoreActiveInstance","__patch__","__vue__","lifecycleMixin","$nextTick","_render","ref","renderMixin","patternTypes","builtInComponents","KeepAlive","include","exclude","Number","created","destroyed","mounted","configDef","util","defineReactive","delete","observable","plugin","installedPlugins","_installedPlugins","unshift","install","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","ssrContext","acceptValue","attr","isEnumeratedAttr","isValidContentEditableValue","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","isFalsyAttrValue","genClassForVnode","parentNode","childNode","mergeClassData","staticClass","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","query","selected","querySelector","nodeOps","tagName","multiple","setAttribute","createElementNS","namespace","createComment","insertBefore","newNode","referenceNode","removeChild","appendChild","nextSibling","setTextContent","textContent","setStyleScope","scopeId","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","dir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldArg","callHook$1","componentUpdated","callInsert","emptyModifiers","modifiers","getRawDirName","rawName","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","removeAttribute","baseSetAttr","convertEnumeratedValue","setAttributeNS","__ieph","blocker","stopImmediatePropagation","removeEventListener","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","index$1","expressionPos","expressionEndPos","klass","validDivisionCharRE","parseFilters","exp","prev","filters","inSingle","inDouble","inTemplateString","inRegex","curly","square","paren","lastFilterIndex","pushFilter","wrapFilter","baseWarn","range","pluckModuleFunction","addProp","dynamic","rangeSetItem","plain","addAttr","dynamicAttrs","addRawAttr","attrsMap","attrsList","addDirective","isDynamicArg","prependModifierMarker","addHandler","important","events","right","middle","native","nativeEvents","newHandler","getBindingAttr","getStatic","dynamicValue","getAndRemoveAttr","staticValue","removeFromMap","getAndRemoveAttrByRegex","genComponentModel","valueExpression","assignment","genAssignmentCode","lastIndexOf","eof","isStringStart","parseString","parseBracket","parseModel","inBracket","stringQuote","target$1","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","currentTarget","ownerDocument","updateDOMListeners","change","normalizeEvents","svgContainer","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","innerHTML","firstChild","checkVal","composing","notInFocus","activeElement","isNotInFocusAndDirty","_vModifiers","isDirtyWithModifiers","parseStyleText","cssText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","normalizedName","normalize","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","whitespaceRE","addClass","classList","getAttribute","removeClass","tar","resolveTransition","css","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","requestAnimationFrame","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","onEnd","transformRE","styles","getComputedStyle","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","nodeType","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","patch","backend","removeNode","createElm","insertedVnodeQueue","parentElm","refElm","nested","ownerArray","isReactivated","initComponent","innerNode","activate","reactivateComponent","setScope","createChildren","invokeCreateHooks","pendingInsert","isPatchable","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","childElm","createRmCb","findIdxInOld","oldCh","patchVnode","removeOnly","hydrate","newCh","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","updateChildren","postpatch","invokeInsertHook","initial","isRenderedModule","inVPre","hasChildNodes","childrenMatch","fullInvoke","isInitialPatch","isRealElement","hasAttribute","oldElm","patchable","i$2","createPatchFunction","vmodel","trigger","directive","binding","_vOptions","setSelected","getValue","onCompositionStart","onCompositionEnd","prevOptions","curOptions","hasNoMatchingOption","actuallySetSelected","isMultiple","option","selectedIndex","initEvent","dispatchEvent","locateNode","platformDirectives","transition$$1","originalDisplay","__vOriginalDisplay","display","unbind","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","rawChild","isNotTextNode","isVShowDirective","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","getBoundingClientRect","applyTranslation","oldPos","dx","left","dy","top","moved","transform","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","beforeMount","kept","prevChildren","rawChildren","transitionData","removed","c$1","updated","hasMove","_reflow","body","offsetHeight","propertyName","_hasMove","cloneNode","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","defaultTagRE","regexEscapeRE","buildRegex","delimiters","open","close","klass$1","staticKeys","transformNode","classBinding","genData","decoder","style$1","styleBinding","he","html","isUnaryTag","canBeLeftOpenTag","isNonPhrasingTag","attribute","dynamicArgAttribute","ncname","qnameCapture","startTagOpen","startTagClose","endTag","doctype","comment","conditionalComment","isPlainTextElement","reCache","decodingMap","encodedAttr","encodedAttrWithNewLines","isIgnoreNewlineTag","shouldIgnoreFirstNewline","decodeAttr","shouldDecodeNewlines","re","warn$2","transforms","preTransforms","postTransforms","platformIsPreTag","platformMustUseProp","platformGetTagNamespace","onRE","dirRE","forAliasRE","forIteratorRE","stripParensRE","dynamicArgRE","argRE","bindRE","modifierRE","slotRE","lineBreakRE","whitespaceRE$1","decodeHTMLCached","createASTElement","makeAttrsMap","rawAttrsMap","parse","template","isPreTag","root","currentParent","preserveWhitespace","whitespaceOption","whitespace","inPre","closeElement","element","trimEndingWhitespace","processed","processElement","if","elseif","else","addIfCondition","block","forbidden","findPrevElement","slotScope","slotTarget","lastNode","lastTag","expectHTML","isUnaryTag$$1","canBeLeftOpenTag$$1","endTagLength","stackedTag","reStackedTag","rest$1","all","chars","parseEndTag","textEnd","commentEnd","shouldKeepComment","substring","advance","conditionalEnd","doctypeMatch","endTagMatch","curIndex","startTagMatch","parseStartTag","handleStartTag","rest","unarySlash","unary","shouldDecodeNewlinesForHref","lowerCasedTag","lowerCasedTagName","parseHTML","comments","outputSourceRange","start$1","ieNSBug","ieNSPrefix","guardIESVGBug","processPre","processRawAttrs","processFor","processIf","processOnce","end$1","tagRE","tokenValue","rawTokens","parseText","processKey","for","checkInFor","processRef","slotTargetDynamic","getRawBindingAttr","slotBinding","getSlotName","slotBinding$1","ref$1","dynamic$1","slotContainer","processSlotContent","slotName","processComponent","syncGen","isDynamic","hasBindings","parseModifiers","camel","argMatch","processAttrs","inMatch","iteratorMatch","iterator1","iterator2","parseFor","condition","ifConditions","cloneASTElement","modules$1","preTransformNode","typeBinding","ifCondition","ifConditionExtra","hasElse","elseIfCondition","branch0","branch1","branch2","isStaticKey","isPlatformReservedTag","baseOptions","_warn","code","genSelect","valueBinding","trueValueBinding","falseValueBinding","genCheckboxModel","genRadioModel","needCompositionGuard","genDefaultModel","reduce","genStaticKeys","genStaticKeysCached","optimize","markStatic$1","static","isDirectChildOfTemplateFor","l$1","markStaticRoots","staticInFor","staticRoot","fnExpRE","fnInvokeRE","simplePathRE","esc","tab","space","up","down","keyNames","genGuard","modifierCode","stop","prevent","ctrl","alt","meta","genHandlers","staticHandlers","dynamicHandlers","handlerCode","genHandler","isMethodPath","isFunctionExpression","isFunctionInvocation","genModifierCode","keyModifier","genFilterCode","genKeyFilter","keyVal","keyCode","keyName","baseDirectives","wrapListeners","wrapData","cloak","CodegenState","dataGenFns","maybeComponent","onceId","generate","ast","state","genElement","staticProcessed","genStatic","onceProcessed","genOnce","forProcessed","genFor","ifProcessed","genIf","genChildren","genProps","bind$$1","genSlot","componentName","genData$2","genComponent","originalPreState","altGen","altEmpty","genIfConditions","conditions","genTernaryExp","altHelper","needRuntime","hasRuntime","gen","genDirectives","containsSlotChild","needsKey","generatedSlots","genScopedSlot","inlineRenderFns","genInlineTemplate","isLegacySyntax","reverseProxy","checkSkip","altGenElement","altGenNode","el$1","normalizationType$1","needsNormalization","getNormalizationType","genNode","genComment","transformSpecialNewlines","genText","staticProps","dynamicProps","createFunction","errors","createCompileToFunctionFn","compile","compiled","fnGenErrors","baseCompile","div","finalOptions","tips","tip","compileToFunctions","getShouldDecode","href","idToTemplate","mount","documentElement","outerHTML","container","getOuterHTML","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","unsafe","simple","matchHtmlRegExp","bitmap","IndexedObject","requireObjectCoercible","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","store","wmget","wmhas","wmset","metadata","STATE","getterFor","TYPE","aFunction","variable","toInteger","argument","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","defaultClearTimeout","runTimeout","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","title","browser","argv","versions","addListener","off","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","content","locals","subscribe","bus","unsubscribe","_ProxyBus","_SimpleBus","OC","_eventBus","_nc_event_bus","ProxyBus","SimpleBus","classof","propertyIsEnumerable","PREFERRED_STRING","postfix","random","activeXDocument","enumBugKeys","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","parentWindow","NullProtoObjectViaActiveX","contentWindow","F","Properties","$","createIteratorConstructor","getPrototypeOf","setPrototypeOf","setToStringTag","wellKnownSymbol","IS_PURE","Iterators","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","ITERATOR","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","TO_STRING_TAG","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","TAG","propertyIsEnumerableModule","toIndexedObject","nativeGetOwnPropertyDescriptor","nativePropertyIsEnumerable","NASHORN_BUG","1","V","EXISTS","functionToString","copyright","getOwnPropertySymbols","replacement","feature","detection","POLYFILL","NATIVE","internalObjectKeys","utils","encode","encodeURIComponent","url","paramsSerializer","serializedParams","hashmarkIndex","__CANCEL__","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","adapter","XMLHttpRequest","transformRequest","transformResponse","xsrfCookieName","xsrfHeaderName","maxContentLength","validateStatus","status","common","settle","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","requestData","requestHeaders","request","auth","username","password","Authorization","btoa","fullPath","baseURL","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onabort","onerror","ontimeout","timeoutErrorMessage","cookies","xsrfValue","withCredentials","read","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancelToken","promise","cancel","abort","send","enhanceError","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","axiosKeys","otherKeys","Cancel","$forEach","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","callbackfn","toLength","arraySpeciesCreate","createMethod","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","specificCreate","boundFunction","find","findIndex","SPECIES","originalArray","C","thrower","METHOD_NAME","ACCESSORS","argument0","argument1","V8_VERSION","foo","v8","addToUnscopables","defineIterator","setInternalState","iterated","kind","Arguments","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","aPossiblePrototype","CORRECT_SETTER","FREEZING","METADATA","setMetadata","objectID","weakData","REQUIRED","fastKey","getWeakData","onFreeze","isArrayIteratorMethod","getIteratorMethod","callWithSafeIterationClosing","Result","stopped","iterable","AS_ENTRIES","IS_ITERATOR","iterFn","step","TO_STRING_TAG_SUPPORT","classofRaw","CORRECT_ARGUMENTS","tryGet","callee","Constructor","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","_interopRequireDefault","HandlebarsEnvironment","_utils","_exception2","_helpers","_decorators","_logger2","_internalProtoAccess","VERSION","COMPILER_REVISION","LAST_COMPATIBLE_COMPILER_REVISION","REVISION_CHANGES","2","3","4","5","6","7","8","helpers","partials","decorators","registerDefaultHelpers","registerDefaultDecorators","logger","log","registerHelper","unregisterHelper","registerPartial","partial","unregisterPartial","registerDecorator","unregisterDecorator","resetLoggedPropertyAccesses","resetLoggedProperties","instance","_helpersBlockHelperMissing2","_helpersEach2","_helpersHelperMissing2","_helpersIf2","_helpersLog2","_helpersLookup2","_helpersWith2","moveHelperToHooks","helperName","keepHelper","methodMap","level","lookupLevel","levelMap","_len","_key","createProtoAccessControl","runtimeOptions","defaultMethodWhiteList","defaultPropertyWhiteList","properties","whitelist","_createNewLookupObject","createNewLookupObject","allowedProtoProperties","defaultValue","allowProtoPropertiesByDefault","allowedProtoMethods","allowProtoMethodsByDefault","resultIsAllowed","protoAccessControl","checkWhiteList","loggedProperties","newObj","_interopRequireWildcard","protoAccessControlForType","logUnexpecedPropertyAccessOnce","moment","symbolMap","numberMap","pluralForm","plurals","pluralize","weekdaysParseExact","suffixes","70","80","20","50","100","9","10","30","60","90","relativeTimeWithPlural","num","forms","standalone","lastDigit","last2Digits","relativeTimeWithMutation","mutationTable","softMutation","mutation","lastNumber","translate","monthsParseExact","ll","lll","llll","plural","monthsStrictRegex","monthsShortStrictRegex","longMonthsParse","shortMonthsParse","processRelativeTime","monthsNominativeEl","monthsGenitiveEl","momentToFormat","_monthsGenitiveEl","_monthsNominativeEl","calendarEl","_calendarEl","monthsShortDot","numbersPast","numbersFuture","verbalNumber","monthsShortWithDots","monthsShortWithoutDots","weekEndings","0","40","isUpper","eifelerRegelAppliesToNumber","translateSingular","special","relativeTimeWithSingular","translator","words","correctGrammaticalCase","wordKey","relativeTimeMr","monthsNominative","monthsSubjective","12","13","numbersNouns","numberNoun","hundred","ten","one","word","numberAsNoun","processHoursFunction","json","charset","Language","translations","msgid","msgstr","reference","addTranslations","setLocale","gettext","getOwnPropertyDescriptorModule","getBuiltIn","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","toAbsoluteIndex","IS_INCLUDES","fromIndex","includes","integer","objectKeys","nativeAssign","A","B","T","argumentsLength","S","Axios","mergeConfig","createInstance","defaultConfig","axios","instanceConfig","promises","spread","InterceptorManager","dispatchRequest","interceptors","chain","interceptor","fulfilled","rejected","getUri","eject","transformData","throwIfCancellationRequested","throwIfRequested","isAxiosError","description","fileName","columnNumber","isAbsoluteURL","combineURLs","requestedURL","relativeURL","ignoreDuplicateOf","parsed","originURL","msie","urlParsingNode","resolveURL","protocol","host","search","hostname","port","pathname","location","requestURL","expires","secure","cookie","toGMTString","decodeURIComponent","executor","resolvePromise","_requesttoken","_user","getCurrentUser","observers","tokenElement","getElementsByTagName","_semver","_defineProperties","packageJson","_classCallCheck","_defineProperty","getVersion","valid","major","protoProps","debug","NODE_DEBUG","SEMVER_SPEC_VERSION","MAX_SAFE_INTEGER","R","tok","NUMERICIDENTIFIER","NUMERICIDENTIFIERLOOSE","NONNUMERICIDENTIFIER","MAINVERSION","MAINVERSIONLOOSE","PRERELEASEIDENTIFIER","PRERELEASEIDENTIFIERLOOSE","PRERELEASE","PRERELEASELOOSE","BUILDIDENTIFIER","BUILD","FULLPLAIN","FULL","LOOSEPLAIN","LOOSE","GTLT","XRANGEIDENTIFIERLOOSE","XRANGEIDENTIFIER","XRANGEPLAIN","XRANGEPLAINLOOSE","XRANGE","XRANGELOOSE","COERCE","COERCERTL","LONETILDE","TILDETRIM","TILDE","TILDELOOSE","LONECARET","CARETTRIM","CARET","CARETLOOSE","COMPARATORLOOSE","COMPARATOR","COMPARATORTRIM","HYPHENRANGE","HYPHENRANGELOOSE","STAR","loose","includePrerelease","SemVer","er","minor","prerelease","build","clean","compare","compareMain","comparePre","compareIdentifiers","compareBuild","inc","release","identifier","version1","version2","eq","v1","v2","defaultResult","numeric","anum","bnum","gt","lt","neq","gte","lte","cmp","op","Comparator","semver","ANY","operator","rcompareIdentifiers","compareLoose","versionA","versionB","rcompare","rsort","Range","parseRange","isSatisfiable","comparators","remainingComparators","testComparator","otherComparator","intersects","isX","hyphenReplace","$0","fM","fm","fp","fpr","fb","tM","tm","tp","tpr","tb","testSet","allowed","satisfies","outside","hilo","gtfn","ltefn","ltfn","ecomp","high","low","comparator","rangeTmp","sameDirectionIncreasing","sameDirectionDecreasing","sameSemVer","differentDirectionsInclusive","oppositeDirectionsLessThan","oppositeDirectionsGreaterThan","comps","hr","compRe","pr","replaceCaret","replaceCarets","replaceTilde","replaceTildes","gtlt","xM","xm","xp","anyX","replaceXRange","replaceXRanges","replaceStars","parseComparator","thisComparators","rangeComparators","thisComparator","rangeComparator","toComparators","maxSatisfying","maxSV","rangeObj","minSatisfying","minSV","minVersion","minver","compver","validRange","ltr","gtr","r1","r2","coerce","rtl","Map","createProperty","arrayMethodHasSpeciesSupport","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","propertyKey","$filter","HAS_SPECIES_SUPPORT","UNSCOPABLES","ArrayPrototype","collection","collectionStrong","InternalMetadataModule","iterate","anInstance","checkCorrectnessOfIteration","inheritIfRequired","CONSTRUCTOR_NAME","wrapper","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","nativeMethod","getConstructor","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","setStrong","preventExtensions","ENTRIES","returnMethod","SAFE_CLOSING","iteratorWithReturn","SKIP_CLOSING","ITERATION_SUPPORT","Wrapper","NewTarget","NewTargetPrototype","redefineAll","setSpecies","internalStateGetterFor","first","size","define","previous","entry","getEntry","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","point","CONVERT_TO_STRING","position","codeAt","DOMIterables","COLLECTION_NAME","Collection","CollectionPrototype","ArrayIteratorMethods","ArrayValues","displayName","uidElement","displayNameElement","Handlebars","depth0","helper","alias1","nullContext","alias2","helperMissing","alias4","lookupProperty","_handlebarsSafeString2","_handlebarsException2","Utils","runtime","_handlebarsNoConflict2","hb","SafeString","VM","spec","inst","inverse","each","_exception","priorKey","execIteration","newContext","conditional","includeZero","_decoratorsInline2","_decoratorsInline","sources","checkRevision","compilerInfo","compilerRevision","currentRevision","runtimeVersions","compilerVersions","templateSpec","main","decorator","main_d","compiler","templateWasPrecompiledWithCompilerV7","lookup","depths","lambda","invokePartial","resolvePartial","extendedOptions","compilerOptions","indent","lines","programs","program","declaredBlockParams","programWrapper","wrapProgram","depth","mergeIfNeeded","param","seal","_setup","useData","useBlockParams","useDepths","executeDecorators","isTop","mergedHelpers","_internalWrapHelper","wrapHelper","passLookupPropertyOption","wrapHelpersToPassLookupProperty","usePartial","useDecorators","keepHelperInHelpers","allowCallsToHelperMissing","_child","currentPartialBlock","partialBlock","prog","currentDepths","transformOptionsFn","$Handlebars","noConflict","webpackPolyfill","paths","webpackContext","req","webpackContextResolve","Gettext","catalogs","sourceLocale","eventName","listener","eventData","setTextDomain","dnpgettext","dgettext","ngettext","msgidPlural","count","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","pluralsFunc","getLanguageCode","getComment","textdomain","setlocale","addTextdomain","reIsDeepProp","reIsPlainProp","reLeadingDot","rePropName","reEscapeChar","reIsHostCtor","freeGlobal","freeSelf","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","objectToString","reIsNative","getNative","nativeCreate","symbolProto","symbolToString","Hash","ListCache","MapCache","assocIndexOf","baseGet","isSymbol","isKey","stringToPath","toKey","baseIsNative","isHostObject","toSource","getMapData","__data__","memoize","baseToString","quote","resolver","memoized","Cache","isObjectLike","ach","examples","sample","nplurals","pluralsText","af","ak","am","an","ar","arn","ay","az","be","bg","bn","bo","br","brx","bs","ca","cgg","cs","csb","cy","da","de","doi","dz","en","eo","es","et","eu","fa","ff","fi","fil","fo","fr","fur","fy","ga","gd","gl","gu","gun","ha","hi","hne","hu","hy","ja","jbo","jv","ka","kk","km","kn","ko","ku","kw","ky","lb","ln","lo","lv","mai","mfe","mg","mi","mk","ml","mn","mni","mnk","mr","mt","my","nah","nap","nb","ne","nl","nn","nso","oc","or","pa","pap","pl","pms","ps","pt","ro","ru","rw","sah","sat","sco","sd","se","si","sk","sl","so","son","sq","sr","su","sv","sw","ta","te","tg","th","ti","tk","tr","tt","ug","uk","ur","uz","vi","wa","wo","yo","zh","getLanguage","app","vars","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","___CSS_LOADER_API_IMPORT___","useSourceMap","cssMapping","sourceMapping","sourceMap","base64","unescape","sourceURLs","sourceRoot","cssWithMappingToString","mediaQuery","dedupe","alreadyImportedModules","Timeout","clearFn","_id","_clearFn","scope","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","clearImmediate","registerImmediate","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","port2","script","attachEvent","task","normalizeComponent","scriptExports","functionalTemplate","injectStyles","moduleIdentifier","shadowMode","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","_injectStyles","originalRender","beforeCreate","_h","primary","link","onClickActionButton","label","fileTemplate","require","userLocalTemplate","userRemoteTemplate","unknownTemplate","unknownLinkTemplate","parseMessage","parameters","escapeHTML","parameter","parseParameter","parseFileParameter","server","lastSlashPosition","firstSlashPosition","_vm","notificationId","timestamp","absoluteDate","relativeDate","onDismissNotification","icon","renderedSubject","onClickMessage","collapsed","isCollapsedMessage","renderedMessage","actions","shutdown","hasNotifications","notifications","requestWebNotificationPermissions","iconPath","notification_id","object_id","object_type","onRemove","onDismissAll","webNotificationsGranted","OCA","searchBox","getElementsByClassName","notificationsBell","nodeName","insertAdjacentHTML","App","listToStyles","parentId","newStyles","part","media","hasDocument","DEBUG","stylesInDom","head","singletonElement","singletonCounter","isProduction","isOldIE","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","addStyle","createStyleElement","styleElement","styleIndex","applyToSingletonTag","applyToTag","textStore","replaceText","styleSheet","cssNode","ssrId"],"mappings":"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","file":"notifications.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/js/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 308);\n","//! moment.js\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\n var hookCallback;\n\n function hooks () {\n return hookCallback.apply(null, arguments);\n }\n\n // This is done to register the method called with moment()\n // without creating circular dependencies.\n function setHookCallback (callback) {\n hookCallback = callback;\n }\n\n function isArray(input) {\n return input instanceof Array || Object.prototype.toString.call(input) === '[object Array]';\n }\n\n function isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return input != null && Object.prototype.toString.call(input) === '[object Object]';\n }\n\n function isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return (Object.getOwnPropertyNames(obj).length === 0);\n } else {\n var k;\n for (k in obj) {\n if (obj.hasOwnProperty(k)) {\n return false;\n }\n }\n return true;\n }\n }\n\n function isUndefined(input) {\n return input === void 0;\n }\n\n function isNumber(input) {\n return typeof input === 'number' || Object.prototype.toString.call(input) === '[object Number]';\n }\n\n function isDate(input) {\n return input instanceof Date || Object.prototype.toString.call(input) === '[object Date]';\n }\n\n function map(arr, fn) {\n var res = [], i;\n for (i = 0; i < arr.length; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n }\n\n function hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n }\n\n function extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n }\n\n function createUTC (input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n }\n\n function defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty : false,\n unusedTokens : [],\n unusedInput : [],\n overflow : -2,\n charsLeftOver : 0,\n nullInput : false,\n invalidMonth : null,\n invalidFormat : false,\n userInvalidated : false,\n iso : false,\n parsedDateParts : [],\n meridiem : null,\n rfc2822 : false,\n weekdayMismatch : false\n };\n }\n\n function getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n }\n\n var some;\n if (Array.prototype.some) {\n some = Array.prototype.some;\n } else {\n some = function (fun) {\n var t = Object(this);\n var len = t.length >>> 0;\n\n for (var i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n function isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m);\n var parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n });\n var isNowValid = !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid = isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n }\n else {\n return isNowValid;\n }\n }\n return m._isValid;\n }\n\n function createInvalid (flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n }\n else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n }\n\n // Plugins that add properties should also add the key here (null value),\n // so we can properly clone ourselves.\n var momentProperties = hooks.momentProperties = [];\n\n function copyConfig(to, from) {\n var i, prop, val;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentProperties.length > 0) {\n for (i = 0; i < momentProperties.length; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n }\n\n var updateInProgress = false;\n\n // Moment prototype object\n function Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n }\n\n function isMoment (obj) {\n return obj instanceof Moment || (obj != null && obj._isAMomentObject != null);\n }\n\n function absFloor (number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n // compare two arrays, return the number of differences\n function compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if ((dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n }\n\n function warn(msg) {\n if (hooks.suppressDeprecationWarnings === false &&\n (typeof console !== 'undefined') && console.warn) {\n console.warn('Deprecation warning: ' + msg);\n }\n }\n\n function deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [];\n var arg;\n for (var i = 0; i < arguments.length; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (var key in arguments[0]) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(msg + '\\nArguments: ' + Array.prototype.slice.call(args).join('') + '\\n' + (new Error()).stack);\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n }\n\n var deprecations = {};\n\n function deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n }\n\n hooks.suppressDeprecationWarnings = false;\n hooks.deprecationHandler = null;\n\n function isFunction(input) {\n return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';\n }\n\n function set (config) {\n var prop, i;\n for (i in config) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' + (/\\d{1,2}/).source);\n }\n\n function mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig), prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n }\n\n function Locale(config) {\n if (config != null) {\n this.set(config);\n }\n }\n\n var keys;\n\n if (Object.keys) {\n keys = Object.keys;\n } else {\n keys = function (obj) {\n var i, res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n }\n\n var defaultCalendar = {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n };\n\n function calendar (key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n }\n\n var defaultLongDateFormat = {\n LTS : 'h:mm:ss A',\n LT : 'h:mm A',\n L : 'MM/DD/YYYY',\n LL : 'MMMM D, YYYY',\n LLL : 'MMMM D, YYYY h:mm A',\n LLLL : 'dddd, MMMM D, YYYY h:mm A'\n };\n\n function longDateFormat (key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper.replace(/MMMM|MM|DD|dddd/g, function (val) {\n return val.slice(1);\n });\n\n return this._longDateFormat[key];\n }\n\n var defaultInvalidDate = 'Invalid date';\n\n function invalidDate () {\n return this._invalidDate;\n }\n\n var defaultOrdinal = '%d';\n var defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\n function ordinal (number) {\n return this._ordinal.replace('%d', number);\n }\n\n var defaultRelativeTime = {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n };\n\n function relativeTime (number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return (isFunction(output)) ?\n output(number, withoutSuffix, string, isFuture) :\n output.replace(/%d/i, number);\n }\n\n function pastFuture (diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n }\n\n var aliases = {};\n\n function addUnitAlias (unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n }\n\n function normalizeUnits(units) {\n return typeof units === 'string' ? aliases[units] || aliases[units.toLowerCase()] : undefined;\n }\n\n function normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n }\n\n var priorities = {};\n\n function addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n }\n\n function getPrioritizedUnits(unitsObj) {\n var units = [];\n for (var u in unitsObj) {\n units.push({unit: u, priority: priorities[u]});\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n }\n\n function zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber;\n }\n\n var formattingTokens = /(\\[[^\\[]*\\])|(\\\\)?([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}|x|X|zz?|ZZ?|.)/g;\n\n var localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;\n\n var formatFunctions = {};\n\n var formatTokenFunctions = {};\n\n // token: 'M'\n // padded: ['MM', 2]\n // ordinal: 'Mo'\n // callback: function () { this.month() + 1 }\n function addFormatToken (token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(func.apply(this, arguments), token);\n };\n }\n }\n\n function removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n }\n\n function makeFormatFunction(format) {\n var array = format.match(formattingTokens), i, length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '', i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i]) ? array[i].call(mom, format) : array[i];\n }\n return output;\n };\n }\n\n // format date using native date object\n function formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n }\n\n function expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n }\n\n var match1 = /\\d/; // 0 - 9\n var match2 = /\\d\\d/; // 00 - 99\n var match3 = /\\d{3}/; // 000 - 999\n var match4 = /\\d{4}/; // 0000 - 9999\n var match6 = /[+-]?\\d{6}/; // -999999 - 999999\n var match1to2 = /\\d\\d?/; // 0 - 99\n var match3to4 = /\\d\\d\\d\\d?/; // 999 - 9999\n var match5to6 = /\\d\\d\\d\\d\\d\\d?/; // 99999 - 999999\n var match1to3 = /\\d{1,3}/; // 0 - 999\n var match1to4 = /\\d{1,4}/; // 0 - 9999\n var match1to6 = /[+-]?\\d{1,6}/; // -999999 - 999999\n\n var matchUnsigned = /\\d+/; // 0 - inf\n var matchSigned = /[+-]?\\d+/; // -inf - inf\n\n var matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi; // +00:00 -00:00 +0000 -0000 or Z\n var matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi; // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n\n var matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/; // 123456789 123456789.123\n\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n var matchWord = /[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;\n\n var regexes = {};\n\n function addRegexToken (token, regex, strictRegex) {\n regexes[token] = isFunction(regex) ? regex : function (isStrict, localeData) {\n return (isStrict && strictRegex) ? strictRegex : regex;\n };\n }\n\n function getParseRegexForToken (token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n }\n\n // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n function unescapeFormat(s) {\n return regexEscape(s.replace('\\\\', '').replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g, function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }));\n }\n\n function regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n var tokens = {};\n\n function addParseToken (token, callback) {\n var i, func = callback;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n for (i = 0; i < token.length; i++) {\n tokens[token[i]] = func;\n }\n }\n\n function addWeekParseToken (token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n }\n\n function addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n }\n\n var YEAR = 0;\n var MONTH = 1;\n var DATE = 2;\n var HOUR = 3;\n var MINUTE = 4;\n var SECOND = 5;\n var MILLISECOND = 6;\n var WEEK = 7;\n var WEEKDAY = 8;\n\n // FORMATTING\n\n addFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? '' + y : '+' + y;\n });\n\n addFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n });\n\n addFormatToken(0, ['YYYY', 4], 0, 'year');\n addFormatToken(0, ['YYYYY', 5], 0, 'year');\n addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n // ALIASES\n\n addUnitAlias('year', 'y');\n\n // PRIORITIES\n\n addUnitPriority('year', 1);\n\n // PARSING\n\n addRegexToken('Y', matchSigned);\n addRegexToken('YY', match1to2, match2);\n addRegexToken('YYYY', match1to4, match4);\n addRegexToken('YYYYY', match1to6, match6);\n addRegexToken('YYYYYY', match1to6, match6);\n\n addParseToken(['YYYYY', 'YYYYYY'], YEAR);\n addParseToken('YYYY', function (input, array) {\n array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n });\n addParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n });\n addParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n });\n\n // HELPERS\n\n function daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n }\n\n function isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n }\n\n // HOOKS\n\n hooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n };\n\n // MOMENTS\n\n var getSetYear = makeGetSet('FullYear', true);\n\n function getIsLeapYear () {\n return isLeapYear(this.year());\n }\n\n function makeGetSet (unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n }\n\n function get (mom, unit) {\n return mom.isValid() ?\n mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() : NaN;\n }\n\n function set$1 (mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (unit === 'FullYear' && isLeapYear(mom.year()) && mom.month() === 1 && mom.date() === 29) {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value, mom.month(), daysInMonth(value, mom.month()));\n }\n else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n }\n\n // MOMENTS\n\n function stringGet (units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n }\n\n\n function stringSet (units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units);\n for (var i = 0; i < prioritized.length; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n }\n\n function mod(n, x) {\n return ((n % x) + x) % x;\n }\n\n var indexOf;\n\n if (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n } else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n }\n\n function daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1 ? (isLeapYear(year) ? 29 : 28) : (31 - modMonth % 7 % 2);\n }\n\n // FORMATTING\n\n addFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n });\n\n addFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n });\n\n addFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n });\n\n // ALIASES\n\n addUnitAlias('month', 'M');\n\n // PRIORITY\n\n addUnitPriority('month', 8);\n\n // PARSING\n\n addRegexToken('M', match1to2);\n addRegexToken('MM', match1to2, match2);\n addRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n });\n addRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n });\n\n addParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n });\n\n addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n });\n\n // LOCALES\n\n var MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;\n var defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_');\n function localeMonths (m, format) {\n if (!m) {\n return isArray(this._months) ? this._months :\n this._months['standalone'];\n }\n return isArray(this._months) ? this._months[m.month()] :\n this._months[(this._months.isFormat || MONTHS_IN_FORMAT).test(format) ? 'format' : 'standalone'][m.month()];\n }\n\n var defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_');\n function localeMonthsShort (m, format) {\n if (!m) {\n return isArray(this._monthsShort) ? this._monthsShort :\n this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort) ? this._monthsShort[m.month()] :\n this._monthsShort[MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'][m.month()];\n }\n\n function handleStrictParse(monthName, format, strict) {\n var i, ii, mom, llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(mom, '').toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeMonthsParse (monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i');\n this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i');\n }\n if (!strict && !this._monthsParse[i]) {\n regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) {\n return i;\n } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function setMonth (mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n }\n\n function getSetMonth (value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n }\n\n function getDaysInMonth () {\n return daysInMonth(this.year(), this.month());\n }\n\n var defaultMonthsShortRegex = matchWord;\n function monthsShortRegex (isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict ?\n this._monthsShortStrictRegex : this._monthsShortRegex;\n }\n }\n\n var defaultMonthsRegex = matchWord;\n function monthsRegex (isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict ?\n this._monthsStrictRegex : this._monthsRegex;\n }\n }\n\n function computeMonthsParse () {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [], longPieces = [], mixedPieces = [],\n i, mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i');\n this._monthsShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i');\n }\n\n function createDate (y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n }\n\n function createUTCDate (y) {\n var date;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n var args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n }\n\n // start-of-first-week - start-of-year\n function firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n }\n\n // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n function dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear, resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear\n };\n }\n\n function weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek, resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear\n };\n }\n\n function weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n }\n\n // FORMATTING\n\n addFormatToken('w', ['ww', 2], 'wo', 'week');\n addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n // ALIASES\n\n addUnitAlias('week', 'w');\n addUnitAlias('isoWeek', 'W');\n\n // PRIORITIES\n\n addUnitPriority('week', 5);\n addUnitPriority('isoWeek', 5);\n\n // PARSING\n\n addRegexToken('w', match1to2);\n addRegexToken('ww', match1to2, match2);\n addRegexToken('W', match1to2);\n addRegexToken('WW', match1to2, match2);\n\n addWeekParseToken(['w', 'ww', 'W', 'WW'], function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n });\n\n // HELPERS\n\n // LOCALES\n\n function localeWeek (mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n }\n\n var defaultLocaleWeek = {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n };\n\n function localeFirstDayOfWeek () {\n return this._week.dow;\n }\n\n function localeFirstDayOfYear () {\n return this._week.doy;\n }\n\n // MOMENTS\n\n function getSetWeek (input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n function getSetISOWeek (input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('d', 0, 'do', 'day');\n\n addFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n });\n\n addFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n });\n\n addFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n });\n\n addFormatToken('e', 0, 0, 'weekday');\n addFormatToken('E', 0, 0, 'isoWeekday');\n\n // ALIASES\n\n addUnitAlias('day', 'd');\n addUnitAlias('weekday', 'e');\n addUnitAlias('isoWeekday', 'E');\n\n // PRIORITY\n addUnitPriority('day', 11);\n addUnitPriority('weekday', 11);\n addUnitPriority('isoWeekday', 11);\n\n // PARSING\n\n addRegexToken('d', match1to2);\n addRegexToken('e', match1to2);\n addRegexToken('E', match1to2);\n addRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n });\n addRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n });\n addRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n });\n\n addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n });\n\n addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n });\n\n // HELPERS\n\n function parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n }\n\n function parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n }\n\n // LOCALES\n function shiftWeekdays (ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n }\n\n var defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_');\n function localeWeekdays (m, format) {\n var weekdays = isArray(this._weekdays) ? this._weekdays :\n this._weekdays[(m && m !== true && this._weekdays.isFormat.test(format)) ? 'format' : 'standalone'];\n return (m === true) ? shiftWeekdays(weekdays, this._week.dow)\n : (m) ? weekdays[m.day()] : weekdays;\n }\n\n var defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_');\n function localeWeekdaysShort (m) {\n return (m === true) ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : (m) ? this._weekdaysShort[m.day()] : this._weekdaysShort;\n }\n\n var defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_');\n function localeWeekdaysMin (m) {\n return (m === true) ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : (m) ? this._weekdaysMin[m.day()] : this._weekdaysMin;\n }\n\n function handleStrictParse$1(weekdayName, format, strict) {\n var i, ii, mom, llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(mom, '').toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(mom, '').toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeWeekdaysParse (weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp('^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$', 'i');\n this._shortWeekdaysParse[i] = new RegExp('^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$', 'i');\n this._minWeekdaysParse[i] = new RegExp('^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$', 'i');\n }\n if (!this._weekdaysParse[i]) {\n regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (strict && format === 'dddd' && this._fullWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (strict && format === 'ddd' && this._shortWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (strict && format === 'dd' && this._minWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function getSetDayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n }\n\n function getSetLocaleDayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n }\n\n function getSetISODayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n }\n\n var defaultWeekdaysRegex = matchWord;\n function weekdaysRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict ?\n this._weekdaysStrictRegex : this._weekdaysRegex;\n }\n }\n\n var defaultWeekdaysShortRegex = matchWord;\n function weekdaysShortRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict ?\n this._weekdaysShortStrictRegex : this._weekdaysShortRegex;\n }\n }\n\n var defaultWeekdaysMinRegex = matchWord;\n function weekdaysMinRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict ?\n this._weekdaysMinStrictRegex : this._weekdaysMinRegex;\n }\n }\n\n\n function computeWeekdaysParse () {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [], shortPieces = [], longPieces = [], mixedPieces = [],\n i, mom, minp, shortp, longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = this.weekdaysMin(mom, '');\n shortp = this.weekdaysShort(mom, '');\n longp = this.weekdays(mom, '');\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 7; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i');\n this._weekdaysShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i');\n this._weekdaysMinStrictRegex = new RegExp('^(' + minPieces.join('|') + ')', 'i');\n }\n\n // FORMATTING\n\n function hFormat() {\n return this.hours() % 12 || 12;\n }\n\n function kFormat() {\n return this.hours() || 24;\n }\n\n addFormatToken('H', ['HH', 2], 0, 'hour');\n addFormatToken('h', ['hh', 2], 0, hFormat);\n addFormatToken('k', ['kk', 2], 0, kFormat);\n\n addFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('hmmss', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2);\n });\n\n addFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('Hmmss', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2);\n });\n\n function meridiem (token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(this.hours(), this.minutes(), lowercase);\n });\n }\n\n meridiem('a', true);\n meridiem('A', false);\n\n // ALIASES\n\n addUnitAlias('hour', 'h');\n\n // PRIORITY\n addUnitPriority('hour', 13);\n\n // PARSING\n\n function matchMeridiem (isStrict, locale) {\n return locale._meridiemParse;\n }\n\n addRegexToken('a', matchMeridiem);\n addRegexToken('A', matchMeridiem);\n addRegexToken('H', match1to2);\n addRegexToken('h', match1to2);\n addRegexToken('k', match1to2);\n addRegexToken('HH', match1to2, match2);\n addRegexToken('hh', match1to2, match2);\n addRegexToken('kk', match1to2, match2);\n\n addRegexToken('hmm', match3to4);\n addRegexToken('hmmss', match5to6);\n addRegexToken('Hmm', match3to4);\n addRegexToken('Hmmss', match5to6);\n\n addParseToken(['H', 'HH'], HOUR);\n addParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n });\n addParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n });\n addParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4;\n var pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n });\n addParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4;\n var pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n });\n\n // LOCALES\n\n function localeIsPM (input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return ((input + '').toLowerCase().charAt(0) === 'p');\n }\n\n var defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i;\n function localeMeridiem (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n }\n\n\n // MOMENTS\n\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n var getSetHour = makeGetSet('Hours', true);\n\n var baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse\n };\n\n // internal storage for locale config files\n var locales = {};\n var localeFamilies = {};\n var globalLocale;\n\n function normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n }\n\n // pick the locale from the array\n // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n function chooseLocale(names) {\n var i = 0, j, next, locale, split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n }\n\n function loadLocale(name) {\n var oldLocale = null;\n // TODO: Find a better way to register and load all the locales in Node\n if (!locales[name] && (typeof module !== 'undefined') &&\n module && module.exports) {\n try {\n oldLocale = globalLocale._abbr;\n var aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {}\n }\n return locales[name];\n }\n\n // This function will load locale and then set the global locale. If\n // no arguments are passed in, it will simply return the current global\n // locale key.\n function getSetGlobalLocale (key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n }\n else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n }\n else {\n if ((typeof console !== 'undefined') && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn('Locale ' + key + ' not found. Did you forget to load it?');\n }\n }\n }\n\n return globalLocale._abbr;\n }\n\n function defineLocale (name, config) {\n if (config !== null) {\n var locale, parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple('defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.');\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n }\n\n function updateLocale(name, config) {\n if (config != null) {\n var locale, tmpLocale, parentConfig = baseConfig;\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n }\n\n // returns locale data\n function getLocale (key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n }\n\n function listLocales() {\n return keys(locales);\n }\n\n function checkOverflow (m) {\n var overflow;\n var a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11 ? MONTH :\n a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE :\n a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR :\n a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE :\n a[SECOND] < 0 || a[SECOND] > 59 ? SECOND :\n a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :\n -1;\n\n if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n }\n\n // Pick the first defined of two or three arguments.\n function defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n }\n\n function currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [nowValue.getUTCFullYear(), nowValue.getUTCMonth(), nowValue.getUTCDate()];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n }\n\n // convert an array to a date.\n // the array should mirror the parameters below\n // note: all values past the year are optional and will default to the lowest possible value.\n // [year, month, day , hour, minute, second, millisecond]\n function configFromArray (config) {\n var i, date, input = [], currentDate, expectedWeekday, yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (config._dayOfYear > daysInYear(yearToUse) || config._dayOfYear === 0) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);\n expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== expectedWeekday) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n }\n\n function dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(createLocal(), 1, 4).year);\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n var curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n }\n\n // iso 8601 regex\n // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n var extendedIsoRegex = /^\\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)?)?$/;\n var basicIsoRegex = /^\\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)?)?$/;\n\n var tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/;\n\n var isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n // YYYYMM is NOT allowed by the standard\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/]\n ];\n\n // iso time formats and regexes\n var isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/]\n ];\n\n var aspNetJsonRegex = /^\\/?Date\\((\\-?\\d+)/i;\n\n // date from iso format\n function configFromISO(config) {\n var i, l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime, dateFormat, timeFormat, tzFormat;\n\n if (match) {\n getParsingFlags(config).iso = true;\n\n for (i = 0, l = isoDates.length; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimes.length; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n }\n\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n var rfc2822 = /^(?:(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}))$/;\n\n function extractFromRFC2822Strings(yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10)\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n }\n\n function untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n }\n\n function preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s.replace(/\\([^)]*\\)|[\\n\\t]/g, ' ').replace(/(\\s\\s+)/g, ' ').replace(/^\\s\\s*/, '').replace(/\\s\\s*$/, '');\n }\n\n function checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an indepentent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(parsedInput[0], parsedInput[1], parsedInput[2]).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n }\n\n var obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60\n };\n\n function calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10);\n var m = hm % 100, h = (hm - m) / 100;\n return h * 60 + m;\n }\n }\n\n // date and time from ref 2822 format\n function configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i));\n if (match) {\n var parsedArray = extractFromRFC2822Strings(match[4], match[3], match[2], match[5], match[6], match[7]);\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n }\n\n // date from iso format or fallback\n function configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n\n hooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged and will be removed in an upcoming major release. Please refer to ' +\n 'http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n );\n\n // constant that refers to the ISO standard\n hooks.ISO_8601 = function () {};\n\n // constant that refers to the RFC 2822 form\n hooks.RFC_2822 = function () {};\n\n // date from string and format string\n function configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i, parsedInput, tokens, token, skipped,\n stringLength = string.length,\n totalParsedInputLength = 0;\n\n tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];\n\n for (i = 0; i < tokens.length; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];\n // console.log('token', token, 'parsedInput', parsedInput,\n // 'regex', getParseRegexForToken(token, config));\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(string.indexOf(parsedInput) + parsedInput.length);\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n }\n else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n }\n else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);\n\n configFromArray(config);\n checkOverflow(config);\n }\n\n\n function meridiemFixWrap (locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n }\n\n // date from string and array of format strings\n function configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n\n scoreToBeat,\n i,\n currentScore;\n\n if (config._f.length === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < config._f.length; i++) {\n currentScore = 0;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (!isValid(tempConfig)) {\n continue;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (scoreToBeat == null || currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n\n extend(config, bestMoment || tempConfig);\n }\n\n function configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i);\n config._a = map([i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond], function (obj) {\n return obj && parseInt(obj, 10);\n });\n\n configFromArray(config);\n }\n\n function createFromConfig (config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n }\n\n function prepareConfig (config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({nullInput: true});\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n }\n\n function configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n }\n\n function createLocalOrUTC (input, format, locale, strict, isUTC) {\n var c = {};\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if ((isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n }\n\n function createLocal (input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n }\n\n var prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n var prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n // Pick a moment m from moments so that m[fn](other) is true for all\n // other. This relies on the function fn to be transitive.\n //\n // moments should either be an array of moment objects or an array, whose\n // first element is an array of moment objects.\n function pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n }\n\n // TODO: Use [].sort instead?\n function min () {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n }\n\n function max () {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n }\n\n var now = function () {\n return Date.now ? Date.now() : +(new Date());\n };\n\n var ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond'];\n\n function isDurationValid(m) {\n for (var key in m) {\n if (!(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) {\n return false;\n }\n }\n\n var unitHasDecimal = false;\n for (var i = 0; i < ordering.length; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n }\n\n function isValid$1() {\n return this._isValid;\n }\n\n function createInvalid$1() {\n return createDuration(NaN);\n }\n\n function Duration (duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds = +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days +\n weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months +\n quarters * 3 +\n years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n }\n\n function isDuration (obj) {\n return obj instanceof Duration;\n }\n\n function absRound (number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n }\n\n // FORMATTING\n\n function offset (token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset();\n var sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2);\n });\n }\n\n offset('Z', ':');\n offset('ZZ', '');\n\n // PARSING\n\n addRegexToken('Z', matchShortOffset);\n addRegexToken('ZZ', matchShortOffset);\n addParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n });\n\n // HELPERS\n\n // timezone chunker\n // '+10:00' > ['10', '00']\n // '-1530' > ['-15', '30']\n var chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\n function offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher);\n\n if (matches === null) {\n return null;\n }\n\n var chunk = matches[matches.length - 1] || [];\n var parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n var minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ?\n 0 :\n parts[0] === '+' ? minutes : -minutes;\n }\n\n // Return a moment from input, that is local/utc/zone equivalent to model.\n function cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff = (isMoment(input) || isDate(input) ? input.valueOf() : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n }\n\n function getDateOffset (m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset() / 15) * 15;\n }\n\n // HOOKS\n\n // This function will be called whenever a moment is mutated.\n // It is intended to keep the offset in sync with the timezone.\n hooks.updateOffset = function () {};\n\n // MOMENTS\n\n // keepLocalTime = true means only change the timezone, without\n // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n // +0200, so we adjust the time as needed, to be valid.\n //\n // Keeping the time actually adds/subtracts (one hour)\n // from the actual represented time. That is why we call updateOffset\n // a second time. In case it wants us to change the offset again\n // _changeInProgress == true case, then we have to adjust, because\n // there is no such time in the given timezone.\n function getSetOffset (input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(this, createDuration(input - offset, 'm'), 1, false);\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n }\n\n function getSetZone (input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n }\n\n function setOffsetToUTC (keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n }\n\n function setOffsetToLocal (keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n }\n\n function setOffsetToParsedOffset () {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n }\n else {\n this.utcOffset(0, true);\n }\n }\n return this;\n }\n\n function hasAlignedHourOffset (input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n }\n\n function isDaylightSavingTime () {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n }\n\n function isDaylightSavingTimeShifted () {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {};\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n var other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted = this.isValid() &&\n compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n }\n\n function isLocal () {\n return this.isValid() ? !this._isUTC : false;\n }\n\n function isUtcOffset () {\n return this.isValid() ? this._isUTC : false;\n }\n\n function isUtc () {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n }\n\n // ASP.NET json date format regex\n var aspNetRegex = /^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;\n\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n var isoRegex = /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n function createDuration (input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms : input._milliseconds,\n d : input._days,\n M : input._months\n };\n } else if (isNumber(input)) {\n duration = {};\n if (key) {\n duration[key] = input;\n } else {\n duration.milliseconds = input;\n }\n } else if (!!(match = aspNetRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : 0,\n d : toInt(match[DATE]) * sign,\n h : toInt(match[HOUR]) * sign,\n m : toInt(match[MINUTE]) * sign,\n s : toInt(match[SECOND]) * sign,\n ms : toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match\n };\n } else if (!!(match = isoRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : parseIso(match[2], sign),\n M : parseIso(match[3], sign),\n w : parseIso(match[4], sign),\n d : parseIso(match[5], sign),\n h : parseIso(match[6], sign),\n m : parseIso(match[7], sign),\n s : parseIso(match[8], sign)\n };\n } else if (duration == null) {// checks for null or undefined\n duration = {};\n } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) {\n diffRes = momentsDifference(createLocal(duration.from), createLocal(duration.to));\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n return ret;\n }\n\n createDuration.fn = Duration.prototype;\n createDuration.invalid = createInvalid$1;\n\n function parseIso (inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n }\n\n function positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months = other.month() - base.month() +\n (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +(base.clone().add(res.months, 'M'));\n\n return res;\n }\n\n function momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return {milliseconds: 0, months: 0};\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n }\n\n // TODO: remove 'name' arg after deprecation is removed\n function createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.');\n tmp = val; val = period; period = tmp;\n }\n\n val = typeof val === 'string' ? +val : val;\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n }\n\n function addSubtract (mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n }\n\n var add = createAdder(1, 'add');\n var subtract = createAdder(-1, 'subtract');\n\n function getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6 ? 'sameElse' :\n diff < -1 ? 'lastWeek' :\n diff < 0 ? 'lastDay' :\n diff < 1 ? 'sameDay' :\n diff < 2 ? 'nextDay' :\n diff < 7 ? 'nextWeek' : 'sameElse';\n }\n\n function calendar$1 (time, formats) {\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse';\n\n var output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]);\n\n return this.format(output || this.localeData().calendar(format, this, createLocal(now)));\n }\n\n function clone () {\n return new Moment(this);\n }\n\n function isAfter (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n }\n\n function isBefore (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n }\n\n function isBetween (from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (inclusivity[0] === '(' ? this.isAfter(localFrom, units) : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')' ? this.isBefore(localTo, units) : !this.isAfter(localTo, units));\n }\n\n function isSame (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf();\n }\n }\n\n function isSameOrAfter (input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n }\n\n function isSameOrBefore (input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n }\n\n function diff (input, units, asFloat) {\n var that,\n zoneDelta,\n output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year': output = monthDiff(this, that) / 12; break;\n case 'month': output = monthDiff(this, that); break;\n case 'quarter': output = monthDiff(this, that) / 3; break;\n case 'second': output = (this - that) / 1e3; break; // 1000\n case 'minute': output = (this - that) / 6e4; break; // 1000 * 60\n case 'hour': output = (this - that) / 36e5; break; // 1000 * 60 * 60\n case 'day': output = (this - that - zoneDelta) / 864e5; break; // 1000 * 60 * 60 * 24, negate dst\n case 'week': output = (this - that - zoneDelta) / 6048e5; break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default: output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n }\n\n function monthDiff (a, b) {\n // difference in months\n var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2, adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n }\n\n hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\n hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\n function toString () {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n }\n\n function toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true;\n var m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(m, utc ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ');\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000).toISOString().replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(m, utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ');\n }\n\n /**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\n function inspect () {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment';\n var zone = '';\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n var prefix = '[' + func + '(\"]';\n var year = (0 <= this.year() && this.year() <= 9999) ? 'YYYY' : 'YYYYYY';\n var datetime = '-MM-DD[T]HH:mm:ss.SSS';\n var suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n }\n\n function format (inputString) {\n if (!inputString) {\n inputString = this.isUtc() ? hooks.defaultFormatUtc : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n }\n\n function from (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function fromNow (withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n }\n\n function to (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function toNow (withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n }\n\n // If passed a locale key, it will set the locale for this\n // instance. Otherwise, it will return the locale configuration\n // variables for this instance.\n function locale (key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n }\n\n var lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n );\n\n function localeData () {\n return this._locale;\n }\n\n var MS_PER_SECOND = 1000;\n var MS_PER_MINUTE = 60 * MS_PER_SECOND;\n var MS_PER_HOUR = 60 * MS_PER_MINUTE;\n var MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n // actual modulo - handles negative numbers (for dates before 1970):\n function mod$1(dividend, divisor) {\n return (dividend % divisor + divisor) % divisor;\n }\n\n function localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n }\n\n function utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n }\n\n function startOf (units) {\n var time;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(this.year(), this.month() - this.month() % 3, 1);\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(this.year(), this.month(), this.date() - this.weekday());\n break;\n case 'isoWeek':\n time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1));\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR);\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function endOf (units) {\n var time;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time = startOfDate(this.year(), this.month() - this.month() % 3 + 3, 1) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time = startOfDate(this.year(), this.month(), this.date() - this.weekday() + 7) - 1;\n break;\n case 'isoWeek':\n time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time += MS_PER_HOUR - mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR) - 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function valueOf () {\n return this._d.valueOf() - ((this._offset || 0) * 60000);\n }\n\n function unix () {\n return Math.floor(this.valueOf() / 1000);\n }\n\n function toDate () {\n return new Date(this.valueOf());\n }\n\n function toArray () {\n var m = this;\n return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()];\n }\n\n function toObject () {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds()\n };\n }\n\n function toJSON () {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n }\n\n function isValid$2 () {\n return isValid(this);\n }\n\n function parsingFlags () {\n return extend({}, getParsingFlags(this));\n }\n\n function invalidAt () {\n return getParsingFlags(this).overflow;\n }\n\n function creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict\n };\n }\n\n // FORMATTING\n\n addFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n });\n\n addFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n });\n\n function addWeekYearFormatToken (token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n }\n\n addWeekYearFormatToken('gggg', 'weekYear');\n addWeekYearFormatToken('ggggg', 'weekYear');\n addWeekYearFormatToken('GGGG', 'isoWeekYear');\n addWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n // ALIASES\n\n addUnitAlias('weekYear', 'gg');\n addUnitAlias('isoWeekYear', 'GG');\n\n // PRIORITY\n\n addUnitPriority('weekYear', 1);\n addUnitPriority('isoWeekYear', 1);\n\n\n // PARSING\n\n addRegexToken('G', matchSigned);\n addRegexToken('g', matchSigned);\n addRegexToken('GG', match1to2, match2);\n addRegexToken('gg', match1to2, match2);\n addRegexToken('GGGG', match1to4, match4);\n addRegexToken('gggg', match1to4, match4);\n addRegexToken('GGGGG', match1to6, match6);\n addRegexToken('ggggg', match1to6, match6);\n\n addWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n });\n\n addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n });\n\n // MOMENTS\n\n function getSetWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy);\n }\n\n function getSetISOWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input, this.isoWeek(), this.isoWeekday(), 1, 4);\n }\n\n function getISOWeeksInYear () {\n return weeksInYear(this.year(), 1, 4);\n }\n\n function getWeeksInYear () {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n }\n\n function getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n }\n\n function setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n }\n\n // FORMATTING\n\n addFormatToken('Q', 0, 'Qo', 'quarter');\n\n // ALIASES\n\n addUnitAlias('quarter', 'Q');\n\n // PRIORITY\n\n addUnitPriority('quarter', 7);\n\n // PARSING\n\n addRegexToken('Q', match1);\n addParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n });\n\n // MOMENTS\n\n function getSetQuarter (input) {\n return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);\n }\n\n // FORMATTING\n\n addFormatToken('D', ['DD', 2], 'Do', 'date');\n\n // ALIASES\n\n addUnitAlias('date', 'D');\n\n // PRIORITY\n addUnitPriority('date', 9);\n\n // PARSING\n\n addRegexToken('D', match1to2);\n addRegexToken('DD', match1to2, match2);\n addRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict ?\n (locale._dayOfMonthOrdinalParse || locale._ordinalParse) :\n locale._dayOfMonthOrdinalParseLenient;\n });\n\n addParseToken(['D', 'DD'], DATE);\n addParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n });\n\n // MOMENTS\n\n var getSetDayOfMonth = makeGetSet('Date', true);\n\n // FORMATTING\n\n addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n // ALIASES\n\n addUnitAlias('dayOfYear', 'DDD');\n\n // PRIORITY\n addUnitPriority('dayOfYear', 4);\n\n // PARSING\n\n addRegexToken('DDD', match1to3);\n addRegexToken('DDDD', match3);\n addParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n });\n\n // HELPERS\n\n // MOMENTS\n\n function getSetDayOfYear (input) {\n var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1;\n return input == null ? dayOfYear : this.add((input - dayOfYear), 'd');\n }\n\n // FORMATTING\n\n addFormatToken('m', ['mm', 2], 0, 'minute');\n\n // ALIASES\n\n addUnitAlias('minute', 'm');\n\n // PRIORITY\n\n addUnitPriority('minute', 14);\n\n // PARSING\n\n addRegexToken('m', match1to2);\n addRegexToken('mm', match1to2, match2);\n addParseToken(['m', 'mm'], MINUTE);\n\n // MOMENTS\n\n var getSetMinute = makeGetSet('Minutes', false);\n\n // FORMATTING\n\n addFormatToken('s', ['ss', 2], 0, 'second');\n\n // ALIASES\n\n addUnitAlias('second', 's');\n\n // PRIORITY\n\n addUnitPriority('second', 15);\n\n // PARSING\n\n addRegexToken('s', match1to2);\n addRegexToken('ss', match1to2, match2);\n addParseToken(['s', 'ss'], SECOND);\n\n // MOMENTS\n\n var getSetSecond = makeGetSet('Seconds', false);\n\n // FORMATTING\n\n addFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n });\n\n addFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n });\n\n addFormatToken(0, ['SSS', 3], 0, 'millisecond');\n addFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n });\n addFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n });\n addFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n });\n addFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n });\n addFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n });\n addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n });\n\n\n // ALIASES\n\n addUnitAlias('millisecond', 'ms');\n\n // PRIORITY\n\n addUnitPriority('millisecond', 16);\n\n // PARSING\n\n addRegexToken('S', match1to3, match1);\n addRegexToken('SS', match1to3, match2);\n addRegexToken('SSS', match1to3, match3);\n\n var token;\n for (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n }\n\n function parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n }\n\n for (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n }\n // MOMENTS\n\n var getSetMillisecond = makeGetSet('Milliseconds', false);\n\n // FORMATTING\n\n addFormatToken('z', 0, 0, 'zoneAbbr');\n addFormatToken('zz', 0, 0, 'zoneName');\n\n // MOMENTS\n\n function getZoneAbbr () {\n return this._isUTC ? 'UTC' : '';\n }\n\n function getZoneName () {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n }\n\n var proto = Moment.prototype;\n\n proto.add = add;\n proto.calendar = calendar$1;\n proto.clone = clone;\n proto.diff = diff;\n proto.endOf = endOf;\n proto.format = format;\n proto.from = from;\n proto.fromNow = fromNow;\n proto.to = to;\n proto.toNow = toNow;\n proto.get = stringGet;\n proto.invalidAt = invalidAt;\n proto.isAfter = isAfter;\n proto.isBefore = isBefore;\n proto.isBetween = isBetween;\n proto.isSame = isSame;\n proto.isSameOrAfter = isSameOrAfter;\n proto.isSameOrBefore = isSameOrBefore;\n proto.isValid = isValid$2;\n proto.lang = lang;\n proto.locale = locale;\n proto.localeData = localeData;\n proto.max = prototypeMax;\n proto.min = prototypeMin;\n proto.parsingFlags = parsingFlags;\n proto.set = stringSet;\n proto.startOf = startOf;\n proto.subtract = subtract;\n proto.toArray = toArray;\n proto.toObject = toObject;\n proto.toDate = toDate;\n proto.toISOString = toISOString;\n proto.inspect = inspect;\n proto.toJSON = toJSON;\n proto.toString = toString;\n proto.unix = unix;\n proto.valueOf = valueOf;\n proto.creationData = creationData;\n proto.year = getSetYear;\n proto.isLeapYear = getIsLeapYear;\n proto.weekYear = getSetWeekYear;\n proto.isoWeekYear = getSetISOWeekYear;\n proto.quarter = proto.quarters = getSetQuarter;\n proto.month = getSetMonth;\n proto.daysInMonth = getDaysInMonth;\n proto.week = proto.weeks = getSetWeek;\n proto.isoWeek = proto.isoWeeks = getSetISOWeek;\n proto.weeksInYear = getWeeksInYear;\n proto.isoWeeksInYear = getISOWeeksInYear;\n proto.date = getSetDayOfMonth;\n proto.day = proto.days = getSetDayOfWeek;\n proto.weekday = getSetLocaleDayOfWeek;\n proto.isoWeekday = getSetISODayOfWeek;\n proto.dayOfYear = getSetDayOfYear;\n proto.hour = proto.hours = getSetHour;\n proto.minute = proto.minutes = getSetMinute;\n proto.second = proto.seconds = getSetSecond;\n proto.millisecond = proto.milliseconds = getSetMillisecond;\n proto.utcOffset = getSetOffset;\n proto.utc = setOffsetToUTC;\n proto.local = setOffsetToLocal;\n proto.parseZone = setOffsetToParsedOffset;\n proto.hasAlignedHourOffset = hasAlignedHourOffset;\n proto.isDST = isDaylightSavingTime;\n proto.isLocal = isLocal;\n proto.isUtcOffset = isUtcOffset;\n proto.isUtc = isUtc;\n proto.isUTC = isUtc;\n proto.zoneAbbr = getZoneAbbr;\n proto.zoneName = getZoneName;\n proto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth);\n proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth);\n proto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear);\n proto.zone = deprecate('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', getSetZone);\n proto.isDSTShifted = deprecate('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', isDaylightSavingTimeShifted);\n\n function createUnix (input) {\n return createLocal(input * 1000);\n }\n\n function createInZone () {\n return createLocal.apply(null, arguments).parseZone();\n }\n\n function preParsePostFormat (string) {\n return string;\n }\n\n var proto$1 = Locale.prototype;\n\n proto$1.calendar = calendar;\n proto$1.longDateFormat = longDateFormat;\n proto$1.invalidDate = invalidDate;\n proto$1.ordinal = ordinal;\n proto$1.preparse = preParsePostFormat;\n proto$1.postformat = preParsePostFormat;\n proto$1.relativeTime = relativeTime;\n proto$1.pastFuture = pastFuture;\n proto$1.set = set;\n\n proto$1.months = localeMonths;\n proto$1.monthsShort = localeMonthsShort;\n proto$1.monthsParse = localeMonthsParse;\n proto$1.monthsRegex = monthsRegex;\n proto$1.monthsShortRegex = monthsShortRegex;\n proto$1.week = localeWeek;\n proto$1.firstDayOfYear = localeFirstDayOfYear;\n proto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n proto$1.weekdays = localeWeekdays;\n proto$1.weekdaysMin = localeWeekdaysMin;\n proto$1.weekdaysShort = localeWeekdaysShort;\n proto$1.weekdaysParse = localeWeekdaysParse;\n\n proto$1.weekdaysRegex = weekdaysRegex;\n proto$1.weekdaysShortRegex = weekdaysShortRegex;\n proto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n proto$1.isPM = localeIsPM;\n proto$1.meridiem = localeMeridiem;\n\n function get$1 (format, index, field, setter) {\n var locale = getLocale();\n var utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n }\n\n function listMonthsImpl (format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n }\n\n // ()\n // (5)\n // (fmt, 5)\n // (fmt)\n // (true)\n // (true, 5)\n // (true, fmt, 5)\n // (true, fmt)\n function listWeekdaysImpl (localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0;\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n }\n\n function listMonths (format, index) {\n return listMonthsImpl(format, index, 'months');\n }\n\n function listMonthsShort (format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n }\n\n function listWeekdays (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n }\n\n function listWeekdaysShort (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n }\n\n function listWeekdaysMin (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n }\n\n getSetGlobalLocale('en', {\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (toInt(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n });\n\n // Side effect imports\n\n hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale);\n hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale);\n\n var mathAbs = Math.abs;\n\n function abs () {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n }\n\n function addSubtract$1 (duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n }\n\n // supports only 2.0-style add(1, 's') or add(duration)\n function add$1 (input, value) {\n return addSubtract$1(this, input, value, 1);\n }\n\n // supports only 2.0-style subtract(1, 's') or subtract(duration)\n function subtract$1 (input, value) {\n return addSubtract$1(this, input, value, -1);\n }\n\n function absCeil (number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n }\n\n function bubble () {\n var milliseconds = this._milliseconds;\n var days = this._days;\n var months = this._months;\n var data = this._data;\n var seconds, minutes, hours, years, monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (!((milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0))) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n }\n\n function daysToMonths (days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return days * 4800 / 146097;\n }\n\n function monthsToDays (months) {\n // the reverse of daysToMonths\n return months * 146097 / 4800;\n }\n\n function as (units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days;\n var months;\n var milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month': return months;\n case 'quarter': return months / 3;\n case 'year': return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week' : return days / 7 + milliseconds / 6048e5;\n case 'day' : return days + milliseconds / 864e5;\n case 'hour' : return days * 24 + milliseconds / 36e5;\n case 'minute' : return days * 1440 + milliseconds / 6e4;\n case 'second' : return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond': return Math.floor(days * 864e5) + milliseconds;\n default: throw new Error('Unknown unit ' + units);\n }\n }\n }\n\n // TODO: Use this.as('ms')?\n function valueOf$1 () {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n }\n\n function makeAs (alias) {\n return function () {\n return this.as(alias);\n };\n }\n\n var asMilliseconds = makeAs('ms');\n var asSeconds = makeAs('s');\n var asMinutes = makeAs('m');\n var asHours = makeAs('h');\n var asDays = makeAs('d');\n var asWeeks = makeAs('w');\n var asMonths = makeAs('M');\n var asQuarters = makeAs('Q');\n var asYears = makeAs('y');\n\n function clone$1 () {\n return createDuration(this);\n }\n\n function get$2 (units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n }\n\n function makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n }\n\n var milliseconds = makeGetter('milliseconds');\n var seconds = makeGetter('seconds');\n var minutes = makeGetter('minutes');\n var hours = makeGetter('hours');\n var days = makeGetter('days');\n var months = makeGetter('months');\n var years = makeGetter('years');\n\n function weeks () {\n return absFloor(this.days() / 7);\n }\n\n var round = Math.round;\n var thresholds = {\n ss: 44, // a few seconds to seconds\n s : 45, // seconds to minute\n m : 45, // minutes to hour\n h : 22, // hours to day\n d : 26, // days to month\n M : 11 // months to year\n };\n\n // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n }\n\n function relativeTime$1 (posNegDuration, withoutSuffix, locale) {\n var duration = createDuration(posNegDuration).abs();\n var seconds = round(duration.as('s'));\n var minutes = round(duration.as('m'));\n var hours = round(duration.as('h'));\n var days = round(duration.as('d'));\n var months = round(duration.as('M'));\n var years = round(duration.as('y'));\n\n var a = seconds <= thresholds.ss && ['s', seconds] ||\n seconds < thresholds.s && ['ss', seconds] ||\n minutes <= 1 && ['m'] ||\n minutes < thresholds.m && ['mm', minutes] ||\n hours <= 1 && ['h'] ||\n hours < thresholds.h && ['hh', hours] ||\n days <= 1 && ['d'] ||\n days < thresholds.d && ['dd', days] ||\n months <= 1 && ['M'] ||\n months < thresholds.M && ['MM', months] ||\n years <= 1 && ['y'] || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n }\n\n // This function allows you to set the rounding function for relative time strings\n function getSetRelativeTimeRounding (roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof(roundingFunction) === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n }\n\n // This function allows you to set a threshold for relative time strings\n function getSetRelativeTimeThreshold (threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n }\n\n function humanize (withSuffix) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var locale = this.localeData();\n var output = relativeTime$1(this, !withSuffix, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n }\n\n var abs$1 = Math.abs;\n\n function sign(x) {\n return ((x > 0) - (x < 0)) || +x;\n }\n\n function toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000;\n var days = abs$1(this._days);\n var months = abs$1(this._months);\n var minutes, hours, years;\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n var Y = years;\n var M = months;\n var D = days;\n var h = hours;\n var m = minutes;\n var s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n var total = this.asSeconds();\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n var totalSign = total < 0 ? '-' : '';\n var ymSign = sign(this._months) !== sign(total) ? '-' : '';\n var daysSign = sign(this._days) !== sign(total) ? '-' : '';\n var hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return totalSign + 'P' +\n (Y ? ymSign + Y + 'Y' : '') +\n (M ? ymSign + M + 'M' : '') +\n (D ? daysSign + D + 'D' : '') +\n ((h || m || s) ? 'T' : '') +\n (h ? hmsSign + h + 'H' : '') +\n (m ? hmsSign + m + 'M' : '') +\n (s ? hmsSign + s + 'S' : '');\n }\n\n var proto$2 = Duration.prototype;\n\n proto$2.isValid = isValid$1;\n proto$2.abs = abs;\n proto$2.add = add$1;\n proto$2.subtract = subtract$1;\n proto$2.as = as;\n proto$2.asMilliseconds = asMilliseconds;\n proto$2.asSeconds = asSeconds;\n proto$2.asMinutes = asMinutes;\n proto$2.asHours = asHours;\n proto$2.asDays = asDays;\n proto$2.asWeeks = asWeeks;\n proto$2.asMonths = asMonths;\n proto$2.asQuarters = asQuarters;\n proto$2.asYears = asYears;\n proto$2.valueOf = valueOf$1;\n proto$2._bubble = bubble;\n proto$2.clone = clone$1;\n proto$2.get = get$2;\n proto$2.milliseconds = milliseconds;\n proto$2.seconds = seconds;\n proto$2.minutes = minutes;\n proto$2.hours = hours;\n proto$2.days = days;\n proto$2.weeks = weeks;\n proto$2.months = months;\n proto$2.years = years;\n proto$2.humanize = humanize;\n proto$2.toISOString = toISOString$1;\n proto$2.toString = toISOString$1;\n proto$2.toJSON = toISOString$1;\n proto$2.locale = locale;\n proto$2.localeData = localeData;\n\n proto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1);\n proto$2.lang = lang;\n\n // Side effect imports\n\n // FORMATTING\n\n addFormatToken('X', 0, 0, 'unix');\n addFormatToken('x', 0, 0, 'valueOf');\n\n // PARSING\n\n addRegexToken('x', matchSigned);\n addRegexToken('X', matchTimestamp);\n addParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input, 10) * 1000);\n });\n addParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n });\n\n // Side effect imports\n\n\n hooks.version = '2.24.0';\n\n setHookCallback(createLocal);\n\n hooks.fn = proto;\n hooks.min = min;\n hooks.max = max;\n hooks.now = now;\n hooks.utc = createUTC;\n hooks.unix = createUnix;\n hooks.months = listMonths;\n hooks.isDate = isDate;\n hooks.locale = getSetGlobalLocale;\n hooks.invalid = createInvalid;\n hooks.duration = createDuration;\n hooks.isMoment = isMoment;\n hooks.weekdays = listWeekdays;\n hooks.parseZone = createInZone;\n hooks.localeData = getLocale;\n hooks.isDuration = isDuration;\n hooks.monthsShort = listMonthsShort;\n hooks.weekdaysMin = listWeekdaysMin;\n hooks.defineLocale = defineLocale;\n hooks.updateLocale = updateLocale;\n hooks.locales = listLocales;\n hooks.weekdaysShort = listWeekdaysShort;\n hooks.normalizeUnits = normalizeUnits;\n hooks.relativeTimeRounding = getSetRelativeTimeRounding;\n hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\n hooks.calendarFormat = getCalendarFormat;\n hooks.prototype = proto;\n\n // currently HTML5 input type only supports 24-hour formats\n hooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // <input type=\"datetime-local\" />\n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // <input type=\"datetime-local\" step=\"1\" />\n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // <input type=\"datetime-local\" step=\"0.001\" />\n DATE: 'YYYY-MM-DD', // <input type=\"date\" />\n TIME: 'HH:mm', // <input type=\"time\" />\n TIME_SECONDS: 'HH:mm:ss', // <input type=\"time\" step=\"1\" />\n TIME_MS: 'HH:mm:ss.SSS', // <input type=\"time\" step=\"0.001\" />\n WEEK: 'GGGG-[W]WW', // <input type=\"week\" />\n MONTH: 'YYYY-MM' // <input type=\"month\" />\n };\n\n return hooks;\n\n})));\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Function equal to merge with the difference being that no reference\n * to original objects is kept.\n *\n * @see merge\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction deepMerge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = deepMerge(result[key], val);\n } else if (typeof val === 'object') {\n result[key] = deepMerge({}, val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n deepMerge: deepMerge,\n extend: extend,\n trim: trim\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","'use strict';\n\nexports.__esModule = true;\nexports.extend = extend;\nexports.indexOf = indexOf;\nexports.escapeExpression = escapeExpression;\nexports.isEmpty = isEmpty;\nexports.createFrame = createFrame;\nexports.blockParams = blockParams;\nexports.appendContextPath = appendContextPath;\nvar escape = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#x27;',\n '`': '&#x60;',\n '=': '&#x3D;'\n};\n\nvar badChars = /[&<>\"'`=]/g,\n possible = /[&<>\"'`=]/;\n\nfunction escapeChar(chr) {\n return escape[chr];\n}\n\nfunction extend(obj /* , ...source */) {\n for (var i = 1; i < arguments.length; i++) {\n for (var key in arguments[i]) {\n if (Object.prototype.hasOwnProperty.call(arguments[i], key)) {\n obj[key] = arguments[i][key];\n }\n }\n }\n\n return obj;\n}\n\nvar toString = Object.prototype.toString;\n\nexports.toString = toString;\n// Sourced from lodash\n// https://github.com/bestiejs/lodash/blob/master/LICENSE.txt\n/* eslint-disable func-style */\nvar isFunction = function isFunction(value) {\n return typeof value === 'function';\n};\n// fallback for older versions of Chrome and Safari\n/* istanbul ignore next */\nif (isFunction(/x/)) {\n exports.isFunction = isFunction = function (value) {\n return typeof value === 'function' && toString.call(value) === '[object Function]';\n };\n}\nexports.isFunction = isFunction;\n\n/* eslint-enable func-style */\n\n/* istanbul ignore next */\nvar isArray = Array.isArray || function (value) {\n return value && typeof value === 'object' ? toString.call(value) === '[object Array]' : false;\n};\n\nexports.isArray = isArray;\n// Older IE versions do not directly support indexOf so we must implement our own, sadly.\n\nfunction indexOf(array, value) {\n for (var i = 0, len = array.length; i < len; i++) {\n if (array[i] === value) {\n return i;\n }\n }\n return -1;\n}\n\nfunction escapeExpression(string) {\n if (typeof string !== 'string') {\n // don't escape SafeStrings, since they're already safe\n if (string && string.toHTML) {\n return string.toHTML();\n } else if (string == null) {\n return '';\n } else if (!string) {\n return string + '';\n }\n\n // Force a string conversion as this will be done by the append regardless and\n // the regex test will do this transparently behind the scenes, causing issues if\n // an object's to string has escaped characters in it.\n string = '' + string;\n }\n\n if (!possible.test(string)) {\n return string;\n }\n return string.replace(badChars, escapeChar);\n}\n\nfunction isEmpty(value) {\n if (!value && value !== 0) {\n return true;\n } else if (isArray(value) && value.length === 0) {\n return true;\n } else {\n return false;\n }\n}\n\nfunction createFrame(object) {\n var frame = extend({}, object);\n frame._parent = object;\n return frame;\n}\n\nfunction blockParams(params, ids) {\n params.path = ids;\n return params;\n}\n\nfunction appendContextPath(contextPath, id) {\n return (contextPath ? contextPath + '.' : '') + id;\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL3V0aWxzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFNLE1BQU0sR0FBRztBQUNiLEtBQUcsRUFBRSxPQUFPO0FBQ1osS0FBRyxFQUFFLE1BQU07QUFDWCxLQUFHLEVBQUUsTUFBTTtBQUNYLEtBQUcsRUFBRSxRQUFRO0FBQ2IsS0FBRyxFQUFFLFFBQVE7QUFDYixLQUFHLEVBQUUsUUFBUTtBQUNiLEtBQUcsRUFBRSxRQUFRO0NBQ2QsQ0FBQzs7QUFFRixJQUFNLFFBQVEsR0FBRyxZQUFZO0lBQzNCLFFBQVEsR0FBRyxXQUFXLENBQUM7O0FBRXpCLFNBQVMsVUFBVSxDQUFDLEdBQUcsRUFBRTtBQUN2QixTQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztDQUNwQjs7QUFFTSxTQUFTLE1BQU0sQ0FBQyxHQUFHLG9CQUFvQjtBQUM1QyxPQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUN6QyxTQUFLLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtBQUM1QixVQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7QUFDM0QsV0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztPQUM5QjtLQUNGO0dBQ0Y7O0FBRUQsU0FBTyxHQUFHLENBQUM7Q0FDWjs7QUFFTSxJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQzs7Ozs7O0FBS2hELElBQUksVUFBVSxHQUFHLG9CQUFTLEtBQUssRUFBRTtBQUMvQixTQUFPLE9BQU8sS0FBSyxLQUFLLFVBQVUsQ0FBQztDQUNwQyxDQUFDOzs7QUFHRixJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtBQUNuQixVQU9PLFVBQVUsR0FQakIsVUFBVSxHQUFHLFVBQVMsS0FBSyxFQUFFO0FBQzNCLFdBQ0UsT0FBTyxLQUFLLEtBQUssVUFBVSxJQUMzQixRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLG1CQUFtQixDQUM1QztHQUNILENBQUM7Q0FDSDtRQUNRLFVBQVUsR0FBVixVQUFVOzs7OztBQUlaLElBQU0sT0FBTyxHQUNsQixLQUFLLENBQUMsT0FBTyxJQUNiLFVBQVMsS0FBSyxFQUFFO0FBQ2QsU0FBTyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxHQUNyQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLGdCQUFnQixHQUN6QyxLQUFLLENBQUM7Q0FDWCxDQUFDOzs7OztBQUdHLFNBQVMsT0FBTyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUU7QUFDcEMsT0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUNoRCxRQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLEVBQUU7QUFDdEIsYUFBTyxDQUFDLENBQUM7S0FDVjtHQUNGO0FBQ0QsU0FBTyxDQUFDLENBQUMsQ0FBQztDQUNYOztBQUVNLFNBQVMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFO0FBQ3ZDLE1BQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFOztBQUU5QixRQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO0FBQzNCLGFBQU8sTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO0tBQ3hCLE1BQU0sSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFO0FBQ3pCLGFBQU8sRUFBRSxDQUFDO0tBQ1gsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFO0FBQ2xCLGFBQU8sTUFBTSxHQUFHLEVBQUUsQ0FBQztLQUNwQjs7Ozs7QUFLRCxVQUFNLEdBQUcsRUFBRSxHQUFHLE1BQU0sQ0FBQztHQUN0Qjs7QUFFRCxNQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRTtBQUMxQixXQUFPLE1BQU0sQ0FBQztHQUNmO0FBQ0QsU0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztDQUM3Qzs7QUFFTSxTQUFTLE9BQU8sQ0FBQyxLQUFLLEVBQUU7QUFDN0IsTUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFO0FBQ3pCLFdBQU8sSUFBSSxDQUFDO0dBQ2IsTUFBTSxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtBQUMvQyxXQUFPLElBQUksQ0FBQztHQUNiLE1BQU07QUFDTCxXQUFPLEtBQUssQ0FBQztHQUNkO0NBQ0Y7O0FBRU0sU0FBUyxXQUFXLENBQUMsTUFBTSxFQUFFO0FBQ2xDLE1BQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDL0IsT0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7QUFDdkIsU0FBTyxLQUFLLENBQUM7Q0FDZDs7QUFFTSxTQUFTLFdBQVcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO0FBQ3ZDLFFBQU0sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO0FBQ2xCLFNBQU8sTUFBTSxDQUFDO0NBQ2Y7O0FBRU0sU0FBUyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFO0FBQ2pELFNBQU8sQ0FBQyxXQUFXLEdBQUcsV0FBVyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUEsR0FBSSxFQUFFLENBQUM7Q0FDcEQiLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBlc2NhcGUgPSB7XG4gICcmJzogJyZhbXA7JyxcbiAgJzwnOiAnJmx0OycsXG4gICc+JzogJyZndDsnLFxuICAnXCInOiAnJnF1b3Q7JyxcbiAgXCInXCI6ICcmI3gyNzsnLFxuICAnYCc6ICcmI3g2MDsnLFxuICAnPSc6ICcmI3gzRDsnXG59O1xuXG5jb25zdCBiYWRDaGFycyA9IC9bJjw+XCInYD1dL2csXG4gIHBvc3NpYmxlID0gL1smPD5cIidgPV0vO1xuXG5mdW5jdGlvbiBlc2NhcGVDaGFyKGNocikge1xuICByZXR1cm4gZXNjYXBlW2Nocl07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmQob2JqIC8qICwgLi4uc291cmNlICovKSB7XG4gIGZvciAobGV0IGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgZm9yIChsZXQga2V5IGluIGFyZ3VtZW50c1tpXSkge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhcmd1bWVudHNbaV0sIGtleSkpIHtcbiAgICAgICAgb2JqW2tleV0gPSBhcmd1bWVudHNbaV1ba2V5XTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gb2JqO1xufVxuXG5leHBvcnQgbGV0IHRvU3RyaW5nID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztcblxuLy8gU291cmNlZCBmcm9tIGxvZGFzaFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2Jlc3RpZWpzL2xvZGFzaC9ibG9iL21hc3Rlci9MSUNFTlNFLnR4dFxuLyogZXNsaW50LWRpc2FibGUgZnVuYy1zdHlsZSAqL1xubGV0IGlzRnVuY3Rpb24gPSBmdW5jdGlvbih2YWx1ZSkge1xuICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nO1xufTtcbi8vIGZhbGxiYWNrIGZvciBvbGRlciB2ZXJzaW9ucyBvZiBDaHJvbWUgYW5kIFNhZmFyaVxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmlmIChpc0Z1bmN0aW9uKC94LykpIHtcbiAgaXNGdW5jdGlvbiA9IGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgdG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IEZ1bmN0aW9uXSdcbiAgICApO1xuICB9O1xufVxuZXhwb3J0IHsgaXNGdW5jdGlvbiB9O1xuLyogZXNsaW50LWVuYWJsZSBmdW5jLXN0eWxlICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5leHBvcnQgY29uc3QgaXNBcnJheSA9XG4gIEFycmF5LmlzQXJyYXkgfHxcbiAgZnVuY3Rpb24odmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0J1xuICAgICAgPyB0b1N0cmluZy5jYWxsKHZhbHVlKSA9PT0gJ1tvYmplY3QgQXJyYXldJ1xuICAgICAgOiBmYWxzZTtcbiAgfTtcblxuLy8gT2xkZXIgSUUgdmVyc2lvbnMgZG8gbm90IGRpcmVjdGx5IHN1cHBvcnQgaW5kZXhPZiBzbyB3ZSBtdXN0IGltcGxlbWVudCBvdXIgb3duLCBzYWRseS5cbmV4cG9ydCBmdW5jdGlvbiBpbmRleE9mKGFycmF5LCB2YWx1ZSkge1xuICBmb3IgKGxldCBpID0gMCwgbGVuID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICBpZiAoYXJyYXlbaV0gPT09IHZhbHVlKSB7XG4gICAgICByZXR1cm4gaTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIC0xO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlRXhwcmVzc2lvbihzdHJpbmcpIHtcbiAgaWYgKHR5cGVvZiBzdHJpbmcgIT09ICdzdHJpbmcnKSB7XG4gICAgLy8gZG9uJ3QgZXNjYXBlIFNhZmVTdHJpbmdzLCBzaW5jZSB0aGV5J3JlIGFscmVhZHkgc2FmZVxuICAgIGlmIChzdHJpbmcgJiYgc3RyaW5nLnRvSFRNTCkge1xuICAgICAgcmV0dXJuIHN0cmluZy50b0hUTUwoKTtcbiAgICB9IGVsc2UgaWYgKHN0cmluZyA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfSBlbHNlIGlmICghc3RyaW5nKSB7XG4gICAgICByZXR1cm4gc3RyaW5nICsgJyc7XG4gICAgfVxuXG4gICAgLy8gRm9yY2UgYSBzdHJpbmcgY29udmVyc2lvbiBhcyB0aGlzIHdpbGwgYmUgZG9uZSBieSB0aGUgYXBwZW5kIHJlZ2FyZGxlc3MgYW5kXG4gICAgLy8gdGhlIHJlZ2V4IHRlc3Qgd2lsbCBkbyB0aGlzIHRyYW5zcGFyZW50bHkgYmVoaW5kIHRoZSBzY2VuZXMsIGNhdXNpbmcgaXNzdWVzIGlmXG4gICAgLy8gYW4gb2JqZWN0J3MgdG8gc3RyaW5nIGhhcyBlc2NhcGVkIGNoYXJhY3RlcnMgaW4gaXQuXG4gICAgc3RyaW5nID0gJycgKyBzdHJpbmc7XG4gIH1cblxuICBpZiAoIXBvc3NpYmxlLnRlc3Qoc3RyaW5nKSkge1xuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cbiAgcmV0dXJuIHN0cmluZy5yZXBsYWNlKGJhZENoYXJzLCBlc2NhcGVDaGFyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRW1wdHkodmFsdWUpIHtcbiAgaWYgKCF2YWx1ZSAmJiB2YWx1ZSAhPT0gMCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9IGVsc2UgaWYgKGlzQXJyYXkodmFsdWUpICYmIHZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRnJhbWUob2JqZWN0KSB7XG4gIGxldCBmcmFtZSA9IGV4dGVuZCh7fSwgb2JqZWN0KTtcbiAgZnJhbWUuX3BhcmVudCA9IG9iamVjdDtcbiAgcmV0dXJuIGZyYW1lO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYmxvY2tQYXJhbXMocGFyYW1zLCBpZHMpIHtcbiAgcGFyYW1zLnBhdGggPSBpZHM7XG4gIHJldHVybiBwYXJhbXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmRDb250ZXh0UGF0aChjb250ZXh0UGF0aCwgaWQpIHtcbiAgcmV0dXJuIChjb250ZXh0UGF0aCA/IGNvbnRleHRQYXRoICsgJy4nIDogJycpICsgaWQ7XG59XG4iXX0=\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","'use strict';\n\nexports.__esModule = true;\nvar errorProps = ['description', 'fileName', 'lineNumber', 'endLineNumber', 'message', 'name', 'number', 'stack'];\n\nfunction Exception(message, node) {\n var loc = node && node.loc,\n line = undefined,\n endLineNumber = undefined,\n column = undefined,\n endColumn = undefined;\n\n if (loc) {\n line = loc.start.line;\n endLineNumber = loc.end.line;\n column = loc.start.column;\n endColumn = loc.end.column;\n\n message += ' - ' + line + ':' + column;\n }\n\n var tmp = Error.prototype.constructor.call(this, message);\n\n // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.\n for (var idx = 0; idx < errorProps.length; idx++) {\n this[errorProps[idx]] = tmp[errorProps[idx]];\n }\n\n /* istanbul ignore else */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, Exception);\n }\n\n try {\n if (loc) {\n this.lineNumber = line;\n this.endLineNumber = endLineNumber;\n\n // Work around issue under safari where we can't directly set the column value\n /* istanbul ignore next */\n if (Object.defineProperty) {\n Object.defineProperty(this, 'column', {\n value: column,\n enumerable: true\n });\n Object.defineProperty(this, 'endColumn', {\n value: endColumn,\n enumerable: true\n });\n } else {\n this.column = column;\n this.endColumn = endColumn;\n }\n }\n } catch (nop) {\n /* Ignore if the browser is very particular */\n }\n}\n\nException.prototype = new Error();\n\nexports['default'] = Exception;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2V4Y2VwdGlvbi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFNLFVBQVUsR0FBRyxDQUNqQixhQUFhLEVBQ2IsVUFBVSxFQUNWLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUNULE1BQU0sRUFDTixRQUFRLEVBQ1IsT0FBTyxDQUNSLENBQUM7O0FBRUYsU0FBUyxTQUFTLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRTtBQUNoQyxNQUFJLEdBQUcsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLEdBQUc7TUFDeEIsSUFBSSxZQUFBO01BQ0osYUFBYSxZQUFBO01BQ2IsTUFBTSxZQUFBO01BQ04sU0FBUyxZQUFBLENBQUM7O0FBRVosTUFBSSxHQUFHLEVBQUU7QUFDUCxRQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7QUFDdEIsaUJBQWEsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztBQUM3QixVQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7QUFDMUIsYUFBUyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDOztBQUUzQixXQUFPLElBQUksS0FBSyxHQUFHLElBQUksR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDO0dBQ3hDOztBQUVELE1BQUksR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7OztBQUcxRCxPQUFLLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRTtBQUNoRCxRQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0dBQzlDOzs7QUFHRCxNQUFJLEtBQUssQ0FBQyxpQkFBaUIsRUFBRTtBQUMzQixTQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0dBQzFDOztBQUVELE1BQUk7QUFDRixRQUFJLEdBQUcsRUFBRTtBQUNQLFVBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0FBQ3ZCLFVBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDOzs7O0FBSW5DLFVBQUksTUFBTSxDQUFDLGNBQWMsRUFBRTtBQUN6QixjQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUU7QUFDcEMsZUFBSyxFQUFFLE1BQU07QUFDYixvQkFBVSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO0FBQ0gsY0FBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO0FBQ3ZDLGVBQUssRUFBRSxTQUFTO0FBQ2hCLG9CQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7T0FDSixNQUFNO0FBQ0wsWUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7QUFDckIsWUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7T0FDNUI7S0FDRjtHQUNGLENBQUMsT0FBTyxHQUFHLEVBQUU7O0dBRWI7Q0FDRjs7QUFFRCxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7O3FCQUVuQixTQUFTIiwiZmlsZSI6ImV4Y2VwdGlvbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGVycm9yUHJvcHMgPSBbXG4gICdkZXNjcmlwdGlvbicsXG4gICdmaWxlTmFtZScsXG4gICdsaW5lTnVtYmVyJyxcbiAgJ2VuZExpbmVOdW1iZXInLFxuICAnbWVzc2FnZScsXG4gICduYW1lJyxcbiAgJ251bWJlcicsXG4gICdzdGFjaydcbl07XG5cbmZ1bmN0aW9uIEV4Y2VwdGlvbihtZXNzYWdlLCBub2RlKSB7XG4gIGxldCBsb2MgPSBub2RlICYmIG5vZGUubG9jLFxuICAgIGxpbmUsXG4gICAgZW5kTGluZU51bWJlcixcbiAgICBjb2x1bW4sXG4gICAgZW5kQ29sdW1uO1xuXG4gIGlmIChsb2MpIHtcbiAgICBsaW5lID0gbG9jLnN0YXJ0LmxpbmU7XG4gICAgZW5kTGluZU51bWJlciA9IGxvYy5lbmQubGluZTtcbiAgICBjb2x1bW4gPSBsb2Muc3RhcnQuY29sdW1uO1xuICAgIGVuZENvbHVtbiA9IGxvYy5lbmQuY29sdW1uO1xuXG4gICAgbWVzc2FnZSArPSAnIC0gJyArIGxpbmUgKyAnOicgKyBjb2x1bW47XG4gIH1cblxuICBsZXQgdG1wID0gRXJyb3IucHJvdG90eXBlLmNvbnN0cnVjdG9yLmNhbGwodGhpcywgbWVzc2FnZSk7XG5cbiAgLy8gVW5mb3J0dW5hdGVseSBlcnJvcnMgYXJlIG5vdCBlbnVtZXJhYmxlIGluIENocm9tZSAoYXQgbGVhc3QpLCBzbyBgZm9yIHByb3AgaW4gdG1wYCBkb2Vzbid0IHdvcmsuXG4gIGZvciAobGV0IGlkeCA9IDA7IGlkeCA8IGVycm9yUHJvcHMubGVuZ3RoOyBpZHgrKykge1xuICAgIHRoaXNbZXJyb3JQcm9wc1tpZHhdXSA9IHRtcFtlcnJvclByb3BzW2lkeF1dO1xuICB9XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgaWYgKEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKSB7XG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgRXhjZXB0aW9uKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgaWYgKGxvYykge1xuICAgICAgdGhpcy5saW5lTnVtYmVyID0gbGluZTtcbiAgICAgIHRoaXMuZW5kTGluZU51bWJlciA9IGVuZExpbmVOdW1iZXI7XG5cbiAgICAgIC8vIFdvcmsgYXJvdW5kIGlzc3VlIHVuZGVyIHNhZmFyaSB3aGVyZSB3ZSBjYW4ndCBkaXJlY3RseSBzZXQgdGhlIGNvbHVtbiB2YWx1ZVxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdjb2x1bW4nLCB7XG4gICAgICAgICAgdmFsdWU6IGNvbHVtbixcbiAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ2VuZENvbHVtbicsIHtcbiAgICAgICAgICB2YWx1ZTogZW5kQ29sdW1uLFxuICAgICAgICAgIGVudW1lcmFibGU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvbHVtbiA9IGNvbHVtbjtcbiAgICAgICAgdGhpcy5lbmRDb2x1bW4gPSBlbmRDb2x1bW47XG4gICAgICB9XG4gICAgfVxuICB9IGNhdGNoIChub3ApIHtcbiAgICAvKiBJZ25vcmUgaWYgdGhlIGJyb3dzZXIgaXMgdmVyeSBwYXJ0aWN1bGFyICovXG4gIH1cbn1cblxuRXhjZXB0aW9uLnByb3RvdHlwZSA9IG5ldyBFcnJvcigpO1xuXG5leHBvcnQgZGVmYXVsdCBFeGNlcHRpb247XG4iXX0=\n","\"use strict\";\n\nrequire(\"core-js/modules/es.object.assign\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _axios = _interopRequireDefault(require(\"axios\"));\n\nvar _auth = require(\"@nextcloud/auth\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar client = _axios.default.create({\n headers: {\n requesttoken: (0, _auth.getRequestToken)()\n }\n});\n\nvar cancelableClient = Object.assign(client, {\n CancelToken: _axios.default.CancelToken,\n isCancel: _axios.default.isCancel\n});\n(0, _auth.onRequestTokenUpdate)(function (token) {\n return client.defaults.headers.requesttoken = token;\n});\nvar _default = cancelableClient;\nexports.default = _default;\n//# sourceMappingURL=index.js.map","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","/*!\n * Vue.js v2.6.11\n * (c) 2014-2019 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a string containing static keys from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (target) {\n targetStack.push(target);\n Dep.target = target;\n}\n\nfunction popTarget () {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n protoAugment(value, arrayMethods);\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar isUsingMicroTask = false;\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n isUsingMicroTask = true;\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n isUsingMicroTask = true;\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive$$1(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject)\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n // #6574 in case the inject object is observed...\n if (key === '__ob__') { continue }\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n if (!children || !children.length) {\n return {}\n }\n var slots = {};\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n (slots.default || (slots.default = [])).push(child);\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\n/* */\n\nfunction normalizeScopedSlots (\n slots,\n normalSlots,\n prevSlots\n) {\n var res;\n var hasNormalSlots = Object.keys(normalSlots).length > 0;\n var isStable = slots ? !!slots.$stable : !hasNormalSlots;\n var key = slots && slots.$key;\n if (!slots) {\n res = {};\n } else if (slots._normalized) {\n // fast path 1: child component re-render only, parent did not change\n return slots._normalized\n } else if (\n isStable &&\n prevSlots &&\n prevSlots !== emptyObject &&\n key === prevSlots.$key &&\n !hasNormalSlots &&\n !prevSlots.$hasNormal\n ) {\n // fast path 2: stable scoped slots w/ no normal slots to proxy,\n // only need to normalize once\n return prevSlots\n } else {\n res = {};\n for (var key$1 in slots) {\n if (slots[key$1] && key$1[0] !== '$') {\n res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);\n }\n }\n }\n // expose normal slots on scopedSlots\n for (var key$2 in normalSlots) {\n if (!(key$2 in res)) {\n res[key$2] = proxyNormalSlot(normalSlots, key$2);\n }\n }\n // avoriaz seems to mock a non-extensible $scopedSlots object\n // and when that is passed down this would cause an error\n if (slots && Object.isExtensible(slots)) {\n (slots)._normalized = res;\n }\n def(res, '$stable', isStable);\n def(res, '$key', key);\n def(res, '$hasNormal', hasNormalSlots);\n return res\n}\n\nfunction normalizeScopedSlot(normalSlots, key, fn) {\n var normalized = function () {\n var res = arguments.length ? fn.apply(null, arguments) : fn({});\n res = res && typeof res === 'object' && !Array.isArray(res)\n ? [res] // single vnode\n : normalizeChildren(res);\n return res && (\n res.length === 0 ||\n (res.length === 1 && res[0].isComment) // #9658\n ) ? undefined\n : res\n };\n // this is a slot using the new v-slot syntax without scope. although it is\n // compiled as a scoped slot, render fn users would expect it to be present\n // on this.$slots because the usage is semantically a normal slot.\n if (fn.proxy) {\n Object.defineProperty(normalSlots, key, {\n get: normalized,\n enumerable: true,\n configurable: true\n });\n }\n return normalized\n}\n\nfunction proxyNormalSlot(slots, key) {\n return function () { return slots[key]; }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n if (hasSymbol && val[Symbol.iterator]) {\n ret = [];\n var iterator = val[Symbol.iterator]();\n var result = iterator.next();\n while (!result.done) {\n ret.push(render(result.value, ret.length));\n result = iterator.next();\n }\n } else {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n }\n if (!isDef(ret)) {\n ret = [];\n }\n (ret)._isVList = true;\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes = scopedSlotFn(props) || fallback;\n } else {\n nodes = this.$slots[name] || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n var camelizedKey = camelize(key);\n var hyphenatedKey = hyphenate(key);\n if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res,\n // the following are added in 2.6\n hasDynamicKeys,\n contentHashKey\n) {\n res = res || { $stable: !hasDynamicKeys };\n for (var i = 0; i < fns.length; i++) {\n var slot = fns[i];\n if (Array.isArray(slot)) {\n resolveScopedSlots(slot, res, hasDynamicKeys);\n } else if (slot) {\n // marker for reverse proxying v-slot without scope on this.$slots\n if (slot.proxy) {\n slot.fn.proxy = true;\n }\n res[slot.key] = slot.fn;\n }\n }\n if (contentHashKey) {\n (res).$key = contentHashKey;\n }\n return res\n}\n\n/* */\n\nfunction bindDynamicKeys (baseObj, values) {\n for (var i = 0; i < values.length; i += 2) {\n var key = values[i];\n if (typeof key === 'string' && key) {\n baseObj[values[i]] = values[i + 1];\n } else if (process.env.NODE_ENV !== 'production' && key !== '' && key !== null) {\n // null is a special value for explicitly removing a binding\n warn(\n (\"Invalid value for dynamic directive argument (expected string or null): \" + key),\n this\n );\n }\n }\n return baseObj\n}\n\n// helper to dynamically append modifier runtime markers to event names.\n// ensure only append when value is already string, otherwise it will be cast\n// to string and cause the type check to miss.\nfunction prependModifier (value, symbol) {\n return typeof value === 'string' ? symbol + value : value\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n target._d = bindDynamicKeys;\n target._p = prependModifier;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var this$1 = this;\n\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () {\n if (!this$1.$slots) {\n normalizeScopedSlots(\n data.scopedSlots,\n this$1.$slots = resolveSlots(children, parent)\n );\n }\n return this$1.$slots\n };\n\n Object.defineProperty(this, 'scopedSlots', ({\n enumerable: true,\n get: function get () {\n return normalizeScopedSlots(data.scopedSlots, this.slots())\n }\n }));\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (process.env.NODE_ENV !== 'production') {\n (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;\n }\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (vnode, hydrating) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent // activeInstance in lifecycle state\n) {\n var options = {\n _isComponent: true,\n _parentVnode: vnode,\n parent: parent\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var existing = hooks[key];\n var toMerge = componentVNodeHooks[key];\n if (existing !== toMerge && !(existing && existing._merged)) {\n hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;\n }\n }\n}\n\nfunction mergeHook$1 (f1, f2) {\n var merged = function (a, b) {\n // flow complains about extra args which is why we use any\n f1(a, b);\n f2(a, b);\n };\n merged._merged = true;\n return merged\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input'\n ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n var existing = on[event];\n var callback = data.model.callback;\n if (isDef(existing)) {\n if (\n Array.isArray(existing)\n ? existing.indexOf(callback) === -1\n : existing !== callback\n ) {\n on[event] = [callback].concat(existing);\n }\n } else {\n on[event] = callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n if (process.env.NODE_ENV !== 'production' && isDef(data) && isDef(data.nativeOn)) {\n warn(\n (\"The .native modifier for v-on is only valid on components but it was used on <\" + tag + \">.\"),\n context\n );\n }\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nvar currentRenderingInstance = null;\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (_parentVnode) {\n vm.$scopedSlots = normalizeScopedSlots(\n _parentVnode.data.scopedSlots,\n vm.$slots,\n vm.$scopedSlots\n );\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n // There's no need to maintain a stack because all render fns are called\n // separately from one another. Nested component's render fns are called\n // when parent component is patched.\n currentRenderingInstance = vm;\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production' && vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } finally {\n currentRenderingInstance = null;\n }\n // if the returned array contains only a single node, allow it\n if (Array.isArray(vnode) && vnode.length === 1) {\n vnode = vnode[0];\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n var owner = currentRenderingInstance;\n if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {\n // already pending\n factory.owners.push(owner);\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (owner && !isDef(factory.owners)) {\n var owners = factory.owners = [owner];\n var sync = true;\n var timerLoading = null;\n var timerTimeout = null\n\n ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });\n\n var forceRender = function (renderCompleted) {\n for (var i = 0, l = owners.length; i < l; i++) {\n (owners[i]).$forceUpdate();\n }\n\n if (renderCompleted) {\n owners.length = 0;\n if (timerLoading !== null) {\n clearTimeout(timerLoading);\n timerLoading = null;\n }\n if (timerTimeout !== null) {\n clearTimeout(timerTimeout);\n timerTimeout = null;\n }\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender(true);\n } else {\n owners.length = 0;\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender(true);\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (isPromise(res)) {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isPromise(res.component)) {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n timerLoading = setTimeout(function () {\n timerLoading = null;\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender(false);\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n timerTimeout = setTimeout(function () {\n timerTimeout = null;\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn) {\n target.$on(event, fn);\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction createOnceHandler (event, fn) {\n var _target = target;\n return function onceHandler () {\n var res = fn.apply(null, arguments);\n if (res !== null) {\n _target.$off(event, onceHandler);\n }\n }\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n vm.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {\n vm.$off(event[i$1], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n // specific handler\n var cb;\n var i = cbs.length;\n while (i--) {\n cb = cbs[i];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i, 1);\n break\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n var info = \"event handler for \\\"\" + event + \"\\\"\";\n for (var i = 0, l = cbs.length; i < l; i++) {\n invokeWithErrorHandling(cbs[i], vm, args, vm, info);\n }\n }\n return vm\n };\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction setActiveInstance(vm) {\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n return function () {\n activeInstance = prevActiveInstance;\n }\n}\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var restoreActiveInstance = setActiveInstance(vm);\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n restoreActiveInstance();\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, {\n before: function before () {\n if (vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'beforeUpdate');\n }\n }\n }, true /* isRenderWatcher */);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren.\n\n // check if there are dynamic scopedSlots (hand-written or compiled but with\n // dynamic slot names). Static scoped slots compiled from template has the\n // \"$stable\" marker.\n var newScopedSlots = parentVnode.data.scopedSlots;\n var oldScopedSlots = vm.$scopedSlots;\n var hasDynamicScopedSlot = !!(\n (newScopedSlots && !newScopedSlots.$stable) ||\n (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||\n (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)\n );\n\n // Any static slot children from the parent may have changed during parent's\n // update. Dynamic scoped slots may also have changed. In such cases, a forced\n // update is necessary to ensure correctness.\n var needsForceUpdate = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n hasDynamicScopedSlot\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (needsForceUpdate) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n invokeWithErrorHandling(handlers[i], vm, null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n// Async edge case #6566 requires saving the timestamp when event listeners are\n// attached. However, calling performance.now() has a perf overhead especially\n// if the page has thousands of event listeners. Instead, we take a timestamp\n// every time the scheduler flushes and use that for all event listeners\n// attached during that flush.\nvar currentFlushTimestamp = 0;\n\n// Async edge case fix requires storing an event listener's attach timestamp.\nvar getNow = Date.now;\n\n// Determine what event timestamp the browser is using. Annoyingly, the\n// timestamp can either be hi-res (relative to page load) or low-res\n// (relative to UNIX epoch), so in order to compare time we have to use the\n// same timestamp type when saving the flush timestamp.\n// All IE versions use low-res event timestamps, and have problematic clock\n// implementations (#9632)\nif (inBrowser && !isIE) {\n var performance = window.performance;\n if (\n performance &&\n typeof performance.now === 'function' &&\n getNow() > document.createEvent('Event').timeStamp\n ) {\n // if the event timestamp, although evaluated AFTER the Date.now(), is\n // smaller than it, it means the event is using a hi-res timestamp,\n // and we need to use the hi-res version for event listener timestamps as\n // well.\n getNow = function () { return performance.now(); };\n }\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n currentFlushTimestamp = getNow();\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n if (watcher.before) {\n watcher.before();\n }\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n flushSchedulerQueue();\n return\n }\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\n\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n this.before = options.before;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = noop;\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var i = this.deps.length;\n while (i--) {\n var dep = this.deps[i];\n if (!this.newDepIds.has(dep.id)) {\n dep.removeSub(this);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var i = this.deps.length;\n while (i--) {\n this.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this.deps[i].removeSub(this);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive$$1(props, key, value, function () {\n if (!isRoot && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive$$1(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : createGetterInvoker(userDef);\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : createGetterInvoker(userDef.get)\n : noop;\n sharedPropertyDefinition.set = userDef.set || noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction createGetterInvoker(fn) {\n return function computedGetter () {\n return fn.call(this, this)\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (typeof methods[key] !== 'function') {\n warn(\n \"Method \\\"\" + key + \"\\\" has type \\\"\" + (typeof methods[key]) + \"\\\" in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function () {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n try {\n cb.call(vm, watcher.value);\n } catch (error) {\n handleError(error, vm, (\"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\"));\n }\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = latest[key];\n }\n }\n return modified\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\n\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n for (var key in this.cache) {\n pruneCacheEntry(this.cache, key, this.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive$$1\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n // 2.6 explicit observable API\n Vue.observable = function (obj) {\n observe(obj);\n return obj\n };\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.6.11';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isValidContentEditableValue = makeMap('events,caret,typing,plaintext-only');\n\nvar convertEnumeratedValue = function (key, value) {\n return isFalsyAttrValue(value) || value === 'false'\n ? 'false'\n // allow arbitrary string value for contenteditable\n : key === 'contenteditable' && isValidContentEditableValue(value)\n ? value\n : 'true'\n};\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode && childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode && parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setStyleScope (node, scopeId) {\n node.setAttribute(scopeId, '');\n}\n\nvar nodeOps = /*#__PURE__*/Object.freeze({\n createElement: createElement$1,\n createElementNS: createElementNS,\n createTextNode: createTextNode,\n createComment: createComment,\n insertBefore: insertBefore,\n removeChild: removeChild,\n appendChild: appendChild,\n parentNode: parentNode,\n nextSibling: nextSibling,\n tagName: tagName,\n setTextContent: setTextContent,\n setStyleScope: setStyleScope\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!isDef(key)) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove$$1 () {\n if (--remove$$1.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove$$1.listeners = listeners;\n return remove$$1\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n function isUnknownElement$$1 (vnode, inVPre) {\n return (\n !inVPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(vnode.tag)\n : ignore === vnode.tag\n })\n ) &&\n config.isUnknownElement(vnode.tag)\n )\n }\n\n var creatingElmInVPre = 0;\n\n function createElm (\n vnode,\n insertedVnodeQueue,\n parentElm,\n refElm,\n nested,\n ownerArray,\n index\n ) {\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // This vnode was used in a previous render!\n // now it's used as a new node, overwriting its elm would cause\n // potential patch errors down the road when it's used as an insertion\n // reference node. Instead, we clone the node on-demand before creating\n // associated DOM element for it.\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n creatingElmInVPre++;\n }\n if (isUnknownElement$$1(vnode, creatingElmInVPre)) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n creatingElmInVPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n insert(parentElm, vnode.elm, refElm);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (nodeOps.parentNode(ref$$1) === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(children);\n }\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.fnScopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.fnContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(newCh);\n }\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n } else {\n vnodeToMove = oldCh[idxInOld];\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function checkDuplicateKeys (children) {\n var seenKeys = {};\n for (var i = 0; i < children.length; i++) {\n var vnode = children[i];\n var key = vnode.key;\n if (isDef(key)) {\n if (seenKeys[key]) {\n warn(\n (\"Duplicate keys detected: '\" + key + \"'. This may cause an update error.\"),\n vnode.context\n );\n } else {\n seenKeys[key] = true;\n }\n }\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (\n oldVnode,\n vnode,\n insertedVnodeQueue,\n ownerArray,\n index,\n removeOnly\n ) {\n if (oldVnode === vnode) {\n return\n }\n\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // clone reused vnode\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(ch);\n }\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var hydrationBailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n // Note: style is excluded because it relies on initial clone for future\n // deep updates (#7063).\n var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {\n var i;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n inVPre = inVPre || (data && data.pre);\n vnode.elm = elm;\n\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.isAsyncPlaceholder = true;\n return true\n }\n // assert node match\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode, inVPre)) {\n return false\n }\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n var fullInvoke = false;\n for (var key in data) {\n if (!isRenderedModule(key)) {\n fullInvoke = true;\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n if (!fullInvoke && data['class']) {\n // ensure collecting deps for deep class bindings for future updates\n traverse(data['class']);\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode, inVPre) {\n if (isDef(vnode.tag)) {\n return vnode.tag.indexOf('vue-component') === 0 || (\n !isUnknownElement$$1(vnode, inVPre) &&\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, null, null, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm = nodeOps.parentNode(oldElm);\n\n // create new node\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm,\n nodeOps.nextSibling(oldElm)\n );\n\n // update parent placeholder node element, recursively\n if (isDef(vnode.parent)) {\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n // destroy old node\n if (isDef(parentElm)) {\n removeVnodes([oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n dir.oldArg = oldDir.arg;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode, 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n // $flow-disable-line\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n // $flow-disable-line\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n // $flow-disable-line\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (el.tagName.indexOf('-') > -1) {\n baseSetAttr(el, key, value);\n } else if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, convertEnumeratedValue(key, value));\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n baseSetAttr(el, key, value);\n }\n}\n\nfunction baseSetAttr (el, key, value) {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // #7138: IE10 & 11 fires input event when setting placeholder on\n // <textarea>... block the first input event and remove the blocker\n // immediately.\n /* istanbul ignore if */\n if (\n isIE && !isIE9 &&\n el.tagName === 'TEXTAREA' &&\n key === 'placeholder' && value !== '' && !el.__ieph\n ) {\n var blocker = function (e) {\n e.stopImmediatePropagation();\n el.removeEventListener('input', blocker);\n };\n el.addEventListener('input', blocker);\n // $flow-disable-line\n el.__ieph = true; /* IE placeholder patched */\n }\n el.setAttribute(key, value);\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + (args !== ')' ? ',' + args : args))\n }\n}\n\n/* */\n\n\n\n/* eslint-disable no-unused-vars */\nfunction baseWarn (msg, range) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n/* eslint-enable no-unused-vars */\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value, range, dynamic) {\n (el.props || (el.props = [])).push(rangeSetItem({ name: name, value: value, dynamic: dynamic }, range));\n el.plain = false;\n}\n\nfunction addAttr (el, name, value, range, dynamic) {\n var attrs = dynamic\n ? (el.dynamicAttrs || (el.dynamicAttrs = []))\n : (el.attrs || (el.attrs = []));\n attrs.push(rangeSetItem({ name: name, value: value, dynamic: dynamic }, range));\n el.plain = false;\n}\n\n// add a raw attr (use this in preTransforms)\nfunction addRawAttr (el, name, value, range) {\n el.attrsMap[name] = value;\n el.attrsList.push(rangeSetItem({ name: name, value: value }, range));\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n isDynamicArg,\n modifiers,\n range\n) {\n (el.directives || (el.directives = [])).push(rangeSetItem({\n name: name,\n rawName: rawName,\n value: value,\n arg: arg,\n isDynamicArg: isDynamicArg,\n modifiers: modifiers\n }, range));\n el.plain = false;\n}\n\nfunction prependModifierMarker (symbol, name, dynamic) {\n return dynamic\n ? (\"_p(\" + name + \",\\\"\" + symbol + \"\\\")\")\n : symbol + name // mark the event as captured\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn,\n range,\n dynamic\n) {\n modifiers = modifiers || emptyObject;\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n process.env.NODE_ENV !== 'production' && warn &&\n modifiers.prevent && modifiers.passive\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.',\n range\n );\n }\n\n // normalize click.right and click.middle since they don't actually fire\n // this is technically browser-specific, but at least for now browsers are\n // the only target envs that have right/middle clicks.\n if (modifiers.right) {\n if (dynamic) {\n name = \"(\" + name + \")==='click'?'contextmenu':(\" + name + \")\";\n } else if (name === 'click') {\n name = 'contextmenu';\n delete modifiers.right;\n }\n } else if (modifiers.middle) {\n if (dynamic) {\n name = \"(\" + name + \")==='click'?'mouseup':(\" + name + \")\";\n } else if (name === 'click') {\n name = 'mouseup';\n }\n }\n\n // check capture modifier\n if (modifiers.capture) {\n delete modifiers.capture;\n name = prependModifierMarker('!', name, dynamic);\n }\n if (modifiers.once) {\n delete modifiers.once;\n name = prependModifierMarker('~', name, dynamic);\n }\n /* istanbul ignore if */\n if (modifiers.passive) {\n delete modifiers.passive;\n name = prependModifierMarker('&', name, dynamic);\n }\n\n var events;\n if (modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n\n var newHandler = rangeSetItem({ value: value.trim(), dynamic: dynamic }, range);\n if (modifiers !== emptyObject) {\n newHandler.modifiers = modifiers;\n }\n\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n\n el.plain = false;\n}\n\nfunction getRawBindingAttr (\n el,\n name\n) {\n return el.rawAttrsMap[':' + name] ||\n el.rawAttrsMap['v-bind:' + name] ||\n el.rawAttrsMap[name]\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\nfunction getAndRemoveAttrByRegex (\n el,\n name\n) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n var attr = list[i];\n if (name.test(attr.name)) {\n list.splice(i, 1);\n return attr\n }\n }\n}\n\nfunction rangeSetItem (\n item,\n range\n) {\n if (range) {\n if (range.start != null) {\n item.start = range.start;\n }\n if (range.end != null) {\n item.end = range.end;\n }\n }\n return item\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: JSON.stringify(value),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len, str, chr, index$1, expressionPos, expressionEndPos;\n\n\n\nfunction parseModel (val) {\n // Fix https://github.com/vuejs/vue/pull/7730\n // allow v-model=\"obj.val \" (trailing whitespace)\n val = val.trim();\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (process.env.NODE_ENV !== 'production') {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\",\n el.rawAttrsMap['v-model']\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (process.env.NODE_ENV !== 'production') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.',\n el.rawAttrsMap['v-model']\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + (genAssignmentCode(value, '$$a.concat([$$v])')) + \")}\" +\n \"else{$$i>-1&&(\" + (genAssignmentCode(value, '$$a.slice(0,$$i).concat($$a.slice($$i+1))')) + \")}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n\n // warn if v-bind:value conflicts with v-model\n // except for inputs with v-bind:type\n if (process.env.NODE_ENV !== 'production') {\n var value$1 = el.attrsMap['v-bind:value'] || el.attrsMap[':value'];\n var typeBinding = el.attrsMap['v-bind:type'] || el.attrsMap[':type'];\n if (value$1 && !typeBinding) {\n var binding = el.attrsMap['v-bind:value'] ? 'v-bind:value' : ':value';\n warn$1(\n binding + \"=\\\"\" + value$1 + \"\\\" conflicts with v-model on the same element \" +\n 'because the latter already expands to a value binding internally',\n el.rawAttrsMap[binding]\n );\n }\n }\n\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler$1 (event, handler, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\n// #9446: Firefox <= 53 (in particular, ESR 52) has incorrect Event.timeStamp\n// implementation and does not fire microtasks in between event propagation, so\n// safe to exclude.\nvar useMicrotaskFix = isUsingMicroTask && !(isFF && Number(isFF[1]) <= 53);\n\nfunction add$1 (\n name,\n handler,\n capture,\n passive\n) {\n // async edge case #6566: inner click event triggers patch, event handler\n // attached to outer element during patch, and triggered again. This\n // happens because browsers fire microtask ticks between event propagation.\n // the solution is simple: we save the timestamp when a handler is attached,\n // and the handler would only fire if the event passed to it was fired\n // AFTER it was attached.\n if (useMicrotaskFix) {\n var attachedTimestamp = currentFlushTimestamp;\n var original = handler;\n handler = original._wrapper = function (e) {\n if (\n // no bubbling, should always fire.\n // this is just a safety net in case event.timeStamp is unreliable in\n // certain weird environments...\n e.target === e.currentTarget ||\n // event is fired after handler attachment\n e.timeStamp >= attachedTimestamp ||\n // bail for environments that have buggy event.timeStamp implementations\n // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState\n // #9681 QtWebEngine event.timeStamp is negative value\n e.timeStamp <= 0 ||\n // #9448 bail if event is fired in another document in a multi-page\n // electron/nw.js app, since event.timeStamp will be using a different\n // starting reference\n e.target.ownerDocument !== document\n ) {\n return original.apply(this, arguments)\n }\n };\n }\n target$1.addEventListener(\n name,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n name,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n name,\n handler._wrapper || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, createOnceHandler$1, vnode.context);\n target$1 = undefined;\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nvar svgContainer;\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (!(key in props)) {\n elm[key] = '';\n }\n }\n\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value' && elm.tagName !== 'PROGRESS') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else if (key === 'innerHTML' && isSVG(elm.tagName) && isUndef(elm.innerHTML)) {\n // IE doesn't support innerHTML for SVG elements\n svgContainer = svgContainer || document.createElement('div');\n svgContainer.innerHTML = \"<svg>\" + cur + \"</svg>\";\n var svg = svgContainer.firstChild;\n while (elm.firstChild) {\n elm.removeChild(elm.firstChild);\n }\n while (svg.firstChild) {\n elm.appendChild(svg.firstChild);\n }\n } else if (\n // skip the update if old and new VDOM state is the same.\n // `value` is handled separately because the DOM value may be temporarily\n // out of sync with VDOM state due to focus, composition and modifiers.\n // This #4521 by skipping the unnecesarry `checked` update.\n cur !== oldProps[key]\n ) {\n // some property updates can throw\n // e.g. `value` on <progress> w/ non-finite value\n try {\n elm[key] = cur;\n } catch (e) {}\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isNotInFocusAndDirty(elm, checkVal) ||\n isDirtyWithModifiers(elm, checkVal)\n ))\n}\n\nfunction isNotInFocusAndDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isDirtyWithModifiers (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers)) {\n if (modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (\n childNode && childNode.data &&\n (styleData = normalizeStyleData(childNode.data))\n ) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(hyphenate(name), val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\nvar whitespaceRE = /\\s+/;\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def$$1) {\n if (!def$$1) {\n return\n }\n /* istanbul ignore else */\n if (typeof def$$1 === 'object') {\n var res = {};\n if (def$$1.css !== false) {\n extend(res, autoCssTransition(def$$1.name || 'v'));\n }\n extend(res, def$$1);\n return res\n } else if (typeof def$$1 === 'string') {\n return autoCssTransition(def$$1)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n // JSDOM may return undefined for transition properties\n var transitionDelays = (styles[transitionProp + 'Delay'] || '').split(', ');\n var transitionDurations = (styles[transitionProp + 'Duration'] || '').split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = (styles[animationProp + 'Delay'] || '').split(', ');\n var animationDurations = (styles[animationProp + 'Duration'] || '').split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\n// Old versions of Chromium (below 61.0.3163.100) formats floating pointer numbers\n// in a locale-dependent way, using a comma instead of a dot.\n// If comma is not replaced with a dot, the input will be rounded down (i.e. acting\n// as a floor function) causing unexpected behaviors\nfunction toMs (s) {\n return Number(s.slice(0, -1).replace(',', '.')) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n context = transitionNode.context;\n transitionNode = transitionNode.parent;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode, 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n removeTransitionClass(el, startClass);\n if (!cb.cancelled) {\n addTransitionClass(el, toClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data) || el.nodeType !== 1) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb)) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show && el.parentNode) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled) {\n addTransitionClass(el, leaveToClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar directive = {\n inserted: function inserted (el, binding, vnode, oldVnode) {\n if (vnode.tag === 'select') {\n // #6903\n if (oldVnode.elm && !oldVnode.elm._vOptions) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n directive.componentUpdated(el, binding, vnode);\n });\n } else {\n setSelected(el, binding, vnode.context);\n }\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (!value === !oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: directive,\n show: show\n};\n\n/* */\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar isNotTextNode = function (c) { return c.tag || isAsyncPlaceholder(c); };\n\nvar isVShowDirective = function (d) { return d.name === 'show'; };\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$slots.default;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(isNotTextNode);\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(isVShowDirective)) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild) &&\n // #6687 component root is a comment node\n !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n beforeMount: function beforeMount () {\n var this$1 = this;\n\n var update = this._update;\n this._update = function (vnode, hydrating) {\n var restoreActiveInstance = setActiveInstance(this$1);\n // force removing pass\n this$1.__patch__(\n this$1._vnode,\n this$1.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this$1._vnode = this$1.kept;\n restoreActiveInstance();\n update.call(this$1, vnode, hydrating);\n };\n },\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (e && e.target !== el) {\n return\n }\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue.config.mustUseProp = mustUseProp;\nVue.config.isReservedTag = isReservedTag;\nVue.config.isReservedAttr = isReservedAttr;\nVue.config.getTagNamespace = getTagNamespace;\nVue.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue.options.directives, platformDirectives);\nextend(Vue.options.components, platformComponents);\n\n// install platform patch function\nVue.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nif (inBrowser) {\n setTimeout(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue);\n } else if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test'\n ) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n config.productionTip !== false &&\n typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n }, 0);\n}\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\r?\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\n\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var rawTokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index, tokenValue;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n rawTokens.push(tokenValue = text.slice(lastIndex, index));\n tokens.push(JSON.stringify(tokenValue));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n rawTokens.push({ '@binding': exp });\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n rawTokens.push(tokenValue = text.slice(lastIndex));\n tokens.push(JSON.stringify(tokenValue));\n }\n return {\n expression: tokens.join('+'),\n tokens: rawTokens\n }\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (process.env.NODE_ENV !== 'production' && staticClass) {\n var res = parseText(staticClass, options.delimiters);\n if (res) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.',\n el.rawAttrsMap['class']\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n};\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(staticStyle, options.delimiters);\n if (res) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.',\n el.rawAttrsMap['style']\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar dynamicArgAttribute = /^\\s*((?:v-[\\w-]+:|@|:|#)\\[[^=]+\\][^\\s\"'<>\\/=]*)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar ncname = \"[a-zA-Z_][\\\\-\\\\.0-9_a-zA-Z\" + (unicodeRegExp.source) + \"]*\";\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\n// #7298: escape - to avoid being passed as HTML comment when inlined in page\nvar comment = /^<!\\--/;\nvar conditionalComment = /^<!\\[/;\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n',\n '&#9;': '\\t',\n '&#39;': \"'\"\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp|#39);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#39|#10|#9);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd), index, index + commentEnd + 3);\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(startTagMatch.tagName, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n }\n\n if (text) {\n advance(text.length);\n }\n\n if (options.chars && text) {\n options.chars(text, index - text.length, index);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!\\--([\\s\\S]*?)-->/g, '$1') // #7298\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (process.env.NODE_ENV !== 'production' && !stack.length && options.warn) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"), { start: index + html.length });\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(dynamicArgAttribute) || html.match(attribute))) {\n attr.start = index;\n advance(attr[0].length);\n attr.end = index;\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n var value = args[3] || args[4] || args[5] || '';\n var shouldDecodeNewlines = tagName === 'a' && args[1] === 'href'\n ? options.shouldDecodeNewlinesForHref\n : options.shouldDecodeNewlines;\n attrs[i] = {\n name: args[1],\n value: decodeAttr(value, shouldDecodeNewlines)\n };\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n attrs[i].start = args.start + args[0].match(/^\\s*/).length;\n attrs[i].end = args.end;\n }\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs, start: match.start, end: match.end });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (process.env.NODE_ENV !== 'production' &&\n (i > pos || !tagName) &&\n options.warn\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\"),\n { start: stack[i].start, end: stack[i].end }\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:|^#/;\nvar forAliasRE = /([\\s\\S]*?)\\s+(?:in|of)\\s+([\\s\\S]*)/;\nvar forIteratorRE = /,([^,\\}\\]]*)(?:,([^,\\}\\]]*))?$/;\nvar stripParensRE = /^\\(|\\)$/g;\nvar dynamicArgRE = /^\\[.*\\]$/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^\\.|^v-bind:/;\nvar modifierRE = /\\.[^.\\]]+(?=[^\\]]*$)/g;\n\nvar slotRE = /^v-slot(:|$)|^#/;\n\nvar lineBreakRE = /[\\r\\n]/;\nvar whitespaceRE$1 = /\\s+/g;\n\nvar invalidAttributeRE = /[\\s\"'<>\\/=]/;\n\nvar decodeHTMLCached = cached(he.decode);\n\nvar emptySlotScopeToken = \"_empty_\";\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\nvar maybeComponent;\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n rawAttrsMap: {},\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n var isReservedTag = options.isReservedTag || no;\n maybeComponent = function (el) { return !!el.component || !isReservedTag(el.tag); };\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var whitespaceOption = options.whitespace;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg, range) {\n if (!warned) {\n warned = true;\n warn$2(msg, range);\n }\n }\n\n function closeElement (element) {\n trimEndingWhitespace(element);\n if (!inVPre && !element.processed) {\n element = processElement(element, options);\n }\n // tree management\n if (!stack.length && element !== root) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n if (process.env.NODE_ENV !== 'production') {\n checkRootConstraints(element);\n }\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\",\n { start: element.start }\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else {\n if (element.slotScope) {\n // scoped slot\n // keep it in the children list so that v-else(-if) conditions can\n // find it as the prev node.\n var name = element.slotTarget || '\"default\"'\n ;(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n }\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n\n // final children cleanup\n // filter out scoped slots\n element.children = element.children.filter(function (c) { return !(c).slotScope; });\n // remove trailing whitespace node again\n trimEndingWhitespace(element);\n\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n // apply post-transforms\n for (var i = 0; i < postTransforms.length; i++) {\n postTransforms[i](element, options);\n }\n }\n\n function trimEndingWhitespace (el) {\n // remove trailing whitespace node\n if (!inPre) {\n var lastNode;\n while (\n (lastNode = el.children[el.children.length - 1]) &&\n lastNode.type === 3 &&\n lastNode.text === ' '\n ) {\n el.children.pop();\n }\n }\n }\n\n function checkRootConstraints (el) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.',\n { start: el.start }\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.',\n el.rawAttrsMap['v-for']\n );\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: options.shouldDecodeNewlinesForHref,\n shouldKeepComment: options.comments,\n outputSourceRange: options.outputSourceRange,\n start: function start (tag, attrs, unary, start$1, end) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (options.outputSourceRange) {\n element.start = start$1;\n element.end = end;\n element.rawAttrsMap = element.attrsList.reduce(function (cumulated, attr) {\n cumulated[attr.name] = attr;\n return cumulated\n }, {});\n }\n attrs.forEach(function (attr) {\n if (invalidAttributeRE.test(attr.name)) {\n warn$2(\n \"Invalid dynamic argument expression: attribute names cannot contain \" +\n \"spaces, quotes, <, >, / or =.\",\n {\n start: attr.start + attr.name.indexOf(\"[\"),\n end: attr.start + attr.name.length\n }\n );\n }\n });\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n process.env.NODE_ENV !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.',\n { start: element.start }\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n }\n\n if (!root) {\n root = element;\n if (process.env.NODE_ENV !== 'production') {\n checkRootConstraints(root);\n }\n }\n\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n closeElement(element);\n }\n },\n\n end: function end (tag, start, end$1) {\n var element = stack[stack.length - 1];\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n element.end = end$1;\n }\n closeElement(element);\n },\n\n chars: function chars (text, start, end) {\n if (!currentParent) {\n if (process.env.NODE_ENV !== 'production') {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.',\n { start: start }\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\"),\n { start: start }\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n if (inPre || text.trim()) {\n text = isTextTag(currentParent) ? text : decodeHTMLCached(text);\n } else if (!children.length) {\n // remove the whitespace-only node right after an opening tag\n text = '';\n } else if (whitespaceOption) {\n if (whitespaceOption === 'condense') {\n // in condense mode, remove the whitespace node if it contains\n // line break, otherwise condense to a single space\n text = lineBreakRE.test(text) ? '' : ' ';\n } else {\n text = ' ';\n }\n } else {\n text = preserveWhitespace ? ' ' : '';\n }\n if (text) {\n if (!inPre && whitespaceOption === 'condense') {\n // condense consecutive whitespaces into single space\n text = text.replace(whitespaceRE$1, ' ');\n }\n var res;\n var child;\n if (!inVPre && text !== ' ' && (res = parseText(text, delimiters))) {\n child = {\n type: 2,\n expression: res.expression,\n tokens: res.tokens,\n text: text\n };\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n child = {\n type: 3,\n text: text\n };\n }\n if (child) {\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n child.start = start;\n child.end = end;\n }\n children.push(child);\n }\n }\n },\n comment: function comment (text, start, end) {\n // adding anyting as a sibling to the root node is forbidden\n // comments should still be allowed, but ignored\n if (currentParent) {\n var child = {\n type: 3,\n text: text,\n isComment: true\n };\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n child.start = start;\n child.end = end;\n }\n currentParent.children.push(child);\n }\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var list = el.attrsList;\n var len = list.length;\n if (len) {\n var attrs = el.attrs = new Array(len);\n for (var i = 0; i < len; i++) {\n attrs[i] = {\n name: list[i].name,\n value: JSON.stringify(list[i].value)\n };\n if (list[i].start != null) {\n attrs[i].start = list[i].start;\n attrs[i].end = list[i].end;\n }\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (\n element,\n options\n) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = (\n !element.key &&\n !element.scopedSlots &&\n !element.attrsList.length\n );\n\n processRef(element);\n processSlotContent(element);\n processSlotOutlet(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n return element\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.tag === 'template') {\n warn$2(\n \"<template> cannot be keyed. Place the key on real elements instead.\",\n getRawBindingAttr(el, 'key')\n );\n }\n if (el.for) {\n var iterator = el.iterator2 || el.iterator1;\n var parent = el.parent;\n if (iterator && iterator === exp && parent && parent.tag === 'transition-group') {\n warn$2(\n \"Do not use v-for index as key on <transition-group> children, \" +\n \"this is the same as not using keys.\",\n getRawBindingAttr(el, 'key'),\n true /* tip */\n );\n }\n }\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var res = parseFor(exp);\n if (res) {\n extend(el, res);\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n (\"Invalid v-for expression: \" + exp),\n el.rawAttrsMap['v-for']\n );\n }\n }\n}\n\n\n\nfunction parseFor (exp) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) { return }\n var res = {};\n res.for = inMatch[2].trim();\n var alias = inMatch[1].trim().replace(stripParensRE, '');\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n res.alias = alias.replace(forIteratorRE, '').trim();\n res.iterator1 = iteratorMatch[1].trim();\n if (iteratorMatch[2]) {\n res.iterator2 = iteratorMatch[2].trim();\n }\n } else {\n res.alias = alias;\n }\n return res\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\",\n el.rawAttrsMap[el.elseif ? 'v-else-if' : 'v-else']\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\",\n children[i]\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\n// handle content being passed to a component as slot,\n// e.g. <template slot=\"xxx\">, <div slot-scope=\"xxx\">\nfunction processSlotContent (el) {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && slotScope) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n el.rawAttrsMap['scope'],\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && el.attrsMap['v-for']) {\n warn$2(\n \"Ambiguous combined usage of slot-scope and v-for on <\" + (el.tag) + \"> \" +\n \"(v-for takes higher priority). Use a wrapper <template> for the \" +\n \"scoped slot to make it clearer.\",\n el.rawAttrsMap['slot-scope'],\n true\n );\n }\n el.slotScope = slotScope;\n }\n\n // slot=\"xxx\"\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n el.slotTargetDynamic = !!(el.attrsMap[':slot'] || el.attrsMap['v-bind:slot']);\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (el.tag !== 'template' && !el.slotScope) {\n addAttr(el, 'slot', slotTarget, getRawBindingAttr(el, 'slot'));\n }\n }\n\n // 2.6 v-slot syntax\n {\n if (el.tag === 'template') {\n // v-slot on <template>\n var slotBinding = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.slotTarget || el.slotScope) {\n warn$2(\n \"Unexpected mixed usage of different slot syntaxes.\",\n el\n );\n }\n if (el.parent && !maybeComponent(el.parent)) {\n warn$2(\n \"<template v-slot> can only appear at the root level inside \" +\n \"the receiving component\",\n el\n );\n }\n }\n var ref = getSlotName(slotBinding);\n var name = ref.name;\n var dynamic = ref.dynamic;\n el.slotTarget = name;\n el.slotTargetDynamic = dynamic;\n el.slotScope = slotBinding.value || emptySlotScopeToken; // force it into a scoped slot for perf\n }\n } else {\n // v-slot on component, denotes default slot\n var slotBinding$1 = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding$1) {\n if (process.env.NODE_ENV !== 'production') {\n if (!maybeComponent(el)) {\n warn$2(\n \"v-slot can only be used on components or <template>.\",\n slotBinding$1\n );\n }\n if (el.slotScope || el.slotTarget) {\n warn$2(\n \"Unexpected mixed usage of different slot syntaxes.\",\n el\n );\n }\n if (el.scopedSlots) {\n warn$2(\n \"To avoid scope ambiguity, the default slot should also use \" +\n \"<template> syntax when there are other named slots.\",\n slotBinding$1\n );\n }\n }\n // add the component's children to its default slot\n var slots = el.scopedSlots || (el.scopedSlots = {});\n var ref$1 = getSlotName(slotBinding$1);\n var name$1 = ref$1.name;\n var dynamic$1 = ref$1.dynamic;\n var slotContainer = slots[name$1] = createASTElement('template', [], el);\n slotContainer.slotTarget = name$1;\n slotContainer.slotTargetDynamic = dynamic$1;\n slotContainer.children = el.children.filter(function (c) {\n if (!c.slotScope) {\n c.parent = slotContainer;\n return true\n }\n });\n slotContainer.slotScope = slotBinding$1.value || emptySlotScopeToken;\n // remove children as they are returned from scopedSlots now\n el.children = [];\n // mark el non-plain so data gets generated\n el.plain = false;\n }\n }\n }\n}\n\nfunction getSlotName (binding) {\n var name = binding.name.replace(slotRE, '');\n if (!name) {\n if (binding.name[0] !== '#') {\n name = 'default';\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-slot shorthand syntax requires a slot name.\",\n binding\n );\n }\n }\n return dynamicArgRE.test(name)\n // dynamic [name]\n ? { name: name.slice(1, -1), dynamic: true }\n // static name\n : { name: (\"\\\"\" + name + \"\\\"\"), dynamic: false }\n}\n\n// handle <slot/> outlets\nfunction processSlotOutlet (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (process.env.NODE_ENV !== 'production' && el.key) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\",\n getRawBindingAttr(el, 'key')\n );\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, syncGen, isDynamic;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name.replace(dirRE, ''));\n // support .foo shorthand syntax for the .prop modifier\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n value.trim().length === 0\n ) {\n warn$2(\n (\"The value for a v-bind expression cannot be empty. Found in \\\"v-bind:\" + name + \"\\\"\")\n );\n }\n if (modifiers) {\n if (modifiers.prop && !isDynamic) {\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel && !isDynamic) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n syncGen = genAssignmentCode(value, \"$event\");\n if (!isDynamic) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n syncGen,\n null,\n false,\n warn$2,\n list[i]\n );\n if (hyphenate(name) !== camelize(name)) {\n addHandler(\n el,\n (\"update:\" + (hyphenate(name))),\n syncGen,\n null,\n false,\n warn$2,\n list[i]\n );\n }\n } else {\n // handler w/ dynamic event name\n addHandler(\n el,\n (\"\\\"update:\\\"+(\" + name + \")\"),\n syncGen,\n null,\n false,\n warn$2,\n list[i],\n true // dynamic\n );\n }\n }\n }\n if ((modifiers && modifiers.prop) || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value, list[i], isDynamic);\n } else {\n addAttr(el, name, value, list[i], isDynamic);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n addHandler(el, name, value, modifiers, false, warn$2, list[i], isDynamic);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n isDynamic = false;\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n if (dynamicArgRE.test(arg)) {\n arg = arg.slice(1, -1);\n isDynamic = true;\n }\n }\n addDirective(el, name, rawName, value, arg, isDynamic, modifiers, list[i]);\n if (process.env.NODE_ENV !== 'production' && name === 'model') {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(value, delimiters);\n if (res) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.',\n list[i]\n );\n }\n }\n addAttr(el, name, JSON.stringify(value), list[i]);\n // #6887 firefox doesn't update muted state if set via attribute\n // even immediately after element creation\n if (!el.component &&\n name === 'muted' &&\n platformMustUseProp(el.tag, el.attrsMap.type, name)) {\n addProp(el, name, 'true', list[i]);\n }\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n process.env.NODE_ENV !== 'production' &&\n map[attrs[i].name] && !isIE && !isEdge\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name, attrs[i]);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\",\n el.rawAttrsMap['v-model']\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (!map['v-model']) {\n return\n }\n\n var typeBinding;\n if (map[':type'] || map['v-bind:type']) {\n typeBinding = getBindingAttr(el, 'type');\n }\n if (!map.type && !typeBinding && map['v-bind']) {\n typeBinding = \"(\" + (map['v-bind']) + \").type\";\n }\n\n if (typeBinding) {\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n var hasElse = getAndRemoveAttr(el, 'v-else', true) != null;\n var elseIfCondition = getAndRemoveAttr(el, 'v-else-if', true);\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n\n if (hasElse) {\n branch0.else = true;\n } else if (elseIfCondition) {\n branch0.elseif = elseIfCondition;\n }\n\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nvar model$1 = {\n preTransformNode: preTransformNode\n};\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$1\n];\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"), dir);\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"), dir);\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n};\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^([\\w$_]+|\\([^)]*?\\))\\s*=>|^function(?:\\s+[\\w$]+)?\\s*\\(/;\nvar fnInvokeRE = /\\([^)]*?\\);*$/;\nvar simplePathRE = /^[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['[^']*?']|\\[\"[^\"]*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*$/;\n\n// KeyboardEvent.keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// KeyboardEvent.key aliases\nvar keyNames = {\n // #7880: IE11 and Edge use `Esc` for Escape key name.\n esc: ['Esc', 'Escape'],\n tab: 'Tab',\n enter: 'Enter',\n // #9112: IE11 uses `Spacebar` for Space key name.\n space: [' ', 'Spacebar'],\n // #7806: IE11 uses key names without `Arrow` prefix for arrow keys.\n up: ['Up', 'ArrowUp'],\n left: ['Left', 'ArrowLeft'],\n right: ['Right', 'ArrowRight'],\n down: ['Down', 'ArrowDown'],\n // #9112: IE11 uses `Del` for Delete key name.\n 'delete': ['Backspace', 'Delete', 'Del']\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative\n) {\n var prefix = isNative ? 'nativeOn:' : 'on:';\n var staticHandlers = \"\";\n var dynamicHandlers = \"\";\n for (var name in events) {\n var handlerCode = genHandler(events[name]);\n if (events[name] && events[name].dynamic) {\n dynamicHandlers += name + \",\" + handlerCode + \",\";\n } else {\n staticHandlers += \"\\\"\" + name + \"\\\":\" + handlerCode + \",\";\n }\n }\n staticHandlers = \"{\" + (staticHandlers.slice(0, -1)) + \"}\";\n if (dynamicHandlers) {\n return prefix + \"_d(\" + staticHandlers + \",[\" + (dynamicHandlers.slice(0, -1)) + \"])\"\n } else {\n return prefix + staticHandlers\n }\n}\n\nfunction genHandler (handler) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n var isFunctionInvocation = simplePathRE.test(handler.value.replace(fnInvokeRE, ''));\n\n if (!handler.modifiers) {\n if (isMethodPath || isFunctionExpression) {\n return handler.value\n }\n return (\"function($event){\" + (isFunctionInvocation ? (\"return \" + (handler.value)) : handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? (\"return \" + (handler.value) + \"($event)\")\n : isFunctionExpression\n ? (\"return (\" + (handler.value) + \")($event)\")\n : isFunctionInvocation\n ? (\"return \" + (handler.value))\n : handler.value;\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\n // make sure the key filters only apply to KeyboardEvents\n // #9441: can't use 'keyCode' in $event because Chrome autofill fires fake\n // key events that do not have keyCode property...\n \"if(!$event.type.indexOf('key')&&\" +\n (keys.map(genFilterCode).join('&&')) + \")return null;\"\n )\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var keyCode = keyCodes[key];\n var keyName = keyNames[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(keyCode)) + \",\" +\n \"$event.key,\" +\n \"\" + (JSON.stringify(keyName)) +\n \")\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (process.env.NODE_ENV !== 'production' && dir.modifiers) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n};\n\n/* */\n\n\n\n\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !!el.component || !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n this.pre = false;\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.parent) {\n el.pre = el.pre || el.parent.pre;\n }\n\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget && !state.pre) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data;\n if (!el.plain || (el.pre && state.maybeComponent(el))) {\n data = genData$2(el, state);\n }\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n // Some elements (templates) need to behave differently inside of a v-pre\n // node. All pre nodes are static roots, so we can use this as a location to\n // wrap a state change and reset it upon exiting the pre node.\n var originalPreState = state.pre;\n if (el.pre) {\n state.pre = el.pre;\n }\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n state.pre = originalPreState;\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n process.env.NODE_ENV !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \",\n el.rawAttrsMap['v-once']\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (process.env.NODE_ENV !== 'production' &&\n state.maybeComponent(el) &&\n el.tag !== 'slot' &&\n el.tag !== 'template' &&\n !el.key\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n el.rawAttrsMap['v-for'],\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:\" + (genProps(el.attrs)) + \",\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:\" + (genProps(el.props)) + \",\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el, el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind dynamic argument wrap\n // v-bind with dynamic arguments must be applied using the same v-bind object\n // merge helper so that class/style/mustUseProp attrs are handled correctly.\n if (el.dynamicAttrs) {\n data = \"_b(\" + data + \",\\\"\" + (el.tag) + \"\\\",\" + (genProps(el.dynamicAttrs)) + \")\";\n }\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\" + (dir.isDynamicArg ? dir.arg : (\"\\\"\" + (dir.arg) + \"\\\"\"))) : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (process.env.NODE_ENV !== 'production' && (\n el.children.length !== 1 || ast.type !== 1\n )) {\n state.warn(\n 'Inline-template components must have exactly one child element.',\n { start: el.start }\n );\n }\n if (ast && ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n el,\n slots,\n state\n) {\n // by default scoped slots are considered \"stable\", this allows child\n // components with only scoped slots to skip forced updates from parent.\n // but in some cases we have to bail-out of this optimization\n // for example if the slot contains dynamic names, has v-if or v-for on them...\n var needsForceUpdate = el.for || Object.keys(slots).some(function (key) {\n var slot = slots[key];\n return (\n slot.slotTargetDynamic ||\n slot.if ||\n slot.for ||\n containsSlotChild(slot) // is passing down slot from parent which may be dynamic\n )\n });\n\n // #9534: if a component with scoped slots is inside a conditional branch,\n // it's possible for the same component to be reused but with different\n // compiled slot content. To avoid that, we generate a unique key based on\n // the generated code of all the slot contents.\n var needsKey = !!el.if;\n\n // OR when it is inside another scoped slot or v-for (the reactivity may be\n // disconnected due to the intermediate scope variable)\n // #9438, #9506\n // TODO: this can be further optimized by properly analyzing in-scope bindings\n // and skip force updating ones that do not actually use scope variables.\n if (!needsForceUpdate) {\n var parent = el.parent;\n while (parent) {\n if (\n (parent.slotScope && parent.slotScope !== emptySlotScopeToken) ||\n parent.for\n ) {\n needsForceUpdate = true;\n break\n }\n if (parent.if) {\n needsKey = true;\n }\n parent = parent.parent;\n }\n }\n\n var generatedSlots = Object.keys(slots)\n .map(function (key) { return genScopedSlot(slots[key], state); })\n .join(',');\n\n return (\"scopedSlots:_u([\" + generatedSlots + \"]\" + (needsForceUpdate ? \",null,true\" : \"\") + (!needsForceUpdate && needsKey ? (\",null,false,\" + (hash(generatedSlots))) : \"\") + \")\")\n}\n\nfunction hash(str) {\n var hash = 5381;\n var i = str.length;\n while(i) {\n hash = (hash * 33) ^ str.charCodeAt(--i);\n }\n return hash >>> 0\n}\n\nfunction containsSlotChild (el) {\n if (el.type === 1) {\n if (el.tag === 'slot') {\n return true\n }\n return el.children.some(containsSlotChild)\n }\n return false\n}\n\nfunction genScopedSlot (\n el,\n state\n) {\n var isLegacySyntax = el.attrsMap['slot-scope'];\n if (el.if && !el.ifProcessed && !isLegacySyntax) {\n return genIf(el, state, genScopedSlot, \"null\")\n }\n if (el.for && !el.forProcessed) {\n return genFor(el, state, genScopedSlot)\n }\n var slotScope = el.slotScope === emptySlotScopeToken\n ? \"\"\n : String(el.slotScope);\n var fn = \"function(\" + slotScope + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if && isLegacySyntax\n ? (\"(\" + (el.if) + \")?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n // reverse proxy v-slot without scope on this.$slots\n var reverseProxy = slotScope ? \"\" : \",proxy:true\";\n return (\"{key:\" + (el.slotTarget || \"\\\"default\\\"\") + \",fn:\" + fn + reverseProxy + \"}\")\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n var normalizationType = checkSkip\n ? state.maybeComponent(el$1) ? \",1\" : \",0\"\n : \"\";\n return (\"\" + ((altGenElement || genElement)(el$1, state)) + normalizationType)\n }\n var normalizationType$1 = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType$1 ? (\",\" + normalizationType$1) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } else if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs || el.dynamicAttrs\n ? genProps((el.attrs || []).concat(el.dynamicAttrs || []).map(function (attr) { return ({\n // slot props are camelized\n name: camelize(attr.name),\n value: attr.value,\n dynamic: attr.dynamic\n }); }))\n : null;\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var staticProps = \"\";\n var dynamicProps = \"\";\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n var value = transformSpecialNewlines(prop.value);\n if (prop.dynamic) {\n dynamicProps += (prop.name) + \",\" + value + \",\";\n } else {\n staticProps += \"\\\"\" + (prop.name) + \"\\\":\" + value + \",\";\n }\n }\n staticProps = \"{\" + (staticProps.slice(0, -1)) + \"}\";\n if (dynamicProps) {\n return (\"_d(\" + staticProps + \",[\" + (dynamicProps.slice(0, -1)) + \"])\")\n } else {\n return staticProps\n }\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast, warn) {\n if (ast) {\n checkNode(ast, warn);\n }\n}\n\nfunction checkNode (node, warn) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n var range = node.rawAttrsMap[name];\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), warn, range);\n } else if (name === 'v-slot' || name[0] === '#') {\n checkFunctionParameterExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), warn, range);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), warn, range);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), warn, range);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], warn);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, warn, node);\n }\n}\n\nfunction checkEvent (exp, text, warn, range) {\n var stripped = exp.replace(stripStringRE, '');\n var keywordMatch = stripped.match(unaryOperatorsRE);\n if (keywordMatch && stripped.charAt(keywordMatch.index - 1) !== '$') {\n warn(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim()),\n range\n );\n }\n checkExpression(exp, text, warn, range);\n}\n\nfunction checkFor (node, text, warn, range) {\n checkExpression(node.for || '', text, warn, range);\n checkIdentifier(node.alias, 'v-for alias', text, warn, range);\n checkIdentifier(node.iterator1, 'v-for iterator', text, warn, range);\n checkIdentifier(node.iterator2, 'v-for iterator', text, warn, range);\n}\n\nfunction checkIdentifier (\n ident,\n type,\n text,\n warn,\n range\n) {\n if (typeof ident === 'string') {\n try {\n new Function((\"var \" + ident + \"=_\"));\n } catch (e) {\n warn((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())), range);\n }\n }\n}\n\nfunction checkExpression (exp, text, warn, range) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n warn(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim()),\n range\n );\n } else {\n warn(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\",\n range\n );\n }\n }\n}\n\nfunction checkFunctionParameterExpression (exp, text, warn, range) {\n try {\n new Function(exp, '');\n } catch (e) {\n warn(\n \"invalid function parameter expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\",\n range\n );\n }\n}\n\n/* */\n\nvar range = 2;\n\nfunction generateCodeFrame (\n source,\n start,\n end\n) {\n if ( start === void 0 ) start = 0;\n if ( end === void 0 ) end = source.length;\n\n var lines = source.split(/\\r?\\n/);\n var count = 0;\n var res = [];\n for (var i = 0; i < lines.length; i++) {\n count += lines[i].length + 1;\n if (count >= start) {\n for (var j = i - range; j <= i + range || end > count; j++) {\n if (j < 0 || j >= lines.length) { continue }\n res.push((\"\" + (j + 1) + (repeat$1(\" \", 3 - String(j + 1).length)) + \"| \" + (lines[j])));\n var lineLength = lines[j].length;\n if (j === i) {\n // push underline\n var pad = start - (count - lineLength) + 1;\n var length = end > count ? lineLength - pad : end - start;\n res.push(\" | \" + repeat$1(\" \", pad) + repeat$1(\"^\", length));\n } else if (j > i) {\n if (end > count) {\n var length$1 = Math.min(end - count, lineLength);\n res.push(\" | \" + repeat$1(\"^\", length$1));\n }\n count += lineLength + 1;\n }\n }\n break\n }\n }\n return res.join('\\n')\n}\n\nfunction repeat$1 (str, n) {\n var result = '';\n if (n > 0) {\n while (true) { // eslint-disable-line\n if (n & 1) { result += str; }\n n >>>= 1;\n if (n <= 0) { break }\n str += str;\n }\n }\n return result\n}\n\n/* */\n\n\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (process.env.NODE_ENV !== 'production') {\n if (compiled.errors && compiled.errors.length) {\n if (options.outputSourceRange) {\n compiled.errors.forEach(function (e) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + (e.msg) + \"\\n\\n\" +\n generateCodeFrame(template, e.start, e.end),\n vm\n );\n });\n } else {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n }\n if (compiled.tips && compiled.tips.length) {\n if (options.outputSourceRange) {\n compiled.tips.forEach(function (e) { return tip(e.msg, vm); });\n } else {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n\n var warn = function (msg, range, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n // $flow-disable-line\n var leadingSpaceLength = template.match(/^\\s*/)[0].length;\n\n warn = function (msg, range, tip) {\n var data = { msg: msg };\n if (range) {\n if (range.start != null) {\n data.start = range.start + leadingSpaceLength;\n }\n if (range.end != null) {\n data.end = range.end + leadingSpaceLength;\n }\n }\n (tip ? tips : errors).push(data);\n };\n }\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives || null),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n finalOptions.warn = warn;\n\n var compiled = baseCompile(template.trim(), finalOptions);\n if (process.env.NODE_ENV !== 'production') {\n detectErrors(compiled.ast, warn);\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n if (options.optimize !== false) {\n optimize(ast, options);\n }\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compile = ref$1.compile;\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nvar div;\nfunction getShouldDecode (href) {\n div = div || document.createElement('div');\n div.innerHTML = href ? \"<a href=\\\"\\n\\\"/>\" : \"<div a=\\\"\\n\\\"/>\";\n return div.innerHTML.indexOf('&#10;') > 0\n}\n\n// #3663: IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? getShouldDecode(false) : false;\n// #6828: chrome encodes content in a[href]\nvar shouldDecodeNewlinesForHref = inBrowser ? getShouldDecode(true) : false;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue.prototype.$mount;\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !template) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n outputSourceRange: process.env.NODE_ENV !== 'production',\n shouldDecodeNewlines: shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: shouldDecodeNewlinesForHref,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue.compile = compileToFunctions;\n\nexport default Vue;\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","module.exports = {};\n","// Create a simple path alias to allow browserify to resolve\n// the runtime on a supported path.\nmodule.exports = require('./dist/cjs/handlebars.runtime')['default'];\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '&quot;';\n break;\n case 38: // &\n escape = '&amp;';\n break;\n case 39: // '\n escape = '&#39;';\n break;\n case 60: // <\n escape = '&lt;';\n break;\n case 62: // >\n escape = '&gt;';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","module.exports = {};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../node_modules/css-loader/dist/cjs.js!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"acc59688\", content, true, {});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\nexports.emit = emit;\n\nvar _ProxyBus = require(\"./ProxyBus\");\n\nvar _SimpleBus = require(\"./SimpleBus\");\n\nfunction getBus() {\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n } // Either use an existing event bus instance or create one\n\n\n if (typeof window._nc_event_bus !== 'undefined') {\n return new _ProxyBus.ProxyBus(window._nc_event_bus);\n } else {\n return window._nc_event_bus = new _SimpleBus.SimpleBus();\n }\n}\n\nvar bus = getBus();\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\n\nfunction subscribe(name, handler) {\n bus.subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\n\n\nfunction unsubscribe(name, handler) {\n bus.unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\n\n\nfunction emit(name, event) {\n bus.emit(name, event);\n}\n//# sourceMappingURL=index.js.map","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = false;\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","exports.f = Object.getOwnPropertySymbols;\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%40/gi, '@').\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(timeoutErrorMessage, config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n var cookies = require('./../helpers/cookies');\n\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (requestData === undefined) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n var valueFromConfig2Keys = ['url', 'method', 'params', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy'];\n var defaultToConfig2Keys = [\n 'baseURL', 'url', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress',\n 'maxContentLength', 'validateStatus', 'maxRedirects', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath'\n ];\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, function mergeDeepProperties(prop) {\n if (utils.isObject(config2[prop])) {\n config[prop] = utils.deepMerge(config1[prop], config2[prop]);\n } else if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (utils.isObject(config1[prop])) {\n config[prop] = utils.deepMerge(config1[prop]);\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys);\n\n var otherKeys = Object\n .keys(config2)\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, function otherKeysDefaultToConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n\n return config;\n};\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","'use strict';\nvar $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n forEach: forEach\n});\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\nmodule.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n} : [].forEach;\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar has = require('../internals/has');\nvar defineProperty = require('../internals/object-define-property').f;\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + ++id, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && meta.REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar meta = module.exports = {\n REQUIRED: false,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) {\n var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1);\n var iterator, iterFn, index, length, result, next, step;\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = AS_ENTRIES\n ? boundFunction(anObject(step = iterable[index])[0], step[1])\n : boundFunction(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES);\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n\niterate.stop = function (result) {\n return new Result(true, result);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n\nexports.__esModule = true;\nexports.HandlebarsEnvironment = HandlebarsEnvironment;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('./utils');\n\nvar _exception = require('./exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nvar _helpers = require('./helpers');\n\nvar _decorators = require('./decorators');\n\nvar _logger = require('./logger');\n\nvar _logger2 = _interopRequireDefault(_logger);\n\nvar _internalProtoAccess = require('./internal/proto-access');\n\nvar VERSION = '4.7.6';\nexports.VERSION = VERSION;\nvar COMPILER_REVISION = 8;\nexports.COMPILER_REVISION = COMPILER_REVISION;\nvar LAST_COMPATIBLE_COMPILER_REVISION = 7;\n\nexports.LAST_COMPATIBLE_COMPILER_REVISION = LAST_COMPATIBLE_COMPILER_REVISION;\nvar REVISION_CHANGES = {\n 1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it\n 2: '== 1.0.0-rc.3',\n 3: '== 1.0.0-rc.4',\n 4: '== 1.x.x',\n 5: '== 2.0.0-alpha.x',\n 6: '>= 2.0.0-beta.1',\n 7: '>= 4.0.0 <4.3.0',\n 8: '>= 4.3.0'\n};\n\nexports.REVISION_CHANGES = REVISION_CHANGES;\nvar objectType = '[object Object]';\n\nfunction HandlebarsEnvironment(helpers, partials, decorators) {\n this.helpers = helpers || {};\n this.partials = partials || {};\n this.decorators = decorators || {};\n\n _helpers.registerDefaultHelpers(this);\n _decorators.registerDefaultDecorators(this);\n}\n\nHandlebarsEnvironment.prototype = {\n constructor: HandlebarsEnvironment,\n\n logger: _logger2['default'],\n log: _logger2['default'].log,\n\n registerHelper: function registerHelper(name, fn) {\n if (_utils.toString.call(name) === objectType) {\n if (fn) {\n throw new _exception2['default']('Arg not supported with multiple helpers');\n }\n _utils.extend(this.helpers, name);\n } else {\n this.helpers[name] = fn;\n }\n },\n unregisterHelper: function unregisterHelper(name) {\n delete this.helpers[name];\n },\n\n registerPartial: function registerPartial(name, partial) {\n if (_utils.toString.call(name) === objectType) {\n _utils.extend(this.partials, name);\n } else {\n if (typeof partial === 'undefined') {\n throw new _exception2['default']('Attempting to register a partial called \"' + name + '\" as undefined');\n }\n this.partials[name] = partial;\n }\n },\n unregisterPartial: function unregisterPartial(name) {\n delete this.partials[name];\n },\n\n registerDecorator: function registerDecorator(name, fn) {\n if (_utils.toString.call(name) === objectType) {\n if (fn) {\n throw new _exception2['default']('Arg not supported with multiple decorators');\n }\n _utils.extend(this.decorators, name);\n } else {\n this.decorators[name] = fn;\n }\n },\n unregisterDecorator: function unregisterDecorator(name) {\n delete this.decorators[name];\n },\n /**\n * Reset the memory of illegal property accesses that have already been logged.\n * @deprecated should only be used in handlebars test-cases\n */\n resetLoggedPropertyAccesses: function resetLoggedPropertyAccesses() {\n _internalProtoAccess.resetLoggedProperties();\n }\n};\n\nvar log = _logger2['default'].log;\n\nexports.log = log;\nexports.createFrame = _utils.createFrame;\nexports.logger = _logger2['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2Jhc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7cUJBQThDLFNBQVM7O3lCQUNqQyxhQUFhOzs7O3VCQUNJLFdBQVc7OzBCQUNSLGNBQWM7O3NCQUNyQyxVQUFVOzs7O21DQUNTLHlCQUF5Qjs7QUFFeEQsSUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDOztBQUN4QixJQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQzs7QUFDNUIsSUFBTSxpQ0FBaUMsR0FBRyxDQUFDLENBQUM7OztBQUU1QyxJQUFNLGdCQUFnQixHQUFHO0FBQzlCLEdBQUMsRUFBRSxhQUFhO0FBQ2hCLEdBQUMsRUFBRSxlQUFlO0FBQ2xCLEdBQUMsRUFBRSxlQUFlO0FBQ2xCLEdBQUMsRUFBRSxVQUFVO0FBQ2IsR0FBQyxFQUFFLGtCQUFrQjtBQUNyQixHQUFDLEVBQUUsaUJBQWlCO0FBQ3BCLEdBQUMsRUFBRSxpQkFBaUI7QUFDcEIsR0FBQyxFQUFFLFVBQVU7Q0FDZCxDQUFDOzs7QUFFRixJQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQzs7QUFFOUIsU0FBUyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRTtBQUNuRSxNQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7QUFDN0IsTUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLElBQUksRUFBRSxDQUFDO0FBQy9CLE1BQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxJQUFJLEVBQUUsQ0FBQzs7QUFFbkMsa0NBQXVCLElBQUksQ0FBQyxDQUFDO0FBQzdCLHdDQUEwQixJQUFJLENBQUMsQ0FBQztDQUNqQzs7QUFFRCxxQkFBcUIsQ0FBQyxTQUFTLEdBQUc7QUFDaEMsYUFBVyxFQUFFLHFCQUFxQjs7QUFFbEMsUUFBTSxxQkFBUTtBQUNkLEtBQUcsRUFBRSxvQkFBTyxHQUFHOztBQUVmLGdCQUFjLEVBQUUsd0JBQVMsSUFBSSxFQUFFLEVBQUUsRUFBRTtBQUNqQyxRQUFJLGdCQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxVQUFVLEVBQUU7QUFDdEMsVUFBSSxFQUFFLEVBQUU7QUFDTixjQUFNLDJCQUFjLHlDQUF5QyxDQUFDLENBQUM7T0FDaEU7QUFDRCxvQkFBTyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQzVCLE1BQU07QUFDTCxVQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztLQUN6QjtHQUNGO0FBQ0Qsa0JBQWdCLEVBQUUsMEJBQVMsSUFBSSxFQUFFO0FBQy9CLFdBQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztHQUMzQjs7QUFFRCxpQkFBZSxFQUFFLHlCQUFTLElBQUksRUFBRSxPQUFPLEVBQUU7QUFDdkMsUUFBSSxnQkFBUyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxFQUFFO0FBQ3RDLG9CQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDN0IsTUFBTTtBQUNMLFVBQUksT0FBTyxPQUFPLEtBQUssV0FBVyxFQUFFO0FBQ2xDLGNBQU0seUVBQ3dDLElBQUksb0JBQ2pELENBQUM7T0FDSDtBQUNELFVBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDO0tBQy9CO0dBQ0Y7QUFDRCxtQkFBaUIsRUFBRSwyQkFBUyxJQUFJLEVBQUU7QUFDaEMsV0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0dBQzVCOztBQUVELG1CQUFpQixFQUFFLDJCQUFTLElBQUksRUFBRSxFQUFFLEVBQUU7QUFDcEMsUUFBSSxnQkFBUyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxFQUFFO0FBQ3RDLFVBQUksRUFBRSxFQUFFO0FBQ04sY0FBTSwyQkFBYyw0Q0FBNEMsQ0FBQyxDQUFDO09BQ25FO0FBQ0Qsb0JBQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUMvQixNQUFNO0FBQ0wsVUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7S0FDNUI7R0FDRjtBQUNELHFCQUFtQixFQUFFLDZCQUFTLElBQUksRUFBRTtBQUNsQyxXQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7R0FDOUI7Ozs7O0FBS0QsNkJBQTJCLEVBQUEsdUNBQUc7QUFDNUIsZ0RBQXVCLENBQUM7R0FDekI7Q0FDRixDQUFDOztBQUVLLElBQUksR0FBRyxHQUFHLG9CQUFPLEdBQUcsQ0FBQzs7O1FBRW5CLFdBQVc7UUFBRSxNQUFNIiwiZmlsZSI6ImJhc2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVGcmFtZSwgZXh0ZW5kLCB0b1N0cmluZyB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tICcuL2V4Y2VwdGlvbic7XG5pbXBvcnQgeyByZWdpc3RlckRlZmF1bHRIZWxwZXJzIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IHJlZ2lzdGVyRGVmYXVsdERlY29yYXRvcnMgfSBmcm9tICcuL2RlY29yYXRvcnMnO1xuaW1wb3J0IGxvZ2dlciBmcm9tICcuL2xvZ2dlcic7XG5pbXBvcnQgeyByZXNldExvZ2dlZFByb3BlcnRpZXMgfSBmcm9tICcuL2ludGVybmFsL3Byb3RvLWFjY2Vzcyc7XG5cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzQuNy42JztcbmV4cG9ydCBjb25zdCBDT01QSUxFUl9SRVZJU0lPTiA9IDg7XG5leHBvcnQgY29uc3QgTEFTVF9DT01QQVRJQkxFX0NPTVBJTEVSX1JFVklTSU9OID0gNztcblxuZXhwb3J0IGNvbnN0IFJFVklTSU9OX0NIQU5HRVMgPSB7XG4gIDE6ICc8PSAxLjAucmMuMicsIC8vIDEuMC5yYy4yIGlzIGFjdHVhbGx5IHJldjIgYnV0IGRvZXNuJ3QgcmVwb3J0IGl0XG4gIDI6ICc9PSAxLjAuMC1yYy4zJyxcbiAgMzogJz09IDEuMC4wLXJjLjQnLFxuICA0OiAnPT0gMS54LngnLFxuICA1OiAnPT0gMi4wLjAtYWxwaGEueCcsXG4gIDY6ICc+PSAyLjAuMC1iZXRhLjEnLFxuICA3OiAnPj0gNC4wLjAgPDQuMy4wJyxcbiAgODogJz49IDQuMy4wJ1xufTtcblxuY29uc3Qgb2JqZWN0VHlwZSA9ICdbb2JqZWN0IE9iamVjdF0nO1xuXG5leHBvcnQgZnVuY3Rpb24gSGFuZGxlYmFyc0Vudmlyb25tZW50KGhlbHBlcnMsIHBhcnRpYWxzLCBkZWNvcmF0b3JzKSB7XG4gIHRoaXMuaGVscGVycyA9IGhlbHBlcnMgfHwge307XG4gIHRoaXMucGFydGlhbHMgPSBwYXJ0aWFscyB8fCB7fTtcbiAgdGhpcy5kZWNvcmF0b3JzID0gZGVjb3JhdG9ycyB8fCB7fTtcblxuICByZWdpc3RlckRlZmF1bHRIZWxwZXJzKHRoaXMpO1xuICByZWdpc3RlckRlZmF1bHREZWNvcmF0b3JzKHRoaXMpO1xufVxuXG5IYW5kbGViYXJzRW52aXJvbm1lbnQucHJvdG90eXBlID0ge1xuICBjb25zdHJ1Y3RvcjogSGFuZGxlYmFyc0Vudmlyb25tZW50LFxuXG4gIGxvZ2dlcjogbG9nZ2VyLFxuICBsb2c6IGxvZ2dlci5sb2csXG5cbiAgcmVnaXN0ZXJIZWxwZXI6IGZ1bmN0aW9uKG5hbWUsIGZuKSB7XG4gICAgaWYgKHRvU3RyaW5nLmNhbGwobmFtZSkgPT09IG9iamVjdFR5cGUpIHtcbiAgICAgIGlmIChmbikge1xuICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdBcmcgbm90IHN1cHBvcnRlZCB3aXRoIG11bHRpcGxlIGhlbHBlcnMnKTtcbiAgICAgIH1cbiAgICAgIGV4dGVuZCh0aGlzLmhlbHBlcnMsIG5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhlbHBlcnNbbmFtZV0gPSBmbjtcbiAgICB9XG4gIH0sXG4gIHVucmVnaXN0ZXJIZWxwZXI6IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICBkZWxldGUgdGhpcy5oZWxwZXJzW25hbWVdO1xuICB9LFxuXG4gIHJlZ2lzdGVyUGFydGlhbDogZnVuY3Rpb24obmFtZSwgcGFydGlhbCkge1xuICAgIGlmICh0b1N0cmluZy5jYWxsKG5hbWUpID09PSBvYmplY3RUeXBlKSB7XG4gICAgICBleHRlbmQodGhpcy5wYXJ0aWFscywgbmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0eXBlb2YgcGFydGlhbCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICAgICBgQXR0ZW1wdGluZyB0byByZWdpc3RlciBhIHBhcnRpYWwgY2FsbGVkIFwiJHtuYW1lfVwiIGFzIHVuZGVmaW5lZGBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMucGFydGlhbHNbbmFtZV0gPSBwYXJ0aWFsO1xuICAgIH1cbiAgfSxcbiAgdW5yZWdpc3RlclBhcnRpYWw6IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICBkZWxldGUgdGhpcy5wYXJ0aWFsc1tuYW1lXTtcbiAgfSxcblxuICByZWdpc3RlckRlY29yYXRvcjogZnVuY3Rpb24obmFtZSwgZm4pIHtcbiAgICBpZiAodG9TdHJpbmcuY2FsbChuYW1lKSA9PT0gb2JqZWN0VHlwZSkge1xuICAgICAgaWYgKGZuKSB7XG4gICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ0FyZyBub3Qgc3VwcG9ydGVkIHdpdGggbXVsdGlwbGUgZGVjb3JhdG9ycycpO1xuICAgICAgfVxuICAgICAgZXh0ZW5kKHRoaXMuZGVjb3JhdG9ycywgbmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGVjb3JhdG9yc1tuYW1lXSA9IGZuO1xuICAgIH1cbiAgfSxcbiAgdW5yZWdpc3RlckRlY29yYXRvcjogZnVuY3Rpb24obmFtZSkge1xuICAgIGRlbGV0ZSB0aGlzLmRlY29yYXRvcnNbbmFtZV07XG4gIH0sXG4gIC8qKlxuICAgKiBSZXNldCB0aGUgbWVtb3J5IG9mIGlsbGVnYWwgcHJvcGVydHkgYWNjZXNzZXMgdGhhdCBoYXZlIGFscmVhZHkgYmVlbiBsb2dnZWQuXG4gICAqIEBkZXByZWNhdGVkIHNob3VsZCBvbmx5IGJlIHVzZWQgaW4gaGFuZGxlYmFycyB0ZXN0LWNhc2VzXG4gICAqL1xuICByZXNldExvZ2dlZFByb3BlcnR5QWNjZXNzZXMoKSB7XG4gICAgcmVzZXRMb2dnZWRQcm9wZXJ0aWVzKCk7XG4gIH1cbn07XG5cbmV4cG9ydCBsZXQgbG9nID0gbG9nZ2VyLmxvZztcblxuZXhwb3J0IHsgY3JlYXRlRnJhbWUsIGxvZ2dlciB9O1xuIl19\n","'use strict';\n\nexports.__esModule = true;\nexports.registerDefaultHelpers = registerDefaultHelpers;\nexports.moveHelperToHooks = moveHelperToHooks;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _helpersBlockHelperMissing = require('./helpers/block-helper-missing');\n\nvar _helpersBlockHelperMissing2 = _interopRequireDefault(_helpersBlockHelperMissing);\n\nvar _helpersEach = require('./helpers/each');\n\nvar _helpersEach2 = _interopRequireDefault(_helpersEach);\n\nvar _helpersHelperMissing = require('./helpers/helper-missing');\n\nvar _helpersHelperMissing2 = _interopRequireDefault(_helpersHelperMissing);\n\nvar _helpersIf = require('./helpers/if');\n\nvar _helpersIf2 = _interopRequireDefault(_helpersIf);\n\nvar _helpersLog = require('./helpers/log');\n\nvar _helpersLog2 = _interopRequireDefault(_helpersLog);\n\nvar _helpersLookup = require('./helpers/lookup');\n\nvar _helpersLookup2 = _interopRequireDefault(_helpersLookup);\n\nvar _helpersWith = require('./helpers/with');\n\nvar _helpersWith2 = _interopRequireDefault(_helpersWith);\n\nfunction registerDefaultHelpers(instance) {\n _helpersBlockHelperMissing2['default'](instance);\n _helpersEach2['default'](instance);\n _helpersHelperMissing2['default'](instance);\n _helpersIf2['default'](instance);\n _helpersLog2['default'](instance);\n _helpersLookup2['default'](instance);\n _helpersWith2['default'](instance);\n}\n\nfunction moveHelperToHooks(instance, helperName, keepHelper) {\n if (instance.helpers[helperName]) {\n instance.hooks[helperName] = instance.helpers[helperName];\n if (!keepHelper) {\n delete instance.helpers[helperName];\n }\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O3lDQUF1QyxnQ0FBZ0M7Ozs7MkJBQzlDLGdCQUFnQjs7OztvQ0FDUCwwQkFBMEI7Ozs7eUJBQ3JDLGNBQWM7Ozs7MEJBQ2IsZUFBZTs7Ozs2QkFDWixrQkFBa0I7Ozs7MkJBQ3BCLGdCQUFnQjs7OztBQUVsQyxTQUFTLHNCQUFzQixDQUFDLFFBQVEsRUFBRTtBQUMvQyx5Q0FBMkIsUUFBUSxDQUFDLENBQUM7QUFDckMsMkJBQWEsUUFBUSxDQUFDLENBQUM7QUFDdkIsb0NBQXNCLFFBQVEsQ0FBQyxDQUFDO0FBQ2hDLHlCQUFXLFFBQVEsQ0FBQyxDQUFDO0FBQ3JCLDBCQUFZLFFBQVEsQ0FBQyxDQUFDO0FBQ3RCLDZCQUFlLFFBQVEsQ0FBQyxDQUFDO0FBQ3pCLDJCQUFhLFFBQVEsQ0FBQyxDQUFDO0NBQ3hCOztBQUVNLFNBQVMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUU7QUFDbEUsTUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO0FBQ2hDLFlBQVEsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUMxRCxRQUFJLENBQUMsVUFBVSxFQUFFO0FBQ2YsYUFBTyxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQ3JDO0dBQ0Y7Q0FDRiIsImZpbGUiOiJoZWxwZXJzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlZ2lzdGVyQmxvY2tIZWxwZXJNaXNzaW5nIGZyb20gJy4vaGVscGVycy9ibG9jay1oZWxwZXItbWlzc2luZyc7XG5pbXBvcnQgcmVnaXN0ZXJFYWNoIGZyb20gJy4vaGVscGVycy9lYWNoJztcbmltcG9ydCByZWdpc3RlckhlbHBlck1pc3NpbmcgZnJvbSAnLi9oZWxwZXJzL2hlbHBlci1taXNzaW5nJztcbmltcG9ydCByZWdpc3RlcklmIGZyb20gJy4vaGVscGVycy9pZic7XG5pbXBvcnQgcmVnaXN0ZXJMb2cgZnJvbSAnLi9oZWxwZXJzL2xvZyc7XG5pbXBvcnQgcmVnaXN0ZXJMb29rdXAgZnJvbSAnLi9oZWxwZXJzL2xvb2t1cCc7XG5pbXBvcnQgcmVnaXN0ZXJXaXRoIGZyb20gJy4vaGVscGVycy93aXRoJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRGVmYXVsdEhlbHBlcnMoaW5zdGFuY2UpIHtcbiAgcmVnaXN0ZXJCbG9ja0hlbHBlck1pc3NpbmcoaW5zdGFuY2UpO1xuICByZWdpc3RlckVhY2goaW5zdGFuY2UpO1xuICByZWdpc3RlckhlbHBlck1pc3NpbmcoaW5zdGFuY2UpO1xuICByZWdpc3RlcklmKGluc3RhbmNlKTtcbiAgcmVnaXN0ZXJMb2coaW5zdGFuY2UpO1xuICByZWdpc3Rlckxvb2t1cChpbnN0YW5jZSk7XG4gIHJlZ2lzdGVyV2l0aChpbnN0YW5jZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb3ZlSGVscGVyVG9Ib29rcyhpbnN0YW5jZSwgaGVscGVyTmFtZSwga2VlcEhlbHBlcikge1xuICBpZiAoaW5zdGFuY2UuaGVscGVyc1toZWxwZXJOYW1lXSkge1xuICAgIGluc3RhbmNlLmhvb2tzW2hlbHBlck5hbWVdID0gaW5zdGFuY2UuaGVscGVyc1toZWxwZXJOYW1lXTtcbiAgICBpZiAoIWtlZXBIZWxwZXIpIHtcbiAgICAgIGRlbGV0ZSBpbnN0YW5jZS5oZWxwZXJzW2hlbHBlck5hbWVdO1xuICAgIH1cbiAgfVxufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n\nvar _utils = require('./utils');\n\nvar logger = {\n methodMap: ['debug', 'info', 'warn', 'error'],\n level: 'info',\n\n // Maps a given level value to the `methodMap` indexes above.\n lookupLevel: function lookupLevel(level) {\n if (typeof level === 'string') {\n var levelMap = _utils.indexOf(logger.methodMap, level.toLowerCase());\n if (levelMap >= 0) {\n level = levelMap;\n } else {\n level = parseInt(level, 10);\n }\n }\n\n return level;\n },\n\n // Can be overridden in the host environment\n log: function log(level) {\n level = logger.lookupLevel(level);\n\n if (typeof console !== 'undefined' && logger.lookupLevel(logger.level) <= level) {\n var method = logger.methodMap[level];\n // eslint-disable-next-line no-console\n if (!console[method]) {\n method = 'log';\n }\n\n for (var _len = arguments.length, message = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n message[_key - 1] = arguments[_key];\n }\n\n console[method].apply(console, message); // eslint-disable-line no-console\n }\n }\n};\n\nexports['default'] = logger;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2xvZ2dlci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O3FCQUF3QixTQUFTOztBQUVqQyxJQUFJLE1BQU0sR0FBRztBQUNYLFdBQVMsRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQztBQUM3QyxPQUFLLEVBQUUsTUFBTTs7O0FBR2IsYUFBVyxFQUFFLHFCQUFTLEtBQUssRUFBRTtBQUMzQixRQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtBQUM3QixVQUFJLFFBQVEsR0FBRyxlQUFRLE1BQU0sQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7QUFDOUQsVUFBSSxRQUFRLElBQUksQ0FBQyxFQUFFO0FBQ2pCLGFBQUssR0FBRyxRQUFRLENBQUM7T0FDbEIsTUFBTTtBQUNMLGFBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO09BQzdCO0tBQ0Y7O0FBRUQsV0FBTyxLQUFLLENBQUM7R0FDZDs7O0FBR0QsS0FBRyxFQUFFLGFBQVMsS0FBSyxFQUFjO0FBQy9CLFNBQUssR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDOztBQUVsQyxRQUNFLE9BQU8sT0FBTyxLQUFLLFdBQVcsSUFDOUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxFQUN6QztBQUNBLFVBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7O0FBRXJDLFVBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7QUFDcEIsY0FBTSxHQUFHLEtBQUssQ0FBQztPQUNoQjs7d0NBWG1CLE9BQU87QUFBUCxlQUFPOzs7QUFZM0IsYUFBTyxDQUFDLE1BQU0sT0FBQyxDQUFmLE9BQU8sRUFBWSxPQUFPLENBQUMsQ0FBQztLQUM3QjtHQUNGO0NBQ0YsQ0FBQzs7cUJBRWEsTUFBTSIsImZpbGUiOiJsb2dnZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmRleE9mIH0gZnJvbSAnLi91dGlscyc7XG5cbmxldCBsb2dnZXIgPSB7XG4gIG1ldGhvZE1hcDogWydkZWJ1ZycsICdpbmZvJywgJ3dhcm4nLCAnZXJyb3InXSxcbiAgbGV2ZWw6ICdpbmZvJyxcblxuICAvLyBNYXBzIGEgZ2l2ZW4gbGV2ZWwgdmFsdWUgdG8gdGhlIGBtZXRob2RNYXBgIGluZGV4ZXMgYWJvdmUuXG4gIGxvb2t1cExldmVsOiBmdW5jdGlvbihsZXZlbCkge1xuICAgIGlmICh0eXBlb2YgbGV2ZWwgPT09ICdzdHJpbmcnKSB7XG4gICAgICBsZXQgbGV2ZWxNYXAgPSBpbmRleE9mKGxvZ2dlci5tZXRob2RNYXAsIGxldmVsLnRvTG93ZXJDYXNlKCkpO1xuICAgICAgaWYgKGxldmVsTWFwID49IDApIHtcbiAgICAgICAgbGV2ZWwgPSBsZXZlbE1hcDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldmVsID0gcGFyc2VJbnQobGV2ZWwsIDEwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbGV2ZWw7XG4gIH0sXG5cbiAgLy8gQ2FuIGJlIG92ZXJyaWRkZW4gaW4gdGhlIGhvc3QgZW52aXJvbm1lbnRcbiAgbG9nOiBmdW5jdGlvbihsZXZlbCwgLi4ubWVzc2FnZSkge1xuICAgIGxldmVsID0gbG9nZ2VyLmxvb2t1cExldmVsKGxldmVsKTtcblxuICAgIGlmIChcbiAgICAgIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgbG9nZ2VyLmxvb2t1cExldmVsKGxvZ2dlci5sZXZlbCkgPD0gbGV2ZWxcbiAgICApIHtcbiAgICAgIGxldCBtZXRob2QgPSBsb2dnZXIubWV0aG9kTWFwW2xldmVsXTtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBpZiAoIWNvbnNvbGVbbWV0aG9kXSkge1xuICAgICAgICBtZXRob2QgPSAnbG9nJztcbiAgICAgIH1cbiAgICAgIGNvbnNvbGVbbWV0aG9kXSguLi5tZXNzYWdlKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1jb25zb2xlXG4gICAgfVxuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBsb2dnZXI7XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\nexports.createProtoAccessControl = createProtoAccessControl;\nexports.resultIsAllowed = resultIsAllowed;\nexports.resetLoggedProperties = resetLoggedProperties;\n// istanbul ignore next\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nvar _createNewLookupObject = require('./create-new-lookup-object');\n\nvar _logger = require('../logger');\n\nvar logger = _interopRequireWildcard(_logger);\n\nvar loggedProperties = Object.create(null);\n\nfunction createProtoAccessControl(runtimeOptions) {\n var defaultMethodWhiteList = Object.create(null);\n defaultMethodWhiteList['constructor'] = false;\n defaultMethodWhiteList['__defineGetter__'] = false;\n defaultMethodWhiteList['__defineSetter__'] = false;\n defaultMethodWhiteList['__lookupGetter__'] = false;\n\n var defaultPropertyWhiteList = Object.create(null);\n // eslint-disable-next-line no-proto\n defaultPropertyWhiteList['__proto__'] = false;\n\n return {\n properties: {\n whitelist: _createNewLookupObject.createNewLookupObject(defaultPropertyWhiteList, runtimeOptions.allowedProtoProperties),\n defaultValue: runtimeOptions.allowProtoPropertiesByDefault\n },\n methods: {\n whitelist: _createNewLookupObject.createNewLookupObject(defaultMethodWhiteList, runtimeOptions.allowedProtoMethods),\n defaultValue: runtimeOptions.allowProtoMethodsByDefault\n }\n };\n}\n\nfunction resultIsAllowed(result, protoAccessControl, propertyName) {\n if (typeof result === 'function') {\n return checkWhiteList(protoAccessControl.methods, propertyName);\n } else {\n return checkWhiteList(protoAccessControl.properties, propertyName);\n }\n}\n\nfunction checkWhiteList(protoAccessControlForType, propertyName) {\n if (protoAccessControlForType.whitelist[propertyName] !== undefined) {\n return protoAccessControlForType.whitelist[propertyName] === true;\n }\n if (protoAccessControlForType.defaultValue !== undefined) {\n return protoAccessControlForType.defaultValue;\n }\n logUnexpecedPropertyAccessOnce(propertyName);\n return false;\n}\n\nfunction logUnexpecedPropertyAccessOnce(propertyName) {\n if (loggedProperties[propertyName] !== true) {\n loggedProperties[propertyName] = true;\n logger.log('error', 'Handlebars: Access has been denied to resolve the property \"' + propertyName + '\" because it is not an \"own property\" of its parent.\\n' + 'You can add a runtime option to disable the check or this warning:\\n' + 'See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details');\n }\n}\n\nfunction resetLoggedProperties() {\n Object.keys(loggedProperties).forEach(function (propertyName) {\n delete loggedProperties[propertyName];\n });\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2ludGVybmFsL3Byb3RvLWFjY2Vzcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O3FDQUFzQyw0QkFBNEI7O3NCQUMxQyxXQUFXOztJQUF2QixNQUFNOztBQUVsQixJQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7O0FBRXRDLFNBQVMsd0JBQXdCLENBQUMsY0FBYyxFQUFFO0FBQ3ZELE1BQUksc0JBQXNCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNqRCx3QkFBc0IsQ0FBQyxhQUFhLENBQUMsR0FBRyxLQUFLLENBQUM7QUFDOUMsd0JBQXNCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxLQUFLLENBQUM7QUFDbkQsd0JBQXNCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxLQUFLLENBQUM7QUFDbkQsd0JBQXNCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxLQUFLLENBQUM7O0FBRW5ELE1BQUksd0JBQXdCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzs7QUFFbkQsMEJBQXdCLENBQUMsV0FBVyxDQUFDLEdBQUcsS0FBSyxDQUFDOztBQUU5QyxTQUFPO0FBQ0wsY0FBVSxFQUFFO0FBQ1YsZUFBUyxFQUFFLDZDQUNULHdCQUF3QixFQUN4QixjQUFjLENBQUMsc0JBQXNCLENBQ3RDO0FBQ0Qsa0JBQVksRUFBRSxjQUFjLENBQUMsNkJBQTZCO0tBQzNEO0FBQ0QsV0FBTyxFQUFFO0FBQ1AsZUFBUyxFQUFFLDZDQUNULHNCQUFzQixFQUN0QixjQUFjLENBQUMsbUJBQW1CLENBQ25DO0FBQ0Qsa0JBQVksRUFBRSxjQUFjLENBQUMsMEJBQTBCO0tBQ3hEO0dBQ0YsQ0FBQztDQUNIOztBQUVNLFNBQVMsZUFBZSxDQUFDLE1BQU0sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUU7QUFDeEUsTUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVLEVBQUU7QUFDaEMsV0FBTyxjQUFjLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO0dBQ2pFLE1BQU07QUFDTCxXQUFPLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7R0FDcEU7Q0FDRjs7QUFFRCxTQUFTLGNBQWMsQ0FBQyx5QkFBeUIsRUFBRSxZQUFZLEVBQUU7QUFDL0QsTUFBSSx5QkFBeUIsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEtBQUssU0FBUyxFQUFFO0FBQ25FLFdBQU8seUJBQXlCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxLQUFLLElBQUksQ0FBQztHQUNuRTtBQUNELE1BQUkseUJBQXlCLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTtBQUN4RCxXQUFPLHlCQUF5QixDQUFDLFlBQVksQ0FBQztHQUMvQztBQUNELGdDQUE4QixDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQzdDLFNBQU8sS0FBSyxDQUFDO0NBQ2Q7O0FBRUQsU0FBUyw4QkFBOEIsQ0FBQyxZQUFZLEVBQUU7QUFDcEQsTUFBSSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLEVBQUU7QUFDM0Msb0JBQWdCLENBQUMsWUFBWSxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBQ3RDLFVBQU0sQ0FBQyxHQUFHLENBQ1IsT0FBTyxFQUNQLGlFQUErRCxZQUFZLG9JQUNILG9IQUMyQyxDQUNwSCxDQUFDO0dBQ0g7Q0FDRjs7QUFFTSxTQUFTLHFCQUFxQixHQUFHO0FBQ3RDLFFBQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQSxZQUFZLEVBQUk7QUFDcEQsV0FBTyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztHQUN2QyxDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJwcm90by1hY2Nlc3MuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVOZXdMb29rdXBPYmplY3QgfSBmcm9tICcuL2NyZWF0ZS1uZXctbG9va3VwLW9iamVjdCc7XG5pbXBvcnQgKiBhcyBsb2dnZXIgZnJvbSAnLi4vbG9nZ2VyJztcblxuY29uc3QgbG9nZ2VkUHJvcGVydGllcyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm90b0FjY2Vzc0NvbnRyb2wocnVudGltZU9wdGlvbnMpIHtcbiAgbGV0IGRlZmF1bHRNZXRob2RXaGl0ZUxpc3QgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBkZWZhdWx0TWV0aG9kV2hpdGVMaXN0Wydjb25zdHJ1Y3RvciddID0gZmFsc2U7XG4gIGRlZmF1bHRNZXRob2RXaGl0ZUxpc3RbJ19fZGVmaW5lR2V0dGVyX18nXSA9IGZhbHNlO1xuICBkZWZhdWx0TWV0aG9kV2hpdGVMaXN0WydfX2RlZmluZVNldHRlcl9fJ10gPSBmYWxzZTtcbiAgZGVmYXVsdE1ldGhvZFdoaXRlTGlzdFsnX19sb29rdXBHZXR0ZXJfXyddID0gZmFsc2U7XG5cbiAgbGV0IGRlZmF1bHRQcm9wZXJ0eVdoaXRlTGlzdCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wcm90b1xuICBkZWZhdWx0UHJvcGVydHlXaGl0ZUxpc3RbJ19fcHJvdG9fXyddID0gZmFsc2U7XG5cbiAgcmV0dXJuIHtcbiAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICB3aGl0ZWxpc3Q6IGNyZWF0ZU5ld0xvb2t1cE9iamVjdChcbiAgICAgICAgZGVmYXVsdFByb3BlcnR5V2hpdGVMaXN0LFxuICAgICAgICBydW50aW1lT3B0aW9ucy5hbGxvd2VkUHJvdG9Qcm9wZXJ0aWVzXG4gICAgICApLFxuICAgICAgZGVmYXVsdFZhbHVlOiBydW50aW1lT3B0aW9ucy5hbGxvd1Byb3RvUHJvcGVydGllc0J5RGVmYXVsdFxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgd2hpdGVsaXN0OiBjcmVhdGVOZXdMb29rdXBPYmplY3QoXG4gICAgICAgIGRlZmF1bHRNZXRob2RXaGl0ZUxpc3QsXG4gICAgICAgIHJ1bnRpbWVPcHRpb25zLmFsbG93ZWRQcm90b01ldGhvZHNcbiAgICAgICksXG4gICAgICBkZWZhdWx0VmFsdWU6IHJ1bnRpbWVPcHRpb25zLmFsbG93UHJvdG9NZXRob2RzQnlEZWZhdWx0XG4gICAgfVxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzdWx0SXNBbGxvd2VkKHJlc3VsdCwgcHJvdG9BY2Nlc3NDb250cm9sLCBwcm9wZXJ0eU5hbWUpIHtcbiAgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gY2hlY2tXaGl0ZUxpc3QocHJvdG9BY2Nlc3NDb250cm9sLm1ldGhvZHMsIHByb3BlcnR5TmFtZSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGNoZWNrV2hpdGVMaXN0KHByb3RvQWNjZXNzQ29udHJvbC5wcm9wZXJ0aWVzLCBwcm9wZXJ0eU5hbWUpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNoZWNrV2hpdGVMaXN0KHByb3RvQWNjZXNzQ29udHJvbEZvclR5cGUsIHByb3BlcnR5TmFtZSkge1xuICBpZiAocHJvdG9BY2Nlc3NDb250cm9sRm9yVHlwZS53aGl0ZWxpc3RbcHJvcGVydHlOYW1lXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHByb3RvQWNjZXNzQ29udHJvbEZvclR5cGUud2hpdGVsaXN0W3Byb3BlcnR5TmFtZV0gPT09IHRydWU7XG4gIH1cbiAgaWYgKHByb3RvQWNjZXNzQ29udHJvbEZvclR5cGUuZGVmYXVsdFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gcHJvdG9BY2Nlc3NDb250cm9sRm9yVHlwZS5kZWZhdWx0VmFsdWU7XG4gIH1cbiAgbG9nVW5leHBlY2VkUHJvcGVydHlBY2Nlc3NPbmNlKHByb3BlcnR5TmFtZSk7XG4gIHJldHVybiBmYWxzZTtcbn1cblxuZnVuY3Rpb24gbG9nVW5leHBlY2VkUHJvcGVydHlBY2Nlc3NPbmNlKHByb3BlcnR5TmFtZSkge1xuICBpZiAobG9nZ2VkUHJvcGVydGllc1twcm9wZXJ0eU5hbWVdICE9PSB0cnVlKSB7XG4gICAgbG9nZ2VkUHJvcGVydGllc1twcm9wZXJ0eU5hbWVdID0gdHJ1ZTtcbiAgICBsb2dnZXIubG9nKFxuICAgICAgJ2Vycm9yJyxcbiAgICAgIGBIYW5kbGViYXJzOiBBY2Nlc3MgaGFzIGJlZW4gZGVuaWVkIHRvIHJlc29sdmUgdGhlIHByb3BlcnR5IFwiJHtwcm9wZXJ0eU5hbWV9XCIgYmVjYXVzZSBpdCBpcyBub3QgYW4gXCJvd24gcHJvcGVydHlcIiBvZiBpdHMgcGFyZW50LlxcbmAgK1xuICAgICAgICBgWW91IGNhbiBhZGQgYSBydW50aW1lIG9wdGlvbiB0byBkaXNhYmxlIHRoZSBjaGVjayBvciB0aGlzIHdhcm5pbmc6XFxuYCArXG4gICAgICAgIGBTZWUgaHR0cHM6Ly9oYW5kbGViYXJzanMuY29tL2FwaS1yZWZlcmVuY2UvcnVudGltZS1vcHRpb25zLmh0bWwjb3B0aW9ucy10by1jb250cm9sLXByb3RvdHlwZS1hY2Nlc3MgZm9yIGRldGFpbHNgXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzZXRMb2dnZWRQcm9wZXJ0aWVzKCkge1xuICBPYmplY3Qua2V5cyhsb2dnZWRQcm9wZXJ0aWVzKS5mb3JFYWNoKHByb3BlcnR5TmFtZSA9PiB7XG4gICAgZGVsZXRlIGxvZ2dlZFByb3BlcnRpZXNbcHJvcGVydHlOYW1lXTtcbiAgfSk7XG59XG4iXX0=\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var af = moment.defineLocale('af', {\n months : 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split('_'),\n monthsShort : 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'),\n weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n meridiemParse: /vm|nm/i,\n isPM : function (input) {\n return /^nm$/i.test(input);\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'vm' : 'VM';\n } else {\n return isLower ? 'nm' : 'NM';\n }\n },\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Vandag om] LT',\n nextDay : '[Môre om] LT',\n nextWeek : 'dddd [om] LT',\n lastDay : '[Gister om] LT',\n lastWeek : '[Laas] dddd [om] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'oor %s',\n past : '%s gelede',\n s : '\\'n paar sekondes',\n ss : '%d sekondes',\n m : '\\'n minuut',\n mm : '%d minute',\n h : '\\'n uur',\n hh : '%d ure',\n d : '\\'n dag',\n dd : '%d dae',\n M : '\\'n maand',\n MM : '%d maande',\n y : '\\'n jaar',\n yy : '%d jaar'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris Röling : https://github.com/jjupiter\n },\n week : {\n dow : 1, // Maandag is die eerste dag van die week.\n doy : 4 // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n }\n });\n\n return af;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '١',\n '2': '٢',\n '3': '٣',\n '4': '٤',\n '5': '٥',\n '6': '٦',\n '7': '٧',\n '8': '٨',\n '9': '٩',\n '0': '٠'\n }, numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0'\n }, pluralForm = function (n) {\n return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;\n }, plurals = {\n s : ['أقل من ثانية', 'ثانية واحدة', ['ثانيتان', 'ثانيتين'], '%d ثوان', '%d ثانية', '%d ثانية'],\n m : ['أقل من دقيقة', 'دقيقة واحدة', ['دقيقتان', 'دقيقتين'], '%d دقائق', '%d دقيقة', '%d دقيقة'],\n h : ['أقل من ساعة', 'ساعة واحدة', ['ساعتان', 'ساعتين'], '%d ساعات', '%d ساعة', '%d ساعة'],\n d : ['أقل من يوم', 'يوم واحد', ['يومان', 'يومين'], '%d أيام', '%d يومًا', '%d يوم'],\n M : ['أقل من شهر', 'شهر واحد', ['شهران', 'شهرين'], '%d أشهر', '%d شهرا', '%d شهر'],\n y : ['أقل من عام', 'عام واحد', ['عامان', 'عامين'], '%d أعوام', '%d عامًا', '%d عام']\n }, pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n }, months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر'\n ];\n\n var ar = moment.defineLocale('ar', {\n months : months,\n monthsShort : months,\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'D/\\u200FM/\\u200FYYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ص|م/,\n isPM : function (input) {\n return 'م' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar : {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'بعد %s',\n past : 'منذ %s',\n s : pluralize('s'),\n ss : pluralize('s'),\n m : pluralize('m'),\n mm : pluralize('m'),\n h : pluralize('h'),\n hh : pluralize('h'),\n d : pluralize('d'),\n dd : pluralize('d'),\n M : pluralize('M'),\n MM : pluralize('M'),\n y : pluralize('y'),\n yy : pluralize('y')\n },\n preparse: function (string) {\n return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return ar;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arDz = moment.defineLocale('ar-dz', {\n months : 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n monthsShort : 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'أح_إث_ثلا_أر_خم_جم_سب'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return arDz;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arKw = moment.defineLocale('ar-kw', {\n months : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n monthsShort : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n weekdays : 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return arKw;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n '0': '0'\n }, pluralForm = function (n) {\n return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;\n }, plurals = {\n s : ['أقل من ثانية', 'ثانية واحدة', ['ثانيتان', 'ثانيتين'], '%d ثوان', '%d ثانية', '%d ثانية'],\n m : ['أقل من دقيقة', 'دقيقة واحدة', ['دقيقتان', 'دقيقتين'], '%d دقائق', '%d دقيقة', '%d دقيقة'],\n h : ['أقل من ساعة', 'ساعة واحدة', ['ساعتان', 'ساعتين'], '%d ساعات', '%d ساعة', '%d ساعة'],\n d : ['أقل من يوم', 'يوم واحد', ['يومان', 'يومين'], '%d أيام', '%d يومًا', '%d يوم'],\n M : ['أقل من شهر', 'شهر واحد', ['شهران', 'شهرين'], '%d أشهر', '%d شهرا', '%d شهر'],\n y : ['أقل من عام', 'عام واحد', ['عامان', 'عامين'], '%d أعوام', '%d عامًا', '%d عام']\n }, pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n }, months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر'\n ];\n\n var arLy = moment.defineLocale('ar-ly', {\n months : months,\n monthsShort : months,\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'D/\\u200FM/\\u200FYYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ص|م/,\n isPM : function (input) {\n return 'م' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar : {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'بعد %s',\n past : 'منذ %s',\n s : pluralize('s'),\n ss : pluralize('s'),\n m : pluralize('m'),\n mm : pluralize('m'),\n h : pluralize('h'),\n hh : pluralize('h'),\n d : pluralize('d'),\n dd : pluralize('d'),\n M : pluralize('M'),\n MM : pluralize('M'),\n y : pluralize('y'),\n yy : pluralize('y')\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return arLy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arMa = moment.defineLocale('ar-ma', {\n months : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n monthsShort : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),\n weekdays : 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return arMa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '١',\n '2': '٢',\n '3': '٣',\n '4': '٤',\n '5': '٥',\n '6': '٦',\n '7': '٧',\n '8': '٨',\n '9': '٩',\n '0': '٠'\n }, numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0'\n };\n\n var arSa = moment.defineLocale('ar-sa', {\n months : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n monthsShort : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ص|م/,\n isPM : function (input) {\n return 'م' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar : {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'في %s',\n past : 'منذ %s',\n s : 'ثوان',\n ss : '%d ثانية',\n m : 'دقيقة',\n mm : '%d دقائق',\n h : 'ساعة',\n hh : '%d ساعات',\n d : 'يوم',\n dd : '%d أيام',\n M : 'شهر',\n MM : '%d أشهر',\n y : 'سنة',\n yy : '%d سنوات'\n },\n preparse: function (string) {\n return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return arSa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var arTn = moment.defineLocale('ar-tn', {\n months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss : '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات'\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return arTn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 1: '-inci',\n 5: '-inci',\n 8: '-inci',\n 70: '-inci',\n 80: '-inci',\n 2: '-nci',\n 7: '-nci',\n 20: '-nci',\n 50: '-nci',\n 3: '-üncü',\n 4: '-üncü',\n 100: '-üncü',\n 6: '-ncı',\n 9: '-uncu',\n 10: '-uncu',\n 30: '-uncu',\n 60: '-ıncı',\n 90: '-ıncı'\n };\n\n var az = moment.defineLocale('az', {\n months : 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split('_'),\n monthsShort : 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n weekdays : 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split('_'),\n weekdaysShort : 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),\n weekdaysMin : 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[bugün saat] LT',\n nextDay : '[sabah saat] LT',\n nextWeek : '[gələn həftə] dddd [saat] LT',\n lastDay : '[dünən] LT',\n lastWeek : '[keçən həftə] dddd [saat] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s sonra',\n past : '%s əvvəl',\n s : 'birneçə saniyə',\n ss : '%d saniyə',\n m : 'bir dəqiqə',\n mm : '%d dəqiqə',\n h : 'bir saat',\n hh : '%d saat',\n d : 'bir gün',\n dd : '%d gün',\n M : 'bir ay',\n MM : '%d ay',\n y : 'bir il',\n yy : '%d il'\n },\n meridiemParse: /gecə|səhər|gündüz|axşam/,\n isPM : function (input) {\n return /^(gündüz|axşam)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'gecə';\n } else if (hour < 12) {\n return 'səhər';\n } else if (hour < 17) {\n return 'gündüz';\n } else {\n return 'axşam';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,\n ordinal : function (number) {\n if (number === 0) { // special case for zero\n return number + '-ıncı';\n }\n var a = number % 10,\n b = number % 100 - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return az;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n 'mm': withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',\n 'hh': withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',\n 'dd': 'дзень_дні_дзён',\n 'MM': 'месяц_месяцы_месяцаў',\n 'yy': 'год_гады_гадоў'\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвіліна' : 'хвіліну';\n }\n else if (key === 'h') {\n return withoutSuffix ? 'гадзіна' : 'гадзіну';\n }\n else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n\n var be = moment.defineLocale('be', {\n months : {\n format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split('_'),\n standalone: 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split('_')\n },\n monthsShort : 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),\n weekdays : {\n format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split('_'),\n standalone: 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split('_'),\n isFormat: /\\[ ?[Ууў] ?(?:мінулую|наступную)? ?\\] ?dddd/\n },\n weekdaysShort : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n weekdaysMin : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY г.',\n LLL : 'D MMMM YYYY г., HH:mm',\n LLLL : 'dddd, D MMMM YYYY г., HH:mm'\n },\n calendar : {\n sameDay: '[Сёння ў] LT',\n nextDay: '[Заўтра ў] LT',\n lastDay: '[Учора ў] LT',\n nextWeek: function () {\n return '[У] dddd [ў] LT';\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return '[У мінулую] dddd [ў] LT';\n case 1:\n case 2:\n case 4:\n return '[У мінулы] dddd [ў] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'праз %s',\n past : '%s таму',\n s : 'некалькі секунд',\n m : relativeTimeWithPlural,\n mm : relativeTimeWithPlural,\n h : relativeTimeWithPlural,\n hh : relativeTimeWithPlural,\n d : 'дзень',\n dd : relativeTimeWithPlural,\n M : 'месяц',\n MM : relativeTimeWithPlural,\n y : 'год',\n yy : relativeTimeWithPlural\n },\n meridiemParse: /ночы|раніцы|дня|вечара/,\n isPM : function (input) {\n return /^(дня|вечара)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночы';\n } else if (hour < 12) {\n return 'раніцы';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечара';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(і|ы|га)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return (number % 10 === 2 || number % 10 === 3) && (number % 100 !== 12 && number % 100 !== 13) ? number + '-і' : number + '-ы';\n case 'D':\n return number + '-га';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return be;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var bg = moment.defineLocale('bg', {\n months : 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split('_'),\n monthsShort : 'янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),\n weekdays : 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split('_'),\n weekdaysShort : 'нед_пон_вто_сря_чет_пет_съб'.split('_'),\n weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'D.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY H:mm',\n LLLL : 'dddd, D MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[Днес в] LT',\n nextDay : '[Утре в] LT',\n nextWeek : 'dddd [в] LT',\n lastDay : '[Вчера в] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[В изминалата] dddd [в] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[В изминалия] dddd [в] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'след %s',\n past : 'преди %s',\n s : 'няколко секунди',\n ss : '%d секунди',\n m : 'минута',\n mm : '%d минути',\n h : 'час',\n hh : '%d часа',\n d : 'ден',\n dd : '%d дни',\n M : 'месец',\n MM : '%d месеца',\n y : 'година',\n yy : '%d години'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal : function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return bg;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var bm = moment.defineLocale('bm', {\n months : 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split('_'),\n monthsShort : 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'),\n weekdays : 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),\n weekdaysShort : 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'),\n weekdaysMin : 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'MMMM [tile] D [san] YYYY',\n LLL : 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n LLLL : 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm'\n },\n calendar : {\n sameDay : '[Bi lɛrɛ] LT',\n nextDay : '[Sini lɛrɛ] LT',\n nextWeek : 'dddd [don lɛrɛ] LT',\n lastDay : '[Kunu lɛrɛ] LT',\n lastWeek : 'dddd [tɛmɛnen lɛrɛ] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s kɔnɔ',\n past : 'a bɛ %s bɔ',\n s : 'sanga dama dama',\n ss : 'sekondi %d',\n m : 'miniti kelen',\n mm : 'miniti %d',\n h : 'lɛrɛ kelen',\n hh : 'lɛrɛ %d',\n d : 'tile kelen',\n dd : 'tile %d',\n M : 'kalo kelen',\n MM : 'kalo %d',\n y : 'san kelen',\n yy : 'san %d'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return bm;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '১',\n '2': '২',\n '3': '৩',\n '4': '৪',\n '5': '৫',\n '6': '৬',\n '7': '৭',\n '8': '৮',\n '9': '৯',\n '0': '০'\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0'\n };\n\n var bn = moment.defineLocale('bn', {\n months : 'জানুয়ারী_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split('_'),\n monthsShort : 'জানু_ফেব_মার্চ_এপ্র_মে_জুন_জুল_আগ_সেপ্ট_অক্টো_নভে_ডিসে'.split('_'),\n weekdays : 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split('_'),\n weekdaysShort : 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin : 'রবি_সোম_মঙ্গ_বুধ_বৃহঃ_শুক্র_শনি'.split('_'),\n longDateFormat : {\n LT : 'A h:mm সময়',\n LTS : 'A h:mm:ss সময়',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm সময়',\n LLLL : 'dddd, D MMMM YYYY, A h:mm সময়'\n },\n calendar : {\n sameDay : '[আজ] LT',\n nextDay : '[আগামীকাল] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[গতকাল] LT',\n lastWeek : '[গত] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s পরে',\n past : '%s আগে',\n s : 'কয়েক সেকেন্ড',\n ss : '%d সেকেন্ড',\n m : 'এক মিনিট',\n mm : '%d মিনিট',\n h : 'এক ঘন্টা',\n hh : '%d ঘন্টা',\n d : 'এক দিন',\n dd : '%d দিন',\n M : 'এক মাস',\n MM : '%d মাস',\n y : 'এক বছর',\n yy : '%d বছর'\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if ((meridiem === 'রাত' && hour >= 4) ||\n (meridiem === 'দুপুর' && hour < 5) ||\n meridiem === 'বিকাল') {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 10) {\n return 'সকাল';\n } else if (hour < 17) {\n return 'দুপুর';\n } else if (hour < 20) {\n return 'বিকাল';\n } else {\n return 'রাত';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return bn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '༡',\n '2': '༢',\n '3': '༣',\n '4': '༤',\n '5': '༥',\n '6': '༦',\n '7': '༧',\n '8': '༨',\n '9': '༩',\n '0': '༠'\n },\n numberMap = {\n '༡': '1',\n '༢': '2',\n '༣': '3',\n '༤': '4',\n '༥': '5',\n '༦': '6',\n '༧': '7',\n '༨': '8',\n '༩': '9',\n '༠': '0'\n };\n\n var bo = moment.defineLocale('bo', {\n months : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),\n monthsShort : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),\n weekdays : 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split('_'),\n weekdaysShort : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),\n weekdaysMin : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm',\n LLLL : 'dddd, D MMMM YYYY, A h:mm'\n },\n calendar : {\n sameDay : '[དི་རིང] LT',\n nextDay : '[སང་ཉིན] LT',\n nextWeek : '[བདུན་ཕྲག་རྗེས་མ], LT',\n lastDay : '[ཁ་སང] LT',\n lastWeek : '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ལ་',\n past : '%s སྔན་ལ',\n s : 'ལམ་སང',\n ss : '%d སྐར་ཆ།',\n m : 'སྐར་མ་གཅིག',\n mm : '%d སྐར་མ',\n h : 'ཆུ་ཚོད་གཅིག',\n hh : '%d ཆུ་ཚོད',\n d : 'ཉིན་གཅིག',\n dd : '%d ཉིན་',\n M : 'ཟླ་བ་གཅིག',\n MM : '%d ཟླ་བ',\n y : 'ལོ་གཅིག',\n yy : '%d ལོ'\n },\n preparse: function (string) {\n return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if ((meridiem === 'མཚན་མོ' && hour >= 4) ||\n (meridiem === 'ཉིན་གུང' && hour < 5) ||\n meridiem === 'དགོང་དག') {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'མཚན་མོ';\n } else if (hour < 10) {\n return 'ཞོགས་ཀས';\n } else if (hour < 17) {\n return 'ཉིན་གུང';\n } else if (hour < 20) {\n return 'དགོང་དག';\n } else {\n return 'མཚན་མོ';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return bo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function relativeTimeWithMutation(number, withoutSuffix, key) {\n var format = {\n 'mm': 'munutenn',\n 'MM': 'miz',\n 'dd': 'devezh'\n };\n return number + ' ' + mutation(format[key], number);\n }\n function specialMutationForYears(number) {\n switch (lastNumber(number)) {\n case 1:\n case 3:\n case 4:\n case 5:\n case 9:\n return number + ' bloaz';\n default:\n return number + ' vloaz';\n }\n }\n function lastNumber(number) {\n if (number > 9) {\n return lastNumber(number % 10);\n }\n return number;\n }\n function mutation(text, number) {\n if (number === 2) {\n return softMutation(text);\n }\n return text;\n }\n function softMutation(text) {\n var mutationTable = {\n 'm': 'v',\n 'b': 'v',\n 'd': 'z'\n };\n if (mutationTable[text.charAt(0)] === undefined) {\n return text;\n }\n return mutationTable[text.charAt(0)] + text.substring(1);\n }\n\n var br = moment.defineLocale('br', {\n months : 'Genver_C\\'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split('_'),\n monthsShort : 'Gen_C\\'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n weekdays : 'Sul_Lun_Meurzh_Merc\\'her_Yaou_Gwener_Sadorn'.split('_'),\n weekdaysShort : 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h[e]mm A',\n LTS : 'h[e]mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D [a viz] MMMM YYYY',\n LLL : 'D [a viz] MMMM YYYY h[e]mm A',\n LLLL : 'dddd, D [a viz] MMMM YYYY h[e]mm A'\n },\n calendar : {\n sameDay : '[Hiziv da] LT',\n nextDay : '[Warc\\'hoazh da] LT',\n nextWeek : 'dddd [da] LT',\n lastDay : '[Dec\\'h da] LT',\n lastWeek : 'dddd [paset da] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'a-benn %s',\n past : '%s \\'zo',\n s : 'un nebeud segondennoù',\n ss : '%d eilenn',\n m : 'ur vunutenn',\n mm : relativeTimeWithMutation,\n h : 'un eur',\n hh : '%d eur',\n d : 'un devezh',\n dd : relativeTimeWithMutation,\n M : 'ur miz',\n MM : relativeTimeWithMutation,\n y : 'ur bloaz',\n yy : specialMutationForYears\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(añ|vet)/,\n ordinal : function (number) {\n var output = (number === 1) ? 'añ' : 'vet';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return br;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var bs = moment.defineLocale('bs', {\n months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'),\n monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),\n weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[danas u] LT',\n nextDay : '[sutra u] LT',\n nextWeek : function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[jučer u] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'prije %s',\n s : 'par sekundi',\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : 'dan',\n dd : translate,\n M : 'mjesec',\n MM : translate,\n y : 'godinu',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return bs;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ca = moment.defineLocale('ca', {\n months : {\n standalone: 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split('_'),\n format: 'de gener_de febrer_de març_d\\'abril_de maig_de juny_de juliol_d\\'agost_de setembre_d\\'octubre_de novembre_de desembre'.split('_'),\n isFormat: /D[oD]?(\\s)+MMMM/\n },\n monthsShort : 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split('_'),\n monthsParseExact : true,\n weekdays : 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split('_'),\n weekdaysShort : 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n weekdaysMin : 'dg_dl_dt_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM [de] YYYY',\n ll : 'D MMM YYYY',\n LLL : 'D MMMM [de] YYYY [a les] H:mm',\n lll : 'D MMM YYYY, H:mm',\n LLLL : 'dddd D MMMM [de] YYYY [a les] H:mm',\n llll : 'ddd D MMM YYYY, H:mm'\n },\n calendar : {\n sameDay : function () {\n return '[avui a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n nextDay : function () {\n return '[demà a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n lastDay : function () {\n return '[ahir a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [passat a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'd\\'aquí %s',\n past : 'fa %s',\n s : 'uns segons',\n ss : '%d segons',\n m : 'un minut',\n mm : '%d minuts',\n h : 'una hora',\n hh : '%d hores',\n d : 'un dia',\n dd : '%d dies',\n M : 'un mes',\n MM : '%d mesos',\n y : 'un any',\n yy : '%d anys'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal : function (number, period) {\n var output = (number === 1) ? 'r' :\n (number === 2) ? 'n' :\n (number === 3) ? 'r' :\n (number === 4) ? 't' : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ca;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split('_'),\n monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_');\n\n var monthsParse = [/^led/i, /^úno/i, /^bře/i, /^dub/i, /^kvě/i, /^(čvn|červen$|června)/i, /^(čvc|červenec|července)/i, /^srp/i, /^zář/i, /^říj/i, /^lis/i, /^pro/i];\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n var monthsRegex = /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;\n\n function plural(n) {\n return (n > 1) && (n < 5) && (~~(n / 10) !== 1);\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return (withoutSuffix || isFuture) ? 'pár sekund' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekund');\n } else {\n return result + 'sekundami';\n }\n break;\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minuta' : (isFuture ? 'minutu' : 'minutou');\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minuty' : 'minut');\n } else {\n return result + 'minutami';\n }\n break;\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodin');\n } else {\n return result + 'hodinami';\n }\n break;\n case 'd': // a day / in a day / a day ago\n return (withoutSuffix || isFuture) ? 'den' : 'dnem';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dny' : 'dní');\n } else {\n return result + 'dny';\n }\n break;\n case 'M': // a month / in a month / a month ago\n return (withoutSuffix || isFuture) ? 'měsíc' : 'měsícem';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'měsíce' : 'měsíců');\n } else {\n return result + 'měsíci';\n }\n break;\n case 'y': // a year / in a year / a year ago\n return (withoutSuffix || isFuture) ? 'rok' : 'rokem';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'let');\n } else {\n return result + 'lety';\n }\n break;\n }\n }\n\n var cs = moment.defineLocale('cs', {\n months : months,\n monthsShort : monthsShort,\n monthsRegex : monthsRegex,\n monthsShortRegex : monthsRegex,\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsStrictRegex : /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,\n monthsShortStrictRegex : /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n weekdays : 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),\n weekdaysShort : 'ne_po_út_st_čt_pá_so'.split('_'),\n weekdaysMin : 'ne_po_út_st_čt_pá_so'.split('_'),\n longDateFormat : {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd D. MMMM YYYY H:mm',\n l : 'D. M. YYYY'\n },\n calendar : {\n sameDay: '[dnes v] LT',\n nextDay: '[zítra v] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v neděli v] LT';\n case 1:\n case 2:\n return '[v] dddd [v] LT';\n case 3:\n return '[ve středu v] LT';\n case 4:\n return '[ve čtvrtek v] LT';\n case 5:\n return '[v pátek v] LT';\n case 6:\n return '[v sobotu v] LT';\n }\n },\n lastDay: '[včera v] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulou neděli v] LT';\n case 1:\n case 2:\n return '[minulé] dddd [v] LT';\n case 3:\n return '[minulou středu v] LT';\n case 4:\n case 5:\n return '[minulý] dddd [v] LT';\n case 6:\n return '[minulou sobotu v] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'před %s',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse : /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return cs;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var cv = moment.defineLocale('cv', {\n months : 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split('_'),\n monthsShort : 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),\n weekdays : 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split('_'),\n weekdaysShort : 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),\n weekdaysMin : 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD-MM-YYYY',\n LL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',\n LLL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n LLLL : 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm'\n },\n calendar : {\n sameDay: '[Паян] LT [сехетре]',\n nextDay: '[Ыран] LT [сехетре]',\n lastDay: '[Ӗнер] LT [сехетре]',\n nextWeek: '[Ҫитес] dddd LT [сехетре]',\n lastWeek: '[Иртнӗ] dddd LT [сехетре]',\n sameElse: 'L'\n },\n relativeTime : {\n future : function (output) {\n var affix = /сехет$/i.exec(output) ? 'рен' : /ҫул$/i.exec(output) ? 'тан' : 'ран';\n return output + affix;\n },\n past : '%s каялла',\n s : 'пӗр-ик ҫеккунт',\n ss : '%d ҫеккунт',\n m : 'пӗр минут',\n mm : '%d минут',\n h : 'пӗр сехет',\n hh : '%d сехет',\n d : 'пӗр кун',\n dd : '%d кун',\n M : 'пӗр уйӑх',\n MM : '%d уйӑх',\n y : 'пӗр ҫул',\n yy : '%d ҫул'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-мӗш/,\n ordinal : '%d-мӗш',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return cv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var cy = moment.defineLocale('cy', {\n months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split('_'),\n monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split('_'),\n weekdays: 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split('_'),\n weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n weekdaysParseExact : true,\n // time formats are the same as en-gb\n longDateFormat: {\n LT: 'HH:mm',\n LTS : 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[Heddiw am] LT',\n nextDay: '[Yfory am] LT',\n nextWeek: 'dddd [am] LT',\n lastDay: '[Ddoe am] LT',\n lastWeek: 'dddd [diwethaf am] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'mewn %s',\n past: '%s yn ôl',\n s: 'ychydig eiliadau',\n ss: '%d eiliad',\n m: 'munud',\n mm: '%d munud',\n h: 'awr',\n hh: '%d awr',\n d: 'diwrnod',\n dd: '%d diwrnod',\n M: 'mis',\n MM: '%d mis',\n y: 'blwyddyn',\n yy: '%d flynedd'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n ordinal: function (number) {\n var b = number,\n output = '',\n lookup = [\n '', 'af', 'il', 'ydd', 'ydd', 'ed', 'ed', 'ed', 'fed', 'fed', 'fed', // 1af to 10fed\n 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'fed' // 11eg to 20fed\n ];\n if (b > 20) {\n if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n output = 'fed'; // not 30ain, 70ain or 90ain\n } else {\n output = 'ain';\n }\n } else if (b > 0) {\n output = lookup[b];\n }\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return cy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var da = moment.defineLocale('da', {\n months : 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort : 'søn_man_tir_ons_tor_fre_lør'.split('_'),\n weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd [d.] D. MMMM YYYY [kl.] HH:mm'\n },\n calendar : {\n sameDay : '[i dag kl.] LT',\n nextDay : '[i morgen kl.] LT',\n nextWeek : 'på dddd [kl.] LT',\n lastDay : '[i går kl.] LT',\n lastWeek : '[i] dddd[s kl.] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : '%s siden',\n s : 'få sekunder',\n ss : '%d sekunder',\n m : 'et minut',\n mm : '%d minutter',\n h : 'en time',\n hh : '%d timer',\n d : 'en dag',\n dd : '%d dage',\n M : 'en måned',\n MM : '%d måneder',\n y : 'et år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return da;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eine Minute', 'einer Minute'],\n 'h': ['eine Stunde', 'einer Stunde'],\n 'd': ['ein Tag', 'einem Tag'],\n 'dd': [number + ' Tage', number + ' Tagen'],\n 'M': ['ein Monat', 'einem Monat'],\n 'MM': [number + ' Monate', number + ' Monaten'],\n 'y': ['ein Jahr', 'einem Jahr'],\n 'yy': [number + ' Jahre', number + ' Jahren']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var de = moment.defineLocale('de', {\n months : 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort : 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd, D. MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]'\n },\n relativeTime : {\n future : 'in %s',\n past : 'vor %s',\n s : 'ein paar Sekunden',\n ss : '%d Sekunden',\n m : processRelativeTime,\n mm : '%d Minuten',\n h : processRelativeTime,\n hh : '%d Stunden',\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return de;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eine Minute', 'einer Minute'],\n 'h': ['eine Stunde', 'einer Stunde'],\n 'd': ['ein Tag', 'einem Tag'],\n 'dd': [number + ' Tage', number + ' Tagen'],\n 'M': ['ein Monat', 'einem Monat'],\n 'MM': [number + ' Monate', number + ' Monaten'],\n 'y': ['ein Jahr', 'einem Jahr'],\n 'yy': [number + ' Jahre', number + ' Jahren']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deAt = moment.defineLocale('de-at', {\n months : 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort : 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd, D. MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]'\n },\n relativeTime : {\n future : 'in %s',\n past : 'vor %s',\n s : 'ein paar Sekunden',\n ss : '%d Sekunden',\n m : processRelativeTime,\n mm : '%d Minuten',\n h : processRelativeTime,\n hh : '%d Stunden',\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return deAt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eine Minute', 'einer Minute'],\n 'h': ['eine Stunde', 'einer Stunde'],\n 'd': ['ein Tag', 'einem Tag'],\n 'dd': [number + ' Tage', number + ' Tagen'],\n 'M': ['ein Monat', 'einem Monat'],\n 'MM': [number + ' Monate', number + ' Monaten'],\n 'y': ['ein Jahr', 'einem Jahr'],\n 'yy': [number + ' Jahre', number + ' Jahren']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deCh = moment.defineLocale('de-ch', {\n months : 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort : 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n weekdaysShort : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY HH:mm',\n LLLL : 'dddd, D. MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]'\n },\n relativeTime : {\n future : 'in %s',\n past : 'vor %s',\n s : 'ein paar Sekunden',\n ss : '%d Sekunden',\n m : processRelativeTime,\n mm : '%d Minuten',\n h : processRelativeTime,\n hh : '%d Stunden',\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return deCh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'ޖެނުއަރީ',\n 'ފެބްރުއަރީ',\n 'މާރިޗު',\n 'އޭޕްރީލު',\n 'މޭ',\n 'ޖޫން',\n 'ޖުލައި',\n 'އޯގަސްޓު',\n 'ސެޕްޓެމްބަރު',\n 'އޮކްޓޯބަރު',\n 'ނޮވެމްބަރު',\n 'ޑިސެމްބަރު'\n ], weekdays = [\n 'އާދިއްތަ',\n 'ހޯމަ',\n 'އަންގާރަ',\n 'ބުދަ',\n 'ބުރާސްފަތި',\n 'ހުކުރު',\n 'ހޮނިހިރު'\n ];\n\n var dv = moment.defineLocale('dv', {\n months : months,\n monthsShort : months,\n weekdays : weekdays,\n weekdaysShort : weekdays,\n weekdaysMin : 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'),\n longDateFormat : {\n\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'D/M/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /މކ|މފ/,\n isPM : function (input) {\n return 'މފ' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'މކ';\n } else {\n return 'މފ';\n }\n },\n calendar : {\n sameDay : '[މިއަދު] LT',\n nextDay : '[މާދަމާ] LT',\n nextWeek : 'dddd LT',\n lastDay : '[އިއްޔެ] LT',\n lastWeek : '[ފާއިތުވި] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ތެރޭގައި %s',\n past : 'ކުރިން %s',\n s : 'ސިކުންތުކޮޅެއް',\n ss : 'd% ސިކުންތު',\n m : 'މިނިޓެއް',\n mm : 'މިނިޓު %d',\n h : 'ގަޑިއިރެއް',\n hh : 'ގަޑިއިރު %d',\n d : 'ދުވަހެއް',\n dd : 'ދުވަސް %d',\n M : 'މަހެއް',\n MM : 'މަސް %d',\n y : 'އަހަރެއް',\n yy : 'އަހަރު %d'\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week : {\n dow : 7, // Sunday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return dv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n function isFunction(input) {\n return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';\n }\n\n\n var el = moment.defineLocale('el', {\n monthsNominativeEl : 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split('_'),\n monthsGenitiveEl : 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split('_'),\n months : function (momentToFormat, format) {\n if (!momentToFormat) {\n return this._monthsNominativeEl;\n } else if (typeof format === 'string' && /D/.test(format.substring(0, format.indexOf('MMMM')))) { // if there is a day number before 'MMMM'\n return this._monthsGenitiveEl[momentToFormat.month()];\n } else {\n return this._monthsNominativeEl[momentToFormat.month()];\n }\n },\n monthsShort : 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),\n weekdays : 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split('_'),\n weekdaysShort : 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),\n weekdaysMin : 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'μμ' : 'ΜΜ';\n } else {\n return isLower ? 'πμ' : 'ΠΜ';\n }\n },\n isPM : function (input) {\n return ((input + '').toLowerCase()[0] === 'μ');\n },\n meridiemParse : /[ΠΜ]\\.?Μ?\\.?/i,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendarEl : {\n sameDay : '[Σήμερα {}] LT',\n nextDay : '[Αύριο {}] LT',\n nextWeek : 'dddd [{}] LT',\n lastDay : '[Χθες {}] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 6:\n return '[το προηγούμενο] dddd [{}] LT';\n default:\n return '[την προηγούμενη] dddd [{}] LT';\n }\n },\n sameElse : 'L'\n },\n calendar : function (key, mom) {\n var output = this._calendarEl[key],\n hours = mom && mom.hours();\n if (isFunction(output)) {\n output = output.apply(mom);\n }\n return output.replace('{}', (hours % 12 === 1 ? 'στη' : 'στις'));\n },\n relativeTime : {\n future : 'σε %s',\n past : '%s πριν',\n s : 'λίγα δευτερόλεπτα',\n ss : '%d δευτερόλεπτα',\n m : 'ένα λεπτό',\n mm : '%d λεπτά',\n h : 'μία ώρα',\n hh : '%d ώρες',\n d : 'μία μέρα',\n dd : '%d μέρες',\n M : 'ένας μήνας',\n MM : '%d μήνες',\n y : 'ένας χρόνος',\n yy : '%d χρόνια'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}η/,\n ordinal: '%dη',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4st is the first week of the year.\n }\n });\n\n return el;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enSG = moment.defineLocale('en-SG', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enSG;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enAu = moment.defineLocale('en-au', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enAu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enCa = moment.defineLocale('en-ca', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'YYYY-MM-DD',\n LL : 'MMMM D, YYYY',\n LLL : 'MMMM D, YYYY h:mm A',\n LLLL : 'dddd, MMMM D, YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n });\n\n return enCa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enGb = moment.defineLocale('en-gb', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enGb;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enIe = moment.defineLocale('en-ie', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enIe;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enIl = moment.defineLocale('en-il', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n });\n\n return enIl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var enNz = moment.defineLocale('en-nz', {\n months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return enNz;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var eo = moment.defineLocale('eo', {\n months : 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec'.split('_'),\n weekdays : 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'),\n weekdaysShort : 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'),\n weekdaysMin : 'di_lu_ma_me_ĵa_ve_sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'D[-a de] MMMM, YYYY',\n LLL : 'D[-a de] MMMM, YYYY HH:mm',\n LLLL : 'dddd, [la] D[-a de] MMMM, YYYY HH:mm'\n },\n meridiemParse: /[ap]\\.t\\.m/i,\n isPM: function (input) {\n return input.charAt(0).toLowerCase() === 'p';\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'p.t.m.' : 'P.T.M.';\n } else {\n return isLower ? 'a.t.m.' : 'A.T.M.';\n }\n },\n calendar : {\n sameDay : '[Hodiaŭ je] LT',\n nextDay : '[Morgaŭ je] LT',\n nextWeek : 'dddd [je] LT',\n lastDay : '[Hieraŭ je] LT',\n lastWeek : '[pasinta] dddd [je] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'post %s',\n past : 'antaŭ %s',\n s : 'sekundoj',\n ss : '%d sekundoj',\n m : 'minuto',\n mm : '%d minutoj',\n h : 'horo',\n hh : '%d horoj',\n d : 'tago',//ne 'diurno', ĉar estas uzita por proksimumo\n dd : '%d tagoj',\n M : 'monato',\n MM : '%d monatoj',\n y : 'jaro',\n yy : '%d jaroj'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}a/,\n ordinal : '%da',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return eo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_');\n\n var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i];\n var monthsRegex = /^(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;\n\n var es = moment.defineLocale('es', {\n months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex : monthsRegex,\n monthsShortRegex : monthsRegex,\n monthsStrictRegex : /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex : /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n weekdays : 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY H:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY H:mm'\n },\n calendar : {\n sameDay : function () {\n return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextDay : function () {\n return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastDay : function () {\n return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'en %s',\n past : 'hace %s',\n s : 'unos segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'una hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un año',\n yy : '%d años'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return es;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_');\n\n var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i];\n var monthsRegex = /^(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;\n\n var esDo = moment.defineLocale('es-do', {\n months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays : 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY h:mm A',\n LLLL : 'dddd, D [de] MMMM [de] YYYY h:mm A'\n },\n calendar : {\n sameDay : function () {\n return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextDay : function () {\n return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastDay : function () {\n return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'en %s',\n past : 'hace %s',\n s : 'unos segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'una hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un año',\n yy : '%d años'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return esDo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_');\n\n var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i];\n var monthsRegex = /^(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;\n\n var esUs = moment.defineLocale('es-us', {\n months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays : 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'MM/DD/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY h:mm A',\n LLLL : 'dddd, D [de] MMMM [de] YYYY h:mm A'\n },\n calendar : {\n sameDay : function () {\n return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextDay : function () {\n return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastDay : function () {\n return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n lastWeek : function () {\n return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'en %s',\n past : 'hace %s',\n s : 'unos segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'una hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un año',\n yy : '%d años'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return esUs;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 's' : ['mõne sekundi', 'mõni sekund', 'paar sekundit'],\n 'ss': [number + 'sekundi', number + 'sekundit'],\n 'm' : ['ühe minuti', 'üks minut'],\n 'mm': [number + ' minuti', number + ' minutit'],\n 'h' : ['ühe tunni', 'tund aega', 'üks tund'],\n 'hh': [number + ' tunni', number + ' tundi'],\n 'd' : ['ühe päeva', 'üks päev'],\n 'M' : ['kuu aja', 'kuu aega', 'üks kuu'],\n 'MM': [number + ' kuu', number + ' kuud'],\n 'y' : ['ühe aasta', 'aasta', 'üks aasta'],\n 'yy': [number + ' aasta', number + ' aastat']\n };\n if (withoutSuffix) {\n return format[key][2] ? format[key][2] : format[key][1];\n }\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var et = moment.defineLocale('et', {\n months : 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split('_'),\n monthsShort : 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),\n weekdays : 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split('_'),\n weekdaysShort : 'P_E_T_K_N_R_L'.split('_'),\n weekdaysMin : 'P_E_T_K_N_R_L'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[Täna,] LT',\n nextDay : '[Homme,] LT',\n nextWeek : '[Järgmine] dddd LT',\n lastDay : '[Eile,] LT',\n lastWeek : '[Eelmine] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s pärast',\n past : '%s tagasi',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : '%d päeva',\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return et;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var eu = moment.defineLocale('eu', {\n months : 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split('_'),\n monthsShort : 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split('_'),\n monthsParseExact : true,\n weekdays : 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split('_'),\n weekdaysShort : 'ig._al._ar._az._og._ol._lr.'.split('_'),\n weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'YYYY[ko] MMMM[ren] D[a]',\n LLL : 'YYYY[ko] MMMM[ren] D[a] HH:mm',\n LLLL : 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',\n l : 'YYYY-M-D',\n ll : 'YYYY[ko] MMM D[a]',\n lll : 'YYYY[ko] MMM D[a] HH:mm',\n llll : 'ddd, YYYY[ko] MMM D[a] HH:mm'\n },\n calendar : {\n sameDay : '[gaur] LT[etan]',\n nextDay : '[bihar] LT[etan]',\n nextWeek : 'dddd LT[etan]',\n lastDay : '[atzo] LT[etan]',\n lastWeek : '[aurreko] dddd LT[etan]',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s barru',\n past : 'duela %s',\n s : 'segundo batzuk',\n ss : '%d segundo',\n m : 'minutu bat',\n mm : '%d minutu',\n h : 'ordu bat',\n hh : '%d ordu',\n d : 'egun bat',\n dd : '%d egun',\n M : 'hilabete bat',\n MM : '%d hilabete',\n y : 'urte bat',\n yy : '%d urte'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return eu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '۱',\n '2': '۲',\n '3': '۳',\n '4': '۴',\n '5': '۵',\n '6': '۶',\n '7': '۷',\n '8': '۸',\n '9': '۹',\n '0': '۰'\n }, numberMap = {\n '۱': '1',\n '۲': '2',\n '۳': '3',\n '۴': '4',\n '۵': '5',\n '۶': '6',\n '۷': '7',\n '۸': '8',\n '۹': '9',\n '۰': '0'\n };\n\n var fa = moment.defineLocale('fa', {\n months : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),\n monthsShort : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),\n weekdays : 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split('_'),\n weekdaysShort : 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split('_'),\n weekdaysMin : 'ی_د_س_چ_پ_ج_ش'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n meridiemParse: /قبل از ظهر|بعد از ظهر/,\n isPM: function (input) {\n return /بعد از ظهر/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'قبل از ظهر';\n } else {\n return 'بعد از ظهر';\n }\n },\n calendar : {\n sameDay : '[امروز ساعت] LT',\n nextDay : '[فردا ساعت] LT',\n nextWeek : 'dddd [ساعت] LT',\n lastDay : '[دیروز ساعت] LT',\n lastWeek : 'dddd [پیش] [ساعت] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'در %s',\n past : '%s پیش',\n s : 'چند ثانیه',\n ss : 'ثانیه d%',\n m : 'یک دقیقه',\n mm : '%d دقیقه',\n h : 'یک ساعت',\n hh : '%d ساعت',\n d : 'یک روز',\n dd : '%d روز',\n M : 'یک ماه',\n MM : '%d ماه',\n y : 'یک سال',\n yy : '%d سال'\n },\n preparse: function (string) {\n return string.replace(/[۰-۹]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n dayOfMonthOrdinalParse: /\\d{1,2}م/,\n ordinal : '%dم',\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return fa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var numbersPast = 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(' '),\n numbersFuture = [\n 'nolla', 'yhden', 'kahden', 'kolmen', 'neljän', 'viiden', 'kuuden',\n numbersPast[7], numbersPast[8], numbersPast[9]\n ];\n function translate(number, withoutSuffix, key, isFuture) {\n var result = '';\n switch (key) {\n case 's':\n return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n case 'ss':\n return isFuture ? 'sekunnin' : 'sekuntia';\n case 'm':\n return isFuture ? 'minuutin' : 'minuutti';\n case 'mm':\n result = isFuture ? 'minuutin' : 'minuuttia';\n break;\n case 'h':\n return isFuture ? 'tunnin' : 'tunti';\n case 'hh':\n result = isFuture ? 'tunnin' : 'tuntia';\n break;\n case 'd':\n return isFuture ? 'päivän' : 'päivä';\n case 'dd':\n result = isFuture ? 'päivän' : 'päivää';\n break;\n case 'M':\n return isFuture ? 'kuukauden' : 'kuukausi';\n case 'MM':\n result = isFuture ? 'kuukauden' : 'kuukautta';\n break;\n case 'y':\n return isFuture ? 'vuoden' : 'vuosi';\n case 'yy':\n result = isFuture ? 'vuoden' : 'vuotta';\n break;\n }\n result = verbalNumber(number, isFuture) + ' ' + result;\n return result;\n }\n function verbalNumber(number, isFuture) {\n return number < 10 ? (isFuture ? numbersFuture[number] : numbersPast[number]) : number;\n }\n\n var fi = moment.defineLocale('fi', {\n months : 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split('_'),\n monthsShort : 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split('_'),\n weekdays : 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split('_'),\n weekdaysShort : 'su_ma_ti_ke_to_pe_la'.split('_'),\n weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD.MM.YYYY',\n LL : 'Do MMMM[ta] YYYY',\n LLL : 'Do MMMM[ta] YYYY, [klo] HH.mm',\n LLLL : 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',\n l : 'D.M.YYYY',\n ll : 'Do MMM YYYY',\n lll : 'Do MMM YYYY, [klo] HH.mm',\n llll : 'ddd, Do MMM YYYY, [klo] HH.mm'\n },\n calendar : {\n sameDay : '[tänään] [klo] LT',\n nextDay : '[huomenna] [klo] LT',\n nextWeek : 'dddd [klo] LT',\n lastDay : '[eilen] [klo] LT',\n lastWeek : '[viime] dddd[na] [klo] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s päästä',\n past : '%s sitten',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var fo = moment.defineLocale('fo', {\n months : 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays : 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split('_'),\n weekdaysShort : 'sun_mán_týs_mik_hós_frí_ley'.split('_'),\n weekdaysMin : 'su_má_tý_mi_hó_fr_le'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D. MMMM, YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Í dag kl.] LT',\n nextDay : '[Í morgin kl.] LT',\n nextWeek : 'dddd [kl.] LT',\n lastDay : '[Í gjár kl.] LT',\n lastWeek : '[síðstu] dddd [kl] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'um %s',\n past : '%s síðani',\n s : 'fá sekund',\n ss : '%d sekundir',\n m : 'ein minuttur',\n mm : '%d minuttir',\n h : 'ein tími',\n hh : '%d tímar',\n d : 'ein dagur',\n dd : '%d dagar',\n M : 'ein mánaður',\n MM : '%d mánaðir',\n y : 'eitt ár',\n yy : '%d ár'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var fr = moment.defineLocale('fr', {\n months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),\n monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),\n monthsParseExact : true,\n weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin : 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Aujourd’hui à] LT',\n nextDay : '[Demain à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[Hier à] LT',\n lastWeek : 'dddd [dernier à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dans %s',\n past : 'il y a %s',\n s : 'quelques secondes',\n ss : '%d secondes',\n m : 'une minute',\n mm : '%d minutes',\n h : 'une heure',\n hh : '%d heures',\n d : 'un jour',\n dd : '%d jours',\n M : 'un mois',\n MM : '%d mois',\n y : 'un an',\n yy : '%d ans'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|)/,\n ordinal : function (number, period) {\n switch (period) {\n // TODO: Return 'e' when day of month > 1. Move this case inside\n // block for masculine words below.\n // See https://github.com/moment/moment/issues/3375\n case 'D':\n return number + (number === 1 ? 'er' : '');\n\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var frCa = moment.defineLocale('fr-ca', {\n months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),\n monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),\n monthsParseExact : true,\n weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin : 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Aujourd’hui à] LT',\n nextDay : '[Demain à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[Hier à] LT',\n lastWeek : 'dddd [dernier à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dans %s',\n past : 'il y a %s',\n s : 'quelques secondes',\n ss : '%d secondes',\n m : 'une minute',\n mm : '%d minutes',\n h : 'une heure',\n hh : '%d heures',\n d : 'un jour',\n dd : '%d jours',\n M : 'un mois',\n MM : '%d mois',\n y : 'un an',\n yy : '%d ans'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal : function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n }\n });\n\n return frCa;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var frCh = moment.defineLocale('fr-ch', {\n months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),\n monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),\n monthsParseExact : true,\n weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin : 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Aujourd’hui à] LT',\n nextDay : '[Demain à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[Hier à] LT',\n lastWeek : 'dddd [dernier à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dans %s',\n past : 'il y a %s',\n s : 'quelques secondes',\n ss : '%d secondes',\n m : 'une minute',\n mm : '%d minutes',\n h : 'une heure',\n hh : '%d heures',\n d : 'un jour',\n dd : '%d jours',\n M : 'un mois',\n MM : '%d mois',\n y : 'un an',\n yy : '%d ans'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal : function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return frCh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');\n\n var fy = moment.defineLocale('fy', {\n months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n monthsParseExact : true,\n weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'),\n weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'),\n weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD-MM-YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[hjoed om] LT',\n nextDay: '[moarn om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[juster om] LT',\n lastWeek: '[ôfrûne] dddd [om] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'oer %s',\n past : '%s lyn',\n s : 'in pear sekonden',\n ss : '%d sekonden',\n m : 'ien minút',\n mm : '%d minuten',\n h : 'ien oere',\n hh : '%d oeren',\n d : 'ien dei',\n dd : '%d dagen',\n M : 'ien moanne',\n MM : '%d moannen',\n y : 'ien jier',\n yy : '%d jierren'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return fy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n\n var months = [\n 'Eanáir', 'Feabhra', 'Márta', 'Aibreán', 'Bealtaine', 'Méitheamh', 'Iúil', 'Lúnasa', 'Meán Fómhair', 'Deaireadh Fómhair', 'Samhain', 'Nollaig'\n ];\n\n var monthsShort = ['Eaná', 'Feab', 'Márt', 'Aibr', 'Beal', 'Méit', 'Iúil', 'Lúna', 'Meán', 'Deai', 'Samh', 'Noll'];\n\n var weekdays = ['Dé Domhnaigh', 'Dé Luain', 'Dé Máirt', 'Dé Céadaoin', 'Déardaoin', 'Dé hAoine', 'Dé Satharn'];\n\n var weekdaysShort = ['Dom', 'Lua', 'Mái', 'Céa', 'Déa', 'hAo', 'Sat'];\n\n var weekdaysMin = ['Do', 'Lu', 'Má', 'Ce', 'Dé', 'hA', 'Sa'];\n\n var ga = moment.defineLocale('ga', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[Inniu ag] LT',\n nextDay: '[Amárach ag] LT',\n nextWeek: 'dddd [ag] LT',\n lastDay: '[Inné aig] LT',\n lastWeek: 'dddd [seo caite] [ag] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'i %s',\n past: '%s ó shin',\n s: 'cúpla soicind',\n ss: '%d soicind',\n m: 'nóiméad',\n mm: '%d nóiméad',\n h: 'uair an chloig',\n hh: '%d uair an chloig',\n d: 'lá',\n dd: '%d lá',\n M: 'mí',\n MM: '%d mí',\n y: 'bliain',\n yy: '%d bliain'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ga;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'Am Faoilleach', 'An Gearran', 'Am Màrt', 'An Giblean', 'An Cèitean', 'An t-Ògmhios', 'An t-Iuchar', 'An Lùnastal', 'An t-Sultain', 'An Dàmhair', 'An t-Samhain', 'An Dùbhlachd'\n ];\n\n var monthsShort = ['Faoi', 'Gear', 'Màrt', 'Gibl', 'Cèit', 'Ògmh', 'Iuch', 'Lùn', 'Sult', 'Dàmh', 'Samh', 'Dùbh'];\n\n var weekdays = ['Didòmhnaich', 'Diluain', 'Dimàirt', 'Diciadain', 'Diardaoin', 'Dihaoine', 'Disathairne'];\n\n var weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'];\n\n var weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'];\n\n var gd = moment.defineLocale('gd', {\n months : months,\n monthsShort : monthsShort,\n monthsParseExact : true,\n weekdays : weekdays,\n weekdaysShort : weekdaysShort,\n weekdaysMin : weekdaysMin,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[An-diugh aig] LT',\n nextDay : '[A-màireach aig] LT',\n nextWeek : 'dddd [aig] LT',\n lastDay : '[An-dè aig] LT',\n lastWeek : 'dddd [seo chaidh] [aig] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ann an %s',\n past : 'bho chionn %s',\n s : 'beagan diogan',\n ss : '%d diogan',\n m : 'mionaid',\n mm : '%d mionaidean',\n h : 'uair',\n hh : '%d uairean',\n d : 'latha',\n dd : '%d latha',\n M : 'mìos',\n MM : '%d mìosan',\n y : 'bliadhna',\n yy : '%d bliadhna'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}(d|na|mh)/,\n ordinal : function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return gd;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var gl = moment.defineLocale('gl', {\n months : 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split('_'),\n monthsShort : 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),\n weekdaysShort : 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),\n weekdaysMin : 'do_lu_ma_mé_xo_ve_sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY H:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY H:mm'\n },\n calendar : {\n sameDay : function () {\n return '[hoxe ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';\n },\n nextDay : function () {\n return '[mañá ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';\n },\n nextWeek : function () {\n return 'dddd [' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';\n },\n lastDay : function () {\n return '[onte ' + ((this.hours() !== 1) ? 'á' : 'a') + '] LT';\n },\n lastWeek : function () {\n return '[o] dddd [pasado ' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : function (str) {\n if (str.indexOf('un') === 0) {\n return 'n' + str;\n }\n return 'en ' + str;\n },\n past : 'hai %s',\n s : 'uns segundos',\n ss : '%d segundos',\n m : 'un minuto',\n mm : '%d minutos',\n h : 'unha hora',\n hh : '%d horas',\n d : 'un día',\n dd : '%d días',\n M : 'un mes',\n MM : '%d meses',\n y : 'un ano',\n yy : '%d anos'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return gl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 's': ['thodde secondanim', 'thodde second'],\n 'ss': [number + ' secondanim', number + ' second'],\n 'm': ['eka mintan', 'ek minute'],\n 'mm': [number + ' mintanim', number + ' mintam'],\n 'h': ['eka voran', 'ek vor'],\n 'hh': [number + ' voranim', number + ' voram'],\n 'd': ['eka disan', 'ek dis'],\n 'dd': [number + ' disanim', number + ' dis'],\n 'M': ['eka mhoinean', 'ek mhoino'],\n 'MM': [number + ' mhoineanim', number + ' mhoine'],\n 'y': ['eka vorsan', 'ek voros'],\n 'yy': [number + ' vorsanim', number + ' vorsam']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var gomLatn = moment.defineLocale('gom-latn', {\n months : 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split('_'),\n monthsShort : 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays : 'Aitar_Somar_Mongllar_Budvar_Brestar_Sukrar_Son\\'var'.split('_'),\n weekdaysShort : 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),\n weekdaysMin : 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'A h:mm [vazta]',\n LTS : 'A h:mm:ss [vazta]',\n L : 'DD-MM-YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY A h:mm [vazta]',\n LLLL : 'dddd, MMMM[achea] Do, YYYY, A h:mm [vazta]',\n llll: 'ddd, D MMM YYYY, A h:mm [vazta]'\n },\n calendar : {\n sameDay: '[Aiz] LT',\n nextDay: '[Faleam] LT',\n nextWeek: '[Ieta to] dddd[,] LT',\n lastDay: '[Kal] LT',\n lastWeek: '[Fatlo] dddd[,] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s',\n past : '%s adim',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse : /\\d{1,2}(er)/,\n ordinal : function (number, period) {\n switch (period) {\n // the ordinal 'er' only applies to day of the month\n case 'D':\n return number + 'er';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n },\n meridiemParse: /rati|sokalli|donparam|sanje/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'rati') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'sokalli') {\n return hour;\n } else if (meridiem === 'donparam') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'sanje') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'rati';\n } else if (hour < 12) {\n return 'sokalli';\n } else if (hour < 16) {\n return 'donparam';\n } else if (hour < 20) {\n return 'sanje';\n } else {\n return 'rati';\n }\n }\n });\n\n return gomLatn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '૧',\n '2': '૨',\n '3': '૩',\n '4': '૪',\n '5': '૫',\n '6': '૬',\n '7': '૭',\n '8': '૮',\n '9': '૯',\n '0': '૦'\n },\n numberMap = {\n '૧': '1',\n '૨': '2',\n '૩': '3',\n '૪': '4',\n '૫': '5',\n '૬': '6',\n '૭': '7',\n '૮': '8',\n '૯': '9',\n '૦': '0'\n };\n\n var gu = moment.defineLocale('gu', {\n months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split('_'),\n monthsShort: 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split('_'),\n monthsParseExact: true,\n weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split('_'),\n weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),\n weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm વાગ્યે',\n LTS: 'A h:mm:ss વાગ્યે',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm વાગ્યે',\n LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે'\n },\n calendar: {\n sameDay: '[આજ] LT',\n nextDay: '[કાલે] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ગઇકાલે] LT',\n lastWeek: '[પાછલા] dddd, LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: '%s મા',\n past: '%s પેહલા',\n s: 'અમુક પળો',\n ss: '%d સેકંડ',\n m: 'એક મિનિટ',\n mm: '%d મિનિટ',\n h: 'એક કલાક',\n hh: '%d કલાક',\n d: 'એક દિવસ',\n dd: '%d દિવસ',\n M: 'એક મહિનો',\n MM: '%d મહિનો',\n y: 'એક વર્ષ',\n yy: '%d વર્ષ'\n },\n preparse: function (string) {\n return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Gujarati notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.\n meridiemParse: /રાત|બપોર|સવાર|સાંજ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'રાત') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'સવાર') {\n return hour;\n } else if (meridiem === 'બપોર') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'સાંજ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'રાત';\n } else if (hour < 10) {\n return 'સવાર';\n } else if (hour < 17) {\n return 'બપોર';\n } else if (hour < 20) {\n return 'સાંજ';\n } else {\n return 'રાત';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return gu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var he = moment.defineLocale('he', {\n months : 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split('_'),\n monthsShort : 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),\n weekdays : 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),\n weekdaysShort : 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),\n weekdaysMin : 'א_ב_ג_ד_ה_ו_ש'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [ב]MMMM YYYY',\n LLL : 'D [ב]MMMM YYYY HH:mm',\n LLLL : 'dddd, D [ב]MMMM YYYY HH:mm',\n l : 'D/M/YYYY',\n ll : 'D MMM YYYY',\n lll : 'D MMM YYYY HH:mm',\n llll : 'ddd, D MMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[היום ב־]LT',\n nextDay : '[מחר ב־]LT',\n nextWeek : 'dddd [בשעה] LT',\n lastDay : '[אתמול ב־]LT',\n lastWeek : '[ביום] dddd [האחרון בשעה] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'בעוד %s',\n past : 'לפני %s',\n s : 'מספר שניות',\n ss : '%d שניות',\n m : 'דקה',\n mm : '%d דקות',\n h : 'שעה',\n hh : function (number) {\n if (number === 2) {\n return 'שעתיים';\n }\n return number + ' שעות';\n },\n d : 'יום',\n dd : function (number) {\n if (number === 2) {\n return 'יומיים';\n }\n return number + ' ימים';\n },\n M : 'חודש',\n MM : function (number) {\n if (number === 2) {\n return 'חודשיים';\n }\n return number + ' חודשים';\n },\n y : 'שנה',\n yy : function (number) {\n if (number === 2) {\n return 'שנתיים';\n } else if (number % 10 === 0 && number !== 10) {\n return number + ' שנה';\n }\n return number + ' שנים';\n }\n },\n meridiemParse: /אחה\"צ|לפנה\"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,\n isPM : function (input) {\n return /^(אחה\"צ|אחרי הצהריים|בערב)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 5) {\n return 'לפנות בוקר';\n } else if (hour < 10) {\n return 'בבוקר';\n } else if (hour < 12) {\n return isLower ? 'לפנה\"צ' : 'לפני הצהריים';\n } else if (hour < 18) {\n return isLower ? 'אחה\"צ' : 'אחרי הצהריים';\n } else {\n return 'בערב';\n }\n }\n });\n\n return he;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '१',\n '2': '२',\n '3': '३',\n '4': '४',\n '5': '५',\n '6': '६',\n '7': '७',\n '8': '८',\n '9': '९',\n '0': '०'\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0'\n };\n\n var hi = moment.defineLocale('hi', {\n months : 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split('_'),\n monthsShort : 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),\n monthsParseExact: true,\n weekdays : 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort : 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat : {\n LT : 'A h:mm बजे',\n LTS : 'A h:mm:ss बजे',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm बजे',\n LLLL : 'dddd, D MMMM YYYY, A h:mm बजे'\n },\n calendar : {\n sameDay : '[आज] LT',\n nextDay : '[कल] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[कल] LT',\n lastWeek : '[पिछले] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s में',\n past : '%s पहले',\n s : 'कुछ ही क्षण',\n ss : '%d सेकंड',\n m : 'एक मिनट',\n mm : '%d मिनट',\n h : 'एक घंटा',\n hh : '%d घंटे',\n d : 'एक दिन',\n dd : '%d दिन',\n M : 'एक महीने',\n MM : '%d महीने',\n y : 'एक वर्ष',\n yy : '%d वर्ष'\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Hindi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.\n meridiemParse: /रात|सुबह|दोपहर|शाम/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सुबह') {\n return hour;\n } else if (meridiem === 'दोपहर') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'शाम') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात';\n } else if (hour < 10) {\n return 'सुबह';\n } else if (hour < 17) {\n return 'दोपहर';\n } else if (hour < 20) {\n return 'शाम';\n } else {\n return 'रात';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return hi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var hr = moment.defineLocale('hr', {\n months : {\n format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split('_'),\n standalone: 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split('_')\n },\n monthsShort : 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split('_'),\n monthsParseExact: true,\n weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),\n weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[danas u] LT',\n nextDay : '[sutra u] LT',\n nextWeek : function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[jučer u] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'prije %s',\n s : 'par sekundi',\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : 'dan',\n dd : translate,\n M : 'mjesec',\n MM : translate,\n y : 'godinu',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return hr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var weekEndings = 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');\n function translate(number, withoutSuffix, key, isFuture) {\n var num = number;\n switch (key) {\n case 's':\n return (isFuture || withoutSuffix) ? 'néhány másodperc' : 'néhány másodperce';\n case 'ss':\n return num + (isFuture || withoutSuffix) ? ' másodperc' : ' másodperce';\n case 'm':\n return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'mm':\n return num + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'h':\n return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'hh':\n return num + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'd':\n return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'dd':\n return num + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'M':\n return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'MM':\n return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'y':\n return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');\n case 'yy':\n return num + (isFuture || withoutSuffix ? ' év' : ' éve');\n }\n return '';\n }\n function week(isFuture) {\n return (isFuture ? '' : '[múlt] ') + '[' + weekEndings[this.day()] + '] LT[-kor]';\n }\n\n var hu = moment.defineLocale('hu', {\n months : 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split('_'),\n monthsShort : 'jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec'.split('_'),\n weekdays : 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),\n weekdaysShort : 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),\n weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'YYYY.MM.DD.',\n LL : 'YYYY. MMMM D.',\n LLL : 'YYYY. MMMM D. H:mm',\n LLLL : 'YYYY. MMMM D., dddd H:mm'\n },\n meridiemParse: /de|du/i,\n isPM: function (input) {\n return input.charAt(1).toLowerCase() === 'u';\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower === true ? 'de' : 'DE';\n } else {\n return isLower === true ? 'du' : 'DU';\n }\n },\n calendar : {\n sameDay : '[ma] LT[-kor]',\n nextDay : '[holnap] LT[-kor]',\n nextWeek : function () {\n return week.call(this, true);\n },\n lastDay : '[tegnap] LT[-kor]',\n lastWeek : function () {\n return week.call(this, false);\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s múlva',\n past : '%s',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return hu;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var hyAm = moment.defineLocale('hy-am', {\n months : {\n format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_'),\n standalone: 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_')\n },\n monthsShort : 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),\n weekdays : 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split('_'),\n weekdaysShort : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n weekdaysMin : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY թ.',\n LLL : 'D MMMM YYYY թ., HH:mm',\n LLLL : 'dddd, D MMMM YYYY թ., HH:mm'\n },\n calendar : {\n sameDay: '[այսօր] LT',\n nextDay: '[վաղը] LT',\n lastDay: '[երեկ] LT',\n nextWeek: function () {\n return 'dddd [օրը ժամը] LT';\n },\n lastWeek: function () {\n return '[անցած] dddd [օրը ժամը] LT';\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s հետո',\n past : '%s առաջ',\n s : 'մի քանի վայրկյան',\n ss : '%d վայրկյան',\n m : 'րոպե',\n mm : '%d րոպե',\n h : 'ժամ',\n hh : '%d ժամ',\n d : 'օր',\n dd : '%d օր',\n M : 'ամիս',\n MM : '%d ամիս',\n y : 'տարի',\n yy : '%d տարի'\n },\n meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,\n isPM: function (input) {\n return /^(ցերեկվա|երեկոյան)$/.test(input);\n },\n meridiem : function (hour) {\n if (hour < 4) {\n return 'գիշերվա';\n } else if (hour < 12) {\n return 'առավոտվա';\n } else if (hour < 17) {\n return 'ցերեկվա';\n } else {\n return 'երեկոյան';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}|\\d{1,2}-(ին|րդ)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'DDD':\n case 'w':\n case 'W':\n case 'DDDo':\n if (number === 1) {\n return number + '-ին';\n }\n return number + '-րդ';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return hyAm;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var id = moment.defineLocale('id', {\n months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),\n weekdays : 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n weekdaysShort : 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /pagi|siang|sore|malam/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'siang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sore' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'siang';\n } else if (hours < 19) {\n return 'sore';\n } else {\n return 'malam';\n }\n },\n calendar : {\n sameDay : '[Hari ini pukul] LT',\n nextDay : '[Besok pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kemarin pukul] LT',\n lastWeek : 'dddd [lalu pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dalam %s',\n past : '%s yang lalu',\n s : 'beberapa detik',\n ss : '%d detik',\n m : 'semenit',\n mm : '%d menit',\n h : 'sejam',\n hh : '%d jam',\n d : 'sehari',\n dd : '%d hari',\n M : 'sebulan',\n MM : '%d bulan',\n y : 'setahun',\n yy : '%d tahun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return id;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(n) {\n if (n % 100 === 11) {\n return true;\n } else if (n % 10 === 1) {\n return false;\n }\n return true;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture ? 'nokkrar sekúndur' : 'nokkrum sekúndum';\n case 'ss':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum');\n }\n return result + 'sekúnda';\n case 'm':\n return withoutSuffix ? 'mínúta' : 'mínútu';\n case 'mm':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum');\n } else if (withoutSuffix) {\n return result + 'mínúta';\n }\n return result + 'mínútu';\n case 'hh':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'klukkustundir' : 'klukkustundum');\n }\n return result + 'klukkustund';\n case 'd':\n if (withoutSuffix) {\n return 'dagur';\n }\n return isFuture ? 'dag' : 'degi';\n case 'dd':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'dagar';\n }\n return result + (isFuture ? 'daga' : 'dögum');\n } else if (withoutSuffix) {\n return result + 'dagur';\n }\n return result + (isFuture ? 'dag' : 'degi');\n case 'M':\n if (withoutSuffix) {\n return 'mánuður';\n }\n return isFuture ? 'mánuð' : 'mánuði';\n case 'MM':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'mánuðir';\n }\n return result + (isFuture ? 'mánuði' : 'mánuðum');\n } else if (withoutSuffix) {\n return result + 'mánuður';\n }\n return result + (isFuture ? 'mánuð' : 'mánuði');\n case 'y':\n return withoutSuffix || isFuture ? 'ár' : 'ári';\n case 'yy':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'ár' : 'árum');\n }\n return result + (withoutSuffix || isFuture ? 'ár' : 'ári');\n }\n }\n\n var is = moment.defineLocale('is', {\n months : 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),\n weekdays : 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split('_'),\n weekdaysShort : 'sun_mán_þri_mið_fim_fös_lau'.split('_'),\n weekdaysMin : 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY [kl.] H:mm',\n LLLL : 'dddd, D. MMMM YYYY [kl.] H:mm'\n },\n calendar : {\n sameDay : '[í dag kl.] LT',\n nextDay : '[á morgun kl.] LT',\n nextWeek : 'dddd [kl.] LT',\n lastDay : '[í gær kl.] LT',\n lastWeek : '[síðasta] dddd [kl.] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'eftir %s',\n past : 'fyrir %s síðan',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : 'klukkustund',\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return is;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var it = moment.defineLocale('it', {\n months : 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split('_'),\n monthsShort : 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays : 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split('_'),\n weekdaysShort : 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin : 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : function (s) {\n return ((/^[0-9].+$/).test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past : '%s fa',\n s : 'alcuni secondi',\n ss : '%d secondi',\n m : 'un minuto',\n mm : '%d minuti',\n h : 'un\\'ora',\n hh : '%d ore',\n d : 'un giorno',\n dd : '%d giorni',\n M : 'un mese',\n MM : '%d mesi',\n y : 'un anno',\n yy : '%d anni'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return it;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var itCh = moment.defineLocale('it-ch', {\n months : 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split('_'),\n monthsShort : 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays : 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split('_'),\n weekdaysShort : 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin : 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : function (s) {\n return ((/^[0-9].+$/).test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past : '%s fa',\n s : 'alcuni secondi',\n ss : '%d secondi',\n m : 'un minuto',\n mm : '%d minuti',\n h : 'un\\'ora',\n hh : '%d ore',\n d : 'un giorno',\n dd : '%d giorni',\n M : 'un mese',\n MM : '%d mesi',\n y : 'un anno',\n yy : '%d anni'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return itCh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ja = moment.defineLocale('ja', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),\n weekdaysShort : '日_月_火_水_木_金_土'.split('_'),\n weekdaysMin : '日_月_火_水_木_金_土'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日 HH:mm',\n LLLL : 'YYYY年M月D日 dddd HH:mm',\n l : 'YYYY/MM/DD',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日(ddd) HH:mm'\n },\n meridiemParse: /午前|午後/i,\n isPM : function (input) {\n return input === '午後';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return '午前';\n } else {\n return '午後';\n }\n },\n calendar : {\n sameDay : '[今日] LT',\n nextDay : '[明日] LT',\n nextWeek : function (now) {\n if (now.week() < this.week()) {\n return '[来週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n lastDay : '[昨日] LT',\n lastWeek : function (now) {\n if (this.week() < now.week()) {\n return '[先週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}日/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n default:\n return number;\n }\n },\n relativeTime : {\n future : '%s後',\n past : '%s前',\n s : '数秒',\n ss : '%d秒',\n m : '1分',\n mm : '%d分',\n h : '1時間',\n hh : '%d時間',\n d : '1日',\n dd : '%d日',\n M : '1ヶ月',\n MM : '%dヶ月',\n y : '1年',\n yy : '%d年'\n }\n });\n\n return ja;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var jv = moment.defineLocale('jv', {\n months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split('_'),\n monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),\n weekdays : 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),\n weekdaysShort : 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),\n weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /enjing|siyang|sonten|ndalu/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'enjing') {\n return hour;\n } else if (meridiem === 'siyang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sonten' || meridiem === 'ndalu') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'enjing';\n } else if (hours < 15) {\n return 'siyang';\n } else if (hours < 19) {\n return 'sonten';\n } else {\n return 'ndalu';\n }\n },\n calendar : {\n sameDay : '[Dinten puniko pukul] LT',\n nextDay : '[Mbenjang pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kala wingi pukul] LT',\n lastWeek : 'dddd [kepengker pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'wonten ing %s',\n past : '%s ingkang kepengker',\n s : 'sawetawis detik',\n ss : '%d detik',\n m : 'setunggal menit',\n mm : '%d menit',\n h : 'setunggal jam',\n hh : '%d jam',\n d : 'sedinten',\n dd : '%d dinten',\n M : 'sewulan',\n MM : '%d wulan',\n y : 'setaun',\n yy : '%d taun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return jv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ka = moment.defineLocale('ka', {\n months : {\n standalone: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split('_'),\n format: 'იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს'.split('_')\n },\n monthsShort : 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),\n weekdays : {\n standalone: 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split('_'),\n format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split('_'),\n isFormat: /(წინა|შემდეგ)/\n },\n weekdaysShort : 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),\n weekdaysMin : 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[დღეს] LT[-ზე]',\n nextDay : '[ხვალ] LT[-ზე]',\n lastDay : '[გუშინ] LT[-ზე]',\n nextWeek : '[შემდეგ] dddd LT[-ზე]',\n lastWeek : '[წინა] dddd LT-ზე',\n sameElse : 'L'\n },\n relativeTime : {\n future : function (s) {\n return (/(წამი|წუთი|საათი|წელი)/).test(s) ?\n s.replace(/ი$/, 'ში') :\n s + 'ში';\n },\n past : function (s) {\n if ((/(წამი|წუთი|საათი|დღე|თვე)/).test(s)) {\n return s.replace(/(ი|ე)$/, 'ის წინ');\n }\n if ((/წელი/).test(s)) {\n return s.replace(/წელი$/, 'წლის წინ');\n }\n },\n s : 'რამდენიმე წამი',\n ss : '%d წამი',\n m : 'წუთი',\n mm : '%d წუთი',\n h : 'საათი',\n hh : '%d საათი',\n d : 'დღე',\n dd : '%d დღე',\n M : 'თვე',\n MM : '%d თვე',\n y : 'წელი',\n yy : '%d წელი'\n },\n dayOfMonthOrdinalParse: /0|1-ლი|მე-\\d{1,2}|\\d{1,2}-ე/,\n ordinal : function (number) {\n if (number === 0) {\n return number;\n }\n if (number === 1) {\n return number + '-ლი';\n }\n if ((number < 20) || (number <= 100 && (number % 20 === 0)) || (number % 100 === 0)) {\n return 'მე-' + number;\n }\n return number + '-ე';\n },\n week : {\n dow : 1,\n doy : 7\n }\n });\n\n return ka;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 0: '-ші',\n 1: '-ші',\n 2: '-ші',\n 3: '-ші',\n 4: '-ші',\n 5: '-ші',\n 6: '-шы',\n 7: '-ші',\n 8: '-ші',\n 9: '-шы',\n 10: '-шы',\n 20: '-шы',\n 30: '-шы',\n 40: '-шы',\n 50: '-ші',\n 60: '-шы',\n 70: '-ші',\n 80: '-ші',\n 90: '-шы',\n 100: '-ші'\n };\n\n var kk = moment.defineLocale('kk', {\n months : 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split('_'),\n monthsShort : 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),\n weekdays : 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split('_'),\n weekdaysShort : 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'),\n weekdaysMin : 'жк_дй_сй_ср_бй_жм_сн'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Бүгін сағат] LT',\n nextDay : '[Ертең сағат] LT',\n nextWeek : 'dddd [сағат] LT',\n lastDay : '[Кеше сағат] LT',\n lastWeek : '[Өткен аптаның] dddd [сағат] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ішінде',\n past : '%s бұрын',\n s : 'бірнеше секунд',\n ss : '%d секунд',\n m : 'бір минут',\n mm : '%d минут',\n h : 'бір сағат',\n hh : '%d сағат',\n d : 'бір күн',\n dd : '%d күн',\n M : 'бір ай',\n MM : '%d ай',\n y : 'бір жыл',\n yy : '%d жыл'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ші|шы)/,\n ordinal : function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return kk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '១',\n '2': '២',\n '3': '៣',\n '4': '៤',\n '5': '៥',\n '6': '៦',\n '7': '៧',\n '8': '៨',\n '9': '៩',\n '0': '០'\n }, numberMap = {\n '១': '1',\n '២': '2',\n '៣': '3',\n '៤': '4',\n '៥': '5',\n '៦': '6',\n '៧': '7',\n '៨': '8',\n '៩': '9',\n '០': '0'\n };\n\n var km = moment.defineLocale('km', {\n months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n monthsShort: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),\n weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm'\n },\n meridiemParse: /ព្រឹក|ល្ងាច/,\n isPM: function (input) {\n return input === 'ល្ងាច';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ព្រឹក';\n } else {\n return 'ល្ងាច';\n }\n },\n calendar: {\n sameDay: '[ថ្ងៃនេះ ម៉ោង] LT',\n nextDay: '[ស្អែក ម៉ោង] LT',\n nextWeek: 'dddd [ម៉ោង] LT',\n lastDay: '[ម្សិលមិញ ម៉ោង] LT',\n lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: '%sទៀត',\n past: '%sមុន',\n s: 'ប៉ុន្មានវិនាទី',\n ss: '%d វិនាទី',\n m: 'មួយនាទី',\n mm: '%d នាទី',\n h: 'មួយម៉ោង',\n hh: '%d ម៉ោង',\n d: 'មួយថ្ងៃ',\n dd: '%d ថ្ងៃ',\n M: 'មួយខែ',\n MM: '%d ខែ',\n y: 'មួយឆ្នាំ',\n yy: '%d ឆ្នាំ'\n },\n dayOfMonthOrdinalParse : /ទី\\d{1,2}/,\n ordinal : 'ទី%d',\n preparse: function (string) {\n return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return km;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '೧',\n '2': '೨',\n '3': '೩',\n '4': '೪',\n '5': '೫',\n '6': '೬',\n '7': '೭',\n '8': '೮',\n '9': '೯',\n '0': '೦'\n },\n numberMap = {\n '೧': '1',\n '೨': '2',\n '೩': '3',\n '೪': '4',\n '೫': '5',\n '೬': '6',\n '೭': '7',\n '೮': '8',\n '೯': '9',\n '೦': '0'\n };\n\n var kn = moment.defineLocale('kn', {\n months : 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split('_'),\n monthsShort : 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split('_'),\n monthsParseExact: true,\n weekdays : 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split('_'),\n weekdaysShort : 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'),\n weekdaysMin : 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm',\n LLLL : 'dddd, D MMMM YYYY, A h:mm'\n },\n calendar : {\n sameDay : '[ಇಂದು] LT',\n nextDay : '[ನಾಳೆ] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[ನಿನ್ನೆ] LT',\n lastWeek : '[ಕೊನೆಯ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ನಂತರ',\n past : '%s ಹಿಂದೆ',\n s : 'ಕೆಲವು ಕ್ಷಣಗಳು',\n ss : '%d ಸೆಕೆಂಡುಗಳು',\n m : 'ಒಂದು ನಿಮಿಷ',\n mm : '%d ನಿಮಿಷ',\n h : 'ಒಂದು ಗಂಟೆ',\n hh : '%d ಗಂಟೆ',\n d : 'ಒಂದು ದಿನ',\n dd : '%d ದಿನ',\n M : 'ಒಂದು ತಿಂಗಳು',\n MM : '%d ತಿಂಗಳು',\n y : 'ಒಂದು ವರ್ಷ',\n yy : '%d ವರ್ಷ'\n },\n preparse: function (string) {\n return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ರಾತ್ರಿ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') {\n return hour;\n } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ಸಂಜೆ') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ರಾತ್ರಿ';\n } else if (hour < 10) {\n return 'ಬೆಳಿಗ್ಗೆ';\n } else if (hour < 17) {\n return 'ಮಧ್ಯಾಹ್ನ';\n } else if (hour < 20) {\n return 'ಸಂಜೆ';\n } else {\n return 'ರಾತ್ರಿ';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ನೇ)/,\n ordinal : function (number) {\n return number + 'ನೇ';\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return kn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ko = moment.defineLocale('ko', {\n months : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),\n monthsShort : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),\n weekdays : '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),\n weekdaysShort : '일_월_화_수_목_금_토'.split('_'),\n weekdaysMin : '일_월_화_수_목_금_토'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'YYYY.MM.DD.',\n LL : 'YYYY년 MMMM D일',\n LLL : 'YYYY년 MMMM D일 A h:mm',\n LLLL : 'YYYY년 MMMM D일 dddd A h:mm',\n l : 'YYYY.MM.DD.',\n ll : 'YYYY년 MMMM D일',\n lll : 'YYYY년 MMMM D일 A h:mm',\n llll : 'YYYY년 MMMM D일 dddd A h:mm'\n },\n calendar : {\n sameDay : '오늘 LT',\n nextDay : '내일 LT',\n nextWeek : 'dddd LT',\n lastDay : '어제 LT',\n lastWeek : '지난주 dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s 후',\n past : '%s 전',\n s : '몇 초',\n ss : '%d초',\n m : '1분',\n mm : '%d분',\n h : '한 시간',\n hh : '%d시간',\n d : '하루',\n dd : '%d일',\n M : '한 달',\n MM : '%d달',\n y : '일 년',\n yy : '%d년'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}(일|월|주)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '일';\n case 'M':\n return number + '월';\n case 'w':\n case 'W':\n return number + '주';\n default:\n return number;\n }\n },\n meridiemParse : /오전|오후/,\n isPM : function (token) {\n return token === '오후';\n },\n meridiem : function (hour, minute, isUpper) {\n return hour < 12 ? '오전' : '오후';\n }\n });\n\n return ko;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '١',\n '2': '٢',\n '3': '٣',\n '4': '٤',\n '5': '٥',\n '6': '٦',\n '7': '٧',\n '8': '٨',\n '9': '٩',\n '0': '٠'\n }, numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0'\n },\n months = [\n 'کانونی دووەم',\n 'شوبات',\n 'ئازار',\n 'نیسان',\n 'ئایار',\n 'حوزەیران',\n 'تەمموز',\n 'ئاب',\n 'ئەیلوول',\n 'تشرینی یەكەم',\n 'تشرینی دووەم',\n 'كانونی یەکەم'\n ];\n\n\n var ku = moment.defineLocale('ku', {\n months : months,\n monthsShort : months,\n weekdays : 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysShort : 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysMin : 'ی_د_س_چ_پ_ه_ش'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n meridiemParse: /ئێواره‌|به‌یانی/,\n isPM: function (input) {\n return /ئێواره‌/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'به‌یانی';\n } else {\n return 'ئێواره‌';\n }\n },\n calendar : {\n sameDay : '[ئه‌مرۆ كاتژمێر] LT',\n nextDay : '[به‌یانی كاتژمێر] LT',\n nextWeek : 'dddd [كاتژمێر] LT',\n lastDay : '[دوێنێ كاتژمێر] LT',\n lastWeek : 'dddd [كاتژمێر] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'له‌ %s',\n past : '%s',\n s : 'چه‌ند چركه‌یه‌ك',\n ss : 'چركه‌ %d',\n m : 'یه‌ك خوله‌ك',\n mm : '%d خوله‌ك',\n h : 'یه‌ك كاتژمێر',\n hh : '%d كاتژمێر',\n d : 'یه‌ك ڕۆژ',\n dd : '%d ڕۆژ',\n M : 'یه‌ك مانگ',\n MM : '%d مانگ',\n y : 'یه‌ك ساڵ',\n yy : '%d ساڵ'\n },\n preparse: function (string) {\n return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n }).replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n }).replace(/,/g, '،');\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return ku;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 0: '-чү',\n 1: '-чи',\n 2: '-чи',\n 3: '-чү',\n 4: '-чү',\n 5: '-чи',\n 6: '-чы',\n 7: '-чи',\n 8: '-чи',\n 9: '-чу',\n 10: '-чу',\n 20: '-чы',\n 30: '-чу',\n 40: '-чы',\n 50: '-чү',\n 60: '-чы',\n 70: '-чи',\n 80: '-чи',\n 90: '-чу',\n 100: '-чү'\n };\n\n var ky = moment.defineLocale('ky', {\n months : 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),\n monthsShort : 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),\n weekdays : 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split('_'),\n weekdaysShort : 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'),\n weekdaysMin : 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Бүгүн саат] LT',\n nextDay : '[Эртең саат] LT',\n nextWeek : 'dddd [саат] LT',\n lastDay : '[Кечээ саат] LT',\n lastWeek : '[Өткөн аптанын] dddd [күнү] [саат] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ичинде',\n past : '%s мурун',\n s : 'бирнече секунд',\n ss : '%d секунд',\n m : 'бир мүнөт',\n mm : '%d мүнөт',\n h : 'бир саат',\n hh : '%d саат',\n d : 'бир күн',\n dd : '%d күн',\n M : 'бир ай',\n MM : '%d ай',\n y : 'бир жыл',\n yy : '%d жыл'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(чи|чы|чү|чу)/,\n ordinal : function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return ky;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 'm': ['eng Minutt', 'enger Minutt'],\n 'h': ['eng Stonn', 'enger Stonn'],\n 'd': ['een Dag', 'engem Dag'],\n 'M': ['ee Mount', 'engem Mount'],\n 'y': ['ee Joer', 'engem Joer']\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n function processFutureTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'a ' + string;\n }\n return 'an ' + string;\n }\n function processPastTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'viru ' + string;\n }\n return 'virun ' + string;\n }\n /**\n * Returns true if the word before the given number loses the '-n' ending.\n * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n *\n * @param number {integer}\n * @returns {boolean}\n */\n function eifelerRegelAppliesToNumber(number) {\n number = parseInt(number, 10);\n if (isNaN(number)) {\n return false;\n }\n if (number < 0) {\n // Negative Number --> always true\n return true;\n } else if (number < 10) {\n // Only 1 digit\n if (4 <= number && number <= 7) {\n return true;\n }\n return false;\n } else if (number < 100) {\n // 2 digits\n var lastDigit = number % 10, firstDigit = number / 10;\n if (lastDigit === 0) {\n return eifelerRegelAppliesToNumber(firstDigit);\n }\n return eifelerRegelAppliesToNumber(lastDigit);\n } else if (number < 10000) {\n // 3 or 4 digits --> recursively check first digit\n while (number >= 10) {\n number = number / 10;\n }\n return eifelerRegelAppliesToNumber(number);\n } else {\n // Anything larger than 4 digits: recursively check first n-3 digits\n number = number / 1000;\n return eifelerRegelAppliesToNumber(number);\n }\n }\n\n var lb = moment.defineLocale('lb', {\n months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n monthsShort: 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),\n monthsParseExact : true,\n weekdays: 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split('_'),\n weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm [Auer]',\n LTS: 'H:mm:ss [Auer]',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm [Auer]',\n LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]'\n },\n calendar: {\n sameDay: '[Haut um] LT',\n sameElse: 'L',\n nextDay: '[Muer um] LT',\n nextWeek: 'dddd [um] LT',\n lastDay: '[Gëschter um] LT',\n lastWeek: function () {\n // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n switch (this.day()) {\n case 2:\n case 4:\n return '[Leschten] dddd [um] LT';\n default:\n return '[Leschte] dddd [um] LT';\n }\n }\n },\n relativeTime : {\n future : processFutureTime,\n past : processPastTime,\n s : 'e puer Sekonnen',\n ss : '%d Sekonnen',\n m : processRelativeTime,\n mm : '%d Minutten',\n h : processRelativeTime,\n hh : '%d Stonnen',\n d : processRelativeTime,\n dd : '%d Deeg',\n M : processRelativeTime,\n MM : '%d Méint',\n y : processRelativeTime,\n yy : '%d Joer'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return lb;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var lo = moment.defineLocale('lo', {\n months : 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split('_'),\n monthsShort : 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split('_'),\n weekdays : 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysShort : 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysMin : 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'ວັນdddd D MMMM YYYY HH:mm'\n },\n meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,\n isPM: function (input) {\n return input === 'ຕອນແລງ';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ຕອນເຊົ້າ';\n } else {\n return 'ຕອນແລງ';\n }\n },\n calendar : {\n sameDay : '[ມື້ນີ້ເວລາ] LT',\n nextDay : '[ມື້ອື່ນເວລາ] LT',\n nextWeek : '[ວັນ]dddd[ໜ້າເວລາ] LT',\n lastDay : '[ມື້ວານນີ້ເວລາ] LT',\n lastWeek : '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ອີກ %s',\n past : '%sຜ່ານມາ',\n s : 'ບໍ່ເທົ່າໃດວິນາທີ',\n ss : '%d ວິນາທີ' ,\n m : '1 ນາທີ',\n mm : '%d ນາທີ',\n h : '1 ຊົ່ວໂມງ',\n hh : '%d ຊົ່ວໂມງ',\n d : '1 ມື້',\n dd : '%d ມື້',\n M : '1 ເດືອນ',\n MM : '%d ເດືອນ',\n y : '1 ປີ',\n yy : '%d ປີ'\n },\n dayOfMonthOrdinalParse: /(ທີ່)\\d{1,2}/,\n ordinal : function (number) {\n return 'ທີ່' + number;\n }\n });\n\n return lo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var units = {\n 'ss' : 'sekundė_sekundžių_sekundes',\n 'm' : 'minutė_minutės_minutę',\n 'mm': 'minutės_minučių_minutes',\n 'h' : 'valanda_valandos_valandą',\n 'hh': 'valandos_valandų_valandas',\n 'd' : 'diena_dienos_dieną',\n 'dd': 'dienos_dienų_dienas',\n 'M' : 'mėnuo_mėnesio_mėnesį',\n 'MM': 'mėnesiai_mėnesių_mėnesius',\n 'y' : 'metai_metų_metus',\n 'yy': 'metai_metų_metus'\n };\n function translateSeconds(number, withoutSuffix, key, isFuture) {\n if (withoutSuffix) {\n return 'kelios sekundės';\n } else {\n return isFuture ? 'kelių sekundžių' : 'kelias sekundes';\n }\n }\n function translateSingular(number, withoutSuffix, key, isFuture) {\n return withoutSuffix ? forms(key)[0] : (isFuture ? forms(key)[1] : forms(key)[2]);\n }\n function special(number) {\n return number % 10 === 0 || (number > 10 && number < 20);\n }\n function forms(key) {\n return units[key].split('_');\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n if (number === 1) {\n return result + translateSingular(number, withoutSuffix, key[0], isFuture);\n } else if (withoutSuffix) {\n return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n } else {\n if (isFuture) {\n return result + forms(key)[1];\n } else {\n return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n }\n }\n }\n var lt = moment.defineLocale('lt', {\n months : {\n format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split('_'),\n standalone: 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split('_'),\n isFormat: /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?|MMMM?(\\[[^\\[\\]]*\\]|\\s)+D[oD]?/\n },\n monthsShort : 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n weekdays : {\n format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split('_'),\n standalone: 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split('_'),\n isFormat: /dddd HH:mm/\n },\n weekdaysShort : 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),\n weekdaysMin : 'S_P_A_T_K_Pn_Š'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'YYYY [m.] MMMM D [d.]',\n LLL : 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n LLLL : 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',\n l : 'YYYY-MM-DD',\n ll : 'YYYY [m.] MMMM D [d.]',\n lll : 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n llll : 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]'\n },\n calendar : {\n sameDay : '[Šiandien] LT',\n nextDay : '[Rytoj] LT',\n nextWeek : 'dddd LT',\n lastDay : '[Vakar] LT',\n lastWeek : '[Praėjusį] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'po %s',\n past : 'prieš %s',\n s : translateSeconds,\n ss : translate,\n m : translateSingular,\n mm : translate,\n h : translateSingular,\n hh : translate,\n d : translateSingular,\n dd : translate,\n M : translateSingular,\n MM : translate,\n y : translateSingular,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-oji/,\n ordinal : function (number) {\n return number + '-oji';\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return lt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var units = {\n 'ss': 'sekundes_sekundēm_sekunde_sekundes'.split('_'),\n 'm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n 'mm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n 'h': 'stundas_stundām_stunda_stundas'.split('_'),\n 'hh': 'stundas_stundām_stunda_stundas'.split('_'),\n 'd': 'dienas_dienām_diena_dienas'.split('_'),\n 'dd': 'dienas_dienām_diena_dienas'.split('_'),\n 'M': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n 'MM': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n 'y': 'gada_gadiem_gads_gadi'.split('_'),\n 'yy': 'gada_gadiem_gads_gadi'.split('_')\n };\n /**\n * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.\n */\n function format(forms, number, withoutSuffix) {\n if (withoutSuffix) {\n // E.g. \"21 minūte\", \"3 minūtes\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3];\n } else {\n // E.g. \"21 minūtes\" as in \"pēc 21 minūtes\".\n // E.g. \"3 minūtēm\" as in \"pēc 3 minūtēm\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1];\n }\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n return number + ' ' + format(units[key], number, withoutSuffix);\n }\n function relativeTimeWithSingular(number, withoutSuffix, key) {\n return format(units[key], number, withoutSuffix);\n }\n function relativeSeconds(number, withoutSuffix) {\n return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';\n }\n\n var lv = moment.defineLocale('lv', {\n months : 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split('_'),\n monthsShort : 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),\n weekdays : 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split('_'),\n weekdaysShort : 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY.',\n LL : 'YYYY. [gada] D. MMMM',\n LLL : 'YYYY. [gada] D. MMMM, HH:mm',\n LLLL : 'YYYY. [gada] D. MMMM, dddd, HH:mm'\n },\n calendar : {\n sameDay : '[Šodien pulksten] LT',\n nextDay : '[Rīt pulksten] LT',\n nextWeek : 'dddd [pulksten] LT',\n lastDay : '[Vakar pulksten] LT',\n lastWeek : '[Pagājušā] dddd [pulksten] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'pēc %s',\n past : 'pirms %s',\n s : relativeSeconds,\n ss : relativeTimeWithPlural,\n m : relativeTimeWithSingular,\n mm : relativeTimeWithPlural,\n h : relativeTimeWithSingular,\n hh : relativeTimeWithPlural,\n d : relativeTimeWithSingular,\n dd : relativeTimeWithPlural,\n M : relativeTimeWithSingular,\n MM : relativeTimeWithPlural,\n y : relativeTimeWithSingular,\n yy : relativeTimeWithPlural\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return lv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var translator = {\n words: { //Different grammatical cases\n ss: ['sekund', 'sekunda', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mjesec', 'mjeseca', 'mjeseci'],\n yy: ['godina', 'godine', 'godina']\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n }\n }\n };\n\n var me = moment.defineLocale('me', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split('_'),\n monthsShort: 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact : true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm'\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sjutra u] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[juče u] LT',\n lastWeek : function () {\n var lastWeekDays = [\n '[prošle] [nedjelje] [u] LT',\n '[prošlog] [ponedjeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srijede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT'\n ];\n return lastWeekDays[this.day()];\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'prije %s',\n s : 'nekoliko sekundi',\n ss : translator.translate,\n m : translator.translate,\n mm : translator.translate,\n h : translator.translate,\n hh : translator.translate,\n d : 'dan',\n dd : translator.translate,\n M : 'mjesec',\n MM : translator.translate,\n y : 'godinu',\n yy : translator.translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return me;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var mi = moment.defineLocale('mi', {\n months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split('_'),\n monthsShort: 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split('_'),\n monthsRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,2}/i,\n weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'),\n weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [i] HH:mm',\n LLLL: 'dddd, D MMMM YYYY [i] HH:mm'\n },\n calendar: {\n sameDay: '[i teie mahana, i] LT',\n nextDay: '[apopo i] LT',\n nextWeek: 'dddd [i] LT',\n lastDay: '[inanahi i] LT',\n lastWeek: 'dddd [whakamutunga i] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'i roto i %s',\n past: '%s i mua',\n s: 'te hēkona ruarua',\n ss: '%d hēkona',\n m: 'he meneti',\n mm: '%d meneti',\n h: 'te haora',\n hh: '%d haora',\n d: 'he ra',\n dd: '%d ra',\n M: 'he marama',\n MM: '%d marama',\n y: 'he tau',\n yy: '%d tau'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return mi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var mk = moment.defineLocale('mk', {\n months : 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split('_'),\n monthsShort : 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),\n weekdays : 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split('_'),\n weekdaysShort : 'нед_пон_вто_сре_чет_пет_саб'.split('_'),\n weekdaysMin : 'нe_пo_вт_ср_че_пе_сa'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'D.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY H:mm',\n LLLL : 'dddd, D MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[Денес во] LT',\n nextDay : '[Утре во] LT',\n nextWeek : '[Во] dddd [во] LT',\n lastDay : '[Вчера во] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Изминатата] dddd [во] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Изминатиот] dddd [во] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'после %s',\n past : 'пред %s',\n s : 'неколку секунди',\n ss : '%d секунди',\n m : 'минута',\n mm : '%d минути',\n h : 'час',\n hh : '%d часа',\n d : 'ден',\n dd : '%d дена',\n M : 'месец',\n MM : '%d месеци',\n y : 'година',\n yy : '%d години'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal : function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return mk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ml = moment.defineLocale('ml', {\n months : 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split('_'),\n monthsShort : 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split('_'),\n monthsParseExact : true,\n weekdays : 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split('_'),\n weekdaysShort : 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),\n weekdaysMin : 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm -നു',\n LTS : 'A h:mm:ss -നു',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm -നു',\n LLLL : 'dddd, D MMMM YYYY, A h:mm -നു'\n },\n calendar : {\n sameDay : '[ഇന്ന്] LT',\n nextDay : '[നാളെ] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[ഇന്നലെ] LT',\n lastWeek : '[കഴിഞ്ഞ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s കഴിഞ്ഞ്',\n past : '%s മുൻപ്',\n s : 'അൽപ നിമിഷങ്ങൾ',\n ss : '%d സെക്കൻഡ്',\n m : 'ഒരു മിനിറ്റ്',\n mm : '%d മിനിറ്റ്',\n h : 'ഒരു മണിക്കൂർ',\n hh : '%d മണിക്കൂർ',\n d : 'ഒരു ദിവസം',\n dd : '%d ദിവസം',\n M : 'ഒരു മാസം',\n MM : '%d മാസം',\n y : 'ഒരു വർഷം',\n yy : '%d വർഷം'\n },\n meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if ((meridiem === 'രാത്രി' && hour >= 4) ||\n meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||\n meridiem === 'വൈകുന്നേരം') {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'രാത്രി';\n } else if (hour < 12) {\n return 'രാവിലെ';\n } else if (hour < 17) {\n return 'ഉച്ച കഴിഞ്ഞ്';\n } else if (hour < 20) {\n return 'വൈകുന്നേരം';\n } else {\n return 'രാത്രി';\n }\n }\n });\n\n return ml;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function translate(number, withoutSuffix, key, isFuture) {\n switch (key) {\n case 's':\n return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын';\n case 'ss':\n return number + (withoutSuffix ? ' секунд' : ' секундын');\n case 'm':\n case 'mm':\n return number + (withoutSuffix ? ' минут' : ' минутын');\n case 'h':\n case 'hh':\n return number + (withoutSuffix ? ' цаг' : ' цагийн');\n case 'd':\n case 'dd':\n return number + (withoutSuffix ? ' өдөр' : ' өдрийн');\n case 'M':\n case 'MM':\n return number + (withoutSuffix ? ' сар' : ' сарын');\n case 'y':\n case 'yy':\n return number + (withoutSuffix ? ' жил' : ' жилийн');\n default:\n return number;\n }\n }\n\n var mn = moment.defineLocale('mn', {\n months : 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split('_'),\n monthsShort : '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split('_'),\n monthsParseExact : true,\n weekdays : 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'),\n weekdaysShort : 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'),\n weekdaysMin : 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'YYYY оны MMMMын D',\n LLL : 'YYYY оны MMMMын D HH:mm',\n LLLL : 'dddd, YYYY оны MMMMын D HH:mm'\n },\n meridiemParse: /ҮӨ|ҮХ/i,\n isPM : function (input) {\n return input === 'ҮХ';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ҮӨ';\n } else {\n return 'ҮХ';\n }\n },\n calendar : {\n sameDay : '[Өнөөдөр] LT',\n nextDay : '[Маргааш] LT',\n nextWeek : '[Ирэх] dddd LT',\n lastDay : '[Өчигдөр] LT',\n lastWeek : '[Өнгөрсөн] dddd LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s дараа',\n past : '%s өмнө',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2} өдөр/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + ' өдөр';\n default:\n return number;\n }\n }\n });\n\n return mn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '१',\n '2': '२',\n '3': '३',\n '4': '४',\n '5': '५',\n '6': '६',\n '7': '७',\n '8': '८',\n '9': '९',\n '0': '०'\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0'\n };\n\n function relativeTimeMr(number, withoutSuffix, string, isFuture)\n {\n var output = '';\n if (withoutSuffix) {\n switch (string) {\n case 's': output = 'काही सेकंद'; break;\n case 'ss': output = '%d सेकंद'; break;\n case 'm': output = 'एक मिनिट'; break;\n case 'mm': output = '%d मिनिटे'; break;\n case 'h': output = 'एक तास'; break;\n case 'hh': output = '%d तास'; break;\n case 'd': output = 'एक दिवस'; break;\n case 'dd': output = '%d दिवस'; break;\n case 'M': output = 'एक महिना'; break;\n case 'MM': output = '%d महिने'; break;\n case 'y': output = 'एक वर्ष'; break;\n case 'yy': output = '%d वर्षे'; break;\n }\n }\n else {\n switch (string) {\n case 's': output = 'काही सेकंदां'; break;\n case 'ss': output = '%d सेकंदां'; break;\n case 'm': output = 'एका मिनिटा'; break;\n case 'mm': output = '%d मिनिटां'; break;\n case 'h': output = 'एका तासा'; break;\n case 'hh': output = '%d तासां'; break;\n case 'd': output = 'एका दिवसा'; break;\n case 'dd': output = '%d दिवसां'; break;\n case 'M': output = 'एका महिन्या'; break;\n case 'MM': output = '%d महिन्यां'; break;\n case 'y': output = 'एका वर्षा'; break;\n case 'yy': output = '%d वर्षां'; break;\n }\n }\n return output.replace(/%d/i, number);\n }\n\n var mr = moment.defineLocale('mr', {\n months : 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split('_'),\n monthsShort: 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split('_'),\n monthsParseExact : true,\n weekdays : 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort : 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat : {\n LT : 'A h:mm वाजता',\n LTS : 'A h:mm:ss वाजता',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm वाजता',\n LLLL : 'dddd, D MMMM YYYY, A h:mm वाजता'\n },\n calendar : {\n sameDay : '[आज] LT',\n nextDay : '[उद्या] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[काल] LT',\n lastWeek: '[मागील] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future: '%sमध्ये',\n past: '%sपूर्वी',\n s: relativeTimeMr,\n ss: relativeTimeMr,\n m: relativeTimeMr,\n mm: relativeTimeMr,\n h: relativeTimeMr,\n hh: relativeTimeMr,\n d: relativeTimeMr,\n dd: relativeTimeMr,\n M: relativeTimeMr,\n MM: relativeTimeMr,\n y: relativeTimeMr,\n yy: relativeTimeMr\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात्री') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सकाळी') {\n return hour;\n } else if (meridiem === 'दुपारी') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'सायंकाळी') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात्री';\n } else if (hour < 10) {\n return 'सकाळी';\n } else if (hour < 17) {\n return 'दुपारी';\n } else if (hour < 20) {\n return 'सायंकाळी';\n } else {\n return 'रात्री';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return mr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ms = moment.defineLocale('ms', {\n months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),\n monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar : {\n sameDay : '[Hari ini pukul] LT',\n nextDay : '[Esok pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kelmarin pukul] LT',\n lastWeek : 'dddd [lepas pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dalam %s',\n past : '%s yang lepas',\n s : 'beberapa saat',\n ss : '%d saat',\n m : 'seminit',\n mm : '%d minit',\n h : 'sejam',\n hh : '%d jam',\n d : 'sehari',\n dd : '%d hari',\n M : 'sebulan',\n MM : '%d bulan',\n y : 'setahun',\n yy : '%d tahun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return ms;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var msMy = moment.defineLocale('ms-my', {\n months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),\n monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [pukul] HH.mm',\n LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar : {\n sameDay : '[Hari ini pukul] LT',\n nextDay : '[Esok pukul] LT',\n nextWeek : 'dddd [pukul] LT',\n lastDay : '[Kelmarin pukul] LT',\n lastWeek : 'dddd [lepas pukul] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'dalam %s',\n past : '%s yang lepas',\n s : 'beberapa saat',\n ss : '%d saat',\n m : 'seminit',\n mm : '%d minit',\n h : 'sejam',\n hh : '%d jam',\n d : 'sehari',\n dd : '%d hari',\n M : 'sebulan',\n MM : '%d bulan',\n y : 'setahun',\n yy : '%d tahun'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return msMy;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var mt = moment.defineLocale('mt', {\n months : 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split('_'),\n monthsShort : 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'),\n weekdays : 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split('_'),\n weekdaysShort : 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'),\n weekdaysMin : 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Illum fil-]LT',\n nextDay : '[Għada fil-]LT',\n nextWeek : 'dddd [fil-]LT',\n lastDay : '[Il-bieraħ fil-]LT',\n lastWeek : 'dddd [li għadda] [fil-]LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'f’ %s',\n past : '%s ilu',\n s : 'ftit sekondi',\n ss : '%d sekondi',\n m : 'minuta',\n mm : '%d minuti',\n h : 'siegħa',\n hh : '%d siegħat',\n d : 'ġurnata',\n dd : '%d ġranet',\n M : 'xahar',\n MM : '%d xhur',\n y : 'sena',\n yy : '%d sni'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}º/,\n ordinal: '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return mt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '၁',\n '2': '၂',\n '3': '၃',\n '4': '၄',\n '5': '၅',\n '6': '၆',\n '7': '၇',\n '8': '၈',\n '9': '၉',\n '0': '၀'\n }, numberMap = {\n '၁': '1',\n '၂': '2',\n '၃': '3',\n '၄': '4',\n '၅': '5',\n '၆': '6',\n '၇': '7',\n '၈': '8',\n '၉': '9',\n '၀': '0'\n };\n\n var my = moment.defineLocale('my', {\n months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split('_'),\n monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),\n weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split('_'),\n weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm'\n },\n calendar: {\n sameDay: '[ယနေ.] LT [မှာ]',\n nextDay: '[မနက်ဖြန်] LT [မှာ]',\n nextWeek: 'dddd LT [မှာ]',\n lastDay: '[မနေ.က] LT [မှာ]',\n lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',\n sameElse: 'L'\n },\n relativeTime: {\n future: 'လာမည့် %s မှာ',\n past: 'လွန်ခဲ့သော %s က',\n s: 'စက္ကန်.အနည်းငယ်',\n ss : '%d စက္ကန့်',\n m: 'တစ်မိနစ်',\n mm: '%d မိနစ်',\n h: 'တစ်နာရီ',\n hh: '%d နာရီ',\n d: 'တစ်ရက်',\n dd: '%d ရက်',\n M: 'တစ်လ',\n MM: '%d လ',\n y: 'တစ်နှစ်',\n yy: '%d နှစ်'\n },\n preparse: function (string) {\n return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return my;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var nb = moment.defineLocale('nb', {\n months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n monthsShort : 'jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact : true,\n weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort : 'sø._ma._ti._on._to._fr._lø.'.split('_'),\n weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY [kl.] HH:mm',\n LLLL : 'dddd D. MMMM YYYY [kl.] HH:mm'\n },\n calendar : {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[forrige] dddd [kl.] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : '%s siden',\n s : 'noen sekunder',\n ss : '%d sekunder',\n m : 'ett minutt',\n mm : '%d minutter',\n h : 'en time',\n hh : '%d timer',\n d : 'en dag',\n dd : '%d dager',\n M : 'en måned',\n MM : '%d måneder',\n y : 'ett år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nb;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '१',\n '2': '२',\n '3': '३',\n '4': '४',\n '5': '५',\n '6': '६',\n '7': '७',\n '8': '८',\n '9': '९',\n '0': '०'\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0'\n };\n\n var ne = moment.defineLocale('ne', {\n months : 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split('_'),\n monthsShort : 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split('_'),\n monthsParseExact : true,\n weekdays : 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split('_'),\n weekdaysShort : 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),\n weekdaysMin : 'आ._सो._मं._बु._बि._शु._श.'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'Aको h:mm बजे',\n LTS : 'Aको h:mm:ss बजे',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, Aको h:mm बजे',\n LLLL : 'dddd, D MMMM YYYY, Aको h:mm बजे'\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /राति|बिहान|दिउँसो|साँझ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राति') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'बिहान') {\n return hour;\n } else if (meridiem === 'दिउँसो') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'साँझ') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 3) {\n return 'राति';\n } else if (hour < 12) {\n return 'बिहान';\n } else if (hour < 16) {\n return 'दिउँसो';\n } else if (hour < 20) {\n return 'साँझ';\n } else {\n return 'राति';\n }\n },\n calendar : {\n sameDay : '[आज] LT',\n nextDay : '[भोलि] LT',\n nextWeek : '[आउँदो] dddd[,] LT',\n lastDay : '[हिजो] LT',\n lastWeek : '[गएको] dddd[,] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%sमा',\n past : '%s अगाडि',\n s : 'केही क्षण',\n ss : '%d सेकेण्ड',\n m : 'एक मिनेट',\n mm : '%d मिनेट',\n h : 'एक घण्टा',\n hh : '%d घण्टा',\n d : 'एक दिन',\n dd : '%d दिन',\n M : 'एक महिना',\n MM : '%d महिना',\n y : 'एक बर्ष',\n yy : '%d बर्ष'\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return ne;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');\n\n var monthsParse = [/^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];\n var monthsRegex = /^(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;\n\n var nl = moment.defineLocale('nl', {\n months : 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex: /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n\n weekdays : 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort : 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin : 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD-MM-YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'over %s',\n past : '%s geleden',\n s : 'een paar seconden',\n ss : '%d seconden',\n m : 'één minuut',\n mm : '%d minuten',\n h : 'één uur',\n hh : '%d uur',\n d : 'één dag',\n dd : '%d dagen',\n M : 'één maand',\n MM : '%d maanden',\n y : 'één jaar',\n yy : '%d jaar'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');\n\n var monthsParse = [/^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];\n var monthsRegex = /^(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;\n\n var nlBe = moment.defineLocale('nl-be', {\n months : 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),\n monthsShort : function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex: /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n\n weekdays : 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort : 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin : 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'over %s',\n past : '%s geleden',\n s : 'een paar seconden',\n ss : '%d seconden',\n m : 'één minuut',\n mm : '%d minuten',\n h : 'één uur',\n hh : '%d uur',\n d : 'één dag',\n dd : '%d dagen',\n M : 'één maand',\n MM : '%d maanden',\n y : 'één jaar',\n yy : '%d jaar'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal : function (number) {\n return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nlBe;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var nn = moment.defineLocale('nn', {\n months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays : 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n weekdaysShort : 'sun_mån_tys_ons_tor_fre_lau'.split('_'),\n weekdaysMin : 'su_må_ty_on_to_fr_lø'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY [kl.] H:mm',\n LLLL : 'dddd D. MMMM YYYY [kl.] HH:mm'\n },\n calendar : {\n sameDay: '[I dag klokka] LT',\n nextDay: '[I morgon klokka] LT',\n nextWeek: 'dddd [klokka] LT',\n lastDay: '[I går klokka] LT',\n lastWeek: '[Føregåande] dddd [klokka] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : '%s sidan',\n s : 'nokre sekund',\n ss : '%d sekund',\n m : 'eit minutt',\n mm : '%d minutt',\n h : 'ein time',\n hh : '%d timar',\n d : 'ein dag',\n dd : '%d dagar',\n M : 'ein månad',\n MM : '%d månader',\n y : 'eit år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return nn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '੧',\n '2': '੨',\n '3': '੩',\n '4': '੪',\n '5': '੫',\n '6': '੬',\n '7': '੭',\n '8': '੮',\n '9': '੯',\n '0': '੦'\n },\n numberMap = {\n '੧': '1',\n '੨': '2',\n '੩': '3',\n '੪': '4',\n '੫': '5',\n '੬': '6',\n '੭': '7',\n '੮': '8',\n '੯': '9',\n '੦': '0'\n };\n\n var paIn = moment.defineLocale('pa-in', {\n // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.\n months : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'),\n monthsShort : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'),\n weekdays : 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split('_'),\n weekdaysShort : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n weekdaysMin : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm ਵਜੇ',\n LTS : 'A h:mm:ss ਵਜੇ',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm ਵਜੇ',\n LLLL : 'dddd, D MMMM YYYY, A h:mm ਵਜੇ'\n },\n calendar : {\n sameDay : '[ਅਜ] LT',\n nextDay : '[ਕਲ] LT',\n nextWeek : '[ਅਗਲਾ] dddd, LT',\n lastDay : '[ਕਲ] LT',\n lastWeek : '[ਪਿਛਲੇ] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s ਵਿੱਚ',\n past : '%s ਪਿਛਲੇ',\n s : 'ਕੁਝ ਸਕਿੰਟ',\n ss : '%d ਸਕਿੰਟ',\n m : 'ਇਕ ਮਿੰਟ',\n mm : '%d ਮਿੰਟ',\n h : 'ਇੱਕ ਘੰਟਾ',\n hh : '%d ਘੰਟੇ',\n d : 'ਇੱਕ ਦਿਨ',\n dd : '%d ਦਿਨ',\n M : 'ਇੱਕ ਮਹੀਨਾ',\n MM : '%d ਮਹੀਨੇ',\n y : 'ਇੱਕ ਸਾਲ',\n yy : '%d ਸਾਲ'\n },\n preparse: function (string) {\n return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Punjabi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.\n meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ਰਾਤ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ਸਵੇਰ') {\n return hour;\n } else if (meridiem === 'ਦੁਪਹਿਰ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ਸ਼ਾਮ') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ਰਾਤ';\n } else if (hour < 10) {\n return 'ਸਵੇਰ';\n } else if (hour < 17) {\n return 'ਦੁਪਹਿਰ';\n } else if (hour < 20) {\n return 'ਸ਼ਾਮ';\n } else {\n return 'ਰਾਤ';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return paIn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var monthsNominative = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_'),\n monthsSubjective = 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split('_');\n function plural(n) {\n return (n % 10 < 5) && (n % 10 > 1) && ((~~(n / 10) % 10) !== 1);\n }\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n return result + (plural(number) ? 'sekundy' : 'sekund');\n case 'm':\n return withoutSuffix ? 'minuta' : 'minutę';\n case 'mm':\n return result + (plural(number) ? 'minuty' : 'minut');\n case 'h':\n return withoutSuffix ? 'godzina' : 'godzinę';\n case 'hh':\n return result + (plural(number) ? 'godziny' : 'godzin');\n case 'MM':\n return result + (plural(number) ? 'miesiące' : 'miesięcy');\n case 'yy':\n return result + (plural(number) ? 'lata' : 'lat');\n }\n }\n\n var pl = moment.defineLocale('pl', {\n months : function (momentToFormat, format) {\n if (!momentToFormat) {\n return monthsNominative;\n } else if (format === '') {\n // Hack: if format empty we know this is used to generate\n // RegExp by moment. Give then back both valid forms of months\n // in RegExp ready format.\n return '(' + monthsSubjective[momentToFormat.month()] + '|' + monthsNominative[momentToFormat.month()] + ')';\n } else if (/D MMMM/.test(format)) {\n return monthsSubjective[momentToFormat.month()];\n } else {\n return monthsNominative[momentToFormat.month()];\n }\n },\n monthsShort : 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),\n weekdays : 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),\n weekdaysShort : 'ndz_pon_wt_śr_czw_pt_sob'.split('_'),\n weekdaysMin : 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Dziś o] LT',\n nextDay: '[Jutro o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W niedzielę o] LT';\n\n case 2:\n return '[We wtorek o] LT';\n\n case 3:\n return '[W środę o] LT';\n\n case 6:\n return '[W sobotę o] LT';\n\n default:\n return '[W] dddd [o] LT';\n }\n },\n lastDay: '[Wczoraj o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W zeszłą niedzielę o] LT';\n case 3:\n return '[W zeszłą środę o] LT';\n case 6:\n return '[W zeszłą sobotę o] LT';\n default:\n return '[W zeszły] dddd [o] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : '%s temu',\n s : 'kilka sekund',\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : '1 dzień',\n dd : '%d dni',\n M : 'miesiąc',\n MM : translate,\n y : 'rok',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return pl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var pt = moment.defineLocale('pt', {\n months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays : 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split('_'),\n weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin : 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY HH:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return (this.day() === 0 || this.day() === 6) ?\n '[Último] dddd [às] LT' : // Saturday + Sunday\n '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'em %s',\n past : 'há %s',\n s : 'segundos',\n ss : '%d segundos',\n m : 'um minuto',\n mm : '%d minutos',\n h : 'uma hora',\n hh : '%d horas',\n d : 'um dia',\n dd : '%d dias',\n M : 'um mês',\n MM : '%d meses',\n y : 'um ano',\n yy : '%d anos'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal : '%dº',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return pt;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ptBr = moment.defineLocale('pt-br', {\n months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays : 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split('_'),\n weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin : 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D [de] MMMM [de] YYYY',\n LLL : 'D [de] MMMM [de] YYYY [às] HH:mm',\n LLLL : 'dddd, D [de] MMMM [de] YYYY [às] HH:mm'\n },\n calendar : {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return (this.day() === 0 || this.day() === 6) ?\n '[Último] dddd [às] LT' : // Saturday + Sunday\n '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'em %s',\n past : 'há %s',\n s : 'poucos segundos',\n ss : '%d segundos',\n m : 'um minuto',\n mm : '%d minutos',\n h : 'uma hora',\n hh : '%d horas',\n d : 'um dia',\n dd : '%d dias',\n M : 'um mês',\n MM : '%d meses',\n y : 'um ano',\n yy : '%d anos'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal : '%dº'\n });\n\n return ptBr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': 'secunde',\n 'mm': 'minute',\n 'hh': 'ore',\n 'dd': 'zile',\n 'MM': 'luni',\n 'yy': 'ani'\n },\n separator = ' ';\n if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n separator = ' de ';\n }\n return number + separator + format[key];\n }\n\n var ro = moment.defineLocale('ro', {\n months : 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split('_'),\n monthsShort : 'ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),\n weekdaysShort : 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),\n weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY H:mm',\n LLLL : 'dddd, D MMMM YYYY H:mm'\n },\n calendar : {\n sameDay: '[azi la] LT',\n nextDay: '[mâine la] LT',\n nextWeek: 'dddd [la] LT',\n lastDay: '[ieri la] LT',\n lastWeek: '[fosta] dddd [la] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'peste %s',\n past : '%s în urmă',\n s : 'câteva secunde',\n ss : relativeTimeWithPlural,\n m : 'un minut',\n mm : relativeTimeWithPlural,\n h : 'o oră',\n hh : relativeTimeWithPlural,\n d : 'o zi',\n dd : relativeTimeWithPlural,\n M : 'o lună',\n MM : relativeTimeWithPlural,\n y : 'un an',\n yy : relativeTimeWithPlural\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return ro;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n 'mm': withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',\n 'hh': 'час_часа_часов',\n 'dd': 'день_дня_дней',\n 'MM': 'месяц_месяца_месяцев',\n 'yy': 'год_года_лет'\n };\n if (key === 'm') {\n return withoutSuffix ? 'минута' : 'минуту';\n }\n else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n var monthsParse = [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[йя]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i];\n\n // http://new.gramota.ru/spravka/rules/139-prop : § 103\n // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637\n // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753\n var ru = moment.defineLocale('ru', {\n months : {\n format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split('_'),\n standalone: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_')\n },\n monthsShort : {\n // по CLDR именно \"июл.\" и \"июн.\", но какой смысл менять букву на точку ?\n format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split('_'),\n standalone: 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split('_')\n },\n weekdays : {\n standalone: 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split('_'),\n format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_'),\n isFormat: /\\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\\] ?dddd/\n },\n weekdaysShort : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n monthsParse : monthsParse,\n longMonthsParse : monthsParse,\n shortMonthsParse : monthsParse,\n\n // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки\n monthsRegex: /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // копия предыдущего\n monthsShortRegex: /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // полные названия с падежами\n monthsStrictRegex: /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,\n\n // Выражение, которое соотвествует только сокращённым формам\n monthsShortStrictRegex: /^(янв\\.|февр?\\.|мар[т.]|апр\\.|ма[яй]|июн[ья.]|июл[ья.]|авг\\.|сент?\\.|окт\\.|нояб?\\.|дек\\.)/i,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY г.',\n LLL : 'D MMMM YYYY г., H:mm',\n LLLL : 'dddd, D MMMM YYYY г., H:mm'\n },\n calendar : {\n sameDay: '[Сегодня, в] LT',\n nextDay: '[Завтра, в] LT',\n lastDay: '[Вчера, в] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В следующее] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В следующий] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В следующую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n lastWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В прошлое] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В прошлый] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В прошлую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'через %s',\n past : '%s назад',\n s : 'несколько секунд',\n ss : relativeTimeWithPlural,\n m : relativeTimeWithPlural,\n mm : relativeTimeWithPlural,\n h : 'час',\n hh : relativeTimeWithPlural,\n d : 'день',\n dd : relativeTimeWithPlural,\n M : 'месяц',\n MM : relativeTimeWithPlural,\n y : 'год',\n yy : relativeTimeWithPlural\n },\n meridiemParse: /ночи|утра|дня|вечера/i,\n isPM : function (input) {\n return /^(дня|вечера)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночи';\n } else if (hour < 12) {\n return 'утра';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечера';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го|я)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n return number + '-й';\n case 'D':\n return number + '-го';\n case 'w':\n case 'W':\n return number + '-я';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ru;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'جنوري',\n 'فيبروري',\n 'مارچ',\n 'اپريل',\n 'مئي',\n 'جون',\n 'جولاءِ',\n 'آگسٽ',\n 'سيپٽمبر',\n 'آڪٽوبر',\n 'نومبر',\n 'ڊسمبر'\n ];\n var days = [\n 'آچر',\n 'سومر',\n 'اڱارو',\n 'اربع',\n 'خميس',\n 'جمع',\n 'ڇنڇر'\n ];\n\n var sd = moment.defineLocale('sd', {\n months : months,\n monthsShort : months,\n weekdays : days,\n weekdaysShort : days,\n weekdaysMin : days,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd، D MMMM YYYY HH:mm'\n },\n meridiemParse: /صبح|شام/,\n isPM : function (input) {\n return 'شام' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar : {\n sameDay : '[اڄ] LT',\n nextDay : '[سڀاڻي] LT',\n nextWeek : 'dddd [اڳين هفتي تي] LT',\n lastDay : '[ڪالهه] LT',\n lastWeek : '[گزريل هفتي] dddd [تي] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s پوء',\n past : '%s اڳ',\n s : 'چند سيڪنڊ',\n ss : '%d سيڪنڊ',\n m : 'هڪ منٽ',\n mm : '%d منٽ',\n h : 'هڪ ڪلاڪ',\n hh : '%d ڪلاڪ',\n d : 'هڪ ڏينهن',\n dd : '%d ڏينهن',\n M : 'هڪ مهينو',\n MM : '%d مهينا',\n y : 'هڪ سال',\n yy : '%d سال'\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sd;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var se = moment.defineLocale('se', {\n months : 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split('_'),\n monthsShort : 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'),\n weekdays : 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split('_'),\n weekdaysShort : 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'),\n weekdaysMin : 's_v_m_g_d_b_L'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'MMMM D. [b.] YYYY',\n LLL : 'MMMM D. [b.] YYYY [ti.] HH:mm',\n LLLL : 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm'\n },\n calendar : {\n sameDay: '[otne ti] LT',\n nextDay: '[ihttin ti] LT',\n nextWeek: 'dddd [ti] LT',\n lastDay: '[ikte ti] LT',\n lastWeek: '[ovddit] dddd [ti] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s geažes',\n past : 'maŋit %s',\n s : 'moadde sekunddat',\n ss: '%d sekunddat',\n m : 'okta minuhta',\n mm : '%d minuhtat',\n h : 'okta diimmu',\n hh : '%d diimmut',\n d : 'okta beaivi',\n dd : '%d beaivvit',\n M : 'okta mánnu',\n MM : '%d mánut',\n y : 'okta jahki',\n yy : '%d jagit'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return se;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n /*jshint -W100*/\n var si = moment.defineLocale('si', {\n months : 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split('_'),\n monthsShort : 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split('_'),\n weekdays : 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split('_'),\n weekdaysShort : 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),\n weekdaysMin : 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'a h:mm',\n LTS : 'a h:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY MMMM D',\n LLL : 'YYYY MMMM D, a h:mm',\n LLLL : 'YYYY MMMM D [වැනි] dddd, a h:mm:ss'\n },\n calendar : {\n sameDay : '[අද] LT[ට]',\n nextDay : '[හෙට] LT[ට]',\n nextWeek : 'dddd LT[ට]',\n lastDay : '[ඊයේ] LT[ට]',\n lastWeek : '[පසුගිය] dddd LT[ට]',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%sකින්',\n past : '%sකට පෙර',\n s : 'තත්පර කිහිපය',\n ss : 'තත්පර %d',\n m : 'මිනිත්තුව',\n mm : 'මිනිත්තු %d',\n h : 'පැය',\n hh : 'පැය %d',\n d : 'දිනය',\n dd : 'දින %d',\n M : 'මාසය',\n MM : 'මාස %d',\n y : 'වසර',\n yy : 'වසර %d'\n },\n dayOfMonthOrdinalParse: /\\d{1,2} වැනි/,\n ordinal : function (number) {\n return number + ' වැනි';\n },\n meridiemParse : /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,\n isPM : function (input) {\n return input === 'ප.ව.' || input === 'පස් වරු';\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'ප.ව.' : 'පස් වරු';\n } else {\n return isLower ? 'පෙ.ව.' : 'පෙර වරු';\n }\n }\n });\n\n return si;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split('_'),\n monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');\n function plural(n) {\n return (n > 1) && (n < 5);\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return (withoutSuffix || isFuture) ? 'pár sekúnd' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekúnd');\n } else {\n return result + 'sekundami';\n }\n break;\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minúta' : (isFuture ? 'minútu' : 'minútou');\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minúty' : 'minút');\n } else {\n return result + 'minútami';\n }\n break;\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodín');\n } else {\n return result + 'hodinami';\n }\n break;\n case 'd': // a day / in a day / a day ago\n return (withoutSuffix || isFuture) ? 'deň' : 'dňom';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dni' : 'dní');\n } else {\n return result + 'dňami';\n }\n break;\n case 'M': // a month / in a month / a month ago\n return (withoutSuffix || isFuture) ? 'mesiac' : 'mesiacom';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'mesiace' : 'mesiacov');\n } else {\n return result + 'mesiacmi';\n }\n break;\n case 'y': // a year / in a year / a year ago\n return (withoutSuffix || isFuture) ? 'rok' : 'rokom';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'rokov');\n } else {\n return result + 'rokmi';\n }\n break;\n }\n }\n\n var sk = moment.defineLocale('sk', {\n months : months,\n monthsShort : monthsShort,\n weekdays : 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),\n weekdaysShort : 'ne_po_ut_st_št_pi_so'.split('_'),\n weekdaysMin : 'ne_po_ut_st_št_pi_so'.split('_'),\n longDateFormat : {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay: '[dnes o] LT',\n nextDay: '[zajtra o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v nedeľu o] LT';\n case 1:\n case 2:\n return '[v] dddd [o] LT';\n case 3:\n return '[v stredu o] LT';\n case 4:\n return '[vo štvrtok o] LT';\n case 5:\n return '[v piatok o] LT';\n case 6:\n return '[v sobotu o] LT';\n }\n },\n lastDay: '[včera o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulú nedeľu o] LT';\n case 1:\n case 2:\n return '[minulý] dddd [o] LT';\n case 3:\n return '[minulú stredu o] LT';\n case 4:\n case 5:\n return '[minulý] dddd [o] LT';\n case 6:\n return '[minulú sobotu o] LT';\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'pred %s',\n s : translate,\n ss : translate,\n m : translate,\n mm : translate,\n h : translate,\n hh : translate,\n d : translate,\n dd : translate,\n M : translate,\n MM : translate,\n y : translate,\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture ? 'nekaj sekund' : 'nekaj sekundami';\n case 'ss':\n if (number === 1) {\n result += withoutSuffix ? 'sekundo' : 'sekundi';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah';\n } else {\n result += 'sekund';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'ena minuta' : 'eno minuto';\n case 'mm':\n if (number === 1) {\n result += withoutSuffix ? 'minuta' : 'minuto';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'minuti' : 'minutama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'minute' : 'minutami';\n } else {\n result += withoutSuffix || isFuture ? 'minut' : 'minutami';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'ena ura' : 'eno uro';\n case 'hh':\n if (number === 1) {\n result += withoutSuffix ? 'ura' : 'uro';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'uri' : 'urama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'ure' : 'urami';\n } else {\n result += withoutSuffix || isFuture ? 'ur' : 'urami';\n }\n return result;\n case 'd':\n return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';\n case 'dd':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'dan' : 'dnem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';\n } else {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevi';\n }\n return result;\n case 'M':\n return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';\n case 'MM':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'mesece' : 'meseci';\n } else {\n result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';\n }\n return result;\n case 'y':\n return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';\n case 'yy':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'leto' : 'letom';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'leti' : 'letoma';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'leta' : 'leti';\n } else {\n result += withoutSuffix || isFuture ? 'let' : 'leti';\n }\n return result;\n }\n }\n\n var sl = moment.defineLocale('sl', {\n months : 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split('_'),\n monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays : 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),\n weekdaysShort : 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),\n weekdaysMin : 'ne_po_to_sr_če_pe_so'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM YYYY',\n LLL : 'D. MMMM YYYY H:mm',\n LLLL : 'dddd, D. MMMM YYYY H:mm'\n },\n calendar : {\n sameDay : '[danes ob] LT',\n nextDay : '[jutri ob] LT',\n\n nextWeek : function () {\n switch (this.day()) {\n case 0:\n return '[v] [nedeljo] [ob] LT';\n case 3:\n return '[v] [sredo] [ob] LT';\n case 6:\n return '[v] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[v] dddd [ob] LT';\n }\n },\n lastDay : '[včeraj ob] LT',\n lastWeek : function () {\n switch (this.day()) {\n case 0:\n return '[prejšnjo] [nedeljo] [ob] LT';\n case 3:\n return '[prejšnjo] [sredo] [ob] LT';\n case 6:\n return '[prejšnjo] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prejšnji] dddd [ob] LT';\n }\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'čez %s',\n past : 'pred %s',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return sl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var sq = moment.defineLocale('sq', {\n months : 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split('_'),\n monthsShort : 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),\n weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'),\n weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),\n weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'),\n weekdaysParseExact : true,\n meridiemParse: /PD|MD/,\n isPM: function (input) {\n return input.charAt(0) === 'M';\n },\n meridiem : function (hours, minutes, isLower) {\n return hours < 12 ? 'PD' : 'MD';\n },\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Sot në] LT',\n nextDay : '[Nesër në] LT',\n nextWeek : 'dddd [në] LT',\n lastDay : '[Dje në] LT',\n lastWeek : 'dddd [e kaluar në] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'në %s',\n past : '%s më parë',\n s : 'disa sekonda',\n ss : '%d sekonda',\n m : 'një minutë',\n mm : '%d minuta',\n h : 'një orë',\n hh : '%d orë',\n d : 'një ditë',\n dd : '%d ditë',\n M : 'një muaj',\n MM : '%d muaj',\n y : 'një vit',\n yy : '%d vite'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sq;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var translator = {\n words: { //Different grammatical cases\n ss: ['sekunda', 'sekunde', 'sekundi'],\n m: ['jedan minut', 'jedne minute'],\n mm: ['minut', 'minute', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mesec', 'meseca', 'meseci'],\n yy: ['godina', 'godine', 'godina']\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n }\n }\n };\n\n var sr = moment.defineLocale('sr', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split('_'),\n monthsShort: 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split('_'),\n weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm'\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedelju] [u] LT';\n case 3:\n return '[u] [sredu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay : '[juče u] LT',\n lastWeek : function () {\n var lastWeekDays = [\n '[prošle] [nedelje] [u] LT',\n '[prošlog] [ponedeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT'\n ];\n return lastWeekDays[this.day()];\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'za %s',\n past : 'pre %s',\n s : 'nekoliko sekundi',\n ss : translator.translate,\n m : translator.translate,\n mm : translator.translate,\n h : translator.translate,\n hh : translator.translate,\n d : 'dan',\n dd : translator.translate,\n M : 'mesec',\n MM : translator.translate,\n y : 'godinu',\n yy : translator.translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return sr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var translator = {\n words: { //Different grammatical cases\n ss: ['секунда', 'секунде', 'секунди'],\n m: ['један минут', 'једне минуте'],\n mm: ['минут', 'минуте', 'минута'],\n h: ['један сат', 'једног сата'],\n hh: ['сат', 'сата', 'сати'],\n dd: ['дан', 'дана', 'дана'],\n MM: ['месец', 'месеца', 'месеци'],\n yy: ['година', 'године', 'година']\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n }\n }\n };\n\n var srCyrl = moment.defineLocale('sr-cyrl', {\n months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split('_'),\n monthsShort: 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),\n monthsParseExact: true,\n weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),\n weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),\n weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),\n weekdaysParseExact : true,\n longDateFormat: {\n LT: 'H:mm',\n LTS : 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm'\n },\n calendar: {\n sameDay: '[данас у] LT',\n nextDay: '[сутра у] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[у] [недељу] [у] LT';\n case 3:\n return '[у] [среду] [у] LT';\n case 6:\n return '[у] [суботу] [у] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[у] dddd [у] LT';\n }\n },\n lastDay : '[јуче у] LT',\n lastWeek : function () {\n var lastWeekDays = [\n '[прошле] [недеље] [у] LT',\n '[прошлог] [понедељка] [у] LT',\n '[прошлог] [уторка] [у] LT',\n '[прошле] [среде] [у] LT',\n '[прошлог] [четвртка] [у] LT',\n '[прошлог] [петка] [у] LT',\n '[прошле] [суботе] [у] LT'\n ];\n return lastWeekDays[this.day()];\n },\n sameElse : 'L'\n },\n relativeTime : {\n future : 'за %s',\n past : 'пре %s',\n s : 'неколико секунди',\n ss : translator.translate,\n m : translator.translate,\n mm : translator.translate,\n h : translator.translate,\n hh : translator.translate,\n d : 'дан',\n dd : translator.translate,\n M : 'месец',\n MM : translator.translate,\n y : 'годину',\n yy : translator.translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return srCyrl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ss = moment.defineLocale('ss', {\n months : \"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni\".split('_'),\n monthsShort : 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'),\n weekdays : 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split('_'),\n weekdaysShort : 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'),\n weekdaysMin : 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Namuhla nga] LT',\n nextDay : '[Kusasa nga] LT',\n nextWeek : 'dddd [nga] LT',\n lastDay : '[Itolo nga] LT',\n lastWeek : 'dddd [leliphelile] [nga] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'nga %s',\n past : 'wenteka nga %s',\n s : 'emizuzwana lomcane',\n ss : '%d mzuzwana',\n m : 'umzuzu',\n mm : '%d emizuzu',\n h : 'lihora',\n hh : '%d emahora',\n d : 'lilanga',\n dd : '%d emalanga',\n M : 'inyanga',\n MM : '%d tinyanga',\n y : 'umnyaka',\n yy : '%d iminyaka'\n },\n meridiemParse: /ekuseni|emini|entsambama|ebusuku/,\n meridiem : function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'ekuseni';\n } else if (hours < 15) {\n return 'emini';\n } else if (hours < 19) {\n return 'entsambama';\n } else {\n return 'ebusuku';\n }\n },\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ekuseni') {\n return hour;\n } else if (meridiem === 'emini') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') {\n if (hour === 0) {\n return 0;\n }\n return hour + 12;\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal : '%d',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ss;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var sv = moment.defineLocale('sv', {\n months : 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split('_'),\n monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays : 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),\n weekdaysShort : 'sön_mån_tis_ons_tor_fre_lör'.split('_'),\n weekdaysMin : 'sö_må_ti_on_to_fr_lö'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY-MM-DD',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY [kl.] HH:mm',\n LLLL : 'dddd D MMMM YYYY [kl.] HH:mm',\n lll : 'D MMM YYYY HH:mm',\n llll : 'ddd D MMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Idag] LT',\n nextDay: '[Imorgon] LT',\n lastDay: '[Igår] LT',\n nextWeek: '[På] dddd LT',\n lastWeek: '[I] dddd[s] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'om %s',\n past : 'för %s sedan',\n s : 'några sekunder',\n ss : '%d sekunder',\n m : 'en minut',\n mm : '%d minuter',\n h : 'en timme',\n hh : '%d timmar',\n d : 'en dag',\n dd : '%d dagar',\n M : 'en månad',\n MM : '%d månader',\n y : 'ett år',\n yy : '%d år'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(e|a)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'e' :\n (b === 1) ? 'a' :\n (b === 2) ? 'a' :\n (b === 3) ? 'e' : 'e';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return sv;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var sw = moment.defineLocale('sw', {\n months : 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split('_'),\n monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),\n weekdays : 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split('_'),\n weekdaysShort : 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),\n weekdaysMin : 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[leo saa] LT',\n nextDay : '[kesho saa] LT',\n nextWeek : '[wiki ijayo] dddd [saat] LT',\n lastDay : '[jana] LT',\n lastWeek : '[wiki iliyopita] dddd [saat] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s baadaye',\n past : 'tokea %s',\n s : 'hivi punde',\n ss : 'sekunde %d',\n m : 'dakika moja',\n mm : 'dakika %d',\n h : 'saa limoja',\n hh : 'masaa %d',\n d : 'siku moja',\n dd : 'masiku %d',\n M : 'mwezi mmoja',\n MM : 'miezi %d',\n y : 'mwaka mmoja',\n yy : 'miaka %d'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return sw;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var symbolMap = {\n '1': '௧',\n '2': '௨',\n '3': '௩',\n '4': '௪',\n '5': '௫',\n '6': '௬',\n '7': '௭',\n '8': '௮',\n '9': '௯',\n '0': '௦'\n }, numberMap = {\n '௧': '1',\n '௨': '2',\n '௩': '3',\n '௪': '4',\n '௫': '5',\n '௬': '6',\n '௭': '7',\n '௮': '8',\n '௯': '9',\n '௦': '0'\n };\n\n var ta = moment.defineLocale('ta', {\n months : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),\n monthsShort : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),\n weekdays : 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split('_'),\n weekdaysShort : 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split('_'),\n weekdaysMin : 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, HH:mm',\n LLLL : 'dddd, D MMMM YYYY, HH:mm'\n },\n calendar : {\n sameDay : '[இன்று] LT',\n nextDay : '[நாளை] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[நேற்று] LT',\n lastWeek : '[கடந்த வாரம்] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s இல்',\n past : '%s முன்',\n s : 'ஒரு சில விநாடிகள்',\n ss : '%d விநாடிகள்',\n m : 'ஒரு நிமிடம்',\n mm : '%d நிமிடங்கள்',\n h : 'ஒரு மணி நேரம்',\n hh : '%d மணி நேரம்',\n d : 'ஒரு நாள்',\n dd : '%d நாட்கள்',\n M : 'ஒரு மாதம்',\n MM : '%d மாதங்கள்',\n y : 'ஒரு வருடம்',\n yy : '%d ஆண்டுகள்'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}வது/,\n ordinal : function (number) {\n return number + 'வது';\n },\n preparse: function (string) {\n return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // refer http://ta.wikipedia.org/s/1er1\n meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,\n meridiem : function (hour, minute, isLower) {\n if (hour < 2) {\n return ' யாமம்';\n } else if (hour < 6) {\n return ' வைகறை'; // வைகறை\n } else if (hour < 10) {\n return ' காலை'; // காலை\n } else if (hour < 14) {\n return ' நண்பகல்'; // நண்பகல்\n } else if (hour < 18) {\n return ' எற்பாடு'; // எற்பாடு\n } else if (hour < 22) {\n return ' மாலை'; // மாலை\n } else {\n return ' யாமம்';\n }\n },\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'யாமம்') {\n return hour < 2 ? hour : hour + 12;\n } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {\n return hour;\n } else if (meridiem === 'நண்பகல்') {\n return hour >= 10 ? hour : hour + 12;\n } else {\n return hour + 12;\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return ta;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var te = moment.defineLocale('te', {\n months : 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split('_'),\n monthsShort : 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split('_'),\n monthsParseExact : true,\n weekdays : 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split('_'),\n weekdaysShort : 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'),\n weekdaysMin : 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'),\n longDateFormat : {\n LT : 'A h:mm',\n LTS : 'A h:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY, A h:mm',\n LLLL : 'dddd, D MMMM YYYY, A h:mm'\n },\n calendar : {\n sameDay : '[నేడు] LT',\n nextDay : '[రేపు] LT',\n nextWeek : 'dddd, LT',\n lastDay : '[నిన్న] LT',\n lastWeek : '[గత] dddd, LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s లో',\n past : '%s క్రితం',\n s : 'కొన్ని క్షణాలు',\n ss : '%d సెకన్లు',\n m : 'ఒక నిమిషం',\n mm : '%d నిమిషాలు',\n h : 'ఒక గంట',\n hh : '%d గంటలు',\n d : 'ఒక రోజు',\n dd : '%d రోజులు',\n M : 'ఒక నెల',\n MM : '%d నెలలు',\n y : 'ఒక సంవత్సరం',\n yy : '%d సంవత్సరాలు'\n },\n dayOfMonthOrdinalParse : /\\d{1,2}వ/,\n ordinal : '%dవ',\n meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'రాత్రి') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ఉదయం') {\n return hour;\n } else if (meridiem === 'మధ్యాహ్నం') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'సాయంత్రం') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'రాత్రి';\n } else if (hour < 10) {\n return 'ఉదయం';\n } else if (hour < 17) {\n return 'మధ్యాహ్నం';\n } else if (hour < 20) {\n return 'సాయంత్రం';\n } else {\n return 'రాత్రి';\n }\n },\n week : {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 6th is the first week of the year.\n }\n });\n\n return te;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tet = moment.defineLocale('tet', {\n months : 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays : 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'),\n weekdaysShort : 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'),\n weekdaysMin : 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Ohin iha] LT',\n nextDay: '[Aban iha] LT',\n nextWeek: 'dddd [iha] LT',\n lastDay: '[Horiseik iha] LT',\n lastWeek: 'dddd [semana kotuk] [iha] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'iha %s',\n past : '%s liuba',\n s : 'minutu balun',\n ss : 'minutu %d',\n m : 'minutu ida',\n mm : 'minutu %d',\n h : 'oras ida',\n hh : 'oras %d',\n d : 'loron ida',\n dd : 'loron %d',\n M : 'fulan ida',\n MM : 'fulan %d',\n y : 'tinan ida',\n yy : 'tinan %d'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return tet;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var suffixes = {\n 0: '-ум',\n 1: '-ум',\n 2: '-юм',\n 3: '-юм',\n 4: '-ум',\n 5: '-ум',\n 6: '-ум',\n 7: '-ум',\n 8: '-ум',\n 9: '-ум',\n 10: '-ум',\n 12: '-ум',\n 13: '-ум',\n 20: '-ум',\n 30: '-юм',\n 40: '-ум',\n 50: '-ум',\n 60: '-ум',\n 70: '-ум',\n 80: '-ум',\n 90: '-ум',\n 100: '-ум'\n };\n\n var tg = moment.defineLocale('tg', {\n months : 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split('_'),\n monthsShort : 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays : 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split('_'),\n weekdaysShort : 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'),\n weekdaysMin : 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[Имрӯз соати] LT',\n nextDay : '[Пагоҳ соати] LT',\n lastDay : '[Дирӯз соати] LT',\n nextWeek : 'dddd[и] [ҳафтаи оянда соати] LT',\n lastWeek : 'dddd[и] [ҳафтаи гузашта соати] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'баъди %s',\n past : '%s пеш',\n s : 'якчанд сония',\n m : 'як дақиқа',\n mm : '%d дақиқа',\n h : 'як соат',\n hh : '%d соат',\n d : 'як рӯз',\n dd : '%d рӯз',\n M : 'як моҳ',\n MM : '%d моҳ',\n y : 'як сол',\n yy : '%d сол'\n },\n meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'шаб') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'субҳ') {\n return hour;\n } else if (meridiem === 'рӯз') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'бегоҳ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'шаб';\n } else if (hour < 11) {\n return 'субҳ';\n } else if (hour < 16) {\n return 'рӯз';\n } else if (hour < 19) {\n return 'бегоҳ';\n } else {\n return 'шаб';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ум|юм)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 1th is the first week of the year.\n }\n });\n\n return tg;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var th = moment.defineLocale('th', {\n months : 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split('_'),\n monthsShort : 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split('_'),\n monthsParseExact: true,\n weekdays : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),\n weekdaysShort : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference\n weekdaysMin : 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'H:mm',\n LTS : 'H:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY เวลา H:mm',\n LLLL : 'วันddddที่ D MMMM YYYY เวลา H:mm'\n },\n meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,\n isPM: function (input) {\n return input === 'หลังเที่ยง';\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ก่อนเที่ยง';\n } else {\n return 'หลังเที่ยง';\n }\n },\n calendar : {\n sameDay : '[วันนี้ เวลา] LT',\n nextDay : '[พรุ่งนี้ เวลา] LT',\n nextWeek : 'dddd[หน้า เวลา] LT',\n lastDay : '[เมื่อวานนี้ เวลา] LT',\n lastWeek : '[วัน]dddd[ที่แล้ว เวลา] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'อีก %s',\n past : '%sที่แล้ว',\n s : 'ไม่กี่วินาที',\n ss : '%d วินาที',\n m : '1 นาที',\n mm : '%d นาที',\n h : '1 ชั่วโมง',\n hh : '%d ชั่วโมง',\n d : '1 วัน',\n dd : '%d วัน',\n M : '1 เดือน',\n MM : '%d เดือน',\n y : '1 ปี',\n yy : '%d ปี'\n }\n });\n\n return th;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tlPh = moment.defineLocale('tl-ph', {\n months : 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split('_'),\n monthsShort : 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays : 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split('_'),\n weekdaysShort : 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'MM/D/YYYY',\n LL : 'MMMM D, YYYY',\n LLL : 'MMMM D, YYYY HH:mm',\n LLLL : 'dddd, MMMM DD, YYYY HH:mm'\n },\n calendar : {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'sa loob ng %s',\n past : '%s ang nakalipas',\n s : 'ilang segundo',\n ss : '%d segundo',\n m : 'isang minuto',\n mm : '%d minuto',\n h : 'isang oras',\n hh : '%d oras',\n d : 'isang araw',\n dd : '%d araw',\n M : 'isang buwan',\n MM : '%d buwan',\n y : 'isang taon',\n yy : '%d taon'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal : function (number) {\n return number;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return tlPh;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_');\n\n function translateFuture(output) {\n var time = output;\n time = (output.indexOf('jaj') !== -1) ?\n time.slice(0, -3) + 'leS' :\n (output.indexOf('jar') !== -1) ?\n time.slice(0, -3) + 'waQ' :\n (output.indexOf('DIS') !== -1) ?\n time.slice(0, -3) + 'nem' :\n time + ' pIq';\n return time;\n }\n\n function translatePast(output) {\n var time = output;\n time = (output.indexOf('jaj') !== -1) ?\n time.slice(0, -3) + 'Hu’' :\n (output.indexOf('jar') !== -1) ?\n time.slice(0, -3) + 'wen' :\n (output.indexOf('DIS') !== -1) ?\n time.slice(0, -3) + 'ben' :\n time + ' ret';\n return time;\n }\n\n function translate(number, withoutSuffix, string, isFuture) {\n var numberNoun = numberAsNoun(number);\n switch (string) {\n case 'ss':\n return numberNoun + ' lup';\n case 'mm':\n return numberNoun + ' tup';\n case 'hh':\n return numberNoun + ' rep';\n case 'dd':\n return numberNoun + ' jaj';\n case 'MM':\n return numberNoun + ' jar';\n case 'yy':\n return numberNoun + ' DIS';\n }\n }\n\n function numberAsNoun(number) {\n var hundred = Math.floor((number % 1000) / 100),\n ten = Math.floor((number % 100) / 10),\n one = number % 10,\n word = '';\n if (hundred > 0) {\n word += numbersNouns[hundred] + 'vatlh';\n }\n if (ten > 0) {\n word += ((word !== '') ? ' ' : '') + numbersNouns[ten] + 'maH';\n }\n if (one > 0) {\n word += ((word !== '') ? ' ' : '') + numbersNouns[one];\n }\n return (word === '') ? 'pagh' : word;\n }\n\n var tlh = moment.defineLocale('tlh', {\n months : 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split('_'),\n monthsShort : 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split('_'),\n monthsParseExact : true,\n weekdays : 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysShort : 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysMin : 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[DaHjaj] LT',\n nextDay: '[wa’leS] LT',\n nextWeek: 'LLL',\n lastDay: '[wa’Hu’] LT',\n lastWeek: 'LLL',\n sameElse: 'L'\n },\n relativeTime : {\n future : translateFuture,\n past : translatePast,\n s : 'puS lup',\n ss : translate,\n m : 'wa’ tup',\n mm : translate,\n h : 'wa’ rep',\n hh : translate,\n d : 'wa’ jaj',\n dd : translate,\n M : 'wa’ jar',\n MM : translate,\n y : 'wa’ DIS',\n yy : translate\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return tlh;\n\n})));\n","\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n var suffixes = {\n 1: '\\'inci',\n 5: '\\'inci',\n 8: '\\'inci',\n 70: '\\'inci',\n 80: '\\'inci',\n 2: '\\'nci',\n 7: '\\'nci',\n 20: '\\'nci',\n 50: '\\'nci',\n 3: '\\'üncü',\n 4: '\\'üncü',\n 100: '\\'üncü',\n 6: '\\'ncı',\n 9: '\\'uncu',\n 10: '\\'uncu',\n 30: '\\'uncu',\n 60: '\\'ıncı',\n 90: '\\'ıncı'\n };\n\n var tr = moment.defineLocale('tr', {\n months : 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split('_'),\n monthsShort : 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),\n weekdays : 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split('_'),\n weekdaysShort : 'Paz_Pts_Sal_Çar_Per_Cum_Cts'.split('_'),\n weekdaysMin : 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[bugün saat] LT',\n nextDay : '[yarın saat] LT',\n nextWeek : '[gelecek] dddd [saat] LT',\n lastDay : '[dün] LT',\n lastWeek : '[geçen] dddd [saat] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s sonra',\n past : '%s önce',\n s : 'birkaç saniye',\n ss : '%d saniye',\n m : 'bir dakika',\n mm : '%d dakika',\n h : 'bir saat',\n hh : '%d saat',\n d : 'bir gün',\n dd : '%d gün',\n M : 'bir ay',\n MM : '%d ay',\n y : 'bir yıl',\n yy : '%d yıl'\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) { // special case for zero\n return number + '\\'ıncı';\n }\n var a = number % 10,\n b = number % 100 - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return tr;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.\n // This is currently too difficult (maybe even impossible) to add.\n var tzl = moment.defineLocale('tzl', {\n months : 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split('_'),\n monthsShort : 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),\n weekdays : 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),\n weekdaysShort : 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),\n weekdaysMin : 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),\n longDateFormat : {\n LT : 'HH.mm',\n LTS : 'HH.mm.ss',\n L : 'DD.MM.YYYY',\n LL : 'D. MMMM [dallas] YYYY',\n LLL : 'D. MMMM [dallas] YYYY HH.mm',\n LLLL : 'dddd, [li] D. MMMM [dallas] YYYY HH.mm'\n },\n meridiemParse: /d\\'o|d\\'a/i,\n isPM : function (input) {\n return 'd\\'o' === input.toLowerCase();\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'd\\'o' : 'D\\'O';\n } else {\n return isLower ? 'd\\'a' : 'D\\'A';\n }\n },\n calendar : {\n sameDay : '[oxhi à] LT',\n nextDay : '[demà à] LT',\n nextWeek : 'dddd [à] LT',\n lastDay : '[ieiri à] LT',\n lastWeek : '[sür el] dddd [lasteu à] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'osprei %s',\n past : 'ja%s',\n s : processRelativeTime,\n ss : processRelativeTime,\n m : processRelativeTime,\n mm : processRelativeTime,\n h : processRelativeTime,\n hh : processRelativeTime,\n d : processRelativeTime,\n dd : processRelativeTime,\n M : processRelativeTime,\n MM : processRelativeTime,\n y : processRelativeTime,\n yy : processRelativeTime\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal : '%d.',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n 's': ['viensas secunds', '\\'iensas secunds'],\n 'ss': [number + ' secunds', '' + number + ' secunds'],\n 'm': ['\\'n míut', '\\'iens míut'],\n 'mm': [number + ' míuts', '' + number + ' míuts'],\n 'h': ['\\'n þora', '\\'iensa þora'],\n 'hh': [number + ' þoras', '' + number + ' þoras'],\n 'd': ['\\'n ziua', '\\'iensa ziua'],\n 'dd': [number + ' ziuas', '' + number + ' ziuas'],\n 'M': ['\\'n mes', '\\'iens mes'],\n 'MM': [number + ' mesen', '' + number + ' mesen'],\n 'y': ['\\'n ar', '\\'iens ar'],\n 'yy': [number + ' ars', '' + number + ' ars']\n };\n return isFuture ? format[key][0] : (withoutSuffix ? format[key][0] : format[key][1]);\n }\n\n return tzl;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tzm = moment.defineLocale('tzm', {\n months : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),\n monthsShort : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),\n weekdays : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysShort : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysMin : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS: 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',\n nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',\n nextWeek: 'dddd [ⴴ] LT',\n lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',\n lastWeek: 'dddd [ⴴ] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',\n past : 'ⵢⴰⵏ %s',\n s : 'ⵉⵎⵉⴽ',\n ss : '%d ⵉⵎⵉⴽ',\n m : 'ⵎⵉⵏⵓⴺ',\n mm : '%d ⵎⵉⵏⵓⴺ',\n h : 'ⵙⴰⵄⴰ',\n hh : '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',\n d : 'ⴰⵙⵙ',\n dd : '%d oⵙⵙⴰⵏ',\n M : 'ⴰⵢoⵓⵔ',\n MM : '%d ⵉⵢⵢⵉⵔⵏ',\n y : 'ⴰⵙⴳⴰⵙ',\n yy : '%d ⵉⵙⴳⴰⵙⵏ'\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return tzm;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var tzmLatn = moment.defineLocale('tzm-latn', {\n months : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),\n monthsShort : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),\n weekdays : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysShort : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[asdkh g] LT',\n nextDay: '[aska g] LT',\n nextWeek: 'dddd [g] LT',\n lastDay: '[assant g] LT',\n lastWeek: 'dddd [g] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : 'dadkh s yan %s',\n past : 'yan %s',\n s : 'imik',\n ss : '%d imik',\n m : 'minuḍ',\n mm : '%d minuḍ',\n h : 'saɛa',\n hh : '%d tassaɛin',\n d : 'ass',\n dd : '%d ossan',\n M : 'ayowr',\n MM : '%d iyyirn',\n y : 'asgas',\n yy : '%d isgasn'\n },\n week : {\n dow : 6, // Saturday is the first day of the week.\n doy : 12 // The week that contains Jan 12th is the first week of the year.\n }\n });\n\n return tzmLatn;\n\n})));\n","//! moment.js language configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var ugCn = moment.defineLocale('ug-cn', {\n months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n monthsShort: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(\n '_'\n ),\n weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى',\n LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm'\n },\n meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n meridiem === 'يېرىم كېچە' ||\n meridiem === 'سەھەر' ||\n meridiem === 'چۈشتىن بۇرۇن'\n ) {\n return hour;\n } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') {\n return hour + 12;\n } else {\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return 'يېرىم كېچە';\n } else if (hm < 900) {\n return 'سەھەر';\n } else if (hm < 1130) {\n return 'چۈشتىن بۇرۇن';\n } else if (hm < 1230) {\n return 'چۈش';\n } else if (hm < 1800) {\n return 'چۈشتىن كېيىن';\n } else {\n return 'كەچ';\n }\n },\n calendar: {\n sameDay: '[بۈگۈن سائەت] LT',\n nextDay: '[ئەتە سائەت] LT',\n nextWeek: '[كېلەركى] dddd [سائەت] LT',\n lastDay: '[تۆنۈگۈن] LT',\n lastWeek: '[ئالدىنقى] dddd [سائەت] LT',\n sameElse: 'L'\n },\n relativeTime: {\n future: '%s كېيىن',\n past: '%s بۇرۇن',\n s: 'نەچچە سېكونت',\n ss: '%d سېكونت',\n m: 'بىر مىنۇت',\n mm: '%d مىنۇت',\n h: 'بىر سائەت',\n hh: '%d سائەت',\n d: 'بىر كۈن',\n dd: '%d كۈن',\n M: 'بىر ئاي',\n MM: '%d ئاي',\n y: 'بىر يىل',\n yy: '%d يىل'\n },\n\n dayOfMonthOrdinalParse: /\\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '-كۈنى';\n case 'w':\n case 'W':\n return number + '-ھەپتە';\n default:\n return number;\n }\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 7 // The week that contains Jan 1st is the first week of the year.\n }\n });\n\n return ugCn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n 'ss': withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд',\n 'mm': withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',\n 'hh': withoutSuffix ? 'година_години_годин' : 'годину_години_годин',\n 'dd': 'день_дні_днів',\n 'MM': 'місяць_місяці_місяців',\n 'yy': 'рік_роки_років'\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвилина' : 'хвилину';\n }\n else if (key === 'h') {\n return withoutSuffix ? 'година' : 'годину';\n }\n else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n function weekdaysCaseReplace(m, format) {\n var weekdays = {\n 'nominative': 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split('_'),\n 'accusative': 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split('_'),\n 'genitive': 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split('_')\n };\n\n if (m === true) {\n return weekdays['nominative'].slice(1, 7).concat(weekdays['nominative'].slice(0, 1));\n }\n if (!m) {\n return weekdays['nominative'];\n }\n\n var nounCase = (/(\\[[ВвУу]\\]) ?dddd/).test(format) ?\n 'accusative' :\n ((/\\[?(?:минулої|наступної)? ?\\] ?dddd/).test(format) ?\n 'genitive' :\n 'nominative');\n return weekdays[nounCase][m.day()];\n }\n function processHoursFunction(str) {\n return function () {\n return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';\n };\n }\n\n var uk = moment.defineLocale('uk', {\n months : {\n 'format': 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split('_'),\n 'standalone': 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split('_')\n },\n monthsShort : 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split('_'),\n weekdays : weekdaysCaseReplace,\n weekdaysShort : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD.MM.YYYY',\n LL : 'D MMMM YYYY р.',\n LLL : 'D MMMM YYYY р., HH:mm',\n LLLL : 'dddd, D MMMM YYYY р., HH:mm'\n },\n calendar : {\n sameDay: processHoursFunction('[Сьогодні '),\n nextDay: processHoursFunction('[Завтра '),\n lastDay: processHoursFunction('[Вчора '),\n nextWeek: processHoursFunction('[У] dddd ['),\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return processHoursFunction('[Минулої] dddd [').call(this);\n case 1:\n case 2:\n case 4:\n return processHoursFunction('[Минулого] dddd [').call(this);\n }\n },\n sameElse: 'L'\n },\n relativeTime : {\n future : 'за %s',\n past : '%s тому',\n s : 'декілька секунд',\n ss : relativeTimeWithPlural,\n m : relativeTimeWithPlural,\n mm : relativeTimeWithPlural,\n h : 'годину',\n hh : relativeTimeWithPlural,\n d : 'день',\n dd : relativeTimeWithPlural,\n M : 'місяць',\n MM : relativeTimeWithPlural,\n y : 'рік',\n yy : relativeTimeWithPlural\n },\n // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n meridiemParse: /ночі|ранку|дня|вечора/,\n isPM: function (input) {\n return /^(дня|вечора)$/.test(input);\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночі';\n } else if (hour < 12) {\n return 'ранку';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечора';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return number + '-й';\n case 'D':\n return number + '-го';\n default:\n return number;\n }\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return uk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var months = [\n 'جنوری',\n 'فروری',\n 'مارچ',\n 'اپریل',\n 'مئی',\n 'جون',\n 'جولائی',\n 'اگست',\n 'ستمبر',\n 'اکتوبر',\n 'نومبر',\n 'دسمبر'\n ];\n var days = [\n 'اتوار',\n 'پیر',\n 'منگل',\n 'بدھ',\n 'جمعرات',\n 'جمعہ',\n 'ہفتہ'\n ];\n\n var ur = moment.defineLocale('ur', {\n months : months,\n monthsShort : months,\n weekdays : days,\n weekdaysShort : days,\n weekdaysMin : days,\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd، D MMMM YYYY HH:mm'\n },\n meridiemParse: /صبح|شام/,\n isPM : function (input) {\n return 'شام' === input;\n },\n meridiem : function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar : {\n sameDay : '[آج بوقت] LT',\n nextDay : '[کل بوقت] LT',\n nextWeek : 'dddd [بوقت] LT',\n lastDay : '[گذشتہ روز بوقت] LT',\n lastWeek : '[گذشتہ] dddd [بوقت] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : '%s بعد',\n past : '%s قبل',\n s : 'چند سیکنڈ',\n ss : '%d سیکنڈ',\n m : 'ایک منٹ',\n mm : '%d منٹ',\n h : 'ایک گھنٹہ',\n hh : '%d گھنٹے',\n d : 'ایک دن',\n dd : '%d دن',\n M : 'ایک ماہ',\n MM : '%d ماہ',\n y : 'ایک سال',\n yy : '%d سال'\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return ur;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var uz = moment.defineLocale('uz', {\n months : 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split('_'),\n monthsShort : 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays : 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),\n weekdaysShort : 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),\n weekdaysMin : 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'D MMMM YYYY, dddd HH:mm'\n },\n calendar : {\n sameDay : '[Бугун соат] LT [да]',\n nextDay : '[Эртага] LT [да]',\n nextWeek : 'dddd [куни соат] LT [да]',\n lastDay : '[Кеча соат] LT [да]',\n lastWeek : '[Утган] dddd [куни соат] LT [да]',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'Якин %s ичида',\n past : 'Бир неча %s олдин',\n s : 'фурсат',\n ss : '%d фурсат',\n m : 'бир дакика',\n mm : '%d дакика',\n h : 'бир соат',\n hh : '%d соат',\n d : 'бир кун',\n dd : '%d кун',\n M : 'бир ой',\n MM : '%d ой',\n y : 'бир йил',\n yy : '%d йил'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return uz;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var uzLatn = moment.defineLocale('uz-latn', {\n months : 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split('_'),\n monthsShort : 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),\n weekdays : 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split('_'),\n weekdaysShort : 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),\n weekdaysMin : 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'D MMMM YYYY, dddd HH:mm'\n },\n calendar : {\n sameDay : '[Bugun soat] LT [da]',\n nextDay : '[Ertaga] LT [da]',\n nextWeek : 'dddd [kuni soat] LT [da]',\n lastDay : '[Kecha soat] LT [da]',\n lastWeek : '[O\\'tgan] dddd [kuni soat] LT [da]',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'Yaqin %s ichida',\n past : 'Bir necha %s oldin',\n s : 'soniya',\n ss : '%d soniya',\n m : 'bir daqiqa',\n mm : '%d daqiqa',\n h : 'bir soat',\n hh : '%d soat',\n d : 'bir kun',\n dd : '%d kun',\n M : 'bir oy',\n MM : '%d oy',\n y : 'bir yil',\n yy : '%d yil'\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 7 // The week that contains Jan 7th is the first week of the year.\n }\n });\n\n return uzLatn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var vi = moment.defineLocale('vi', {\n months : 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split('_'),\n monthsShort : 'Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12'.split('_'),\n monthsParseExact : true,\n weekdays : 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split('_'),\n weekdaysShort : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysParseExact : true,\n meridiemParse: /sa|ch/i,\n isPM : function (input) {\n return /^ch$/i.test(input);\n },\n meridiem : function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'sa' : 'SA';\n } else {\n return isLower ? 'ch' : 'CH';\n }\n },\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM [năm] YYYY',\n LLL : 'D MMMM [năm] YYYY HH:mm',\n LLLL : 'dddd, D MMMM [năm] YYYY HH:mm',\n l : 'DD/M/YYYY',\n ll : 'D MMM YYYY',\n lll : 'D MMM YYYY HH:mm',\n llll : 'ddd, D MMM YYYY HH:mm'\n },\n calendar : {\n sameDay: '[Hôm nay lúc] LT',\n nextDay: '[Ngày mai lúc] LT',\n nextWeek: 'dddd [tuần tới lúc] LT',\n lastDay: '[Hôm qua lúc] LT',\n lastWeek: 'dddd [tuần rồi lúc] LT',\n sameElse: 'L'\n },\n relativeTime : {\n future : '%s tới',\n past : '%s trước',\n s : 'vài giây',\n ss : '%d giây' ,\n m : 'một phút',\n mm : '%d phút',\n h : 'một giờ',\n hh : '%d giờ',\n d : 'một ngày',\n dd : '%d ngày',\n M : 'một tháng',\n MM : '%d tháng',\n y : 'một năm',\n yy : '%d năm'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal : function (number) {\n return number;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return vi;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var xPseudo = moment.defineLocale('x-pseudo', {\n months : 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split('_'),\n monthsShort : 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split('_'),\n monthsParseExact : true,\n weekdays : 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split('_'),\n weekdaysShort : 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'),\n weekdaysMin : 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),\n weekdaysParseExact : true,\n longDateFormat : {\n LT : 'HH:mm',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY HH:mm',\n LLLL : 'dddd, D MMMM YYYY HH:mm'\n },\n calendar : {\n sameDay : '[T~ódá~ý át] LT',\n nextDay : '[T~ómó~rró~w át] LT',\n nextWeek : 'dddd [át] LT',\n lastDay : '[Ý~ést~érdá~ý át] LT',\n lastWeek : '[L~ást] dddd [át] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'í~ñ %s',\n past : '%s á~gó',\n s : 'á ~féw ~sécó~ñds',\n ss : '%d s~écóñ~ds',\n m : 'á ~míñ~úté',\n mm : '%d m~íñú~tés',\n h : 'á~ñ hó~úr',\n hh : '%d h~óúrs',\n d : 'á ~dáý',\n dd : '%d d~áýs',\n M : 'á ~móñ~th',\n MM : '%d m~óñt~hs',\n y : 'á ~ýéár',\n yy : '%d ý~éárs'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n },\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return xPseudo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var yo = moment.defineLocale('yo', {\n months : 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split('_'),\n monthsShort : 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'),\n weekdays : 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'),\n weekdaysShort : 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'),\n weekdaysMin : 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'),\n longDateFormat : {\n LT : 'h:mm A',\n LTS : 'h:mm:ss A',\n L : 'DD/MM/YYYY',\n LL : 'D MMMM YYYY',\n LLL : 'D MMMM YYYY h:mm A',\n LLLL : 'dddd, D MMMM YYYY h:mm A'\n },\n calendar : {\n sameDay : '[Ònì ni] LT',\n nextDay : '[Ọ̀la ni] LT',\n nextWeek : 'dddd [Ọsẹ̀ tón\\'bọ] [ni] LT',\n lastDay : '[Àna ni] LT',\n lastWeek : 'dddd [Ọsẹ̀ tólọ́] [ni] LT',\n sameElse : 'L'\n },\n relativeTime : {\n future : 'ní %s',\n past : '%s kọjá',\n s : 'ìsẹjú aayá die',\n ss :'aayá %d',\n m : 'ìsẹjú kan',\n mm : 'ìsẹjú %d',\n h : 'wákati kan',\n hh : 'wákati %d',\n d : 'ọjọ́ kan',\n dd : 'ọjọ́ %d',\n M : 'osù kan',\n MM : 'osù %d',\n y : 'ọdún kan',\n yy : 'ọdún %d'\n },\n dayOfMonthOrdinalParse : /ọjọ́\\s\\d{1,2}/,\n ordinal : 'ọjọ́ %d',\n week : {\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return yo;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var zhCn = moment.defineLocale('zh-cn', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort : '周日_周一_周二_周三_周四_周五_周六'.split('_'),\n weekdaysMin : '日_一_二_三_四_五_六'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日Ah点mm分',\n LLLL : 'YYYY年M月D日ddddAh点mm分',\n l : 'YYYY/M/D',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日dddd HH:mm'\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' ||\n meridiem === '上午') {\n return hour;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n } else {\n // '中午'\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar : {\n sameDay : '[今天]LT',\n nextDay : '[明天]LT',\n nextWeek : '[下]ddddLT',\n lastDay : '[昨天]LT',\n lastWeek : '[上]ddddLT',\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|周)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '周';\n default:\n return number;\n }\n },\n relativeTime : {\n future : '%s内',\n past : '%s前',\n s : '几秒',\n ss : '%d 秒',\n m : '1 分钟',\n mm : '%d 分钟',\n h : '1 小时',\n hh : '%d 小时',\n d : '1 天',\n dd : '%d 天',\n M : '1 个月',\n MM : '%d 个月',\n y : '1 年',\n yy : '%d 年'\n },\n week : {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow : 1, // Monday is the first day of the week.\n doy : 4 // The week that contains Jan 4th is the first week of the year.\n }\n });\n\n return zhCn;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var zhHk = moment.defineLocale('zh-hk', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort : '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin : '日_一_二_三_四_五_六'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日 HH:mm',\n LLLL : 'YYYY年M月D日dddd HH:mm',\n l : 'YYYY/M/D',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日dddd HH:mm'\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar : {\n sameDay : '[今天]LT',\n nextDay : '[明天]LT',\n nextWeek : '[下]ddddLT',\n lastDay : '[昨天]LT',\n lastWeek : '[上]ddddLT',\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd' :\n case 'D' :\n case 'DDD' :\n return number + '日';\n case 'M' :\n return number + '月';\n case 'w' :\n case 'W' :\n return number + '週';\n default :\n return number;\n }\n },\n relativeTime : {\n future : '%s內',\n past : '%s前',\n s : '幾秒',\n ss : '%d 秒',\n m : '1 分鐘',\n mm : '%d 分鐘',\n h : '1 小時',\n hh : '%d 小時',\n d : '1 天',\n dd : '%d 天',\n M : '1 個月',\n MM : '%d 個月',\n y : '1 年',\n yy : '%d 年'\n }\n });\n\n return zhHk;\n\n})));\n","//! moment.js locale configuration\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n\n var zhTw = moment.defineLocale('zh-tw', {\n months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),\n monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort : '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin : '日_一_二_三_四_五_六'.split('_'),\n longDateFormat : {\n LT : 'HH:mm',\n LTS : 'HH:mm:ss',\n L : 'YYYY/MM/DD',\n LL : 'YYYY年M月D日',\n LLL : 'YYYY年M月D日 HH:mm',\n LLLL : 'YYYY年M月D日dddd HH:mm',\n l : 'YYYY/M/D',\n ll : 'YYYY年M月D日',\n lll : 'YYYY年M月D日 HH:mm',\n llll : 'YYYY年M月D日dddd HH:mm'\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour : function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem : function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar : {\n sameDay : '[今天] LT',\n nextDay : '[明天] LT',\n nextWeek : '[下]dddd LT',\n lastDay : '[昨天] LT',\n lastWeek : '[上]dddd LT',\n sameElse : 'L'\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal : function (number, period) {\n switch (period) {\n case 'd' :\n case 'D' :\n case 'DDD' :\n return number + '日';\n case 'M' :\n return number + '月';\n case 'w' :\n case 'W' :\n return number + '週';\n default :\n return number;\n }\n },\n relativeTime : {\n future : '%s內',\n past : '%s前',\n s : '幾秒',\n ss : '%d 秒',\n m : '1 分鐘',\n mm : '%d 分鐘',\n h : '1 小時',\n hh : '%d 小時',\n d : '1 天',\n dd : '%d 天',\n M : '1 個月',\n MM : '%d 個月',\n y : '1 年',\n yy : '%d 年'\n }\n });\n\n return zhTw;\n\n})));\n","!function(a,n){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define([],n):\"object\"==typeof exports?exports.NextcloudMoment=n():a.NextcloudMoment=n()}(window,(function(){return function(a){var n={};function e(s){if(n[s])return n[s].exports;var t=n[s]={i:s,l:!1,exports:{}};return a[s].call(t.exports,t,t.exports,e),t.l=!0,t.exports}return e.m=a,e.c=n,e.d=function(a,n,s){e.o(a,n)||Object.defineProperty(a,n,{enumerable:!0,get:s})},e.r=function(a){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(a,\"__esModule\",{value:!0})},e.t=function(a,n){if(1&n&&(a=e(a)),8&n)return a;if(4&n&&\"object\"==typeof a&&a&&a.__esModule)return a;var s=Object.create(null);if(e.r(s),Object.defineProperty(s,\"default\",{enumerable:!0,value:a}),2&n&&\"string\"!=typeof a)for(var t in a)e.d(s,t,function(n){return a[n]}.bind(null,t));return s},e.n=function(a){var n=a&&a.__esModule?function(){return a.default}:function(){return a};return e.d(n,\"a\",n),n},e.o=function(a,n){return Object.prototype.hasOwnProperty.call(a,n)},e.p=\"\",e(e.s=3)}([function(a,n){a.exports=require(\"moment\")},function(a,n){a.exports=require(\"node-gettext\")},function(a,n){a.exports=require(\"@nextcloud/l10n\")},function(a,n,e){\"use strict\";e.r(n);var s=e(0),t=e.n(s),r=e(1),l=e.n(r),o=e(2),m=new l.a,u=Object(o.getLocale)();[{locale:\"ast\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"enolp <enolp@softastur.org>, 2020\",\"Language-Team\":\"Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ast\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nenolp <enolp@softastur.org>, 2020\\n\"},msgstr:[\"Last-Translator: enolp <enolp@softastur.org>, 2020\\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"cs_CZ\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Pavel Borecki <pavel.borecki@gmail.com>, 2020\",\"Language-Team\":\"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"cs_CZ\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekund\"]}}}}},{locale:\"da\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\",\"Language-Team\":\"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"da\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nHenrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\\n\"},msgstr:[\"Last-Translator: Henrik Troels-Hansen <henrik@troels-hansen.dk>, 2020\\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunder\"]}}}}},{locale:\"de_DE\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Christoph Wurst <christoph@winzerhof-wurst.at>, 2020\",\"Language-Team\":\"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"de_DE\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nChristoph Wurst <christoph@winzerhof-wurst.at>, 2020\\n\"},msgstr:[\"Last-Translator: Christoph Wurst <christoph@winzerhof-wurst.at>, 2020\\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"Sekunden\"]}}}}},{locale:\"el\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"GRMarksman <alexakos01@gmail.com>, 2020\",\"Language-Team\":\"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"el\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nGRMarksman <alexakos01@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: GRMarksman <alexakos01@gmail.com>, 2020\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"δευτερόλεπτα\"]}}}}},{locale:\"en_GB\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\",\"Language-Team\":\"English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"en_GB\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\nLanguage-Team: English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"seconds\"]}}}}},{locale:\"es\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Javier San Juan <javier.sj@trantor.es>, 2020\",\"Language-Team\":\"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"es\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJavier San Juan <javier.sj@trantor.es>, 2020\\n\"},msgstr:[\"Last-Translator: Javier San Juan <javier.sj@trantor.es>, 2020\\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"eu\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\",\"Language-Team\":\"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"eu\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAsier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundo\"]}}}}},{locale:\"fr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Yoplala <yoplala@pataraphe.net>, 2020\",\"Language-Team\":\"French (https://www.transifex.com/nextcloud/teams/64236/fr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"fr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYoplala <yoplala@pataraphe.net>, 2020\\n\"},msgstr:[\"Last-Translator: Yoplala <yoplala@pataraphe.net>, 2020\\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"secondes\"]}}}}},{locale:\"gl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\",\"Language-Team\":\"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"gl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"he\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Yaron Shahrabani <sh.yaron@gmail.com>, 2020\",\"Language-Team\":\"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"he\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYaron Shahrabani <sh.yaron@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>, 2020\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"שניות\"]}}}}},{locale:\"hu_HU\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Balázs Meskó <meskobalazs@gmail.com>, 2020\",\"Language-Team\":\"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"hu_HU\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nBalázs Meskó <meskobalazs@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Balázs Meskó <meskobalazs@gmail.com>, 2020\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"másodperc\"]}}}}},{locale:\"is\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Sveinn í Felli <sv1@fellsnet.is>, 2020\",\"Language-Team\":\"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"is\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nSveinn í Felli <sv1@fellsnet.is>, 2020\\n\"},msgstr:[\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2020\\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekúndur\"]}}}}},{locale:\"it\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Random_R, 2020\",\"Language-Team\":\"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"it\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nRandom_R, 2020\\n\"},msgstr:[\"Last-Translator: Random_R, 2020\\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"secondi\"]}}}}},{locale:\"ja_JP\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"YANO Tetsu <tetuyano+transi@gmail.com>, 2020\",\"Language-Team\":\"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ja_JP\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYANO Tetsu <tetuyano+transi@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: YANO Tetsu <tetuyano+transi@gmail.com>, 2020\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}},{locale:\"lt_LT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Moo, 2020\",\"Language-Team\":\"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lt_LT\",\"Plural-Forms\":\"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMoo, 2020\\n\"},msgstr:[\"Last-Translator: Moo, 2020\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sek.\"]}}}}},{locale:\"lv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"stendec <stendec@inbox.lv>, 2020\",\"Language-Team\":\"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lv\",\"Plural-Forms\":\"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nstendec <stendec@inbox.lv>, 2020\\n\"},msgstr:[\"Last-Translator: stendec <stendec@inbox.lv>, 2020\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundes\"]}}}}},{locale:\"mk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Сашко Тодоров, 2020\",\"Language-Team\":\"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"mk\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nСашко Тодоров, 2020\\n\"},msgstr:[\"Last-Translator: Сашко Тодоров, 2020\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунди\"]}}}}},{locale:\"nl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Roeland Jago Douma <roeland@famdouma.nl>, 2020\",\"Language-Team\":\"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"nl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nRoeland Jago Douma <roeland@famdouma.nl>, 2020\\n\"},msgstr:[\"Last-Translator: Roeland Jago Douma <roeland@famdouma.nl>, 2020\\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"seconden\"]}}}}},{locale:\"oc\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Quentin PAGÈS, 2020\",\"Language-Team\":\"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"oc\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nQuentin PAGÈS, 2020\\n\"},msgstr:[\"Last-Translator: Quentin PAGÈS, 2020\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segondas\"]}}}}},{locale:\"pl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\",\"Language-Team\":\"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pl\",\"Plural-Forms\":\"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJanusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\\n\"},msgstr:[\"Last-Translator: Janusz Gwiazda <j.gwiazda@gwiazdaelektronika.eu>, 2020\\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundy\"]}}}}},{locale:\"pt_BR\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"André Marcelo Alvarenga <alvarenga@kde.org>, 2020\",\"Language-Team\":\"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_BR\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAndré Marcelo Alvarenga <alvarenga@kde.org>, 2020\\n\"},msgstr:[\"Last-Translator: André Marcelo Alvarenga <alvarenga@kde.org>, 2020\\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"pt_PT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"fpapoila <fpapoila@gmail.com>, 2020\",\"Language-Team\":\"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_PT\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nfpapoila <fpapoila@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: fpapoila <fpapoila@gmail.com>, 2020\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"ru\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Игорь Бондаренко <garbond@yandex.ru>, 2020\",\"Language-Team\":\"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ru\",\"Plural-Forms\":\"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nИгорь Бондаренко <garbond@yandex.ru>, 2020\\n\"},msgstr:[\"Last-Translator: Игорь Бондаренко <garbond@yandex.ru>, 2020\\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунды\"]}}}}},{locale:\"sq\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Greta, 2020\",\"Language-Team\":\"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sq\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nGreta, 2020\\n\"},msgstr:[\"Last-Translator: Greta, 2020\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekonda\"]}}}}},{locale:\"sr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Slobodan Simić <slsimic@gmail.com>, 2020\",\"Language-Team\":\"Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sr\",\"Plural-Forms\":\"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nSlobodan Simić <slsimic@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Slobodan Simić <slsimic@gmail.com>, 2020\\nLanguage-Team: Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунде\"]}}}}},{locale:\"sv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Magnus Höglund, 2020\",\"Language-Team\":\"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sv\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMagnus Höglund, 2020\\n\"},msgstr:[\"Last-Translator: Magnus Höglund, 2020\\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunder\"]}}}}},{locale:\"tr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\",\"Language-Team\":\"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"tr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nHüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\\n\"},msgstr:[\"Last-Translator: Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"saniye\"]}}}}},{locale:\"uk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\",\"Language-Team\":\"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"uk\",\"Plural-Forms\":\"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунди\"]}}}}},{locale:\"zh_CN\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Jay Guo <jayguo921@gmail.com>, 2020\",\"Language-Team\":\"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_CN\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJay Guo <jayguo921@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Jay Guo <jayguo921@gmail.com>, 2020\\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}},{locale:\"zh_TW\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Jim Tsai <poormusic2001@gmail.com>, 2020\",\"Language-Team\":\"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_TW\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJim Tsai <poormusic2001@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Jim Tsai <poormusic2001@gmail.com>, 2020\\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}}].map((function(a){m.addTranslations(a.locale,\"messages\",a.json)})),m.setLocale(u),t.a.locale(u),t.a.updateLocale(t.a.locale(),{parentLocale:t.a.locale(),relativeTime:Object.assign(t.a.localeData(t.a.locale())._relativeTime,{s:m.gettext(\"seconds\")})}),n.default=t.a}])}));\n//# sourceMappingURL=index.js.map","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code\n };\n };\n return error;\n};\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"<scheme>://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"getRequestToken\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.getRequestToken;\n }\n});\nObject.defineProperty(exports, \"onRequestTokenUpdate\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.onRequestTokenUpdate;\n }\n});\nObject.defineProperty(exports, \"getCurrentUser\", {\n enumerable: true,\n get: function get() {\n return _user.getCurrentUser;\n }\n});\n\nvar _requesttoken = require(\"./requesttoken\");\n\nvar _user = require(\"./user\");\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRequestToken = getRequestToken;\nexports.onRequestTokenUpdate = onRequestTokenUpdate;\n\nvar _eventBus = require(\"@nextcloud/event-bus\");\n\nvar tokenElement = document.getElementsByTagName('head')[0];\nvar token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\nvar observers = [];\n\nfunction getRequestToken() {\n return token;\n}\n\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n} // Listen to server event and keep token in sync\n\n\n(0, _eventBus.subscribe)('csrf-token-update', function (e) {\n token = e.token;\n observers.forEach(function (observer) {\n try {\n observer(e.token);\n } catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n//# sourceMappingURL=requesttoken.js.map","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ProxyBus = void 0;\n\nvar _semver = _interopRequireDefault(require(\"semver\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.1.4\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^6.2.1\",\n \"core-js\": \"^3.6.2\",\n semver: \"^6.3.0\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^25.1.0\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^25.1.0\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar ProxyBus = /*#__PURE__*/function () {\n function ProxyBus(bus) {\n _classCallCheck(this, ProxyBus);\n\n _defineProperty(this, \"bus\", void 0);\n\n if (typeof bus.getVersion !== 'function' || !_semver.default.valid(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n } else if (_semver.default.major(bus.getVersion()) !== _semver.default.major(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n\n this.bus = bus;\n }\n\n _createClass(ProxyBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n this.bus.emit(name, event);\n }\n }]);\n\n return ProxyBus;\n}();\n\nexports.ProxyBus = ProxyBus;\n//# sourceMappingURL=ProxyBus.js.map","exports = module.exports = SemVer\n\nvar debug\n/* istanbul ignore next */\nif (typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)) {\n debug = function () {\n var args = Array.prototype.slice.call(arguments, 0)\n args.unshift('SEMVER')\n console.log.apply(console, args)\n }\n} else {\n debug = function () {}\n}\n\n// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nexports.SEMVER_SPEC_VERSION = '2.0.0'\n\nvar MAX_LENGTH = 256\nvar MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n /* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nvar MAX_SAFE_COMPONENT_LENGTH = 16\n\n// The actual regexps go on exports.re\nvar re = exports.re = []\nvar src = exports.src = []\nvar t = exports.tokens = {}\nvar R = 0\n\nfunction tok (n) {\n t[n] = R++\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ntok('NUMERICIDENTIFIER')\nsrc[t.NUMERICIDENTIFIER] = '0|[1-9]\\\\d*'\ntok('NUMERICIDENTIFIERLOOSE')\nsrc[t.NUMERICIDENTIFIERLOOSE] = '[0-9]+'\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ntok('NONNUMERICIDENTIFIER')\nsrc[t.NONNUMERICIDENTIFIER] = '\\\\d*[a-zA-Z-][a-zA-Z0-9-]*'\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ntok('MAINVERSION')\nsrc[t.MAINVERSION] = '(' + src[t.NUMERICIDENTIFIER] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIER] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIER] + ')'\n\ntok('MAINVERSIONLOOSE')\nsrc[t.MAINVERSIONLOOSE] = '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')\\\\.' +\n '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')'\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n\ntok('PRERELEASEIDENTIFIER')\nsrc[t.PRERELEASEIDENTIFIER] = '(?:' + src[t.NUMERICIDENTIFIER] +\n '|' + src[t.NONNUMERICIDENTIFIER] + ')'\n\ntok('PRERELEASEIDENTIFIERLOOSE')\nsrc[t.PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[t.NUMERICIDENTIFIERLOOSE] +\n '|' + src[t.NONNUMERICIDENTIFIER] + ')'\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ntok('PRERELEASE')\nsrc[t.PRERELEASE] = '(?:-(' + src[t.PRERELEASEIDENTIFIER] +\n '(?:\\\\.' + src[t.PRERELEASEIDENTIFIER] + ')*))'\n\ntok('PRERELEASELOOSE')\nsrc[t.PRERELEASELOOSE] = '(?:-?(' + src[t.PRERELEASEIDENTIFIERLOOSE] +\n '(?:\\\\.' + src[t.PRERELEASEIDENTIFIERLOOSE] + ')*))'\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ntok('BUILDIDENTIFIER')\nsrc[t.BUILDIDENTIFIER] = '[0-9A-Za-z-]+'\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ntok('BUILD')\nsrc[t.BUILD] = '(?:\\\\+(' + src[t.BUILDIDENTIFIER] +\n '(?:\\\\.' + src[t.BUILDIDENTIFIER] + ')*))'\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ntok('FULL')\ntok('FULLPLAIN')\nsrc[t.FULLPLAIN] = 'v?' + src[t.MAINVERSION] +\n src[t.PRERELEASE] + '?' +\n src[t.BUILD] + '?'\n\nsrc[t.FULL] = '^' + src[t.FULLPLAIN] + '$'\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ntok('LOOSEPLAIN')\nsrc[t.LOOSEPLAIN] = '[v=\\\\s]*' + src[t.MAINVERSIONLOOSE] +\n src[t.PRERELEASELOOSE] + '?' +\n src[t.BUILD] + '?'\n\ntok('LOOSE')\nsrc[t.LOOSE] = '^' + src[t.LOOSEPLAIN] + '$'\n\ntok('GTLT')\nsrc[t.GTLT] = '((?:<|>)?=?)'\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\ntok('XRANGEIDENTIFIERLOOSE')\nsrc[t.XRANGEIDENTIFIERLOOSE] = src[t.NUMERICIDENTIFIERLOOSE] + '|x|X|\\\\*'\ntok('XRANGEIDENTIFIER')\nsrc[t.XRANGEIDENTIFIER] = src[t.NUMERICIDENTIFIER] + '|x|X|\\\\*'\n\ntok('XRANGEPLAIN')\nsrc[t.XRANGEPLAIN] = '[v=\\\\s]*(' + src[t.XRANGEIDENTIFIER] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIER] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIER] + ')' +\n '(?:' + src[t.PRERELEASE] + ')?' +\n src[t.BUILD] + '?' +\n ')?)?'\n\ntok('XRANGEPLAINLOOSE')\nsrc[t.XRANGEPLAINLOOSE] = '[v=\\\\s]*(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +\n '(?:\\\\.(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +\n '(?:' + src[t.PRERELEASELOOSE] + ')?' +\n src[t.BUILD] + '?' +\n ')?)?'\n\ntok('XRANGE')\nsrc[t.XRANGE] = '^' + src[t.GTLT] + '\\\\s*' + src[t.XRANGEPLAIN] + '$'\ntok('XRANGELOOSE')\nsrc[t.XRANGELOOSE] = '^' + src[t.GTLT] + '\\\\s*' + src[t.XRANGEPLAINLOOSE] + '$'\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ntok('COERCE')\nsrc[t.COERCE] = '(^|[^\\\\d])' +\n '(\\\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '})' +\n '(?:\\\\.(\\\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +\n '(?:\\\\.(\\\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +\n '(?:$|[^\\\\d])'\ntok('COERCERTL')\nre[t.COERCERTL] = new RegExp(src[t.COERCE], 'g')\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ntok('LONETILDE')\nsrc[t.LONETILDE] = '(?:~>?)'\n\ntok('TILDETRIM')\nsrc[t.TILDETRIM] = '(\\\\s*)' + src[t.LONETILDE] + '\\\\s+'\nre[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], 'g')\nvar tildeTrimReplace = '$1~'\n\ntok('TILDE')\nsrc[t.TILDE] = '^' + src[t.LONETILDE] + src[t.XRANGEPLAIN] + '$'\ntok('TILDELOOSE')\nsrc[t.TILDELOOSE] = '^' + src[t.LONETILDE] + src[t.XRANGEPLAINLOOSE] + '$'\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ntok('LONECARET')\nsrc[t.LONECARET] = '(?:\\\\^)'\n\ntok('CARETTRIM')\nsrc[t.CARETTRIM] = '(\\\\s*)' + src[t.LONECARET] + '\\\\s+'\nre[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], 'g')\nvar caretTrimReplace = '$1^'\n\ntok('CARET')\nsrc[t.CARET] = '^' + src[t.LONECARET] + src[t.XRANGEPLAIN] + '$'\ntok('CARETLOOSE')\nsrc[t.CARETLOOSE] = '^' + src[t.LONECARET] + src[t.XRANGEPLAINLOOSE] + '$'\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ntok('COMPARATORLOOSE')\nsrc[t.COMPARATORLOOSE] = '^' + src[t.GTLT] + '\\\\s*(' + src[t.LOOSEPLAIN] + ')$|^$'\ntok('COMPARATOR')\nsrc[t.COMPARATOR] = '^' + src[t.GTLT] + '\\\\s*(' + src[t.FULLPLAIN] + ')$|^$'\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ntok('COMPARATORTRIM')\nsrc[t.COMPARATORTRIM] = '(\\\\s*)' + src[t.GTLT] +\n '\\\\s*(' + src[t.LOOSEPLAIN] + '|' + src[t.XRANGEPLAIN] + ')'\n\n// this one has to use the /g flag\nre[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], 'g')\nvar comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ntok('HYPHENRANGE')\nsrc[t.HYPHENRANGE] = '^\\\\s*(' + src[t.XRANGEPLAIN] + ')' +\n '\\\\s+-\\\\s+' +\n '(' + src[t.XRANGEPLAIN] + ')' +\n '\\\\s*$'\n\ntok('HYPHENRANGELOOSE')\nsrc[t.HYPHENRANGELOOSE] = '^\\\\s*(' + src[t.XRANGEPLAINLOOSE] + ')' +\n '\\\\s+-\\\\s+' +\n '(' + src[t.XRANGEPLAINLOOSE] + ')' +\n '\\\\s*$'\n\n// Star ranges basically just allow anything at all.\ntok('STAR')\nsrc[t.STAR] = '(<|>)?=?\\\\s*\\\\*'\n\n// Compile to actual regexp objects.\n// All are flag-free, unless they were created above with a flag.\nfor (var i = 0; i < R; i++) {\n debug(i, src[i])\n if (!re[i]) {\n re[i] = new RegExp(src[i])\n }\n}\n\nexports.parse = parse\nfunction parse (version, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n if (version.length > MAX_LENGTH) {\n return null\n }\n\n var r = options.loose ? re[t.LOOSE] : re[t.FULL]\n if (!r.test(version)) {\n return null\n }\n\n try {\n return new SemVer(version, options)\n } catch (er) {\n return null\n }\n}\n\nexports.valid = valid\nfunction valid (version, options) {\n var v = parse(version, options)\n return v ? v.version : null\n}\n\nexports.clean = clean\nfunction clean (version, options) {\n var s = parse(version.trim().replace(/^[=v]+/, ''), options)\n return s ? s.version : null\n}\n\nexports.SemVer = SemVer\n\nfunction SemVer (version, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n if (version instanceof SemVer) {\n if (version.loose === options.loose) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError('Invalid Version: ' + version)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')\n }\n\n if (!(this instanceof SemVer)) {\n return new SemVer(version, options)\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n\n var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError('Invalid Version: ' + version)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map(function (id) {\n if (/^[0-9]+$/.test(id)) {\n var num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n}\n\nSemVer.prototype.format = function () {\n this.version = this.major + '.' + this.minor + '.' + this.patch\n if (this.prerelease.length) {\n this.version += '-' + this.prerelease.join('.')\n }\n return this.version\n}\n\nSemVer.prototype.toString = function () {\n return this.version\n}\n\nSemVer.prototype.compare = function (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return this.compareMain(other) || this.comparePre(other)\n}\n\nSemVer.prototype.compareMain = function (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return compareIdentifiers(this.major, other.major) ||\n compareIdentifiers(this.minor, other.minor) ||\n compareIdentifiers(this.patch, other.patch)\n}\n\nSemVer.prototype.comparePre = function (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n var i = 0\n do {\n var a = this.prerelease[i]\n var b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n}\n\nSemVer.prototype.compareBuild = function (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n var i = 0\n do {\n var a = this.build[i]\n var b = other.build[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n}\n\n// preminor will bump the version up to the next minor release, and immediately\n// down to pre-release. premajor and prepatch work the same way.\nSemVer.prototype.inc = function (release, identifier) {\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier)\n this.inc('pre', identifier)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier)\n }\n this.inc('pre', identifier)\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 \"pre\" would become 1.0.0-0 which is the wrong direction.\n case 'pre':\n if (this.prerelease.length === 0) {\n this.prerelease = [0]\n } else {\n var i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n this.prerelease.push(0)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n if (this.prerelease[0] === identifier) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = [identifier, 0]\n }\n } else {\n this.prerelease = [identifier, 0]\n }\n }\n break\n\n default:\n throw new Error('invalid increment argument: ' + release)\n }\n this.format()\n this.raw = this.version\n return this\n}\n\nexports.inc = inc\nfunction inc (version, release, loose, identifier) {\n if (typeof (loose) === 'string') {\n identifier = loose\n loose = undefined\n }\n\n try {\n return new SemVer(version, loose).inc(release, identifier).version\n } catch (er) {\n return null\n }\n}\n\nexports.diff = diff\nfunction diff (version1, version2) {\n if (eq(version1, version2)) {\n return null\n } else {\n var v1 = parse(version1)\n var v2 = parse(version2)\n var prefix = ''\n if (v1.prerelease.length || v2.prerelease.length) {\n prefix = 'pre'\n var defaultResult = 'prerelease'\n }\n for (var key in v1) {\n if (key === 'major' || key === 'minor' || key === 'patch') {\n if (v1[key] !== v2[key]) {\n return prefix + key\n }\n }\n }\n return defaultResult // may be undefined\n }\n}\n\nexports.compareIdentifiers = compareIdentifiers\n\nvar numeric = /^[0-9]+$/\nfunction compareIdentifiers (a, b) {\n var anum = numeric.test(a)\n var bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nexports.rcompareIdentifiers = rcompareIdentifiers\nfunction rcompareIdentifiers (a, b) {\n return compareIdentifiers(b, a)\n}\n\nexports.major = major\nfunction major (a, loose) {\n return new SemVer(a, loose).major\n}\n\nexports.minor = minor\nfunction minor (a, loose) {\n return new SemVer(a, loose).minor\n}\n\nexports.patch = patch\nfunction patch (a, loose) {\n return new SemVer(a, loose).patch\n}\n\nexports.compare = compare\nfunction compare (a, b, loose) {\n return new SemVer(a, loose).compare(new SemVer(b, loose))\n}\n\nexports.compareLoose = compareLoose\nfunction compareLoose (a, b) {\n return compare(a, b, true)\n}\n\nexports.compareBuild = compareBuild\nfunction compareBuild (a, b, loose) {\n var versionA = new SemVer(a, loose)\n var versionB = new SemVer(b, loose)\n return versionA.compare(versionB) || versionA.compareBuild(versionB)\n}\n\nexports.rcompare = rcompare\nfunction rcompare (a, b, loose) {\n return compare(b, a, loose)\n}\n\nexports.sort = sort\nfunction sort (list, loose) {\n return list.sort(function (a, b) {\n return exports.compareBuild(a, b, loose)\n })\n}\n\nexports.rsort = rsort\nfunction rsort (list, loose) {\n return list.sort(function (a, b) {\n return exports.compareBuild(b, a, loose)\n })\n}\n\nexports.gt = gt\nfunction gt (a, b, loose) {\n return compare(a, b, loose) > 0\n}\n\nexports.lt = lt\nfunction lt (a, b, loose) {\n return compare(a, b, loose) < 0\n}\n\nexports.eq = eq\nfunction eq (a, b, loose) {\n return compare(a, b, loose) === 0\n}\n\nexports.neq = neq\nfunction neq (a, b, loose) {\n return compare(a, b, loose) !== 0\n}\n\nexports.gte = gte\nfunction gte (a, b, loose) {\n return compare(a, b, loose) >= 0\n}\n\nexports.lte = lte\nfunction lte (a, b, loose) {\n return compare(a, b, loose) <= 0\n}\n\nexports.cmp = cmp\nfunction cmp (a, op, b, loose) {\n switch (op) {\n case '===':\n if (typeof a === 'object')\n a = a.version\n if (typeof b === 'object')\n b = b.version\n return a === b\n\n case '!==':\n if (typeof a === 'object')\n a = a.version\n if (typeof b === 'object')\n b = b.version\n return a !== b\n\n case '':\n case '=':\n case '==':\n return eq(a, b, loose)\n\n case '!=':\n return neq(a, b, loose)\n\n case '>':\n return gt(a, b, loose)\n\n case '>=':\n return gte(a, b, loose)\n\n case '<':\n return lt(a, b, loose)\n\n case '<=':\n return lte(a, b, loose)\n\n default:\n throw new TypeError('Invalid operator: ' + op)\n }\n}\n\nexports.Comparator = Comparator\nfunction Comparator (comp, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n if (comp instanceof Comparator) {\n if (comp.loose === !!options.loose) {\n return comp\n } else {\n comp = comp.value\n }\n }\n\n if (!(this instanceof Comparator)) {\n return new Comparator(comp, options)\n }\n\n debug('comparator', comp, options)\n this.options = options\n this.loose = !!options.loose\n this.parse(comp)\n\n if (this.semver === ANY) {\n this.value = ''\n } else {\n this.value = this.operator + this.semver.version\n }\n\n debug('comp', this)\n}\n\nvar ANY = {}\nComparator.prototype.parse = function (comp) {\n var r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n var m = comp.match(r)\n\n if (!m) {\n throw new TypeError('Invalid comparator: ' + comp)\n }\n\n this.operator = m[1] !== undefined ? m[1] : ''\n if (this.operator === '=') {\n this.operator = ''\n }\n\n // if it literally is just '>' or '' then allow anything.\n if (!m[2]) {\n this.semver = ANY\n } else {\n this.semver = new SemVer(m[2], this.options.loose)\n }\n}\n\nComparator.prototype.toString = function () {\n return this.value\n}\n\nComparator.prototype.test = function (version) {\n debug('Comparator.test', version, this.options.loose)\n\n if (this.semver === ANY || version === ANY) {\n return true\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n return cmp(version, this.operator, this.semver, this.options)\n}\n\nComparator.prototype.intersects = function (comp, options) {\n if (!(comp instanceof Comparator)) {\n throw new TypeError('a Comparator is required')\n }\n\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n var rangeTmp\n\n if (this.operator === '') {\n if (this.value === '') {\n return true\n }\n rangeTmp = new Range(comp.value, options)\n return satisfies(this.value, rangeTmp, options)\n } else if (comp.operator === '') {\n if (comp.value === '') {\n return true\n }\n rangeTmp = new Range(this.value, options)\n return satisfies(comp.semver, rangeTmp, options)\n }\n\n var sameDirectionIncreasing =\n (this.operator === '>=' || this.operator === '>') &&\n (comp.operator === '>=' || comp.operator === '>')\n var sameDirectionDecreasing =\n (this.operator === '<=' || this.operator === '<') &&\n (comp.operator === '<=' || comp.operator === '<')\n var sameSemVer = this.semver.version === comp.semver.version\n var differentDirectionsInclusive =\n (this.operator === '>=' || this.operator === '<=') &&\n (comp.operator === '>=' || comp.operator === '<=')\n var oppositeDirectionsLessThan =\n cmp(this.semver, '<', comp.semver, options) &&\n ((this.operator === '>=' || this.operator === '>') &&\n (comp.operator === '<=' || comp.operator === '<'))\n var oppositeDirectionsGreaterThan =\n cmp(this.semver, '>', comp.semver, options) &&\n ((this.operator === '<=' || this.operator === '<') &&\n (comp.operator === '>=' || comp.operator === '>'))\n\n return sameDirectionIncreasing || sameDirectionDecreasing ||\n (sameSemVer && differentDirectionsInclusive) ||\n oppositeDirectionsLessThan || oppositeDirectionsGreaterThan\n}\n\nexports.Range = Range\nfunction Range (range, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n if (range instanceof Range) {\n if (range.loose === !!options.loose &&\n range.includePrerelease === !!options.includePrerelease) {\n return range\n } else {\n return new Range(range.raw, options)\n }\n }\n\n if (range instanceof Comparator) {\n return new Range(range.value, options)\n }\n\n if (!(this instanceof Range)) {\n return new Range(range, options)\n }\n\n this.options = options\n this.loose = !!options.loose\n this.includePrerelease = !!options.includePrerelease\n\n // First, split based on boolean or ||\n this.raw = range\n this.set = range.split(/\\s*\\|\\|\\s*/).map(function (range) {\n return this.parseRange(range.trim())\n }, this).filter(function (c) {\n // throw out any that are not relevant for whatever reason\n return c.length\n })\n\n if (!this.set.length) {\n throw new TypeError('Invalid SemVer Range: ' + range)\n }\n\n this.format()\n}\n\nRange.prototype.format = function () {\n this.range = this.set.map(function (comps) {\n return comps.join(' ').trim()\n }).join('||').trim()\n return this.range\n}\n\nRange.prototype.toString = function () {\n return this.range\n}\n\nRange.prototype.parseRange = function (range) {\n var loose = this.options.loose\n range = range.trim()\n // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`\n var hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]\n range = range.replace(hr, hyphenReplace)\n debug('hyphen replace', range)\n // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`\n range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)\n debug('comparator trim', range, re[t.COMPARATORTRIM])\n\n // `~ 1.2.3` => `~1.2.3`\n range = range.replace(re[t.TILDETRIM], tildeTrimReplace)\n\n // `^ 1.2.3` => `^1.2.3`\n range = range.replace(re[t.CARETTRIM], caretTrimReplace)\n\n // normalize spaces\n range = range.split(/\\s+/).join(' ')\n\n // At this point, the range is completely trimmed and\n // ready to be split into comparators.\n\n var compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n var set = range.split(' ').map(function (comp) {\n return parseComparator(comp, this.options)\n }, this).join(' ').split(/\\s+/)\n if (this.options.loose) {\n // in loose mode, throw out any that are not valid comparators\n set = set.filter(function (comp) {\n return !!comp.match(compRe)\n })\n }\n set = set.map(function (comp) {\n return new Comparator(comp, this.options)\n }, this)\n\n return set\n}\n\nRange.prototype.intersects = function (range, options) {\n if (!(range instanceof Range)) {\n throw new TypeError('a Range is required')\n }\n\n return this.set.some(function (thisComparators) {\n return (\n isSatisfiable(thisComparators, options) &&\n range.set.some(function (rangeComparators) {\n return (\n isSatisfiable(rangeComparators, options) &&\n thisComparators.every(function (thisComparator) {\n return rangeComparators.every(function (rangeComparator) {\n return thisComparator.intersects(rangeComparator, options)\n })\n })\n )\n })\n )\n })\n}\n\n// take a set of comparators and determine whether there\n// exists a version which can satisfy it\nfunction isSatisfiable (comparators, options) {\n var result = true\n var remainingComparators = comparators.slice()\n var testComparator = remainingComparators.pop()\n\n while (result && remainingComparators.length) {\n result = remainingComparators.every(function (otherComparator) {\n return testComparator.intersects(otherComparator, options)\n })\n\n testComparator = remainingComparators.pop()\n }\n\n return result\n}\n\n// Mostly just for testing and legacy API reasons\nexports.toComparators = toComparators\nfunction toComparators (range, options) {\n return new Range(range, options).set.map(function (comp) {\n return comp.map(function (c) {\n return c.value\n }).join(' ').trim().split(' ')\n })\n}\n\n// comprised of xranges, tildes, stars, and gtlt's at this point.\n// already replaced the hyphen ranges\n// turn into a set of JUST comparators.\nfunction parseComparator (comp, options) {\n debug('comp', comp, options)\n comp = replaceCarets(comp, options)\n debug('caret', comp)\n comp = replaceTildes(comp, options)\n debug('tildes', comp)\n comp = replaceXRanges(comp, options)\n debug('xrange', comp)\n comp = replaceStars(comp, options)\n debug('stars', comp)\n return comp\n}\n\nfunction isX (id) {\n return !id || id.toLowerCase() === 'x' || id === '*'\n}\n\n// ~, ~> --> * (any, kinda silly)\n// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0\n// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0\n// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0\n// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0\n// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0\nfunction replaceTildes (comp, options) {\n return comp.trim().split(/\\s+/).map(function (comp) {\n return replaceTilde(comp, options)\n }).join(' ')\n}\n\nfunction replaceTilde (comp, options) {\n var r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]\n return comp.replace(r, function (_, M, m, p, pr) {\n debug('tilde', comp, _, M, m, p, pr)\n var ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'\n } else if (isX(p)) {\n // ~1.2 == >=1.2.0 <1.3.0\n ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'\n } else if (pr) {\n debug('replaceTilde pr', pr)\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + M + '.' + (+m + 1) + '.0'\n } else {\n // ~1.2.3 == >=1.2.3 <1.3.0\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + M + '.' + (+m + 1) + '.0'\n }\n\n debug('tilde return', ret)\n return ret\n })\n}\n\n// ^ --> * (any, kinda silly)\n// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0\n// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0\n// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0\n// ^1.2.3 --> >=1.2.3 <2.0.0\n// ^1.2.0 --> >=1.2.0 <2.0.0\nfunction replaceCarets (comp, options) {\n return comp.trim().split(/\\s+/).map(function (comp) {\n return replaceCaret(comp, options)\n }).join(' ')\n}\n\nfunction replaceCaret (comp, options) {\n debug('caret', comp, options)\n var r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]\n return comp.replace(r, function (_, M, m, p, pr) {\n debug('caret', comp, _, M, m, p, pr)\n var ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'\n } else if (isX(p)) {\n if (M === '0') {\n ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'\n } else {\n ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0'\n }\n } else if (pr) {\n debug('replaceCaret pr', pr)\n if (M === '0') {\n if (m === '0') {\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + M + '.' + m + '.' + (+p + 1)\n } else {\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + M + '.' + (+m + 1) + '.0'\n }\n } else {\n ret = '>=' + M + '.' + m + '.' + p + '-' + pr +\n ' <' + (+M + 1) + '.0.0'\n }\n } else {\n debug('no pr')\n if (M === '0') {\n if (m === '0') {\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + M + '.' + m + '.' + (+p + 1)\n } else {\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + M + '.' + (+m + 1) + '.0'\n }\n } else {\n ret = '>=' + M + '.' + m + '.' + p +\n ' <' + (+M + 1) + '.0.0'\n }\n }\n\n debug('caret return', ret)\n return ret\n })\n}\n\nfunction replaceXRanges (comp, options) {\n debug('replaceXRanges', comp, options)\n return comp.split(/\\s+/).map(function (comp) {\n return replaceXRange(comp, options)\n }).join(' ')\n}\n\nfunction replaceXRange (comp, options) {\n comp = comp.trim()\n var r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]\n return comp.replace(r, function (ret, gtlt, M, m, p, pr) {\n debug('xRange', comp, ret, gtlt, M, m, p, pr)\n var xM = isX(M)\n var xm = xM || isX(m)\n var xp = xm || isX(p)\n var anyX = xp\n\n if (gtlt === '=' && anyX) {\n gtlt = ''\n }\n\n // if we're including prereleases in the match, then we need\n // to fix this to -0, the lowest possible prerelease value\n pr = options.includePrerelease ? '-0' : ''\n\n if (xM) {\n if (gtlt === '>' || gtlt === '<') {\n // nothing is allowed\n ret = '<0.0.0-0'\n } else {\n // nothing is forbidden\n ret = '*'\n }\n } else if (gtlt && anyX) {\n // we know patch is an x, because we have any x at all.\n // replace X with 0\n if (xm) {\n m = 0\n }\n p = 0\n\n if (gtlt === '>') {\n // >1 => >=2.0.0\n // >1.2 => >=1.3.0\n // >1.2.3 => >= 1.2.4\n gtlt = '>='\n if (xm) {\n M = +M + 1\n m = 0\n p = 0\n } else {\n m = +m + 1\n p = 0\n }\n } else if (gtlt === '<=') {\n // <=0.7.x is actually <0.8.0, since any 0.7.x should\n // pass. Similarly, <=7.x is actually <8.0.0, etc.\n gtlt = '<'\n if (xm) {\n M = +M + 1\n } else {\n m = +m + 1\n }\n }\n\n ret = gtlt + M + '.' + m + '.' + p + pr\n } else if (xm) {\n ret = '>=' + M + '.0.0' + pr + ' <' + (+M + 1) + '.0.0' + pr\n } else if (xp) {\n ret = '>=' + M + '.' + m + '.0' + pr +\n ' <' + M + '.' + (+m + 1) + '.0' + pr\n }\n\n debug('xRange return', ret)\n\n return ret\n })\n}\n\n// Because * is AND-ed with everything else in the comparator,\n// and '' means \"any version\", just remove the *s entirely.\nfunction replaceStars (comp, options) {\n debug('replaceStars', comp, options)\n // Looseness is ignored here. star is always as loose as it gets!\n return comp.trim().replace(re[t.STAR], '')\n}\n\n// This function is passed to string.replace(re[t.HYPHENRANGE])\n// M, m, patch, prerelease, build\n// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5\n// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do\n// 1.2 - 3.4 => >=1.2.0 <3.5.0\nfunction hyphenReplace ($0,\n from, fM, fm, fp, fpr, fb,\n to, tM, tm, tp, tpr, tb) {\n if (isX(fM)) {\n from = ''\n } else if (isX(fm)) {\n from = '>=' + fM + '.0.0'\n } else if (isX(fp)) {\n from = '>=' + fM + '.' + fm + '.0'\n } else {\n from = '>=' + from\n }\n\n if (isX(tM)) {\n to = ''\n } else if (isX(tm)) {\n to = '<' + (+tM + 1) + '.0.0'\n } else if (isX(tp)) {\n to = '<' + tM + '.' + (+tm + 1) + '.0'\n } else if (tpr) {\n to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr\n } else {\n to = '<=' + to\n }\n\n return (from + ' ' + to).trim()\n}\n\n// if ANY of the sets match ALL of its comparators, then pass\nRange.prototype.test = function (version) {\n if (!version) {\n return false\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n for (var i = 0; i < this.set.length; i++) {\n if (testSet(this.set[i], version, this.options)) {\n return true\n }\n }\n return false\n}\n\nfunction testSet (set, version, options) {\n for (var i = 0; i < set.length; i++) {\n if (!set[i].test(version)) {\n return false\n }\n }\n\n if (version.prerelease.length && !options.includePrerelease) {\n // Find the set of versions that are allowed to have prereleases\n // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0\n // That should allow `1.2.3-pr.2` to pass.\n // However, `1.2.4-alpha.notready` should NOT be allowed,\n // even though it's within the range set by the comparators.\n for (i = 0; i < set.length; i++) {\n debug(set[i].semver)\n if (set[i].semver === ANY) {\n continue\n }\n\n if (set[i].semver.prerelease.length > 0) {\n var allowed = set[i].semver\n if (allowed.major === version.major &&\n allowed.minor === version.minor &&\n allowed.patch === version.patch) {\n return true\n }\n }\n }\n\n // Version has a -pre, but it's not one of the ones we like.\n return false\n }\n\n return true\n}\n\nexports.satisfies = satisfies\nfunction satisfies (version, range, options) {\n try {\n range = new Range(range, options)\n } catch (er) {\n return false\n }\n return range.test(version)\n}\n\nexports.maxSatisfying = maxSatisfying\nfunction maxSatisfying (versions, range, options) {\n var max = null\n var maxSV = null\n try {\n var rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach(function (v) {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!max || maxSV.compare(v) === -1) {\n // compare(max, v, true)\n max = v\n maxSV = new SemVer(max, options)\n }\n }\n })\n return max\n}\n\nexports.minSatisfying = minSatisfying\nfunction minSatisfying (versions, range, options) {\n var min = null\n var minSV = null\n try {\n var rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach(function (v) {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!min || minSV.compare(v) === 1) {\n // compare(min, v, true)\n min = v\n minSV = new SemVer(min, options)\n }\n }\n })\n return min\n}\n\nexports.minVersion = minVersion\nfunction minVersion (range, loose) {\n range = new Range(range, loose)\n\n var minver = new SemVer('0.0.0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = new SemVer('0.0.0-0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = null\n for (var i = 0; i < range.set.length; ++i) {\n var comparators = range.set[i]\n\n comparators.forEach(function (comparator) {\n // Clone to avoid manipulating the comparator's semver object.\n var compver = new SemVer(comparator.semver.version)\n switch (comparator.operator) {\n case '>':\n if (compver.prerelease.length === 0) {\n compver.patch++\n } else {\n compver.prerelease.push(0)\n }\n compver.raw = compver.format()\n /* fallthrough */\n case '':\n case '>=':\n if (!minver || gt(minver, compver)) {\n minver = compver\n }\n break\n case '<':\n case '<=':\n /* Ignore maximum versions */\n break\n /* istanbul ignore next */\n default:\n throw new Error('Unexpected operation: ' + comparator.operator)\n }\n })\n }\n\n if (minver && range.test(minver)) {\n return minver\n }\n\n return null\n}\n\nexports.validRange = validRange\nfunction validRange (range, options) {\n try {\n // Return '*' instead of '' so that truthiness works.\n // This will throw if it's invalid anyway\n return new Range(range, options).range || '*'\n } catch (er) {\n return null\n }\n}\n\n// Determine if version is less than all the versions possible in the range\nexports.ltr = ltr\nfunction ltr (version, range, options) {\n return outside(version, range, '<', options)\n}\n\n// Determine if version is greater than all the versions possible in the range.\nexports.gtr = gtr\nfunction gtr (version, range, options) {\n return outside(version, range, '>', options)\n}\n\nexports.outside = outside\nfunction outside (version, range, hilo, options) {\n version = new SemVer(version, options)\n range = new Range(range, options)\n\n var gtfn, ltefn, ltfn, comp, ecomp\n switch (hilo) {\n case '>':\n gtfn = gt\n ltefn = lte\n ltfn = lt\n comp = '>'\n ecomp = '>='\n break\n case '<':\n gtfn = lt\n ltefn = gte\n ltfn = gt\n comp = '<'\n ecomp = '<='\n break\n default:\n throw new TypeError('Must provide a hilo val of \"<\" or \">\"')\n }\n\n // If it satisifes the range it is not outside\n if (satisfies(version, range, options)) {\n return false\n }\n\n // From now on, variable terms are as if we're in \"gtr\" mode.\n // but note that everything is flipped for the \"ltr\" function.\n\n for (var i = 0; i < range.set.length; ++i) {\n var comparators = range.set[i]\n\n var high = null\n var low = null\n\n comparators.forEach(function (comparator) {\n if (comparator.semver === ANY) {\n comparator = new Comparator('>=0.0.0')\n }\n high = high || comparator\n low = low || comparator\n if (gtfn(comparator.semver, high.semver, options)) {\n high = comparator\n } else if (ltfn(comparator.semver, low.semver, options)) {\n low = comparator\n }\n })\n\n // If the edge version comparator has a operator then our version\n // isn't outside it\n if (high.operator === comp || high.operator === ecomp) {\n return false\n }\n\n // If the lowest version comparator has an operator and our version\n // is less than it then it isn't higher than the range\n if ((!low.operator || low.operator === comp) &&\n ltefn(version, low.semver)) {\n return false\n } else if (low.operator === ecomp && ltfn(version, low.semver)) {\n return false\n }\n }\n return true\n}\n\nexports.prerelease = prerelease\nfunction prerelease (version, options) {\n var parsed = parse(version, options)\n return (parsed && parsed.prerelease.length) ? parsed.prerelease : null\n}\n\nexports.intersects = intersects\nfunction intersects (r1, r2, options) {\n r1 = new Range(r1, options)\n r2 = new Range(r2, options)\n return r1.intersects(r2)\n}\n\nexports.coerce = coerce\nfunction coerce (version, options) {\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version === 'number') {\n version = String(version)\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n options = options || {}\n\n var match = null\n if (!options.rtl) {\n match = version.match(re[t.COERCE])\n } else {\n // Find the right-most coercible string that does not share\n // a terminus with a more left-ward coercible string.\n // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'\n //\n // Walk through the string checking with a /g regexp\n // Manually set the index so as to pick up overlapping matches.\n // Stop when we get a match that ends at the string end, since no\n // coercible string can be more right-ward without the same terminus.\n var next\n while ((next = re[t.COERCERTL].exec(version)) &&\n (!match || match.index + match[0].length !== version.length)\n ) {\n if (!match ||\n next.index + next[0].length !== match.index + match[0].length) {\n match = next\n }\n re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length\n }\n // leave it in a clean state\n re[t.COERCERTL].lastIndex = -1\n }\n\n if (match === null) {\n return null\n }\n\n return parse(match[2] +\n '.' + (match[3] || '0') +\n '.' + (match[4] || '0'), options)\n}\n","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nrequire(\"core-js/modules/es.array.iterator\");\n\nrequire(\"core-js/modules/es.map\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.string.iterator\");\n\nrequire(\"core-js/modules/web.dom-collections.for-each\");\n\nrequire(\"core-js/modules/web.dom-collections.iterator\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SimpleBus = void 0;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.1.4\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^6.2.1\",\n \"core-js\": \"^3.6.2\",\n semver: \"^6.3.0\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^25.1.0\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^25.1.0\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar SimpleBus = /*#__PURE__*/function () {\n function SimpleBus() {\n _classCallCheck(this, SimpleBus);\n\n _defineProperty(this, \"handlers\", new Map());\n }\n\n _createClass(SimpleBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) {\n return h != handler;\n }));\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n } catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n }]);\n\n return SimpleBus;\n}();\n\nexports.SimpleBus = SimpleBus;\n//# sourceMappingURL=SimpleBus.js.map","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n concat: function concat(arg) { // eslint-disable-line no-unused-vars\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.github.io/ecma262/#sec-map-objects\nmodule.exports = collection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var nativeMethod = NativePrototype[KEY];\n redefine(NativePrototype, KEY,\n KEY == 'add' ? function add(value) {\n nativeMethod.call(this, value === 0 ? 0 : value);\n return this;\n } : KEY == 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);\n } : KEY == 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : nativeMethod.call(this, key === 0 ? 0 : key);\n } : KEY == 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n nativeMethod.call(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n // eslint-disable-next-line max-len\n if (isForced(CONSTRUCTOR_NAME, typeof NativeConstructor != 'function' || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n })))) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.REQUIRED = true;\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, Constructor, CONSTRUCTOR_NAME);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, forced: Constructor != NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n typeof (NewTarget = dummy.constructor) == 'function' &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar create = require('../internals/object-create');\nvar redefineAll = require('../internals/redefine-all');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/define-iterator');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, CONSTRUCTOR_NAME);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n });\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n redefineAll(C.prototype, IS_MAP ? {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineProperty(C.prototype, 'size', {\n get: function () {\n return getInternalState(this).size;\n }\n });\n return C;\n },\n setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return { value: undefined, done: true };\n }\n // return step by kind\n if (kind == 'keys') return { value: entry.key, done: false };\n if (kind == 'values') return { value: entry.value, done: false };\n return { value: [entry.key, entry.value], done: false };\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCurrentUser = getCurrentUser;\nvar uidElement = document.getElementsByTagName('head')[0];\nvar uid = uidElement ? uidElement.getAttribute('data-user') : null;\nvar displayNameElement = document.getElementsByTagName('head')[0];\nvar displayName = displayNameElement ? displayNameElement.getAttribute('data-user-displayname') : null;\n\nfunction getCurrentUser() {\n if (uid === null) {\n return null;\n }\n\n return {\n uid: uid,\n displayName: displayName\n };\n}\n//# sourceMappingURL=user.js.map","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<a class=\\\"filename has-tooltip\\\" href=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"link\") || (depth0 != null ? lookupProperty(depth0,\"link\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"link\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":38},\"end\":{\"line\":1,\"column\":46}}}) : helper)))\n + \"\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"title\") || (depth0 != null ? lookupProperty(depth0,\"title\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"title\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":55},\"end\":{\"line\":1,\"column\":64}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":66},\"end\":{\"line\":1,\"column\":74}}}) : helper)))\n + \"</a>\\n\";\n},\"useData\":true});","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n// istanbul ignore next\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nvar _handlebarsBase = require('./handlebars/base');\n\nvar base = _interopRequireWildcard(_handlebarsBase);\n\n// Each of these augment the Handlebars object. No need to setup here.\n// (This is done to easily share code between commonjs and browse envs)\n\nvar _handlebarsSafeString = require('./handlebars/safe-string');\n\nvar _handlebarsSafeString2 = _interopRequireDefault(_handlebarsSafeString);\n\nvar _handlebarsException = require('./handlebars/exception');\n\nvar _handlebarsException2 = _interopRequireDefault(_handlebarsException);\n\nvar _handlebarsUtils = require('./handlebars/utils');\n\nvar Utils = _interopRequireWildcard(_handlebarsUtils);\n\nvar _handlebarsRuntime = require('./handlebars/runtime');\n\nvar runtime = _interopRequireWildcard(_handlebarsRuntime);\n\nvar _handlebarsNoConflict = require('./handlebars/no-conflict');\n\nvar _handlebarsNoConflict2 = _interopRequireDefault(_handlebarsNoConflict);\n\n// For compatibility and usage outside of module systems, make the Handlebars object a namespace\nfunction create() {\n var hb = new base.HandlebarsEnvironment();\n\n Utils.extend(hb, base);\n hb.SafeString = _handlebarsSafeString2['default'];\n hb.Exception = _handlebarsException2['default'];\n hb.Utils = Utils;\n hb.escapeExpression = Utils.escapeExpression;\n\n hb.VM = runtime;\n hb.template = function (spec) {\n return runtime.template(spec, hb);\n };\n\n return hb;\n}\n\nvar inst = create();\ninst.create = create;\n\n_handlebarsNoConflict2['default'](inst);\n\ninst['default'] = inst;\n\nexports['default'] = inst;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9oYW5kbGViYXJzLnJ1bnRpbWUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OEJBQXNCLG1CQUFtQjs7SUFBN0IsSUFBSTs7Ozs7b0NBSU8sMEJBQTBCOzs7O21DQUMzQix3QkFBd0I7Ozs7K0JBQ3ZCLG9CQUFvQjs7SUFBL0IsS0FBSzs7aUNBQ1Esc0JBQXNCOztJQUFuQyxPQUFPOztvQ0FFSSwwQkFBMEI7Ozs7O0FBR2pELFNBQVMsTUFBTSxHQUFHO0FBQ2hCLE1BQUksRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7O0FBRTFDLE9BQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ3ZCLElBQUUsQ0FBQyxVQUFVLG9DQUFhLENBQUM7QUFDM0IsSUFBRSxDQUFDLFNBQVMsbUNBQVksQ0FBQztBQUN6QixJQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztBQUNqQixJQUFFLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDOztBQUU3QyxJQUFFLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQztBQUNoQixJQUFFLENBQUMsUUFBUSxHQUFHLFVBQVMsSUFBSSxFQUFFO0FBQzNCLFdBQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7R0FDbkMsQ0FBQzs7QUFFRixTQUFPLEVBQUUsQ0FBQztDQUNYOztBQUVELElBQUksSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDO0FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDOztBQUVyQixrQ0FBVyxJQUFJLENBQUMsQ0FBQzs7QUFFakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQzs7cUJBRVIsSUFBSSIsImZpbGUiOiJoYW5kbGViYXJzLnJ1bnRpbWUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBiYXNlIGZyb20gJy4vaGFuZGxlYmFycy9iYXNlJztcblxuLy8gRWFjaCBvZiB0aGVzZSBhdWdtZW50IHRoZSBIYW5kbGViYXJzIG9iamVjdC4gTm8gbmVlZCB0byBzZXR1cCBoZXJlLlxuLy8gKFRoaXMgaXMgZG9uZSB0byBlYXNpbHkgc2hhcmUgY29kZSBiZXR3ZWVuIGNvbW1vbmpzIGFuZCBicm93c2UgZW52cylcbmltcG9ydCBTYWZlU3RyaW5nIGZyb20gJy4vaGFuZGxlYmFycy9zYWZlLXN0cmluZyc7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gJy4vaGFuZGxlYmFycy9leGNlcHRpb24nO1xuaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi9oYW5kbGViYXJzL3V0aWxzJztcbmltcG9ydCAqIGFzIHJ1bnRpbWUgZnJvbSAnLi9oYW5kbGViYXJzL3J1bnRpbWUnO1xuXG5pbXBvcnQgbm9Db25mbGljdCBmcm9tICcuL2hhbmRsZWJhcnMvbm8tY29uZmxpY3QnO1xuXG4vLyBGb3IgY29tcGF0aWJpbGl0eSBhbmQgdXNhZ2Ugb3V0c2lkZSBvZiBtb2R1bGUgc3lzdGVtcywgbWFrZSB0aGUgSGFuZGxlYmFycyBvYmplY3QgYSBuYW1lc3BhY2VcbmZ1bmN0aW9uIGNyZWF0ZSgpIHtcbiAgbGV0IGhiID0gbmV3IGJhc2UuSGFuZGxlYmFyc0Vudmlyb25tZW50KCk7XG5cbiAgVXRpbHMuZXh0ZW5kKGhiLCBiYXNlKTtcbiAgaGIuU2FmZVN0cmluZyA9IFNhZmVTdHJpbmc7XG4gIGhiLkV4Y2VwdGlvbiA9IEV4Y2VwdGlvbjtcbiAgaGIuVXRpbHMgPSBVdGlscztcbiAgaGIuZXNjYXBlRXhwcmVzc2lvbiA9IFV0aWxzLmVzY2FwZUV4cHJlc3Npb247XG5cbiAgaGIuVk0gPSBydW50aW1lO1xuICBoYi50ZW1wbGF0ZSA9IGZ1bmN0aW9uKHNwZWMpIHtcbiAgICByZXR1cm4gcnVudGltZS50ZW1wbGF0ZShzcGVjLCBoYik7XG4gIH07XG5cbiAgcmV0dXJuIGhiO1xufVxuXG5sZXQgaW5zdCA9IGNyZWF0ZSgpO1xuaW5zdC5jcmVhdGUgPSBjcmVhdGU7XG5cbm5vQ29uZmxpY3QoaW5zdCk7XG5cbmluc3RbJ2RlZmF1bHQnXSA9IGluc3Q7XG5cbmV4cG9ydCBkZWZhdWx0IGluc3Q7XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\n\nvar _utils = require('../utils');\n\nexports['default'] = function (instance) {\n instance.registerHelper('blockHelperMissing', function (context, options) {\n var inverse = options.inverse,\n fn = options.fn;\n\n if (context === true) {\n return fn(this);\n } else if (context === false || context == null) {\n return inverse(this);\n } else if (_utils.isArray(context)) {\n if (context.length > 0) {\n if (options.ids) {\n options.ids = [options.name];\n }\n\n return instance.helpers.each(context, options);\n } else {\n return inverse(this);\n }\n } else {\n if (options.data && options.ids) {\n var data = _utils.createFrame(options.data);\n data.contextPath = _utils.appendContextPath(options.data.contextPath, options.name);\n options = { data: data };\n }\n\n return fn(context, options);\n }\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvYmxvY2staGVscGVyLW1pc3NpbmcuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztxQkFBd0QsVUFBVTs7cUJBRW5ELFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsVUFBUyxPQUFPLEVBQUUsT0FBTyxFQUFFO0FBQ3ZFLFFBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPO1FBQzNCLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDOztBQUVsQixRQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7QUFDcEIsYUFBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDakIsTUFBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLElBQUksT0FBTyxJQUFJLElBQUksRUFBRTtBQUMvQyxhQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUN0QixNQUFNLElBQUksZUFBUSxPQUFPLENBQUMsRUFBRTtBQUMzQixVQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO0FBQ3RCLFlBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUNmLGlCQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzlCOztBQUVELGVBQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO09BQ2hELE1BQU07QUFDTCxlQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztPQUN0QjtLQUNGLE1BQU07QUFDTCxVQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUMvQixZQUFJLElBQUksR0FBRyxtQkFBWSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDckMsWUFBSSxDQUFDLFdBQVcsR0FBRyx5QkFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQ2IsQ0FBQztBQUNGLGVBQU8sR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQztPQUMxQjs7QUFFRCxhQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDN0I7R0FDRixDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJibG9jay1oZWxwZXItbWlzc2luZy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFwcGVuZENvbnRleHRQYXRoLCBjcmVhdGVGcmFtZSwgaXNBcnJheSB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2Jsb2NrSGVscGVyTWlzc2luZycsIGZ1bmN0aW9uKGNvbnRleHQsIG9wdGlvbnMpIHtcbiAgICBsZXQgaW52ZXJzZSA9IG9wdGlvbnMuaW52ZXJzZSxcbiAgICAgIGZuID0gb3B0aW9ucy5mbjtcblxuICAgIGlmIChjb250ZXh0ID09PSB0cnVlKSB7XG4gICAgICByZXR1cm4gZm4odGhpcyk7XG4gICAgfSBlbHNlIGlmIChjb250ZXh0ID09PSBmYWxzZSB8fCBjb250ZXh0ID09IG51bGwpIHtcbiAgICAgIHJldHVybiBpbnZlcnNlKHRoaXMpO1xuICAgIH0gZWxzZSBpZiAoaXNBcnJheShjb250ZXh0KSkge1xuICAgICAgaWYgKGNvbnRleHQubGVuZ3RoID4gMCkge1xuICAgICAgICBpZiAob3B0aW9ucy5pZHMpIHtcbiAgICAgICAgICBvcHRpb25zLmlkcyA9IFtvcHRpb25zLm5hbWVdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGluc3RhbmNlLmhlbHBlcnMuZWFjaChjb250ZXh0LCBvcHRpb25zKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBpbnZlcnNlKHRoaXMpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAob3B0aW9ucy5kYXRhICYmIG9wdGlvbnMuaWRzKSB7XG4gICAgICAgIGxldCBkYXRhID0gY3JlYXRlRnJhbWUob3B0aW9ucy5kYXRhKTtcbiAgICAgICAgZGF0YS5jb250ZXh0UGF0aCA9IGFwcGVuZENvbnRleHRQYXRoKFxuICAgICAgICAgIG9wdGlvbnMuZGF0YS5jb250ZXh0UGF0aCxcbiAgICAgICAgICBvcHRpb25zLm5hbWVcbiAgICAgICAgKTtcbiAgICAgICAgb3B0aW9ucyA9IHsgZGF0YTogZGF0YSB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZm4oY29udGV4dCwgb3B0aW9ucyk7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('../utils');\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('each', function (context, options) {\n if (!options) {\n throw new _exception2['default']('Must pass iterator to #each');\n }\n\n var fn = options.fn,\n inverse = options.inverse,\n i = 0,\n ret = '',\n data = undefined,\n contextPath = undefined;\n\n if (options.data && options.ids) {\n contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]) + '.';\n }\n\n if (_utils.isFunction(context)) {\n context = context.call(this);\n }\n\n if (options.data) {\n data = _utils.createFrame(options.data);\n }\n\n function execIteration(field, index, last) {\n if (data) {\n data.key = field;\n data.index = index;\n data.first = index === 0;\n data.last = !!last;\n\n if (contextPath) {\n data.contextPath = contextPath + field;\n }\n }\n\n ret = ret + fn(context[field], {\n data: data,\n blockParams: _utils.blockParams([context[field], field], [contextPath + field, null])\n });\n }\n\n if (context && typeof context === 'object') {\n if (_utils.isArray(context)) {\n for (var j = context.length; i < j; i++) {\n if (i in context) {\n execIteration(i, i, i === context.length - 1);\n }\n }\n } else if (global.Symbol && context[global.Symbol.iterator]) {\n var newContext = [];\n var iterator = context[global.Symbol.iterator]();\n for (var it = iterator.next(); !it.done; it = iterator.next()) {\n newContext.push(it.value);\n }\n context = newContext;\n for (var j = context.length; i < j; i++) {\n execIteration(i, i, i === context.length - 1);\n }\n } else {\n (function () {\n var priorKey = undefined;\n\n Object.keys(context).forEach(function (key) {\n // We're running the iterations one step out of sync so we can detect\n // the last iteration without have to scan the object twice and create\n // an itermediate keys array.\n if (priorKey !== undefined) {\n execIteration(priorKey, i - 1);\n }\n priorKey = key;\n i++;\n });\n if (priorKey !== undefined) {\n execIteration(priorKey, i - 1, true);\n }\n })();\n }\n }\n\n if (i === 0) {\n ret = inverse(this);\n }\n\n return ret;\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvZWFjaC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O3FCQU1PLFVBQVU7O3lCQUNLLGNBQWM7Ozs7cUJBRXJCLFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFVBQVMsT0FBTyxFQUFFLE9BQU8sRUFBRTtBQUN6RCxRQUFJLENBQUMsT0FBTyxFQUFFO0FBQ1osWUFBTSwyQkFBYyw2QkFBNkIsQ0FBQyxDQUFDO0tBQ3BEOztBQUVELFFBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFO1FBQ2pCLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTztRQUN6QixDQUFDLEdBQUcsQ0FBQztRQUNMLEdBQUcsR0FBRyxFQUFFO1FBQ1IsSUFBSSxZQUFBO1FBQ0osV0FBVyxZQUFBLENBQUM7O0FBRWQsUUFBSSxPQUFPLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7QUFDL0IsaUJBQVcsR0FDVCx5QkFBa0IsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztLQUNyRTs7QUFFRCxRQUFJLGtCQUFXLE9BQU8sQ0FBQyxFQUFFO0FBQ3ZCLGFBQU8sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQzlCOztBQUVELFFBQUksT0FBTyxDQUFDLElBQUksRUFBRTtBQUNoQixVQUFJLEdBQUcsbUJBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ2xDOztBQUVELGFBQVMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO0FBQ3pDLFVBQUksSUFBSSxFQUFFO0FBQ1IsWUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7QUFDakIsWUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7QUFDbkIsWUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDO0FBQ3pCLFlBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQzs7QUFFbkIsWUFBSSxXQUFXLEVBQUU7QUFDZixjQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsR0FBRyxLQUFLLENBQUM7U0FDeEM7T0FDRjs7QUFFRCxTQUFHLEdBQ0QsR0FBRyxHQUNILEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7QUFDakIsWUFBSSxFQUFFLElBQUk7QUFDVixtQkFBVyxFQUFFLG1CQUNYLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUN2QixDQUFDLFdBQVcsR0FBRyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQzVCO09BQ0YsQ0FBQyxDQUFDO0tBQ047O0FBRUQsUUFBSSxPQUFPLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxFQUFFO0FBQzFDLFVBQUksZUFBUSxPQUFPLENBQUMsRUFBRTtBQUNwQixhQUFLLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUN2QyxjQUFJLENBQUMsSUFBSSxPQUFPLEVBQUU7QUFDaEIseUJBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1dBQy9DO1NBQ0Y7T0FDRixNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRTtBQUMzRCxZQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7QUFDdEIsWUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztBQUNuRCxhQUFLLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxHQUFHLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRTtBQUM3RCxvQkFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDM0I7QUFDRCxlQUFPLEdBQUcsVUFBVSxDQUFDO0FBQ3JCLGFBQUssSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO0FBQ3ZDLHVCQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUMvQztPQUNGLE1BQU07O0FBQ0wsY0FBSSxRQUFRLFlBQUEsQ0FBQzs7QUFFYixnQkFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQSxHQUFHLEVBQUk7Ozs7QUFJbEMsZ0JBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtBQUMxQiwyQkFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDaEM7QUFDRCxvQkFBUSxHQUFHLEdBQUcsQ0FBQztBQUNmLGFBQUMsRUFBRSxDQUFDO1dBQ0wsQ0FBQyxDQUFDO0FBQ0gsY0FBSSxRQUFRLEtBQUssU0FBUyxFQUFFO0FBQzFCLHlCQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7V0FDdEM7O09BQ0Y7S0FDRjs7QUFFRCxRQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7QUFDWCxTQUFHLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ3JCOztBQUVELFdBQU8sR0FBRyxDQUFDO0dBQ1osQ0FBQyxDQUFDO0NBQ0oiLCJmaWxlIjoiZWFjaC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFwcGVuZENvbnRleHRQYXRoLFxuICBibG9ja1BhcmFtcyxcbiAgY3JlYXRlRnJhbWUsXG4gIGlzQXJyYXksXG4gIGlzRnVuY3Rpb25cbn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tICcuLi9leGNlcHRpb24nO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbihpbnN0YW5jZSkge1xuICBpbnN0YW5jZS5yZWdpc3RlckhlbHBlcignZWFjaCcsIGZ1bmN0aW9uKGNvbnRleHQsIG9wdGlvbnMpIHtcbiAgICBpZiAoIW9wdGlvbnMpIHtcbiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ011c3QgcGFzcyBpdGVyYXRvciB0byAjZWFjaCcpO1xuICAgIH1cblxuICAgIGxldCBmbiA9IG9wdGlvbnMuZm4sXG4gICAgICBpbnZlcnNlID0gb3B0aW9ucy5pbnZlcnNlLFxuICAgICAgaSA9IDAsXG4gICAgICByZXQgPSAnJyxcbiAgICAgIGRhdGEsXG4gICAgICBjb250ZXh0UGF0aDtcblxuICAgIGlmIChvcHRpb25zLmRhdGEgJiYgb3B0aW9ucy5pZHMpIHtcbiAgICAgIGNvbnRleHRQYXRoID1cbiAgICAgICAgYXBwZW5kQ29udGV4dFBhdGgob3B0aW9ucy5kYXRhLmNvbnRleHRQYXRoLCBvcHRpb25zLmlkc1swXSkgKyAnLic7XG4gICAgfVxuXG4gICAgaWYgKGlzRnVuY3Rpb24oY29udGV4dCkpIHtcbiAgICAgIGNvbnRleHQgPSBjb250ZXh0LmNhbGwodGhpcyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuZGF0YSkge1xuICAgICAgZGF0YSA9IGNyZWF0ZUZyYW1lKG9wdGlvbnMuZGF0YSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZXhlY0l0ZXJhdGlvbihmaWVsZCwgaW5kZXgsIGxhc3QpIHtcbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIGRhdGEua2V5ID0gZmllbGQ7XG4gICAgICAgIGRhdGEuaW5kZXggPSBpbmRleDtcbiAgICAgICAgZGF0YS5maXJzdCA9IGluZGV4ID09PSAwO1xuICAgICAgICBkYXRhLmxhc3QgPSAhIWxhc3Q7XG5cbiAgICAgICAgaWYgKGNvbnRleHRQYXRoKSB7XG4gICAgICAgICAgZGF0YS5jb250ZXh0UGF0aCA9IGNvbnRleHRQYXRoICsgZmllbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0ID1cbiAgICAgICAgcmV0ICtcbiAgICAgICAgZm4oY29udGV4dFtmaWVsZF0sIHtcbiAgICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICAgIGJsb2NrUGFyYW1zOiBibG9ja1BhcmFtcyhcbiAgICAgICAgICAgIFtjb250ZXh0W2ZpZWxkXSwgZmllbGRdLFxuICAgICAgICAgICAgW2NvbnRleHRQYXRoICsgZmllbGQsIG51bGxdXG4gICAgICAgICAgKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoY29udGV4dCAmJiB0eXBlb2YgY29udGV4dCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGlmIChpc0FycmF5KGNvbnRleHQpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBjb250ZXh0Lmxlbmd0aDsgaSA8IGo7IGkrKykge1xuICAgICAgICAgIGlmIChpIGluIGNvbnRleHQpIHtcbiAgICAgICAgICAgIGV4ZWNJdGVyYXRpb24oaSwgaSwgaSA9PT0gY29udGV4dC5sZW5ndGggLSAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoZ2xvYmFsLlN5bWJvbCAmJiBjb250ZXh0W2dsb2JhbC5TeW1ib2wuaXRlcmF0b3JdKSB7XG4gICAgICAgIGNvbnN0IG5ld0NvbnRleHQgPSBbXTtcbiAgICAgICAgY29uc3QgaXRlcmF0b3IgPSBjb250ZXh0W2dsb2JhbC5TeW1ib2wuaXRlcmF0b3JdKCk7XG4gICAgICAgIGZvciAobGV0IGl0ID0gaXRlcmF0b3IubmV4dCgpOyAhaXQuZG9uZTsgaXQgPSBpdGVyYXRvci5uZXh0KCkpIHtcbiAgICAgICAgICBuZXdDb250ZXh0LnB1c2goaXQudmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRleHQgPSBuZXdDb250ZXh0O1xuICAgICAgICBmb3IgKGxldCBqID0gY29udGV4dC5sZW5ndGg7IGkgPCBqOyBpKyspIHtcbiAgICAgICAgICBleGVjSXRlcmF0aW9uKGksIGksIGkgPT09IGNvbnRleHQubGVuZ3RoIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBwcmlvcktleTtcblxuICAgICAgICBPYmplY3Qua2V5cyhjb250ZXh0KS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgLy8gV2UncmUgcnVubmluZyB0aGUgaXRlcmF0aW9ucyBvbmUgc3RlcCBvdXQgb2Ygc3luYyBzbyB3ZSBjYW4gZGV0ZWN0XG4gICAgICAgICAgLy8gdGhlIGxhc3QgaXRlcmF0aW9uIHdpdGhvdXQgaGF2ZSB0byBzY2FuIHRoZSBvYmplY3QgdHdpY2UgYW5kIGNyZWF0ZVxuICAgICAgICAgIC8vIGFuIGl0ZXJtZWRpYXRlIGtleXMgYXJyYXkuXG4gICAgICAgICAgaWYgKHByaW9yS2V5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGV4ZWNJdGVyYXRpb24ocHJpb3JLZXksIGkgLSAxKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcHJpb3JLZXkgPSBrZXk7XG4gICAgICAgICAgaSsrO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHByaW9yS2V5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBleGVjSXRlcmF0aW9uKHByaW9yS2V5LCBpIC0gMSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgcmV0ID0gaW52ZXJzZSh0aGlzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmV0O1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('helperMissing', function () /* [args, ]options */{\n if (arguments.length === 1) {\n // A missing field in a {{foo}} construct.\n return undefined;\n } else {\n // Someone is actually trying to call something, blow up.\n throw new _exception2['default']('Missing helper: \"' + arguments[arguments.length - 1].name + '\"');\n }\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvaGVscGVyLW1pc3NpbmcuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozt5QkFBc0IsY0FBYzs7OztxQkFFckIsVUFBUyxRQUFRLEVBQUU7QUFDaEMsVUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsaUNBQWdDO0FBQ3ZFLFFBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7O0FBRTFCLGFBQU8sU0FBUyxDQUFDO0tBQ2xCLE1BQU07O0FBRUwsWUFBTSwyQkFDSixtQkFBbUIsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUNqRSxDQUFDO0tBQ0g7R0FDRixDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJoZWxwZXItbWlzc2luZy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeGNlcHRpb24gZnJvbSAnLi4vZXhjZXB0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2hlbHBlck1pc3NpbmcnLCBmdW5jdGlvbigvKiBbYXJncywgXW9wdGlvbnMgKi8pIHtcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgLy8gQSBtaXNzaW5nIGZpZWxkIGluIGEge3tmb299fSBjb25zdHJ1Y3QuXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTb21lb25lIGlzIGFjdHVhbGx5IHRyeWluZyB0byBjYWxsIHNvbWV0aGluZywgYmxvdyB1cC5cbiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oXG4gICAgICAgICdNaXNzaW5nIGhlbHBlcjogXCInICsgYXJndW1lbnRzW2FyZ3VtZW50cy5sZW5ndGggLSAxXS5uYW1lICsgJ1wiJ1xuICAgICAgKTtcbiAgICB9XG4gIH0pO1xufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('../utils');\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('if', function (conditional, options) {\n if (arguments.length != 2) {\n throw new _exception2['default']('#if requires exactly one argument');\n }\n if (_utils.isFunction(conditional)) {\n conditional = conditional.call(this);\n }\n\n // Default behavior is to render the positive path if the value is truthy and not empty.\n // The `includeZero` option may be set to treat the condtional as purely not empty based on the\n // behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.\n if (!options.hash.includeZero && !conditional || _utils.isEmpty(conditional)) {\n return options.inverse(this);\n } else {\n return options.fn(this);\n }\n });\n\n instance.registerHelper('unless', function (conditional, options) {\n if (arguments.length != 2) {\n throw new _exception2['default']('#unless requires exactly one argument');\n }\n return instance.helpers['if'].call(this, conditional, {\n fn: options.inverse,\n inverse: options.fn,\n hash: options.hash\n });\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvaWYuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztxQkFBb0MsVUFBVTs7eUJBQ3hCLGNBQWM7Ozs7cUJBRXJCLFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFVBQVMsV0FBVyxFQUFFLE9BQU8sRUFBRTtBQUMzRCxRQUFJLFNBQVMsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO0FBQ3pCLFlBQU0sMkJBQWMsbUNBQW1DLENBQUMsQ0FBQztLQUMxRDtBQUNELFFBQUksa0JBQVcsV0FBVyxDQUFDLEVBQUU7QUFDM0IsaUJBQVcsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ3RDOzs7OztBQUtELFFBQUksQUFBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsV0FBVyxJQUFLLGVBQVEsV0FBVyxDQUFDLEVBQUU7QUFDdkUsYUFBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQzlCLE1BQU07QUFDTCxhQUFPLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDekI7R0FDRixDQUFDLENBQUM7O0FBRUgsVUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsVUFBUyxXQUFXLEVBQUUsT0FBTyxFQUFFO0FBQy9ELFFBQUksU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7QUFDekIsWUFBTSwyQkFBYyx1Q0FBdUMsQ0FBQyxDQUFDO0tBQzlEO0FBQ0QsV0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO0FBQ3BELFFBQUUsRUFBRSxPQUFPLENBQUMsT0FBTztBQUNuQixhQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUU7QUFDbkIsVUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO0tBQ25CLENBQUMsQ0FBQztHQUNKLENBQUMsQ0FBQztDQUNKIiwiZmlsZSI6ImlmLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eSwgaXNGdW5jdGlvbiB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCBFeGNlcHRpb24gZnJvbSAnLi4vZXhjZXB0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2lmJywgZnVuY3Rpb24oY29uZGl0aW9uYWwsIG9wdGlvbnMpIHtcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCAhPSAyKSB7XG4gICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCcjaWYgcmVxdWlyZXMgZXhhY3RseSBvbmUgYXJndW1lbnQnKTtcbiAgICB9XG4gICAgaWYgKGlzRnVuY3Rpb24oY29uZGl0aW9uYWwpKSB7XG4gICAgICBjb25kaXRpb25hbCA9IGNvbmRpdGlvbmFsLmNhbGwodGhpcyk7XG4gICAgfVxuXG4gICAgLy8gRGVmYXVsdCBiZWhhdmlvciBpcyB0byByZW5kZXIgdGhlIHBvc2l0aXZlIHBhdGggaWYgdGhlIHZhbHVlIGlzIHRydXRoeSBhbmQgbm90IGVtcHR5LlxuICAgIC8vIFRoZSBgaW5jbHVkZVplcm9gIG9wdGlvbiBtYXkgYmUgc2V0IHRvIHRyZWF0IHRoZSBjb25kdGlvbmFsIGFzIHB1cmVseSBub3QgZW1wdHkgYmFzZWQgb24gdGhlXG4gICAgLy8gYmVoYXZpb3Igb2YgaXNFbXB0eS4gRWZmZWN0aXZlbHkgdGhpcyBkZXRlcm1pbmVzIGlmIDAgaXMgaGFuZGxlZCBieSB0aGUgcG9zaXRpdmUgcGF0aCBvciBuZWdhdGl2ZS5cbiAgICBpZiAoKCFvcHRpb25zLmhhc2guaW5jbHVkZVplcm8gJiYgIWNvbmRpdGlvbmFsKSB8fCBpc0VtcHR5KGNvbmRpdGlvbmFsKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbnMuaW52ZXJzZSh0aGlzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG9wdGlvbnMuZm4odGhpcyk7XG4gICAgfVxuICB9KTtcblxuICBpbnN0YW5jZS5yZWdpc3RlckhlbHBlcigndW5sZXNzJywgZnVuY3Rpb24oY29uZGl0aW9uYWwsIG9wdGlvbnMpIHtcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCAhPSAyKSB7XG4gICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCcjdW5sZXNzIHJlcXVpcmVzIGV4YWN0bHkgb25lIGFyZ3VtZW50Jyk7XG4gICAgfVxuICAgIHJldHVybiBpbnN0YW5jZS5oZWxwZXJzWydpZiddLmNhbGwodGhpcywgY29uZGl0aW9uYWwsIHtcbiAgICAgIGZuOiBvcHRpb25zLmludmVyc2UsXG4gICAgICBpbnZlcnNlOiBvcHRpb25zLmZuLFxuICAgICAgaGFzaDogb3B0aW9ucy5oYXNoXG4gICAgfSk7XG4gIH0pO1xufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n\nexports['default'] = function (instance) {\n instance.registerHelper('log', function () /* message, options */{\n var args = [undefined],\n options = arguments[arguments.length - 1];\n for (var i = 0; i < arguments.length - 1; i++) {\n args.push(arguments[i]);\n }\n\n var level = 1;\n if (options.hash.level != null) {\n level = options.hash.level;\n } else if (options.data && options.data.level != null) {\n level = options.data.level;\n }\n args[0] = level;\n\n instance.log.apply(instance, args);\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvbG9nLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQWUsVUFBUyxRQUFRLEVBQUU7QUFDaEMsVUFBUSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsa0NBQWlDO0FBQzlELFFBQUksSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQ3BCLE9BQU8sR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztBQUM1QyxTQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7QUFDN0MsVUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN6Qjs7QUFFRCxRQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7QUFDZCxRQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRTtBQUM5QixXQUFLLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7S0FDNUIsTUFBTSxJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFFO0FBQ3JELFdBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztLQUM1QjtBQUNELFFBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUM7O0FBRWhCLFlBQVEsQ0FBQyxHQUFHLE1BQUEsQ0FBWixRQUFRLEVBQVEsSUFBSSxDQUFDLENBQUM7R0FDdkIsQ0FBQyxDQUFDO0NBQ0oiLCJmaWxlIjoibG9nLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJIZWxwZXIoJ2xvZycsIGZ1bmN0aW9uKC8qIG1lc3NhZ2UsIG9wdGlvbnMgKi8pIHtcbiAgICBsZXQgYXJncyA9IFt1bmRlZmluZWRdLFxuICAgICAgb3B0aW9ucyA9IGFyZ3VtZW50c1thcmd1bWVudHMubGVuZ3RoIC0gMV07XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmd1bWVudHMubGVuZ3RoIC0gMTsgaSsrKSB7XG4gICAgICBhcmdzLnB1c2goYXJndW1lbnRzW2ldKTtcbiAgICB9XG5cbiAgICBsZXQgbGV2ZWwgPSAxO1xuICAgIGlmIChvcHRpb25zLmhhc2gubGV2ZWwgIT0gbnVsbCkge1xuICAgICAgbGV2ZWwgPSBvcHRpb25zLmhhc2gubGV2ZWw7XG4gICAgfSBlbHNlIGlmIChvcHRpb25zLmRhdGEgJiYgb3B0aW9ucy5kYXRhLmxldmVsICE9IG51bGwpIHtcbiAgICAgIGxldmVsID0gb3B0aW9ucy5kYXRhLmxldmVsO1xuICAgIH1cbiAgICBhcmdzWzBdID0gbGV2ZWw7XG5cbiAgICBpbnN0YW5jZS5sb2coLi4uYXJncyk7XG4gIH0pO1xufVxuIl19\n","'use strict';\n\nexports.__esModule = true;\n\nexports['default'] = function (instance) {\n instance.registerHelper('lookup', function (obj, field, options) {\n if (!obj) {\n // Note for 5.0: Change to \"obj == null\" in 5.0\n return obj;\n }\n return options.lookupProperty(obj, field);\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvbG9va3VwLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQWUsVUFBUyxRQUFRLEVBQUU7QUFDaEMsVUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsVUFBUyxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtBQUM5RCxRQUFJLENBQUMsR0FBRyxFQUFFOztBQUVSLGFBQU8sR0FBRyxDQUFDO0tBQ1o7QUFDRCxXQUFPLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0dBQzNDLENBQUMsQ0FBQztDQUNKIiwiZmlsZSI6Imxvb2t1cC5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKGluc3RhbmNlKSB7XG4gIGluc3RhbmNlLnJlZ2lzdGVySGVscGVyKCdsb29rdXAnLCBmdW5jdGlvbihvYmosIGZpZWxkLCBvcHRpb25zKSB7XG4gICAgaWYgKCFvYmopIHtcbiAgICAgIC8vIE5vdGUgZm9yIDUuMDogQ2hhbmdlIHRvIFwib2JqID09IG51bGxcIiBpbiA1LjBcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zLmxvb2t1cFByb3BlcnR5KG9iaiwgZmllbGQpO1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _utils = require('../utils');\n\nvar _exception = require('../exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nexports['default'] = function (instance) {\n instance.registerHelper('with', function (context, options) {\n if (arguments.length != 2) {\n throw new _exception2['default']('#with requires exactly one argument');\n }\n if (_utils.isFunction(context)) {\n context = context.call(this);\n }\n\n var fn = options.fn;\n\n if (!_utils.isEmpty(context)) {\n var data = options.data;\n if (options.data && options.ids) {\n data = _utils.createFrame(options.data);\n data.contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]);\n }\n\n return fn(context, {\n data: data,\n blockParams: _utils.blockParams([context], [data && data.contextPath])\n });\n } else {\n return options.inverse(this);\n }\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2hlbHBlcnMvd2l0aC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O3FCQU1PLFVBQVU7O3lCQUNLLGNBQWM7Ozs7cUJBRXJCLFVBQVMsUUFBUSxFQUFFO0FBQ2hDLFVBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFVBQVMsT0FBTyxFQUFFLE9BQU8sRUFBRTtBQUN6RCxRQUFJLFNBQVMsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO0FBQ3pCLFlBQU0sMkJBQWMscUNBQXFDLENBQUMsQ0FBQztLQUM1RDtBQUNELFFBQUksa0JBQVcsT0FBTyxDQUFDLEVBQUU7QUFDdkIsYUFBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDOUI7O0FBRUQsUUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQzs7QUFFcEIsUUFBSSxDQUFDLGVBQVEsT0FBTyxDQUFDLEVBQUU7QUFDckIsVUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztBQUN4QixVQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUMvQixZQUFJLEdBQUcsbUJBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2pDLFlBQUksQ0FBQyxXQUFXLEdBQUcseUJBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7T0FDSDs7QUFFRCxhQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUU7QUFDakIsWUFBSSxFQUFFLElBQUk7QUFDVixtQkFBVyxFQUFFLG1CQUFZLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO09BQ2hFLENBQUMsQ0FBQztLQUNKLE1BQU07QUFDTCxhQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDOUI7R0FDRixDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJ3aXRoLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYXBwZW5kQ29udGV4dFBhdGgsXG4gIGJsb2NrUGFyYW1zLFxuICBjcmVhdGVGcmFtZSxcbiAgaXNFbXB0eSxcbiAgaXNGdW5jdGlvblxufSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gJy4uL2V4Y2VwdGlvbic7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKGluc3RhbmNlKSB7XG4gIGluc3RhbmNlLnJlZ2lzdGVySGVscGVyKCd3aXRoJywgZnVuY3Rpb24oY29udGV4dCwgb3B0aW9ucykge1xuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoICE9IDIpIHtcbiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJyN3aXRoIHJlcXVpcmVzIGV4YWN0bHkgb25lIGFyZ3VtZW50Jyk7XG4gICAgfVxuICAgIGlmIChpc0Z1bmN0aW9uKGNvbnRleHQpKSB7XG4gICAgICBjb250ZXh0ID0gY29udGV4dC5jYWxsKHRoaXMpO1xuICAgIH1cblxuICAgIGxldCBmbiA9IG9wdGlvbnMuZm47XG5cbiAgICBpZiAoIWlzRW1wdHkoY29udGV4dCkpIHtcbiAgICAgIGxldCBkYXRhID0gb3B0aW9ucy5kYXRhO1xuICAgICAgaWYgKG9wdGlvbnMuZGF0YSAmJiBvcHRpb25zLmlkcykge1xuICAgICAgICBkYXRhID0gY3JlYXRlRnJhbWUob3B0aW9ucy5kYXRhKTtcbiAgICAgICAgZGF0YS5jb250ZXh0UGF0aCA9IGFwcGVuZENvbnRleHRQYXRoKFxuICAgICAgICAgIG9wdGlvbnMuZGF0YS5jb250ZXh0UGF0aCxcbiAgICAgICAgICBvcHRpb25zLmlkc1swXVxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZm4oY29udGV4dCwge1xuICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICBibG9ja1BhcmFtczogYmxvY2tQYXJhbXMoW2NvbnRleHRdLCBbZGF0YSAmJiBkYXRhLmNvbnRleHRQYXRoXSlcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gb3B0aW9ucy5pbnZlcnNlKHRoaXMpO1xuICAgIH1cbiAgfSk7XG59XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\nexports.registerDefaultDecorators = registerDefaultDecorators;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _decoratorsInline = require('./decorators/inline');\n\nvar _decoratorsInline2 = _interopRequireDefault(_decoratorsInline);\n\nfunction registerDefaultDecorators(instance) {\n _decoratorsInline2['default'](instance);\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2RlY29yYXRvcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Z0NBQTJCLHFCQUFxQjs7OztBQUV6QyxTQUFTLHlCQUF5QixDQUFDLFFBQVEsRUFBRTtBQUNsRCxnQ0FBZSxRQUFRLENBQUMsQ0FBQztDQUMxQiIsImZpbGUiOiJkZWNvcmF0b3JzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlZ2lzdGVySW5saW5lIGZyb20gJy4vZGVjb3JhdG9ycy9pbmxpbmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJEZWZhdWx0RGVjb3JhdG9ycyhpbnN0YW5jZSkge1xuICByZWdpc3RlcklubGluZShpbnN0YW5jZSk7XG59XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\n\nvar _utils = require('../utils');\n\nexports['default'] = function (instance) {\n instance.registerDecorator('inline', function (fn, props, container, options) {\n var ret = fn;\n if (!props.partials) {\n props.partials = {};\n ret = function (context, options) {\n // Create a new partials stack frame prior to exec.\n var original = container.partials;\n container.partials = _utils.extend({}, original, props.partials);\n var ret = fn(context, options);\n container.partials = original;\n return ret;\n };\n }\n\n props.partials[options.args[0]] = options.fn;\n\n return ret;\n });\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2RlY29yYXRvcnMvaW5saW5lLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQXVCLFVBQVU7O3FCQUVsQixVQUFTLFFBQVEsRUFBRTtBQUNoQyxVQUFRLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLFVBQVMsRUFBRSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFO0FBQzNFLFFBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztBQUNiLFFBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO0FBQ25CLFdBQUssQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0FBQ3BCLFNBQUcsR0FBRyxVQUFTLE9BQU8sRUFBRSxPQUFPLEVBQUU7O0FBRS9CLFlBQUksUUFBUSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUM7QUFDbEMsaUJBQVMsQ0FBQyxRQUFRLEdBQUcsY0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUMxRCxZQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9CLGlCQUFTLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztBQUM5QixlQUFPLEdBQUcsQ0FBQztPQUNaLENBQUM7S0FDSDs7QUFFRCxTQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDOztBQUU3QyxXQUFPLEdBQUcsQ0FBQztHQUNaLENBQUMsQ0FBQztDQUNKIiwiZmlsZSI6ImlubGluZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4dGVuZCB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24oaW5zdGFuY2UpIHtcbiAgaW5zdGFuY2UucmVnaXN0ZXJEZWNvcmF0b3IoJ2lubGluZScsIGZ1bmN0aW9uKGZuLCBwcm9wcywgY29udGFpbmVyLCBvcHRpb25zKSB7XG4gICAgbGV0IHJldCA9IGZuO1xuICAgIGlmICghcHJvcHMucGFydGlhbHMpIHtcbiAgICAgIHByb3BzLnBhcnRpYWxzID0ge307XG4gICAgICByZXQgPSBmdW5jdGlvbihjb250ZXh0LCBvcHRpb25zKSB7XG4gICAgICAgIC8vIENyZWF0ZSBhIG5ldyBwYXJ0aWFscyBzdGFjayBmcmFtZSBwcmlvciB0byBleGVjLlxuICAgICAgICBsZXQgb3JpZ2luYWwgPSBjb250YWluZXIucGFydGlhbHM7XG4gICAgICAgIGNvbnRhaW5lci5wYXJ0aWFscyA9IGV4dGVuZCh7fSwgb3JpZ2luYWwsIHByb3BzLnBhcnRpYWxzKTtcbiAgICAgICAgbGV0IHJldCA9IGZuKGNvbnRleHQsIG9wdGlvbnMpO1xuICAgICAgICBjb250YWluZXIucGFydGlhbHMgPSBvcmlnaW5hbDtcbiAgICAgICAgcmV0dXJuIHJldDtcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcHJvcHMucGFydGlhbHNbb3B0aW9ucy5hcmdzWzBdXSA9IG9wdGlvbnMuZm47XG5cbiAgICByZXR1cm4gcmV0O1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\nexports.createNewLookupObject = createNewLookupObject;\n\nvar _utils = require('../utils');\n\n/**\n * Create a new object with \"null\"-prototype to avoid truthy results on prototype properties.\n * The resulting object can be used with \"object[property]\" to check if a property exists\n * @param {...object} sources a varargs parameter of source objects that will be merged\n * @returns {object}\n */\n\nfunction createNewLookupObject() {\n for (var _len = arguments.length, sources = Array(_len), _key = 0; _key < _len; _key++) {\n sources[_key] = arguments[_key];\n }\n\n return _utils.extend.apply(undefined, [Object.create(null)].concat(sources));\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2ludGVybmFsL2NyZWF0ZS1uZXctbG9va3VwLW9iamVjdC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztxQkFBdUIsVUFBVTs7Ozs7Ozs7O0FBUTFCLFNBQVMscUJBQXFCLEdBQWE7b0NBQVQsT0FBTztBQUFQLFdBQU87OztBQUM5QyxTQUFPLGdDQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQUssT0FBTyxFQUFDLENBQUM7Q0FDaEQiLCJmaWxlIjoiY3JlYXRlLW5ldy1sb29rdXAtb2JqZWN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXh0ZW5kIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG4vKipcbiAqIENyZWF0ZSBhIG5ldyBvYmplY3Qgd2l0aCBcIm51bGxcIi1wcm90b3R5cGUgdG8gYXZvaWQgdHJ1dGh5IHJlc3VsdHMgb24gcHJvdG90eXBlIHByb3BlcnRpZXMuXG4gKiBUaGUgcmVzdWx0aW5nIG9iamVjdCBjYW4gYmUgdXNlZCB3aXRoIFwib2JqZWN0W3Byb3BlcnR5XVwiIHRvIGNoZWNrIGlmIGEgcHJvcGVydHkgZXhpc3RzXG4gKiBAcGFyYW0gey4uLm9iamVjdH0gc291cmNlcyBhIHZhcmFyZ3MgcGFyYW1ldGVyIG9mIHNvdXJjZSBvYmplY3RzIHRoYXQgd2lsbCBiZSBtZXJnZWRcbiAqIEByZXR1cm5zIHtvYmplY3R9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOZXdMb29rdXBPYmplY3QoLi4uc291cmNlcykge1xuICByZXR1cm4gZXh0ZW5kKE9iamVjdC5jcmVhdGUobnVsbCksIC4uLnNvdXJjZXMpO1xufVxuIl19\n","// Build out our basic SafeString type\n'use strict';\n\nexports.__esModule = true;\nfunction SafeString(string) {\n this.string = string;\n}\n\nSafeString.prototype.toString = SafeString.prototype.toHTML = function () {\n return '' + this.string;\n};\n\nexports['default'] = SafeString;\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL3NhZmUtc3RyaW5nLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxTQUFTLFVBQVUsQ0FBQyxNQUFNLEVBQUU7QUFDMUIsTUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7Q0FDdEI7O0FBRUQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsWUFBVztBQUN2RSxTQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0NBQ3pCLENBQUM7O3FCQUVhLFVBQVUiLCJmaWxlIjoic2FmZS1zdHJpbmcuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBCdWlsZCBvdXQgb3VyIGJhc2ljIFNhZmVTdHJpbmcgdHlwZVxuZnVuY3Rpb24gU2FmZVN0cmluZyhzdHJpbmcpIHtcbiAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG59XG5cblNhZmVTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nID0gU2FmZVN0cmluZy5wcm90b3R5cGUudG9IVE1MID0gZnVuY3Rpb24oKSB7XG4gIHJldHVybiAnJyArIHRoaXMuc3RyaW5nO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgU2FmZVN0cmluZztcbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\nexports.checkRevision = checkRevision;\nexports.template = template;\nexports.wrapProgram = wrapProgram;\nexports.resolvePartial = resolvePartial;\nexports.invokePartial = invokePartial;\nexports.noop = noop;\n// istanbul ignore next\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n// istanbul ignore next\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nvar _utils = require('./utils');\n\nvar Utils = _interopRequireWildcard(_utils);\n\nvar _exception = require('./exception');\n\nvar _exception2 = _interopRequireDefault(_exception);\n\nvar _base = require('./base');\n\nvar _helpers = require('./helpers');\n\nvar _internalWrapHelper = require('./internal/wrapHelper');\n\nvar _internalProtoAccess = require('./internal/proto-access');\n\nfunction checkRevision(compilerInfo) {\n var compilerRevision = compilerInfo && compilerInfo[0] || 1,\n currentRevision = _base.COMPILER_REVISION;\n\n if (compilerRevision >= _base.LAST_COMPATIBLE_COMPILER_REVISION && compilerRevision <= _base.COMPILER_REVISION) {\n return;\n }\n\n if (compilerRevision < _base.LAST_COMPATIBLE_COMPILER_REVISION) {\n var runtimeVersions = _base.REVISION_CHANGES[currentRevision],\n compilerVersions = _base.REVISION_CHANGES[compilerRevision];\n throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');\n } else {\n // Use the embedded version info since the runtime doesn't know about this revision yet\n throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');\n }\n}\n\nfunction template(templateSpec, env) {\n /* istanbul ignore next */\n if (!env) {\n throw new _exception2['default']('No environment passed to template');\n }\n if (!templateSpec || !templateSpec.main) {\n throw new _exception2['default']('Unknown template object: ' + typeof templateSpec);\n }\n\n templateSpec.main.decorator = templateSpec.main_d;\n\n // Note: Using env.VM references rather than local var references throughout this section to allow\n // for external users to override these as pseudo-supported APIs.\n env.VM.checkRevision(templateSpec.compiler);\n\n // backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)\n var templateWasPrecompiledWithCompilerV7 = templateSpec.compiler && templateSpec.compiler[0] === 7;\n\n function invokePartialWrapper(partial, context, options) {\n if (options.hash) {\n context = Utils.extend({}, context, options.hash);\n if (options.ids) {\n options.ids[0] = true;\n }\n }\n partial = env.VM.resolvePartial.call(this, partial, context, options);\n\n var extendedOptions = Utils.extend({}, options, {\n hooks: this.hooks,\n protoAccessControl: this.protoAccessControl\n });\n\n var result = env.VM.invokePartial.call(this, partial, context, extendedOptions);\n\n if (result == null && env.compile) {\n options.partials[options.name] = env.compile(partial, templateSpec.compilerOptions, env);\n result = options.partials[options.name](context, extendedOptions);\n }\n if (result != null) {\n if (options.indent) {\n var lines = result.split('\\n');\n for (var i = 0, l = lines.length; i < l; i++) {\n if (!lines[i] && i + 1 === l) {\n break;\n }\n\n lines[i] = options.indent + lines[i];\n }\n result = lines.join('\\n');\n }\n return result;\n } else {\n throw new _exception2['default']('The partial ' + options.name + ' could not be compiled when running in runtime-only mode');\n }\n }\n\n // Just add water\n var container = {\n strict: function strict(obj, name, loc) {\n if (!obj || !(name in obj)) {\n throw new _exception2['default']('\"' + name + '\" not defined in ' + obj, {\n loc: loc\n });\n }\n return obj[name];\n },\n lookupProperty: function lookupProperty(parent, propertyName) {\n var result = parent[propertyName];\n if (result == null) {\n return result;\n }\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return result;\n }\n\n if (_internalProtoAccess.resultIsAllowed(result, container.protoAccessControl, propertyName)) {\n return result;\n }\n return undefined;\n },\n lookup: function lookup(depths, name) {\n var len = depths.length;\n for (var i = 0; i < len; i++) {\n var result = depths[i] && container.lookupProperty(depths[i], name);\n if (result != null) {\n return depths[i][name];\n }\n }\n },\n lambda: function lambda(current, context) {\n return typeof current === 'function' ? current.call(context) : current;\n },\n\n escapeExpression: Utils.escapeExpression,\n invokePartial: invokePartialWrapper,\n\n fn: function fn(i) {\n var ret = templateSpec[i];\n ret.decorator = templateSpec[i + '_d'];\n return ret;\n },\n\n programs: [],\n program: function program(i, data, declaredBlockParams, blockParams, depths) {\n var programWrapper = this.programs[i],\n fn = this.fn(i);\n if (data || depths || blockParams || declaredBlockParams) {\n programWrapper = wrapProgram(this, i, fn, data, declaredBlockParams, blockParams, depths);\n } else if (!programWrapper) {\n programWrapper = this.programs[i] = wrapProgram(this, i, fn);\n }\n return programWrapper;\n },\n\n data: function data(value, depth) {\n while (value && depth--) {\n value = value._parent;\n }\n return value;\n },\n mergeIfNeeded: function mergeIfNeeded(param, common) {\n var obj = param || common;\n\n if (param && common && param !== common) {\n obj = Utils.extend({}, common, param);\n }\n\n return obj;\n },\n // An empty object to use as replacement for null-contexts\n nullContext: Object.seal({}),\n\n noop: env.VM.noop,\n compilerInfo: templateSpec.compiler\n };\n\n function ret(context) {\n var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];\n\n var data = options.data;\n\n ret._setup(options);\n if (!options.partial && templateSpec.useData) {\n data = initData(context, data);\n }\n var depths = undefined,\n blockParams = templateSpec.useBlockParams ? [] : undefined;\n if (templateSpec.useDepths) {\n if (options.depths) {\n depths = context != options.depths[0] ? [context].concat(options.depths) : options.depths;\n } else {\n depths = [context];\n }\n }\n\n function main(context /*, options*/) {\n return '' + templateSpec.main(container, context, container.helpers, container.partials, data, blockParams, depths);\n }\n\n main = executeDecorators(templateSpec.main, main, container, options.depths || [], data, blockParams);\n return main(context, options);\n }\n\n ret.isTop = true;\n\n ret._setup = function (options) {\n if (!options.partial) {\n var mergedHelpers = Utils.extend({}, env.helpers, options.helpers);\n wrapHelpersToPassLookupProperty(mergedHelpers, container);\n container.helpers = mergedHelpers;\n\n if (templateSpec.usePartial) {\n // Use mergeIfNeeded here to prevent compiling global partials multiple times\n container.partials = container.mergeIfNeeded(options.partials, env.partials);\n }\n if (templateSpec.usePartial || templateSpec.useDecorators) {\n container.decorators = Utils.extend({}, env.decorators, options.decorators);\n }\n\n container.hooks = {};\n container.protoAccessControl = _internalProtoAccess.createProtoAccessControl(options);\n\n var keepHelperInHelpers = options.allowCallsToHelperMissing || templateWasPrecompiledWithCompilerV7;\n _helpers.moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);\n _helpers.moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);\n } else {\n container.protoAccessControl = options.protoAccessControl; // internal option\n container.helpers = options.helpers;\n container.partials = options.partials;\n container.decorators = options.decorators;\n container.hooks = options.hooks;\n }\n };\n\n ret._child = function (i, data, blockParams, depths) {\n if (templateSpec.useBlockParams && !blockParams) {\n throw new _exception2['default']('must pass block params');\n }\n if (templateSpec.useDepths && !depths) {\n throw new _exception2['default']('must pass parent depths');\n }\n\n return wrapProgram(container, i, templateSpec[i], data, 0, blockParams, depths);\n };\n return ret;\n}\n\nfunction wrapProgram(container, i, fn, data, declaredBlockParams, blockParams, depths) {\n function prog(context) {\n var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];\n\n var currentDepths = depths;\n if (depths && context != depths[0] && !(context === container.nullContext && depths[0] === null)) {\n currentDepths = [context].concat(depths);\n }\n\n return fn(container, context, container.helpers, container.partials, options.data || data, blockParams && [options.blockParams].concat(blockParams), currentDepths);\n }\n\n prog = executeDecorators(fn, prog, container, depths, data, blockParams);\n\n prog.program = i;\n prog.depth = depths ? depths.length : 0;\n prog.blockParams = declaredBlockParams || 0;\n return prog;\n}\n\n/**\n * This is currently part of the official API, therefore implementation details should not be changed.\n */\n\nfunction resolvePartial(partial, context, options) {\n if (!partial) {\n if (options.name === '@partial-block') {\n partial = options.data['partial-block'];\n } else {\n partial = options.partials[options.name];\n }\n } else if (!partial.call && !options.name) {\n // This is a dynamic partial that returned a string\n options.name = partial;\n partial = options.partials[partial];\n }\n return partial;\n}\n\nfunction invokePartial(partial, context, options) {\n // Use the current closure context to save the partial-block if this partial\n var currentPartialBlock = options.data && options.data['partial-block'];\n options.partial = true;\n if (options.ids) {\n options.data.contextPath = options.ids[0] || options.data.contextPath;\n }\n\n var partialBlock = undefined;\n if (options.fn && options.fn !== noop) {\n (function () {\n options.data = _base.createFrame(options.data);\n // Wrapper function to get access to currentPartialBlock from the closure\n var fn = options.fn;\n partialBlock = options.data['partial-block'] = function partialBlockWrapper(context) {\n var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];\n\n // Restore the partial-block from the closure for the execution of the block\n // i.e. the part inside the block of the partial call.\n options.data = _base.createFrame(options.data);\n options.data['partial-block'] = currentPartialBlock;\n return fn(context, options);\n };\n if (fn.partials) {\n options.partials = Utils.extend({}, options.partials, fn.partials);\n }\n })();\n }\n\n if (partial === undefined && partialBlock) {\n partial = partialBlock;\n }\n\n if (partial === undefined) {\n throw new _exception2['default']('The partial ' + options.name + ' could not be found');\n } else if (partial instanceof Function) {\n return partial(context, options);\n }\n}\n\nfunction noop() {\n return '';\n}\n\nfunction initData(context, data) {\n if (!data || !('root' in data)) {\n data = data ? _base.createFrame(data) : {};\n data.root = context;\n }\n return data;\n}\n\nfunction executeDecorators(fn, prog, container, depths, data, blockParams) {\n if (fn.decorator) {\n var props = {};\n prog = fn.decorator(prog, props, container, depths && depths[0], data, blockParams, depths);\n Utils.extend(prog, props);\n }\n return prog;\n}\n\nfunction wrapHelpersToPassLookupProperty(mergedHelpers, container) {\n Object.keys(mergedHelpers).forEach(function (helperName) {\n var helper = mergedHelpers[helperName];\n mergedHelpers[helperName] = passLookupPropertyOption(helper, container);\n });\n}\n\nfunction passLookupPropertyOption(helper, container) {\n var lookupProperty = container.lookupProperty;\n return _internalWrapHelper.wrapHelper(helper, function (options) {\n return Utils.extend({ lookupProperty: lookupProperty }, options);\n });\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL3J1bnRpbWUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7cUJBQXVCLFNBQVM7O0lBQXBCLEtBQUs7O3lCQUNLLGFBQWE7Ozs7b0JBTTVCLFFBQVE7O3VCQUNtQixXQUFXOztrQ0FDbEIsdUJBQXVCOzttQ0FJM0MseUJBQXlCOztBQUV6QixTQUFTLGFBQWEsQ0FBQyxZQUFZLEVBQUU7QUFDMUMsTUFBTSxnQkFBZ0IsR0FBRyxBQUFDLFlBQVksSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUssQ0FBQztNQUM3RCxlQUFlLDBCQUFvQixDQUFDOztBQUV0QyxNQUNFLGdCQUFnQiwyQ0FBcUMsSUFDckQsZ0JBQWdCLDJCQUFxQixFQUNyQztBQUNBLFdBQU87R0FDUjs7QUFFRCxNQUFJLGdCQUFnQiwwQ0FBb0MsRUFBRTtBQUN4RCxRQUFNLGVBQWUsR0FBRyx1QkFBaUIsZUFBZSxDQUFDO1FBQ3ZELGdCQUFnQixHQUFHLHVCQUFpQixnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3hELFVBQU0sMkJBQ0oseUZBQXlGLEdBQ3ZGLHFEQUFxRCxHQUNyRCxlQUFlLEdBQ2YsbURBQW1ELEdBQ25ELGdCQUFnQixHQUNoQixJQUFJLENBQ1AsQ0FBQztHQUNILE1BQU07O0FBRUwsVUFBTSwyQkFDSix3RkFBd0YsR0FDdEYsaURBQWlELEdBQ2pELFlBQVksQ0FBQyxDQUFDLENBQUMsR0FDZixJQUFJLENBQ1AsQ0FBQztHQUNIO0NBQ0Y7O0FBRU0sU0FBUyxRQUFRLENBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRTs7QUFFMUMsTUFBSSxDQUFDLEdBQUcsRUFBRTtBQUNSLFVBQU0sMkJBQWMsbUNBQW1DLENBQUMsQ0FBQztHQUMxRDtBQUNELE1BQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFO0FBQ3ZDLFVBQU0sMkJBQWMsMkJBQTJCLEdBQUcsT0FBTyxZQUFZLENBQUMsQ0FBQztHQUN4RTs7QUFFRCxjQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDOzs7O0FBSWxELEtBQUcsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQzs7O0FBRzVDLE1BQU0sb0NBQW9DLEdBQ3hDLFlBQVksQ0FBQyxRQUFRLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7O0FBRTFELFdBQVMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUU7QUFDdkQsUUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFO0FBQ2hCLGFBQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2xELFVBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUNmLGVBQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO09BQ3ZCO0tBQ0Y7QUFDRCxXQUFPLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDOztBQUV0RSxRQUFJLGVBQWUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7QUFDOUMsV0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO0FBQ2pCLHdCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7S0FDNUMsQ0FBQyxDQUFDOztBQUVILFFBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDcEMsSUFBSSxFQUNKLE9BQU8sRUFDUCxPQUFPLEVBQ1AsZUFBZSxDQUNoQixDQUFDOztBQUVGLFFBQUksTUFBTSxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFO0FBQ2pDLGFBQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQzFDLE9BQU8sRUFDUCxZQUFZLENBQUMsZUFBZSxFQUM1QixHQUFHLENBQ0osQ0FBQztBQUNGLFlBQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLENBQUM7S0FDbkU7QUFDRCxRQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUU7QUFDbEIsVUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO0FBQ2xCLFlBQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDL0IsYUFBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUM1QyxjQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO0FBQzVCLGtCQUFNO1dBQ1A7O0FBRUQsZUFBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3RDO0FBQ0QsY0FBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7T0FDM0I7QUFDRCxhQUFPLE1BQU0sQ0FBQztLQUNmLE1BQU07QUFDTCxZQUFNLDJCQUNKLGNBQWMsR0FDWixPQUFPLENBQUMsSUFBSSxHQUNaLDBEQUEwRCxDQUM3RCxDQUFDO0tBQ0g7R0FDRjs7O0FBR0QsTUFBSSxTQUFTLEdBQUc7QUFDZCxVQUFNLEVBQUUsZ0JBQVMsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUU7QUFDL0IsVUFBSSxDQUFDLEdBQUcsSUFBSSxFQUFFLElBQUksSUFBSSxHQUFHLENBQUEsQUFBQyxFQUFFO0FBQzFCLGNBQU0sMkJBQWMsR0FBRyxHQUFHLElBQUksR0FBRyxtQkFBbUIsR0FBRyxHQUFHLEVBQUU7QUFDMUQsYUFBRyxFQUFFLEdBQUc7U0FDVCxDQUFDLENBQUM7T0FDSjtBQUNELGFBQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ2xCO0FBQ0Qsa0JBQWMsRUFBRSx3QkFBUyxNQUFNLEVBQUUsWUFBWSxFQUFFO0FBQzdDLFVBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNsQyxVQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUU7QUFDbEIsZUFBTyxNQUFNLENBQUM7T0FDZjtBQUNELFVBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsRUFBRTtBQUM5RCxlQUFPLE1BQU0sQ0FBQztPQUNmOztBQUVELFVBQUkscUNBQWdCLE1BQU0sRUFBRSxTQUFTLENBQUMsa0JBQWtCLEVBQUUsWUFBWSxDQUFDLEVBQUU7QUFDdkUsZUFBTyxNQUFNLENBQUM7T0FDZjtBQUNELGFBQU8sU0FBUyxDQUFDO0tBQ2xCO0FBQ0QsVUFBTSxFQUFFLGdCQUFTLE1BQU0sRUFBRSxJQUFJLEVBQUU7QUFDN0IsVUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztBQUMxQixXQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO0FBQzVCLFlBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNwRSxZQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUU7QUFDbEIsaUJBQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hCO09BQ0Y7S0FDRjtBQUNELFVBQU0sRUFBRSxnQkFBUyxPQUFPLEVBQUUsT0FBTyxFQUFFO0FBQ2pDLGFBQU8sT0FBTyxPQUFPLEtBQUssVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDO0tBQ3hFOztBQUVELG9CQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7QUFDeEMsaUJBQWEsRUFBRSxvQkFBb0I7O0FBRW5DLE1BQUUsRUFBRSxZQUFTLENBQUMsRUFBRTtBQUNkLFVBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMxQixTQUFHLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7QUFDdkMsYUFBTyxHQUFHLENBQUM7S0FDWjs7QUFFRCxZQUFRLEVBQUUsRUFBRTtBQUNaLFdBQU8sRUFBRSxpQkFBUyxDQUFDLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUU7QUFDbkUsVUFBSSxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7VUFDbkMsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEIsVUFBSSxJQUFJLElBQUksTUFBTSxJQUFJLFdBQVcsSUFBSSxtQkFBbUIsRUFBRTtBQUN4RCxzQkFBYyxHQUFHLFdBQVcsQ0FDMUIsSUFBSSxFQUNKLENBQUMsRUFDRCxFQUFFLEVBQ0YsSUFBSSxFQUNKLG1CQUFtQixFQUNuQixXQUFXLEVBQ1gsTUFBTSxDQUNQLENBQUM7T0FDSCxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUU7QUFDMUIsc0JBQWMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO09BQzlEO0FBQ0QsYUFBTyxjQUFjLENBQUM7S0FDdkI7O0FBRUQsUUFBSSxFQUFFLGNBQVMsS0FBSyxFQUFFLEtBQUssRUFBRTtBQUMzQixhQUFPLEtBQUssSUFBSSxLQUFLLEVBQUUsRUFBRTtBQUN2QixhQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztPQUN2QjtBQUNELGFBQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDRCxpQkFBYSxFQUFFLHVCQUFTLEtBQUssRUFBRSxNQUFNLEVBQUU7QUFDckMsVUFBSSxHQUFHLEdBQUcsS0FBSyxJQUFJLE1BQU0sQ0FBQzs7QUFFMUIsVUFBSSxLQUFLLElBQUksTUFBTSxJQUFJLEtBQUssS0FBSyxNQUFNLEVBQUU7QUFDdkMsV0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztPQUN2Qzs7QUFFRCxhQUFPLEdBQUcsQ0FBQztLQUNaOztBQUVELGVBQVcsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzs7QUFFNUIsUUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSTtBQUNqQixnQkFBWSxFQUFFLFlBQVksQ0FBQyxRQUFRO0dBQ3BDLENBQUM7O0FBRUYsV0FBUyxHQUFHLENBQUMsT0FBTyxFQUFnQjtRQUFkLE9BQU8seURBQUcsRUFBRTs7QUFDaEMsUUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQzs7QUFFeEIsT0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNwQixRQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFO0FBQzVDLFVBQUksR0FBRyxRQUFRLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQ2hDO0FBQ0QsUUFBSSxNQUFNLFlBQUE7UUFDUixXQUFXLEdBQUcsWUFBWSxDQUFDLGNBQWMsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO0FBQzdELFFBQUksWUFBWSxDQUFDLFNBQVMsRUFBRTtBQUMxQixVQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7QUFDbEIsY0FBTSxHQUNKLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUN4QixDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQ2hDLE9BQU8sQ0FBQyxNQUFNLENBQUM7T0FDdEIsTUFBTTtBQUNMLGNBQU0sR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO09BQ3BCO0tBQ0Y7O0FBRUQsYUFBUyxJQUFJLENBQUMsT0FBTyxnQkFBZ0I7QUFDbkMsYUFDRSxFQUFFLEdBQ0YsWUFBWSxDQUFDLElBQUksQ0FDZixTQUFTLEVBQ1QsT0FBTyxFQUNQLFNBQVMsQ0FBQyxPQUFPLEVBQ2pCLFNBQVMsQ0FBQyxRQUFRLEVBQ2xCLElBQUksRUFDSixXQUFXLEVBQ1gsTUFBTSxDQUNQLENBQ0Q7S0FDSDs7QUFFRCxRQUFJLEdBQUcsaUJBQWlCLENBQ3RCLFlBQVksQ0FBQyxJQUFJLEVBQ2pCLElBQUksRUFDSixTQUFTLEVBQ1QsT0FBTyxDQUFDLE1BQU0sSUFBSSxFQUFFLEVBQ3BCLElBQUksRUFDSixXQUFXLENBQ1osQ0FBQztBQUNGLFdBQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztHQUMvQjs7QUFFRCxLQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQzs7QUFFakIsS0FBRyxDQUFDLE1BQU0sR0FBRyxVQUFTLE9BQU8sRUFBRTtBQUM3QixRQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtBQUNwQixVQUFJLGFBQWEsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNuRSxxQ0FBK0IsQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDMUQsZUFBUyxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQUM7O0FBRWxDLFVBQUksWUFBWSxDQUFDLFVBQVUsRUFBRTs7QUFFM0IsaUJBQVMsQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FDMUMsT0FBTyxDQUFDLFFBQVEsRUFDaEIsR0FBRyxDQUFDLFFBQVEsQ0FDYixDQUFDO09BQ0g7QUFDRCxVQUFJLFlBQVksQ0FBQyxVQUFVLElBQUksWUFBWSxDQUFDLGFBQWEsRUFBRTtBQUN6RCxpQkFBUyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNqQyxFQUFFLEVBQ0YsR0FBRyxDQUFDLFVBQVUsRUFDZCxPQUFPLENBQUMsVUFBVSxDQUNuQixDQUFDO09BQ0g7O0FBRUQsZUFBUyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7QUFDckIsZUFBUyxDQUFDLGtCQUFrQixHQUFHLDhDQUF5QixPQUFPLENBQUMsQ0FBQzs7QUFFakUsVUFBSSxtQkFBbUIsR0FDckIsT0FBTyxDQUFDLHlCQUF5QixJQUNqQyxvQ0FBb0MsQ0FBQztBQUN2QyxpQ0FBa0IsU0FBUyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0FBQ25FLGlDQUFrQixTQUFTLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztLQUN6RSxNQUFNO0FBQ0wsZUFBUyxDQUFDLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztBQUMxRCxlQUFTLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7QUFDcEMsZUFBUyxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO0FBQ3RDLGVBQVMsQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQztBQUMxQyxlQUFTLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7S0FDakM7R0FDRixDQUFDOztBQUVGLEtBQUcsQ0FBQyxNQUFNLEdBQUcsVUFBUyxDQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUU7QUFDbEQsUUFBSSxZQUFZLENBQUMsY0FBYyxJQUFJLENBQUMsV0FBVyxFQUFFO0FBQy9DLFlBQU0sMkJBQWMsd0JBQXdCLENBQUMsQ0FBQztLQUMvQztBQUNELFFBQUksWUFBWSxDQUFDLFNBQVMsSUFBSSxDQUFDLE1BQU0sRUFBRTtBQUNyQyxZQUFNLDJCQUFjLHlCQUF5QixDQUFDLENBQUM7S0FDaEQ7O0FBRUQsV0FBTyxXQUFXLENBQ2hCLFNBQVMsRUFDVCxDQUFDLEVBQ0QsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUNmLElBQUksRUFDSixDQUFDLEVBQ0QsV0FBVyxFQUNYLE1BQU0sQ0FDUCxDQUFDO0dBQ0gsQ0FBQztBQUNGLFNBQU8sR0FBRyxDQUFDO0NBQ1o7O0FBRU0sU0FBUyxXQUFXLENBQ3pCLFNBQVMsRUFDVCxDQUFDLEVBQ0QsRUFBRSxFQUNGLElBQUksRUFDSixtQkFBbUIsRUFDbkIsV0FBVyxFQUNYLE1BQU0sRUFDTjtBQUNBLFdBQVMsSUFBSSxDQUFDLE9BQU8sRUFBZ0I7UUFBZCxPQUFPLHlEQUFHLEVBQUU7O0FBQ2pDLFFBQUksYUFBYSxHQUFHLE1BQU0sQ0FBQztBQUMzQixRQUNFLE1BQU0sSUFDTixPQUFPLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUNwQixFQUFFLE9BQU8sS0FBSyxTQUFTLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUEsQUFBQyxFQUMxRDtBQUNBLG1CQUFhLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDMUM7O0FBRUQsV0FBTyxFQUFFLENBQ1AsU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLENBQUMsT0FBTyxFQUNqQixTQUFTLENBQUMsUUFBUSxFQUNsQixPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksRUFDcEIsV0FBVyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFDeEQsYUFBYSxDQUNkLENBQUM7R0FDSDs7QUFFRCxNQUFJLEdBQUcsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQzs7QUFFekUsTUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7QUFDakIsTUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFDeEMsTUFBSSxDQUFDLFdBQVcsR0FBRyxtQkFBbUIsSUFBSSxDQUFDLENBQUM7QUFDNUMsU0FBTyxJQUFJLENBQUM7Q0FDYjs7Ozs7O0FBS00sU0FBUyxjQUFjLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUU7QUFDeEQsTUFBSSxDQUFDLE9BQU8sRUFBRTtBQUNaLFFBQUksT0FBTyxDQUFDLElBQUksS0FBSyxnQkFBZ0IsRUFBRTtBQUNyQyxhQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztLQUN6QyxNQUFNO0FBQ0wsYUFBTyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQzFDO0dBQ0YsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUU7O0FBRXpDLFdBQU8sQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO0FBQ3ZCLFdBQU8sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0dBQ3JDO0FBQ0QsU0FBTyxPQUFPLENBQUM7Q0FDaEI7O0FBRU0sU0FBUyxhQUFhLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUU7O0FBRXZELE1BQU0sbUJBQW1CLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBQzFFLFNBQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0FBQ3ZCLE1BQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtBQUNmLFdBQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7R0FDdkU7O0FBRUQsTUFBSSxZQUFZLFlBQUEsQ0FBQztBQUNqQixNQUFJLE9BQU8sQ0FBQyxFQUFFLElBQUksT0FBTyxDQUFDLEVBQUUsS0FBSyxJQUFJLEVBQUU7O0FBQ3JDLGFBQU8sQ0FBQyxJQUFJLEdBQUcsa0JBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDOztBQUV6QyxVQUFJLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDO0FBQ3BCLGtCQUFZLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxTQUFTLG1CQUFtQixDQUN6RSxPQUFPLEVBRVA7WUFEQSxPQUFPLHlEQUFHLEVBQUU7Ozs7QUFJWixlQUFPLENBQUMsSUFBSSxHQUFHLGtCQUFZLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN6QyxlQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLG1CQUFtQixDQUFDO0FBQ3BELGVBQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztPQUM3QixDQUFDO0FBQ0YsVUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFO0FBQ2YsZUFBTyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztPQUNwRTs7R0FDRjs7QUFFRCxNQUFJLE9BQU8sS0FBSyxTQUFTLElBQUksWUFBWSxFQUFFO0FBQ3pDLFdBQU8sR0FBRyxZQUFZLENBQUM7R0FDeEI7O0FBRUQsTUFBSSxPQUFPLEtBQUssU0FBUyxFQUFFO0FBQ3pCLFVBQU0sMkJBQWMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxJQUFJLEdBQUcscUJBQXFCLENBQUMsQ0FBQztHQUM1RSxNQUFNLElBQUksT0FBTyxZQUFZLFFBQVEsRUFBRTtBQUN0QyxXQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7R0FDbEM7Q0FDRjs7QUFFTSxTQUFTLElBQUksR0FBRztBQUNyQixTQUFPLEVBQUUsQ0FBQztDQUNYOztBQUVELFNBQVMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUU7QUFDL0IsTUFBSSxDQUFDLElBQUksSUFBSSxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUEsQUFBQyxFQUFFO0FBQzlCLFFBQUksR0FBRyxJQUFJLEdBQUcsa0JBQVksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0FBQ3JDLFFBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO0dBQ3JCO0FBQ0QsU0FBTyxJQUFJLENBQUM7Q0FDYjs7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO0FBQ3pFLE1BQUksRUFBRSxDQUFDLFNBQVMsRUFBRTtBQUNoQixRQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7QUFDZixRQUFJLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FDakIsSUFBSSxFQUNKLEtBQUssRUFDTCxTQUFTLEVBQ1QsTUFBTSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFDbkIsSUFBSSxFQUNKLFdBQVcsRUFDWCxNQUFNLENBQ1AsQ0FBQztBQUNGLFNBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0dBQzNCO0FBQ0QsU0FBTyxJQUFJLENBQUM7Q0FDYjs7QUFFRCxTQUFTLCtCQUErQixDQUFDLGFBQWEsRUFBRSxTQUFTLEVBQUU7QUFDakUsUUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQSxVQUFVLEVBQUk7QUFDL0MsUUFBSSxNQUFNLEdBQUcsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQ3ZDLGlCQUFhLENBQUMsVUFBVSxDQUFDLEdBQUcsd0JBQXdCLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0dBQ3pFLENBQUMsQ0FBQztDQUNKOztBQUVELFNBQVMsd0JBQXdCLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRTtBQUNuRCxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUMsY0FBYyxDQUFDO0FBQ2hELFNBQU8sK0JBQVcsTUFBTSxFQUFFLFVBQUEsT0FBTyxFQUFJO0FBQ25DLFdBQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLGNBQWMsRUFBZCxjQUFjLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztHQUNsRCxDQUFDLENBQUM7Q0FDSiIsImZpbGUiOiJydW50aW1lLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gJy4vZXhjZXB0aW9uJztcbmltcG9ydCB7XG4gIENPTVBJTEVSX1JFVklTSU9OLFxuICBjcmVhdGVGcmFtZSxcbiAgTEFTVF9DT01QQVRJQkxFX0NPTVBJTEVSX1JFVklTSU9OLFxuICBSRVZJU0lPTl9DSEFOR0VTXG59IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBtb3ZlSGVscGVyVG9Ib29rcyB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyB3cmFwSGVscGVyIH0gZnJvbSAnLi9pbnRlcm5hbC93cmFwSGVscGVyJztcbmltcG9ydCB7XG4gIGNyZWF0ZVByb3RvQWNjZXNzQ29udHJvbCxcbiAgcmVzdWx0SXNBbGxvd2VkXG59IGZyb20gJy4vaW50ZXJuYWwvcHJvdG8tYWNjZXNzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrUmV2aXNpb24oY29tcGlsZXJJbmZvKSB7XG4gIGNvbnN0IGNvbXBpbGVyUmV2aXNpb24gPSAoY29tcGlsZXJJbmZvICYmIGNvbXBpbGVySW5mb1swXSkgfHwgMSxcbiAgICBjdXJyZW50UmV2aXNpb24gPSBDT01QSUxFUl9SRVZJU0lPTjtcblxuICBpZiAoXG4gICAgY29tcGlsZXJSZXZpc2lvbiA+PSBMQVNUX0NPTVBBVElCTEVfQ09NUElMRVJfUkVWSVNJT04gJiZcbiAgICBjb21waWxlclJldmlzaW9uIDw9IENPTVBJTEVSX1JFVklTSU9OXG4gICkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmIChjb21waWxlclJldmlzaW9uIDwgTEFTVF9DT01QQVRJQkxFX0NPTVBJTEVSX1JFVklTSU9OKSB7XG4gICAgY29uc3QgcnVudGltZVZlcnNpb25zID0gUkVWSVNJT05fQ0hBTkdFU1tjdXJyZW50UmV2aXNpb25dLFxuICAgICAgY29tcGlsZXJWZXJzaW9ucyA9IFJFVklTSU9OX0NIQU5HRVNbY29tcGlsZXJSZXZpc2lvbl07XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICdUZW1wbGF0ZSB3YXMgcHJlY29tcGlsZWQgd2l0aCBhbiBvbGRlciB2ZXJzaW9uIG9mIEhhbmRsZWJhcnMgdGhhbiB0aGUgY3VycmVudCBydW50aW1lLiAnICtcbiAgICAgICAgJ1BsZWFzZSB1cGRhdGUgeW91ciBwcmVjb21waWxlciB0byBhIG5ld2VyIHZlcnNpb24gKCcgK1xuICAgICAgICBydW50aW1lVmVyc2lvbnMgK1xuICAgICAgICAnKSBvciBkb3duZ3JhZGUgeW91ciBydW50aW1lIHRvIGFuIG9sZGVyIHZlcnNpb24gKCcgK1xuICAgICAgICBjb21waWxlclZlcnNpb25zICtcbiAgICAgICAgJykuJ1xuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgLy8gVXNlIHRoZSBlbWJlZGRlZCB2ZXJzaW9uIGluZm8gc2luY2UgdGhlIHJ1bnRpbWUgZG9lc24ndCBrbm93IGFib3V0IHRoaXMgcmV2aXNpb24geWV0XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICdUZW1wbGF0ZSB3YXMgcHJlY29tcGlsZWQgd2l0aCBhIG5ld2VyIHZlcnNpb24gb2YgSGFuZGxlYmFycyB0aGFuIHRoZSBjdXJyZW50IHJ1bnRpbWUuICcgK1xuICAgICAgICAnUGxlYXNlIHVwZGF0ZSB5b3VyIHJ1bnRpbWUgdG8gYSBuZXdlciB2ZXJzaW9uICgnICtcbiAgICAgICAgY29tcGlsZXJJbmZvWzFdICtcbiAgICAgICAgJykuJ1xuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlbXBsYXRlKHRlbXBsYXRlU3BlYywgZW52KSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGlmICghZW52KSB7XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignTm8gZW52aXJvbm1lbnQgcGFzc2VkIHRvIHRlbXBsYXRlJyk7XG4gIH1cbiAgaWYgKCF0ZW1wbGF0ZVNwZWMgfHwgIXRlbXBsYXRlU3BlYy5tYWluKSB7XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignVW5rbm93biB0ZW1wbGF0ZSBvYmplY3Q6ICcgKyB0eXBlb2YgdGVtcGxhdGVTcGVjKTtcbiAgfVxuXG4gIHRlbXBsYXRlU3BlYy5tYWluLmRlY29yYXRvciA9IHRlbXBsYXRlU3BlYy5tYWluX2Q7XG5cbiAgLy8gTm90ZTogVXNpbmcgZW52LlZNIHJlZmVyZW5jZXMgcmF0aGVyIHRoYW4gbG9jYWwgdmFyIHJlZmVyZW5jZXMgdGhyb3VnaG91dCB0aGlzIHNlY3Rpb24gdG8gYWxsb3dcbiAgLy8gZm9yIGV4dGVybmFsIHVzZXJzIHRvIG92ZXJyaWRlIHRoZXNlIGFzIHBzZXVkby1zdXBwb3J0ZWQgQVBJcy5cbiAgZW52LlZNLmNoZWNrUmV2aXNpb24odGVtcGxhdGVTcGVjLmNvbXBpbGVyKTtcblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBmb3IgcHJlY29tcGlsZWQgdGVtcGxhdGVzIHdpdGggY29tcGlsZXItdmVyc2lvbiA3ICg8NC4zLjApXG4gIGNvbnN0IHRlbXBsYXRlV2FzUHJlY29tcGlsZWRXaXRoQ29tcGlsZXJWNyA9XG4gICAgdGVtcGxhdGVTcGVjLmNvbXBpbGVyICYmIHRlbXBsYXRlU3BlYy5jb21waWxlclswXSA9PT0gNztcblxuICBmdW5jdGlvbiBpbnZva2VQYXJ0aWFsV3JhcHBlcihwYXJ0aWFsLCBjb250ZXh0LCBvcHRpb25zKSB7XG4gICAgaWYgKG9wdGlvbnMuaGFzaCkge1xuICAgICAgY29udGV4dCA9IFV0aWxzLmV4dGVuZCh7fSwgY29udGV4dCwgb3B0aW9ucy5oYXNoKTtcbiAgICAgIGlmIChvcHRpb25zLmlkcykge1xuICAgICAgICBvcHRpb25zLmlkc1swXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHBhcnRpYWwgPSBlbnYuVk0ucmVzb2x2ZVBhcnRpYWwuY2FsbCh0aGlzLCBwYXJ0aWFsLCBjb250ZXh0LCBvcHRpb25zKTtcblxuICAgIGxldCBleHRlbmRlZE9wdGlvbnMgPSBVdGlscy5leHRlbmQoe30sIG9wdGlvbnMsIHtcbiAgICAgIGhvb2tzOiB0aGlzLmhvb2tzLFxuICAgICAgcHJvdG9BY2Nlc3NDb250cm9sOiB0aGlzLnByb3RvQWNjZXNzQ29udHJvbFxuICAgIH0pO1xuXG4gICAgbGV0IHJlc3VsdCA9IGVudi5WTS5pbnZva2VQYXJ0aWFsLmNhbGwoXG4gICAgICB0aGlzLFxuICAgICAgcGFydGlhbCxcbiAgICAgIGNvbnRleHQsXG4gICAgICBleHRlbmRlZE9wdGlvbnNcbiAgICApO1xuXG4gICAgaWYgKHJlc3VsdCA9PSBudWxsICYmIGVudi5jb21waWxlKSB7XG4gICAgICBvcHRpb25zLnBhcnRpYWxzW29wdGlvbnMubmFtZV0gPSBlbnYuY29tcGlsZShcbiAgICAgICAgcGFydGlhbCxcbiAgICAgICAgdGVtcGxhdGVTcGVjLmNvbXBpbGVyT3B0aW9ucyxcbiAgICAgICAgZW52XG4gICAgICApO1xuICAgICAgcmVzdWx0ID0gb3B0aW9ucy5wYXJ0aWFsc1tvcHRpb25zLm5hbWVdKGNvbnRleHQsIGV4dGVuZGVkT3B0aW9ucyk7XG4gICAgfVxuICAgIGlmIChyZXN1bHQgIT0gbnVsbCkge1xuICAgICAgaWYgKG9wdGlvbnMuaW5kZW50KSB7XG4gICAgICAgIGxldCBsaW5lcyA9IHJlc3VsdC5zcGxpdCgnXFxuJyk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBsID0gbGluZXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgaWYgKCFsaW5lc1tpXSAmJiBpICsgMSA9PT0gbCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGluZXNbaV0gPSBvcHRpb25zLmluZGVudCArIGxpbmVzW2ldO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdCA9IGxpbmVzLmpvaW4oJ1xcbicpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbihcbiAgICAgICAgJ1RoZSBwYXJ0aWFsICcgK1xuICAgICAgICAgIG9wdGlvbnMubmFtZSArXG4gICAgICAgICAgJyBjb3VsZCBub3QgYmUgY29tcGlsZWQgd2hlbiBydW5uaW5nIGluIHJ1bnRpbWUtb25seSBtb2RlJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvLyBKdXN0IGFkZCB3YXRlclxuICBsZXQgY29udGFpbmVyID0ge1xuICAgIHN0cmljdDogZnVuY3Rpb24ob2JqLCBuYW1lLCBsb2MpIHtcbiAgICAgIGlmICghb2JqIHx8ICEobmFtZSBpbiBvYmopKSB7XG4gICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ1wiJyArIG5hbWUgKyAnXCIgbm90IGRlZmluZWQgaW4gJyArIG9iaiwge1xuICAgICAgICAgIGxvYzogbG9jXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG9ialtuYW1lXTtcbiAgICB9LFxuICAgIGxvb2t1cFByb3BlcnR5OiBmdW5jdGlvbihwYXJlbnQsIHByb3BlcnR5TmFtZSkge1xuICAgICAgbGV0IHJlc3VsdCA9IHBhcmVudFtwcm9wZXJ0eU5hbWVdO1xuICAgICAgaWYgKHJlc3VsdCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHBhcmVudCwgcHJvcGVydHlOYW1lKSkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuXG4gICAgICBpZiAocmVzdWx0SXNBbGxvd2VkKHJlc3VsdCwgY29udGFpbmVyLnByb3RvQWNjZXNzQ29udHJvbCwgcHJvcGVydHlOYW1lKSkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9LFxuICAgIGxvb2t1cDogZnVuY3Rpb24oZGVwdGhzLCBuYW1lKSB7XG4gICAgICBjb25zdCBsZW4gPSBkZXB0aHMubGVuZ3RoO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xuICAgICAgICBsZXQgcmVzdWx0ID0gZGVwdGhzW2ldICYmIGNvbnRhaW5lci5sb29rdXBQcm9wZXJ0eShkZXB0aHNbaV0sIG5hbWUpO1xuICAgICAgICBpZiAocmVzdWx0ICE9IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gZGVwdGhzW2ldW25hbWVdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBsYW1iZGE6IGZ1bmN0aW9uKGN1cnJlbnQsIGNvbnRleHQpIHtcbiAgICAgIHJldHVybiB0eXBlb2YgY3VycmVudCA9PT0gJ2Z1bmN0aW9uJyA/IGN1cnJlbnQuY2FsbChjb250ZXh0KSA6IGN1cnJlbnQ7XG4gICAgfSxcblxuICAgIGVzY2FwZUV4cHJlc3Npb246IFV0aWxzLmVzY2FwZUV4cHJlc3Npb24sXG4gICAgaW52b2tlUGFydGlhbDogaW52b2tlUGFydGlhbFdyYXBwZXIsXG5cbiAgICBmbjogZnVuY3Rpb24oaSkge1xuICAgICAgbGV0IHJldCA9IHRlbXBsYXRlU3BlY1tpXTtcbiAgICAgIHJldC5kZWNvcmF0b3IgPSB0ZW1wbGF0ZVNwZWNbaSArICdfZCddO1xuICAgICAgcmV0dXJuIHJldDtcbiAgICB9LFxuXG4gICAgcHJvZ3JhbXM6IFtdLFxuICAgIHByb2dyYW06IGZ1bmN0aW9uKGksIGRhdGEsIGRlY2xhcmVkQmxvY2tQYXJhbXMsIGJsb2NrUGFyYW1zLCBkZXB0aHMpIHtcbiAgICAgIGxldCBwcm9ncmFtV3JhcHBlciA9IHRoaXMucHJvZ3JhbXNbaV0sXG4gICAgICAgIGZuID0gdGhpcy5mbihpKTtcbiAgICAgIGlmIChkYXRhIHx8IGRlcHRocyB8fCBibG9ja1BhcmFtcyB8fCBkZWNsYXJlZEJsb2NrUGFyYW1zKSB7XG4gICAgICAgIHByb2dyYW1XcmFwcGVyID0gd3JhcFByb2dyYW0oXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgICBpLFxuICAgICAgICAgIGZuLFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgZGVjbGFyZWRCbG9ja1BhcmFtcyxcbiAgICAgICAgICBibG9ja1BhcmFtcyxcbiAgICAgICAgICBkZXB0aHNcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAoIXByb2dyYW1XcmFwcGVyKSB7XG4gICAgICAgIHByb2dyYW1XcmFwcGVyID0gdGhpcy5wcm9ncmFtc1tpXSA9IHdyYXBQcm9ncmFtKHRoaXMsIGksIGZuKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBwcm9ncmFtV3JhcHBlcjtcbiAgICB9LFxuXG4gICAgZGF0YTogZnVuY3Rpb24odmFsdWUsIGRlcHRoKSB7XG4gICAgICB3aGlsZSAodmFsdWUgJiYgZGVwdGgtLSkge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlLl9wYXJlbnQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfSxcbiAgICBtZXJnZUlmTmVlZGVkOiBmdW5jdGlvbihwYXJhbSwgY29tbW9uKSB7XG4gICAgICBsZXQgb2JqID0gcGFyYW0gfHwgY29tbW9uO1xuXG4gICAgICBpZiAocGFyYW0gJiYgY29tbW9uICYmIHBhcmFtICE9PSBjb21tb24pIHtcbiAgICAgICAgb2JqID0gVXRpbHMuZXh0ZW5kKHt9LCBjb21tb24sIHBhcmFtKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG9iajtcbiAgICB9LFxuICAgIC8vIEFuIGVtcHR5IG9iamVjdCB0byB1c2UgYXMgcmVwbGFjZW1lbnQgZm9yIG51bGwtY29udGV4dHNcbiAgICBudWxsQ29udGV4dDogT2JqZWN0LnNlYWwoe30pLFxuXG4gICAgbm9vcDogZW52LlZNLm5vb3AsXG4gICAgY29tcGlsZXJJbmZvOiB0ZW1wbGF0ZVNwZWMuY29tcGlsZXJcbiAgfTtcblxuICBmdW5jdGlvbiByZXQoY29udGV4dCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgbGV0IGRhdGEgPSBvcHRpb25zLmRhdGE7XG5cbiAgICByZXQuX3NldHVwKG9wdGlvbnMpO1xuICAgIGlmICghb3B0aW9ucy5wYXJ0aWFsICYmIHRlbXBsYXRlU3BlYy51c2VEYXRhKSB7XG4gICAgICBkYXRhID0gaW5pdERhdGEoY29udGV4dCwgZGF0YSk7XG4gICAgfVxuICAgIGxldCBkZXB0aHMsXG4gICAgICBibG9ja1BhcmFtcyA9IHRlbXBsYXRlU3BlYy51c2VCbG9ja1BhcmFtcyA/IFtdIDogdW5kZWZpbmVkO1xuICAgIGlmICh0ZW1wbGF0ZVNwZWMudXNlRGVwdGhzKSB7XG4gICAgICBpZiAob3B0aW9ucy5kZXB0aHMpIHtcbiAgICAgICAgZGVwdGhzID1cbiAgICAgICAgICBjb250ZXh0ICE9IG9wdGlvbnMuZGVwdGhzWzBdXG4gICAgICAgICAgICA/IFtjb250ZXh0XS5jb25jYXQob3B0aW9ucy5kZXB0aHMpXG4gICAgICAgICAgICA6IG9wdGlvbnMuZGVwdGhzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGVwdGhzID0gW2NvbnRleHRdO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIG1haW4oY29udGV4dCAvKiwgb3B0aW9ucyovKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAnJyArXG4gICAgICAgIHRlbXBsYXRlU3BlYy5tYWluKFxuICAgICAgICAgIGNvbnRhaW5lcixcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgIGNvbnRhaW5lci5oZWxwZXJzLFxuICAgICAgICAgIGNvbnRhaW5lci5wYXJ0aWFscyxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGJsb2NrUGFyYW1zLFxuICAgICAgICAgIGRlcHRoc1xuICAgICAgICApXG4gICAgICApO1xuICAgIH1cblxuICAgIG1haW4gPSBleGVjdXRlRGVjb3JhdG9ycyhcbiAgICAgIHRlbXBsYXRlU3BlYy5tYWluLFxuICAgICAgbWFpbixcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIG9wdGlvbnMuZGVwdGhzIHx8IFtdLFxuICAgICAgZGF0YSxcbiAgICAgIGJsb2NrUGFyYW1zXG4gICAgKTtcbiAgICByZXR1cm4gbWFpbihjb250ZXh0LCBvcHRpb25zKTtcbiAgfVxuXG4gIHJldC5pc1RvcCA9IHRydWU7XG5cbiAgcmV0Ll9zZXR1cCA9IGZ1bmN0aW9uKG9wdGlvbnMpIHtcbiAgICBpZiAoIW9wdGlvbnMucGFydGlhbCkge1xuICAgICAgbGV0IG1lcmdlZEhlbHBlcnMgPSBVdGlscy5leHRlbmQoe30sIGVudi5oZWxwZXJzLCBvcHRpb25zLmhlbHBlcnMpO1xuICAgICAgd3JhcEhlbHBlcnNUb1Bhc3NMb29rdXBQcm9wZXJ0eShtZXJnZWRIZWxwZXJzLCBjb250YWluZXIpO1xuICAgICAgY29udGFpbmVyLmhlbHBlcnMgPSBtZXJnZWRIZWxwZXJzO1xuXG4gICAgICBpZiAodGVtcGxhdGVTcGVjLnVzZVBhcnRpYWwpIHtcbiAgICAgICAgLy8gVXNlIG1lcmdlSWZOZWVkZWQgaGVyZSB0byBwcmV2ZW50IGNvbXBpbGluZyBnbG9iYWwgcGFydGlhbHMgbXVsdGlwbGUgdGltZXNcbiAgICAgICAgY29udGFpbmVyLnBhcnRpYWxzID0gY29udGFpbmVyLm1lcmdlSWZOZWVkZWQoXG4gICAgICAgICAgb3B0aW9ucy5wYXJ0aWFscyxcbiAgICAgICAgICBlbnYucGFydGlhbHNcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmICh0ZW1wbGF0ZVNwZWMudXNlUGFydGlhbCB8fCB0ZW1wbGF0ZVNwZWMudXNlRGVjb3JhdG9ycykge1xuICAgICAgICBjb250YWluZXIuZGVjb3JhdG9ycyA9IFV0aWxzLmV4dGVuZChcbiAgICAgICAgICB7fSxcbiAgICAgICAgICBlbnYuZGVjb3JhdG9ycyxcbiAgICAgICAgICBvcHRpb25zLmRlY29yYXRvcnNcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgY29udGFpbmVyLmhvb2tzID0ge307XG4gICAgICBjb250YWluZXIucHJvdG9BY2Nlc3NDb250cm9sID0gY3JlYXRlUHJvdG9BY2Nlc3NDb250cm9sKG9wdGlvbnMpO1xuXG4gICAgICBsZXQga2VlcEhlbHBlckluSGVscGVycyA9XG4gICAgICAgIG9wdGlvbnMuYWxsb3dDYWxsc1RvSGVscGVyTWlzc2luZyB8fFxuICAgICAgICB0ZW1wbGF0ZVdhc1ByZWNvbXBpbGVkV2l0aENvbXBpbGVyVjc7XG4gICAgICBtb3ZlSGVscGVyVG9Ib29rcyhjb250YWluZXIsICdoZWxwZXJNaXNzaW5nJywga2VlcEhlbHBlckluSGVscGVycyk7XG4gICAgICBtb3ZlSGVscGVyVG9Ib29rcyhjb250YWluZXIsICdibG9ja0hlbHBlck1pc3NpbmcnLCBrZWVwSGVscGVySW5IZWxwZXJzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29udGFpbmVyLnByb3RvQWNjZXNzQ29udHJvbCA9IG9wdGlvbnMucHJvdG9BY2Nlc3NDb250cm9sOyAvLyBpbnRlcm5hbCBvcHRpb25cbiAgICAgIGNvbnRhaW5lci5oZWxwZXJzID0gb3B0aW9ucy5oZWxwZXJzO1xuICAgICAgY29udGFpbmVyLnBhcnRpYWxzID0gb3B0aW9ucy5wYXJ0aWFscztcbiAgICAgIGNvbnRhaW5lci5kZWNvcmF0b3JzID0gb3B0aW9ucy5kZWNvcmF0b3JzO1xuICAgICAgY29udGFpbmVyLmhvb2tzID0gb3B0aW9ucy5ob29rcztcbiAgICB9XG4gIH07XG5cbiAgcmV0Ll9jaGlsZCA9IGZ1bmN0aW9uKGksIGRhdGEsIGJsb2NrUGFyYW1zLCBkZXB0aHMpIHtcbiAgICBpZiAodGVtcGxhdGVTcGVjLnVzZUJsb2NrUGFyYW1zICYmICFibG9ja1BhcmFtcykge1xuICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignbXVzdCBwYXNzIGJsb2NrIHBhcmFtcycpO1xuICAgIH1cbiAgICBpZiAodGVtcGxhdGVTcGVjLnVzZURlcHRocyAmJiAhZGVwdGhzKSB7XG4gICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdtdXN0IHBhc3MgcGFyZW50IGRlcHRocycpO1xuICAgIH1cblxuICAgIHJldHVybiB3cmFwUHJvZ3JhbShcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGksXG4gICAgICB0ZW1wbGF0ZVNwZWNbaV0sXG4gICAgICBkYXRhLFxuICAgICAgMCxcbiAgICAgIGJsb2NrUGFyYW1zLFxuICAgICAgZGVwdGhzXG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIHJldDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdyYXBQcm9ncmFtKFxuICBjb250YWluZXIsXG4gIGksXG4gIGZuLFxuICBkYXRhLFxuICBkZWNsYXJlZEJsb2NrUGFyYW1zLFxuICBibG9ja1BhcmFtcyxcbiAgZGVwdGhzXG4pIHtcbiAgZnVuY3Rpb24gcHJvZyhjb250ZXh0LCBvcHRpb25zID0ge30pIHtcbiAgICBsZXQgY3VycmVudERlcHRocyA9IGRlcHRocztcbiAgICBpZiAoXG4gICAgICBkZXB0aHMgJiZcbiAgICAgIGNvbnRleHQgIT0gZGVwdGhzWzBdICYmXG4gICAgICAhKGNvbnRleHQgPT09IGNvbnRhaW5lci5udWxsQ29udGV4dCAmJiBkZXB0aHNbMF0gPT09IG51bGwpXG4gICAgKSB7XG4gICAgICBjdXJyZW50RGVwdGhzID0gW2NvbnRleHRdLmNvbmNhdChkZXB0aHMpO1xuICAgIH1cblxuICAgIHJldHVybiBmbihcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGNvbnRleHQsXG4gICAgICBjb250YWluZXIuaGVscGVycyxcbiAgICAgIGNvbnRhaW5lci5wYXJ0aWFscyxcbiAgICAgIG9wdGlvbnMuZGF0YSB8fCBkYXRhLFxuICAgICAgYmxvY2tQYXJhbXMgJiYgW29wdGlvbnMuYmxvY2tQYXJhbXNdLmNvbmNhdChibG9ja1BhcmFtcyksXG4gICAgICBjdXJyZW50RGVwdGhzXG4gICAgKTtcbiAgfVxuXG4gIHByb2cgPSBleGVjdXRlRGVjb3JhdG9ycyhmbiwgcHJvZywgY29udGFpbmVyLCBkZXB0aHMsIGRhdGEsIGJsb2NrUGFyYW1zKTtcblxuICBwcm9nLnByb2dyYW0gPSBpO1xuICBwcm9nLmRlcHRoID0gZGVwdGhzID8gZGVwdGhzLmxlbmd0aCA6IDA7XG4gIHByb2cuYmxvY2tQYXJhbXMgPSBkZWNsYXJlZEJsb2NrUGFyYW1zIHx8IDA7XG4gIHJldHVybiBwcm9nO1xufVxuXG4vKipcbiAqIFRoaXMgaXMgY3VycmVudGx5IHBhcnQgb2YgdGhlIG9mZmljaWFsIEFQSSwgdGhlcmVmb3JlIGltcGxlbWVudGF0aW9uIGRldGFpbHMgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVBhcnRpYWwocGFydGlhbCwgY29udGV4dCwgb3B0aW9ucykge1xuICBpZiAoIXBhcnRpYWwpIHtcbiAgICBpZiAob3B0aW9ucy5uYW1lID09PSAnQHBhcnRpYWwtYmxvY2snKSB7XG4gICAgICBwYXJ0aWFsID0gb3B0aW9ucy5kYXRhWydwYXJ0aWFsLWJsb2NrJ107XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnRpYWwgPSBvcHRpb25zLnBhcnRpYWxzW29wdGlvbnMubmFtZV07XG4gICAgfVxuICB9IGVsc2UgaWYgKCFwYXJ0aWFsLmNhbGwgJiYgIW9wdGlvbnMubmFtZSkge1xuICAgIC8vIFRoaXMgaXMgYSBkeW5hbWljIHBhcnRpYWwgdGhhdCByZXR1cm5lZCBhIHN0cmluZ1xuICAgIG9wdGlvbnMubmFtZSA9IHBhcnRpYWw7XG4gICAgcGFydGlhbCA9IG9wdGlvbnMucGFydGlhbHNbcGFydGlhbF07XG4gIH1cbiAgcmV0dXJuIHBhcnRpYWw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnZva2VQYXJ0aWFsKHBhcnRpYWwsIGNvbnRleHQsIG9wdGlvbnMpIHtcbiAgLy8gVXNlIHRoZSBjdXJyZW50IGNsb3N1cmUgY29udGV4dCB0byBzYXZlIHRoZSBwYXJ0aWFsLWJsb2NrIGlmIHRoaXMgcGFydGlhbFxuICBjb25zdCBjdXJyZW50UGFydGlhbEJsb2NrID0gb3B0aW9ucy5kYXRhICYmIG9wdGlvbnMuZGF0YVsncGFydGlhbC1ibG9jayddO1xuICBvcHRpb25zLnBhcnRpYWwgPSB0cnVlO1xuICBpZiAob3B0aW9ucy5pZHMpIHtcbiAgICBvcHRpb25zLmRhdGEuY29udGV4dFBhdGggPSBvcHRpb25zLmlkc1swXSB8fCBvcHRpb25zLmRhdGEuY29udGV4dFBhdGg7XG4gIH1cblxuICBsZXQgcGFydGlhbEJsb2NrO1xuICBpZiAob3B0aW9ucy5mbiAmJiBvcHRpb25zLmZuICE9PSBub29wKSB7XG4gICAgb3B0aW9ucy5kYXRhID0gY3JlYXRlRnJhbWUob3B0aW9ucy5kYXRhKTtcbiAgICAvLyBXcmFwcGVyIGZ1bmN0aW9uIHRvIGdldCBhY2Nlc3MgdG8gY3VycmVudFBhcnRpYWxCbG9jayBmcm9tIHRoZSBjbG9zdXJlXG4gICAgbGV0IGZuID0gb3B0aW9ucy5mbjtcbiAgICBwYXJ0aWFsQmxvY2sgPSBvcHRpb25zLmRhdGFbJ3BhcnRpYWwtYmxvY2snXSA9IGZ1bmN0aW9uIHBhcnRpYWxCbG9ja1dyYXBwZXIoXG4gICAgICBjb250ZXh0LFxuICAgICAgb3B0aW9ucyA9IHt9XG4gICAgKSB7XG4gICAgICAvLyBSZXN0b3JlIHRoZSBwYXJ0aWFsLWJsb2NrIGZyb20gdGhlIGNsb3N1cmUgZm9yIHRoZSBleGVjdXRpb24gb2YgdGhlIGJsb2NrXG4gICAgICAvLyBpLmUuIHRoZSBwYXJ0IGluc2lkZSB0aGUgYmxvY2sgb2YgdGhlIHBhcnRpYWwgY2FsbC5cbiAgICAgIG9wdGlvbnMuZGF0YSA9IGNyZWF0ZUZyYW1lKG9wdGlvbnMuZGF0YSk7XG4gICAgICBvcHRpb25zLmRhdGFbJ3BhcnRpYWwtYmxvY2snXSA9IGN1cnJlbnRQYXJ0aWFsQmxvY2s7XG4gICAgICByZXR1cm4gZm4oY29udGV4dCwgb3B0aW9ucyk7XG4gICAgfTtcbiAgICBpZiAoZm4ucGFydGlhbHMpIHtcbiAgICAgIG9wdGlvbnMucGFydGlhbHMgPSBVdGlscy5leHRlbmQoe30sIG9wdGlvbnMucGFydGlhbHMsIGZuLnBhcnRpYWxzKTtcbiAgICB9XG4gIH1cblxuICBpZiAocGFydGlhbCA9PT0gdW5kZWZpbmVkICYmIHBhcnRpYWxCbG9jaykge1xuICAgIHBhcnRpYWwgPSBwYXJ0aWFsQmxvY2s7XG4gIH1cblxuICBpZiAocGFydGlhbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignVGhlIHBhcnRpYWwgJyArIG9wdGlvbnMubmFtZSArICcgY291bGQgbm90IGJlIGZvdW5kJyk7XG4gIH0gZWxzZSBpZiAocGFydGlhbCBpbnN0YW5jZW9mIEZ1bmN0aW9uKSB7XG4gICAgcmV0dXJuIHBhcnRpYWwoY29udGV4dCwgb3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vb3AoKSB7XG4gIHJldHVybiAnJztcbn1cblxuZnVuY3Rpb24gaW5pdERhdGEoY29udGV4dCwgZGF0YSkge1xuICBpZiAoIWRhdGEgfHwgISgncm9vdCcgaW4gZGF0YSkpIHtcbiAgICBkYXRhID0gZGF0YSA/IGNyZWF0ZUZyYW1lKGRhdGEpIDoge307XG4gICAgZGF0YS5yb290ID0gY29udGV4dDtcbiAgfVxuICByZXR1cm4gZGF0YTtcbn1cblxuZnVuY3Rpb24gZXhlY3V0ZURlY29yYXRvcnMoZm4sIHByb2csIGNvbnRhaW5lciwgZGVwdGhzLCBkYXRhLCBibG9ja1BhcmFtcykge1xuICBpZiAoZm4uZGVjb3JhdG9yKSB7XG4gICAgbGV0IHByb3BzID0ge307XG4gICAgcHJvZyA9IGZuLmRlY29yYXRvcihcbiAgICAgIHByb2csXG4gICAgICBwcm9wcyxcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGRlcHRocyAmJiBkZXB0aHNbMF0sXG4gICAgICBkYXRhLFxuICAgICAgYmxvY2tQYXJhbXMsXG4gICAgICBkZXB0aHNcbiAgICApO1xuICAgIFV0aWxzLmV4dGVuZChwcm9nLCBwcm9wcyk7XG4gIH1cbiAgcmV0dXJuIHByb2c7XG59XG5cbmZ1bmN0aW9uIHdyYXBIZWxwZXJzVG9QYXNzTG9va3VwUHJvcGVydHkobWVyZ2VkSGVscGVycywgY29udGFpbmVyKSB7XG4gIE9iamVjdC5rZXlzKG1lcmdlZEhlbHBlcnMpLmZvckVhY2goaGVscGVyTmFtZSA9PiB7XG4gICAgbGV0IGhlbHBlciA9IG1lcmdlZEhlbHBlcnNbaGVscGVyTmFtZV07XG4gICAgbWVyZ2VkSGVscGVyc1toZWxwZXJOYW1lXSA9IHBhc3NMb29rdXBQcm9wZXJ0eU9wdGlvbihoZWxwZXIsIGNvbnRhaW5lcik7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBwYXNzTG9va3VwUHJvcGVydHlPcHRpb24oaGVscGVyLCBjb250YWluZXIpIHtcbiAgY29uc3QgbG9va3VwUHJvcGVydHkgPSBjb250YWluZXIubG9va3VwUHJvcGVydHk7XG4gIHJldHVybiB3cmFwSGVscGVyKGhlbHBlciwgb3B0aW9ucyA9PiB7XG4gICAgcmV0dXJuIFV0aWxzLmV4dGVuZCh7IGxvb2t1cFByb3BlcnR5IH0sIG9wdGlvbnMpO1xuICB9KTtcbn1cbiJdfQ==\n","'use strict';\n\nexports.__esModule = true;\nexports.wrapHelper = wrapHelper;\n\nfunction wrapHelper(helper, transformOptionsFn) {\n if (typeof helper !== 'function') {\n // This should not happen, but apparently it does in https://github.com/wycats/handlebars.js/issues/1639\n // We try to make the wrapper least-invasive by not wrapping it, if the helper is not a function.\n return helper;\n }\n var wrapper = function wrapper() /* dynamic arguments */{\n var options = arguments[arguments.length - 1];\n arguments[arguments.length - 1] = transformOptionsFn(options);\n return helper.apply(this, arguments);\n };\n return wrapper;\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL2ludGVybmFsL3dyYXBIZWxwZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBTyxTQUFTLFVBQVUsQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUU7QUFDckQsTUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVLEVBQUU7OztBQUdoQyxXQUFPLE1BQU0sQ0FBQztHQUNmO0FBQ0QsTUFBSSxPQUFPLEdBQUcsU0FBVixPQUFPLDBCQUFxQztBQUM5QyxRQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNoRCxhQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM5RCxXQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0dBQ3RDLENBQUM7QUFDRixTQUFPLE9BQU8sQ0FBQztDQUNoQiIsImZpbGUiOiJ3cmFwSGVscGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHdyYXBIZWxwZXIoaGVscGVyLCB0cmFuc2Zvcm1PcHRpb25zRm4pIHtcbiAgaWYgKHR5cGVvZiBoZWxwZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAvLyBUaGlzIHNob3VsZCBub3QgaGFwcGVuLCBidXQgYXBwYXJlbnRseSBpdCBkb2VzIGluIGh0dHBzOi8vZ2l0aHViLmNvbS93eWNhdHMvaGFuZGxlYmFycy5qcy9pc3N1ZXMvMTYzOVxuICAgIC8vIFdlIHRyeSB0byBtYWtlIHRoZSB3cmFwcGVyIGxlYXN0LWludmFzaXZlIGJ5IG5vdCB3cmFwcGluZyBpdCwgaWYgdGhlIGhlbHBlciBpcyBub3QgYSBmdW5jdGlvbi5cbiAgICByZXR1cm4gaGVscGVyO1xuICB9XG4gIGxldCB3cmFwcGVyID0gZnVuY3Rpb24oLyogZHluYW1pYyBhcmd1bWVudHMgKi8pIHtcbiAgICBjb25zdCBvcHRpb25zID0gYXJndW1lbnRzW2FyZ3VtZW50cy5sZW5ndGggLSAxXTtcbiAgICBhcmd1bWVudHNbYXJndW1lbnRzLmxlbmd0aCAtIDFdID0gdHJhbnNmb3JtT3B0aW9uc0ZuKG9wdGlvbnMpO1xuICAgIHJldHVybiBoZWxwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgfTtcbiAgcmV0dXJuIHdyYXBwZXI7XG59XG4iXX0=\n","'use strict';\n\nexports.__esModule = true;\n\nexports['default'] = function (Handlebars) {\n /* istanbul ignore next */\n var root = typeof global !== 'undefined' ? global : window,\n $Handlebars = root.Handlebars;\n /* istanbul ignore next */\n Handlebars.noConflict = function () {\n if (root.Handlebars === Handlebars) {\n root.Handlebars = $Handlebars;\n }\n return Handlebars;\n };\n};\n\nmodule.exports = exports['default'];\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oYW5kbGViYXJzL25vLWNvbmZsaWN0LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQWUsVUFBUyxVQUFVLEVBQUU7O0FBRWxDLE1BQUksSUFBSSxHQUFHLE9BQU8sTUFBTSxLQUFLLFdBQVcsR0FBRyxNQUFNLEdBQUcsTUFBTTtNQUN4RCxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQzs7QUFFaEMsWUFBVSxDQUFDLFVBQVUsR0FBRyxZQUFXO0FBQ2pDLFFBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLEVBQUU7QUFDbEMsVUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUM7S0FDL0I7QUFDRCxXQUFPLFVBQVUsQ0FBQztHQUNuQixDQUFDO0NBQ0giLCJmaWxlIjoibm8tY29uZmxpY3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbihIYW5kbGViYXJzKSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGxldCByb290ID0gdHlwZW9mIGdsb2JhbCAhPT0gJ3VuZGVmaW5lZCcgPyBnbG9iYWwgOiB3aW5kb3csXG4gICAgJEhhbmRsZWJhcnMgPSByb290LkhhbmRsZWJhcnM7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIEhhbmRsZWJhcnMubm9Db25mbGljdCA9IGZ1bmN0aW9uKCkge1xuICAgIGlmIChyb290LkhhbmRsZWJhcnMgPT09IEhhbmRsZWJhcnMpIHtcbiAgICAgIHJvb3QuSGFuZGxlYmFycyA9ICRIYW5kbGViYXJzO1xuICAgIH1cbiAgICByZXR1cm4gSGFuZGxlYmFycztcbiAgfTtcbn1cbiJdfQ==\n","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<span class=\\\"avatar-name-wrapper\\\" data-user=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":45},\"end\":{\"line\":1,\"column\":51}}}) : helper)))\n + \"\\\"><div class=\\\"avatar\\\" data-user=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":84},\"end\":{\"line\":1,\"column\":90}}}) : helper)))\n + \"\\\" data-user-display-name=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":116},\"end\":{\"line\":1,\"column\":124}}}) : helper)))\n + \"\\\"></div><strong>\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":140},\"end\":{\"line\":1,\"column\":148}}}) : helper)))\n + \"</strong></span>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<strong title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":15},\"end\":{\"line\":1,\"column\":21}}}) : helper)))\n + \"@\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"server\") || (depth0 != null ? lookupProperty(depth0,\"server\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"server\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":22},\"end\":{\"line\":1,\"column\":32}}}) : helper)))\n + \"\\\" class=\\\"has-tooltip\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":54},\"end\":{\"line\":1,\"column\":62}}}) : helper)))\n + \"</strong>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<strong>\"\n + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":8},\"end\":{\"line\":1,\"column\":16}}}) : helper)))\n + \"</strong>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<a href=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"link\") || (depth0 != null ? lookupProperty(depth0,\"link\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"link\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":9},\"end\":{\"line\":1,\"column\":17}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":19},\"end\":{\"line\":1,\"column\":27}}}) : helper)))\n + \"</a>\\n\";\n},\"useData\":true});","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","var map = {\n\t\"./af\": 87,\n\t\"./af.js\": 87,\n\t\"./ar\": 88,\n\t\"./ar-dz\": 89,\n\t\"./ar-dz.js\": 89,\n\t\"./ar-kw\": 90,\n\t\"./ar-kw.js\": 90,\n\t\"./ar-ly\": 91,\n\t\"./ar-ly.js\": 91,\n\t\"./ar-ma\": 92,\n\t\"./ar-ma.js\": 92,\n\t\"./ar-sa\": 93,\n\t\"./ar-sa.js\": 93,\n\t\"./ar-tn\": 94,\n\t\"./ar-tn.js\": 94,\n\t\"./ar.js\": 88,\n\t\"./az\": 95,\n\t\"./az.js\": 95,\n\t\"./be\": 96,\n\t\"./be.js\": 96,\n\t\"./bg\": 97,\n\t\"./bg.js\": 97,\n\t\"./bm\": 98,\n\t\"./bm.js\": 98,\n\t\"./bn\": 99,\n\t\"./bn.js\": 99,\n\t\"./bo\": 100,\n\t\"./bo.js\": 100,\n\t\"./br\": 101,\n\t\"./br.js\": 101,\n\t\"./bs\": 102,\n\t\"./bs.js\": 102,\n\t\"./ca\": 103,\n\t\"./ca.js\": 103,\n\t\"./cs\": 104,\n\t\"./cs.js\": 104,\n\t\"./cv\": 105,\n\t\"./cv.js\": 105,\n\t\"./cy\": 106,\n\t\"./cy.js\": 106,\n\t\"./da\": 107,\n\t\"./da.js\": 107,\n\t\"./de\": 108,\n\t\"./de-at\": 109,\n\t\"./de-at.js\": 109,\n\t\"./de-ch\": 110,\n\t\"./de-ch.js\": 110,\n\t\"./de.js\": 108,\n\t\"./dv\": 111,\n\t\"./dv.js\": 111,\n\t\"./el\": 112,\n\t\"./el.js\": 112,\n\t\"./en-SG\": 113,\n\t\"./en-SG.js\": 113,\n\t\"./en-au\": 114,\n\t\"./en-au.js\": 114,\n\t\"./en-ca\": 115,\n\t\"./en-ca.js\": 115,\n\t\"./en-gb\": 116,\n\t\"./en-gb.js\": 116,\n\t\"./en-ie\": 117,\n\t\"./en-ie.js\": 117,\n\t\"./en-il\": 118,\n\t\"./en-il.js\": 118,\n\t\"./en-nz\": 119,\n\t\"./en-nz.js\": 119,\n\t\"./eo\": 120,\n\t\"./eo.js\": 120,\n\t\"./es\": 121,\n\t\"./es-do\": 122,\n\t\"./es-do.js\": 122,\n\t\"./es-us\": 123,\n\t\"./es-us.js\": 123,\n\t\"./es.js\": 121,\n\t\"./et\": 124,\n\t\"./et.js\": 124,\n\t\"./eu\": 125,\n\t\"./eu.js\": 125,\n\t\"./fa\": 126,\n\t\"./fa.js\": 126,\n\t\"./fi\": 127,\n\t\"./fi.js\": 127,\n\t\"./fo\": 128,\n\t\"./fo.js\": 128,\n\t\"./fr\": 129,\n\t\"./fr-ca\": 130,\n\t\"./fr-ca.js\": 130,\n\t\"./fr-ch\": 131,\n\t\"./fr-ch.js\": 131,\n\t\"./fr.js\": 129,\n\t\"./fy\": 132,\n\t\"./fy.js\": 132,\n\t\"./ga\": 133,\n\t\"./ga.js\": 133,\n\t\"./gd\": 134,\n\t\"./gd.js\": 134,\n\t\"./gl\": 135,\n\t\"./gl.js\": 135,\n\t\"./gom-latn\": 136,\n\t\"./gom-latn.js\": 136,\n\t\"./gu\": 137,\n\t\"./gu.js\": 137,\n\t\"./he\": 138,\n\t\"./he.js\": 138,\n\t\"./hi\": 139,\n\t\"./hi.js\": 139,\n\t\"./hr\": 140,\n\t\"./hr.js\": 140,\n\t\"./hu\": 141,\n\t\"./hu.js\": 141,\n\t\"./hy-am\": 142,\n\t\"./hy-am.js\": 142,\n\t\"./id\": 143,\n\t\"./id.js\": 143,\n\t\"./is\": 144,\n\t\"./is.js\": 144,\n\t\"./it\": 145,\n\t\"./it-ch\": 146,\n\t\"./it-ch.js\": 146,\n\t\"./it.js\": 145,\n\t\"./ja\": 147,\n\t\"./ja.js\": 147,\n\t\"./jv\": 148,\n\t\"./jv.js\": 148,\n\t\"./ka\": 149,\n\t\"./ka.js\": 149,\n\t\"./kk\": 150,\n\t\"./kk.js\": 150,\n\t\"./km\": 151,\n\t\"./km.js\": 151,\n\t\"./kn\": 152,\n\t\"./kn.js\": 152,\n\t\"./ko\": 153,\n\t\"./ko.js\": 153,\n\t\"./ku\": 154,\n\t\"./ku.js\": 154,\n\t\"./ky\": 155,\n\t\"./ky.js\": 155,\n\t\"./lb\": 156,\n\t\"./lb.js\": 156,\n\t\"./lo\": 157,\n\t\"./lo.js\": 157,\n\t\"./lt\": 158,\n\t\"./lt.js\": 158,\n\t\"./lv\": 159,\n\t\"./lv.js\": 159,\n\t\"./me\": 160,\n\t\"./me.js\": 160,\n\t\"./mi\": 161,\n\t\"./mi.js\": 161,\n\t\"./mk\": 162,\n\t\"./mk.js\": 162,\n\t\"./ml\": 163,\n\t\"./ml.js\": 163,\n\t\"./mn\": 164,\n\t\"./mn.js\": 164,\n\t\"./mr\": 165,\n\t\"./mr.js\": 165,\n\t\"./ms\": 166,\n\t\"./ms-my\": 167,\n\t\"./ms-my.js\": 167,\n\t\"./ms.js\": 166,\n\t\"./mt\": 168,\n\t\"./mt.js\": 168,\n\t\"./my\": 169,\n\t\"./my.js\": 169,\n\t\"./nb\": 170,\n\t\"./nb.js\": 170,\n\t\"./ne\": 171,\n\t\"./ne.js\": 171,\n\t\"./nl\": 172,\n\t\"./nl-be\": 173,\n\t\"./nl-be.js\": 173,\n\t\"./nl.js\": 172,\n\t\"./nn\": 174,\n\t\"./nn.js\": 174,\n\t\"./pa-in\": 175,\n\t\"./pa-in.js\": 175,\n\t\"./pl\": 176,\n\t\"./pl.js\": 176,\n\t\"./pt\": 177,\n\t\"./pt-br\": 178,\n\t\"./pt-br.js\": 178,\n\t\"./pt.js\": 177,\n\t\"./ro\": 179,\n\t\"./ro.js\": 179,\n\t\"./ru\": 180,\n\t\"./ru.js\": 180,\n\t\"./sd\": 181,\n\t\"./sd.js\": 181,\n\t\"./se\": 182,\n\t\"./se.js\": 182,\n\t\"./si\": 183,\n\t\"./si.js\": 183,\n\t\"./sk\": 184,\n\t\"./sk.js\": 184,\n\t\"./sl\": 185,\n\t\"./sl.js\": 185,\n\t\"./sq\": 186,\n\t\"./sq.js\": 186,\n\t\"./sr\": 187,\n\t\"./sr-cyrl\": 188,\n\t\"./sr-cyrl.js\": 188,\n\t\"./sr.js\": 187,\n\t\"./ss\": 189,\n\t\"./ss.js\": 189,\n\t\"./sv\": 190,\n\t\"./sv.js\": 190,\n\t\"./sw\": 191,\n\t\"./sw.js\": 191,\n\t\"./ta\": 192,\n\t\"./ta.js\": 192,\n\t\"./te\": 193,\n\t\"./te.js\": 193,\n\t\"./tet\": 194,\n\t\"./tet.js\": 194,\n\t\"./tg\": 195,\n\t\"./tg.js\": 195,\n\t\"./th\": 196,\n\t\"./th.js\": 196,\n\t\"./tl-ph\": 197,\n\t\"./tl-ph.js\": 197,\n\t\"./tlh\": 198,\n\t\"./tlh.js\": 198,\n\t\"./tr\": 199,\n\t\"./tr.js\": 199,\n\t\"./tzl\": 200,\n\t\"./tzl.js\": 200,\n\t\"./tzm\": 201,\n\t\"./tzm-latn\": 202,\n\t\"./tzm-latn.js\": 202,\n\t\"./tzm.js\": 201,\n\t\"./ug-cn\": 203,\n\t\"./ug-cn.js\": 203,\n\t\"./uk\": 204,\n\t\"./uk.js\": 204,\n\t\"./ur\": 205,\n\t\"./ur.js\": 205,\n\t\"./uz\": 206,\n\t\"./uz-latn\": 207,\n\t\"./uz-latn.js\": 207,\n\t\"./uz.js\": 206,\n\t\"./vi\": 208,\n\t\"./vi.js\": 208,\n\t\"./x-pseudo\": 209,\n\t\"./x-pseudo.js\": 209,\n\t\"./yo\": 210,\n\t\"./yo.js\": 210,\n\t\"./zh-cn\": 211,\n\t\"./zh-cn.js\": 211,\n\t\"./zh-hk\": 212,\n\t\"./zh-hk.js\": 212,\n\t\"./zh-tw\": 213,\n\t\"./zh-tw.js\": 213\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 298;","'use strict';\n\nvar get = require('lodash.get');\nvar plurals = require('./plurals');\n\nmodule.exports = Gettext;\n\n/**\n * Creates and returns a new Gettext instance.\n *\n * @constructor\n * @param {Object} [options] A set of options\n * @param {String} options.sourceLocale The locale that the source code and its\n * texts are written in. Translations for\n * this locale is not necessary.\n * @param {Boolean} options.debug Whether to output debug info into the\n * console.\n * @return {Object} A Gettext instance\n */\nfunction Gettext(options) {\n options = options || {};\n\n this.catalogs = {};\n this.locale = '';\n this.domain = 'messages';\n\n this.listeners = [];\n\n // Set source locale\n this.sourceLocale = '';\n if (options.sourceLocale) {\n if (typeof options.sourceLocale === 'string') {\n this.sourceLocale = options.sourceLocale;\n }\n else {\n this.warn('The `sourceLocale` option should be a string');\n }\n }\n\n // Set debug flag\n if ('debug' in options) {\n this.debug = options.debug === true;\n }\n else if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV) {\n this.debug = process.env.NODE_ENV !== 'production';\n }\n else {\n this.debug = false;\n }\n}\n\n/**\n * Adds an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback An event handler function\n */\nGettext.prototype.on = function(eventName, callback) {\n this.listeners.push({\n eventName: eventName,\n callback: callback\n });\n};\n\n/**\n * Removes an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback A previously registered event handler function\n */\nGettext.prototype.off = function(eventName, callback) {\n this.listeners = this.listeners.filter(function(listener) {\n return (\n listener.eventName === eventName &&\n listener.callback === callback\n ) === false;\n });\n};\n\n/**\n * Emits an event to all registered event listener.\n *\n * @private\n * @param {String} eventName An event name\n * @param {any} eventData Data to pass to event listeners\n */\nGettext.prototype.emit = function(eventName, eventData) {\n for (var i = 0; i < this.listeners.length; i++) {\n var listener = this.listeners[i];\n if (listener.eventName === eventName) {\n listener.callback(eventData);\n }\n }\n};\n\n/**\n * Logs a warning to the console if debug mode is enabled.\n *\n * @ignore\n * @param {String} message A warning message\n */\nGettext.prototype.warn = function(message) {\n if (this.debug) {\n console.warn(message);\n }\n\n this.emit('error', message);\n};\n\n/**\n * Stores a set of translations in the set of gettext\n * catalogs.\n *\n * @example\n * gt.addTranslations('sv-SE', 'messages', translationsObject)\n *\n * @param {String} locale A locale string\n * @param {String} domain A domain name\n * @param {Object} translations An object of gettext-parser JSON shape\n */\nGettext.prototype.addTranslations = function(locale, domain, translations) {\n if (!this.catalogs[locale]) {\n this.catalogs[locale] = {};\n }\n\n this.catalogs[locale][domain] = translations;\n};\n\n/**\n * Sets the locale to get translated messages for.\n *\n * @example\n * gt.setLocale('sv-SE')\n *\n * @param {String} locale A locale\n */\nGettext.prototype.setLocale = function(locale) {\n if (typeof locale !== 'string') {\n this.warn(\n 'You called setLocale() with an argument of type ' + (typeof locale) + '. ' +\n 'The locale must be a string.'\n );\n return;\n }\n\n if (locale.trim() === '') {\n this.warn('You called setLocale() with an empty value, which makes little sense.');\n }\n\n if (locale !== this.sourceLocale && !this.catalogs[locale]) {\n this.warn('You called setLocale() with \"' + locale + '\", but no translations for that locale has been added.');\n }\n\n this.locale = locale;\n};\n\n/**\n * Sets the default gettext domain.\n *\n * @example\n * gt.setTextDomain('domainname')\n *\n * @param {String} domain A gettext domain name\n */\nGettext.prototype.setTextDomain = function(domain) {\n if (typeof domain !== 'string') {\n this.warn(\n 'You called setTextDomain() with an argument of type ' + (typeof domain) + '. ' +\n 'The domain must be a string.'\n );\n return;\n }\n\n if (domain.trim() === '') {\n this.warn('You called setTextDomain() with an empty `domain` value.');\n }\n\n this.domain = domain;\n};\n\n/**\n * Translates a string using the default textdomain\n *\n * @example\n * gt.gettext('Some text')\n *\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.gettext = function(msgid) {\n return this.dnpgettext(this.domain, '', msgid);\n};\n\n/**\n * Translates a string using a specific domain\n *\n * @example\n * gt.dgettext('domainname', 'Some text')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dgettext = function(domain, msgid) {\n return this.dnpgettext(domain, '', msgid);\n};\n\n/**\n * Translates a plural string using the default textdomain\n *\n * @example\n * gt.ngettext('One thing', 'Many things', numberOfThings)\n *\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.ngettext = function(msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string using a specific textdomain\n *\n * @example\n * gt.dngettext('domainname', 'One thing', 'Many things', numberOfThings)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dngettext = function(domain, msgid, msgidPlural, count) {\n return this.dnpgettext(domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a string from a specific context using the default textdomain\n *\n * @example\n * gt.pgettext('sports', 'Back')\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.pgettext = function(msgctxt, msgid) {\n return this.dnpgettext(this.domain, msgctxt, msgid);\n};\n\n/**\n * Translates a string from a specific context using s specific textdomain\n *\n * @example\n * gt.dpgettext('domainname', 'sports', 'Back')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dpgettext = function(domain, msgctxt, msgid) {\n return this.dnpgettext(domain, msgctxt, msgid);\n};\n\n/**\n * Translates a plural string from a specific context using the default textdomain\n *\n * @example\n * gt.npgettext('sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.npgettext = function(msgctxt, msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, msgctxt, msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string from a specifi context using a specific textdomain\n *\n * @example\n * gt.dnpgettext('domainname', 'sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @param {String} msgidPlural If no translation was found, return this on count!=1\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dnpgettext = function(domain, msgctxt, msgid, msgidPlural, count) {\n var defaultTranslation = msgid;\n var translation;\n var index;\n\n msgctxt = msgctxt || '';\n\n if (!isNaN(count) && count !== 1) {\n defaultTranslation = msgidPlural || msgid;\n }\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n\n if (translation) {\n if (typeof count === 'number') {\n var pluralsFunc = plurals[Gettext.getLanguageCode(this.locale)].pluralsFunc;\n index = pluralsFunc(count);\n if (typeof index === 'boolean') {\n index = index ? 1 : 0;\n }\n } else {\n index = 0;\n }\n\n return translation.msgstr[index] || defaultTranslation;\n }\n else if (!this.sourceLocale || this.locale !== this.sourceLocale) {\n this.warn('No translation was found for msgid \"' + msgid + '\" in msgctxt \"' + msgctxt + '\" and domain \"' + domain + '\"');\n }\n\n return defaultTranslation;\n};\n\n/**\n * Retrieves comments object for a translation. The comments object\n * has the shape `{ translator, extracted, reference, flag, previous }`.\n *\n * @example\n * const comment = gt.getComment('domainname', 'sports', 'Backs')\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Comments object or false if not found\n */\nGettext.prototype.getComment = function(domain, msgctxt, msgid) {\n var translation;\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n if (translation) {\n return translation.comments || {};\n }\n\n return {};\n};\n\n/**\n * Retrieves translation object from the domain and context\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Translation object or false if not found\n */\nGettext.prototype._getTranslation = function(domain, msgctxt, msgid) {\n msgctxt = msgctxt || '';\n\n return get(this.catalogs, [this.locale, domain, 'translations', msgctxt, msgid]);\n};\n\n/**\n * Returns the language code part of a locale\n *\n * @example\n * Gettext.getLanguageCode('sv-SE')\n * // -> \"sv\"\n *\n * @private\n * @param {String} locale A case-insensitive locale string\n * @returns {String} A language code\n */\nGettext.getLanguageCode = function(locale) {\n return locale.split(/[\\-_]/)[0].toLowerCase();\n};\n\n/* C-style aliases */\n\n/**\n * C-style alias for [setTextDomain](#gettextsettextdomaindomain)\n *\n * @see Gettext#setTextDomain\n */\nGettext.prototype.textdomain = function(domain) {\n if (this.debug) {\n console.warn('textdomain(domain) was used to set locales in node-gettext v1. ' +\n 'Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\\n\\n ' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\\n\\n' +\n 'This warning will be removed in the final 2.0.0');\n }\n\n this.setTextDomain(domain);\n};\n\n/**\n * C-style alias for [setLocale](#gettextsetlocalelocale)\n *\n * @see Gettext#setLocale\n */\nGettext.prototype.setlocale = function(locale) {\n this.setLocale(locale);\n};\n\n/* Deprecated functions */\n\n/**\n * This function will be removed in the final 2.0.0 release.\n *\n * @deprecated\n */\nGettext.prototype.addTextdomain = function() {\n console.error('addTextdomain() is deprecated.\\n\\n' +\n '* To add translations, use addTranslations()\\n' +\n '* To set the default domain, use setTextDomain() (or its alias textdomain())\\n' +\n '\\n' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x');\n};\n","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** `Object#toString` result references. */\nvar funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n symbolTag = '[object Symbol]';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n reLeadingDot = /^\\./,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Checks if `value` is a host object in IE < 9.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a host object, else `false`.\n */\nfunction isHostObject(value) {\n // Many host objects are `Object` objects that can coerce to strings\n // despite having improperly defined `toString` methods.\n var result = false;\n if (value != null && typeof value.toString != 'function') {\n try {\n result = !!(value + '');\n } catch (e) {}\n }\n return result;\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Symbol = root.Symbol,\n splice = arrayProto.splice;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n return this.has(key) && delete this.__data__[key];\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n return getMapData(this, key)['delete'](key);\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n getMapData(this, key).set(key, value);\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = isKey(path, object) ? [path] : castPath(path);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value) {\n return isArray(value) ? value : stringToPath(value);\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoize(function(string) {\n string = toString(string);\n\n var result = [];\n if (reLeadingDot.test(string)) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, string) {\n result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to process.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result);\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Assign cache to `_.memoize`.\nmemoize.Cache = MapCache;\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 8-9 which returns 'object' for typed array and other constructors.\n var tag = isObject(value) ? objectToString.call(value) : '';\n return tag == funcTag || tag == genTag;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","'use strict';\n\nmodule.exports = {\n ach: {\n name: 'Acholi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n af: {\n name: 'Afrikaans',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ak: {\n name: 'Akan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n am: {\n name: 'Amharic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n an: {\n name: 'Aragonese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ar: {\n name: 'Arabic',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }, {\n plural: 3,\n sample: 3\n }, {\n plural: 4,\n sample: 11\n }, {\n plural: 5,\n sample: 100\n }],\n nplurals: 6,\n pluralsText: 'nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n }\n },\n arn: {\n name: 'Mapudungun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ast: {\n name: 'Asturian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ay: {\n name: 'Aymará',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n az: {\n name: 'Azerbaijani',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n be: {\n name: 'Belarusian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n bg: {\n name: 'Bulgarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bn: {\n name: 'Bengali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bo: {\n name: 'Tibetan',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n br: {\n name: 'Breton',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n brx: {\n name: 'Bodo',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bs: {\n name: 'Bosnian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ca: {\n name: 'Catalan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n cgg: {\n name: 'Chiga',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n cs: {\n name: 'Czech',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n csb: {\n name: 'Kashubian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n cy: {\n name: 'Welsh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 8\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3);\n }\n },\n da: {\n name: 'Danish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n de: {\n name: 'German',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n doi: {\n name: 'Dogri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n dz: {\n name: 'Dzongkha',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n el: {\n name: 'Greek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n en: {\n name: 'English',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eo: {\n name: 'Esperanto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n es: {\n name: 'Spanish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n et: {\n name: 'Estonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eu: {\n name: 'Basque',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fa: {\n name: 'Persian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ff: {\n name: 'Fulah',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fi: {\n name: 'Finnish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fil: {\n name: 'Filipino',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fo: {\n name: 'Faroese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fr: {\n name: 'French',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fur: {\n name: 'Friulian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fy: {\n name: 'Frisian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ga: {\n name: 'Irish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 7\n }, {\n plural: 4,\n sample: 11\n }],\n nplurals: 5,\n pluralsText: 'nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n }\n },\n gd: {\n name: 'Scottish Gaelic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)',\n pluralsFunc: function(n) {\n return ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3);\n }\n },\n gl: {\n name: 'Galician',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gu: {\n name: 'Gujarati',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gun: {\n name: 'Gun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ha: {\n name: 'Hausa',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n he: {\n name: 'Hebrew',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hi: {\n name: 'Hindi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hne: {\n name: 'Chhattisgarhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hr: {\n name: 'Croatian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n hu: {\n name: 'Hungarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hy: {\n name: 'Armenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n id: {\n name: 'Indonesian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n is: {\n name: 'Icelandic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)',\n pluralsFunc: function(n) {\n return (n % 10 !== 1 || n % 100 === 11);\n }\n },\n it: {\n name: 'Italian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ja: {\n name: 'Japanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jbo: {\n name: 'Lojban',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jv: {\n name: 'Javanese',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 0)',\n pluralsFunc: function(n) {\n return (n !== 0);\n }\n },\n ka: {\n name: 'Georgian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kk: {\n name: 'Kazakh',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n km: {\n name: 'Khmer',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kn: {\n name: 'Kannada',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ko: {\n name: 'Korean',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ku: {\n name: 'Kurdish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n kw: {\n name: 'Cornish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 4\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3);\n }\n },\n ky: {\n name: 'Kyrgyz',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lb: {\n name: 'Letzeburgesch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ln: {\n name: 'Lingala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n lo: {\n name: 'Lao',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lt: {\n name: 'Lithuanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 10\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n lv: {\n name: 'Latvian',\n examples: [{\n plural: 2,\n sample: 0\n }, {\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2);\n }\n },\n mai: {\n name: 'Maithili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mfe: {\n name: 'Mauritian Creole',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mg: {\n name: 'Malagasy',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mi: {\n name: 'Maori',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mk: {\n name: 'Macedonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)',\n pluralsFunc: function(n) {\n return (n === 1 || n % 10 === 1 ? 0 : 1);\n }\n },\n ml: {\n name: 'Malayalam',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mn: {\n name: 'Mongolian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mni: {\n name: 'Manipuri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mnk: {\n name: 'Mandinka',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : 2);\n }\n },\n mr: {\n name: 'Marathi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ms: {\n name: 'Malay',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n mt: {\n name: 'Maltese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 11\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 0 || (n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20) ? 2 : 3);\n }\n },\n my: {\n name: 'Burmese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n nah: {\n name: 'Nahuatl',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nap: {\n name: 'Neapolitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nb: {\n name: 'Norwegian Bokmal',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ne: {\n name: 'Nepali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nl: {\n name: 'Dutch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nn: {\n name: 'Norwegian Nynorsk',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n no: {\n name: 'Norwegian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nso: {\n name: 'Northern Sotho',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n oc: {\n name: 'Occitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n or: {\n name: 'Oriya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pa: {\n name: 'Punjabi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pap: {\n name: 'Papiamento',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pl: {\n name: 'Polish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n pms: {\n name: 'Piemontese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ps: {\n name: 'Pashto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pt: {\n name: 'Portuguese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n rm: {\n name: 'Romansh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ro: {\n name: 'Romanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 20\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2);\n }\n },\n ru: {\n name: 'Russian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n rw: {\n name: 'Kinyarwanda',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sah: {\n name: 'Yakut',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sat: {\n name: 'Santali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sco: {\n name: 'Scots',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sd: {\n name: 'Sindhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n se: {\n name: 'Northern Sami',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n si: {\n name: 'Sinhala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sk: {\n name: 'Slovak',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n sl: {\n name: 'Slovenian',\n examples: [{\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }, {\n plural: 3,\n sample: 3\n }, {\n plural: 0,\n sample: 5\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 1 : n % 100 === 2 ? 2 : n % 100 === 3 || n % 100 === 4 ? 3 : 0)',\n pluralsFunc: function(n) {\n return (n % 100 === 1 ? 1 : n % 100 === 2 ? 2 : n % 100 === 3 || n % 100 === 4 ? 3 : 0);\n }\n },\n so: {\n name: 'Somali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n son: {\n name: 'Songhay',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sq: {\n name: 'Albanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sr: {\n name: 'Serbian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n su: {\n name: 'Sundanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sv: {\n name: 'Swedish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sw: {\n name: 'Swahili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ta: {\n name: 'Tamil',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n te: {\n name: 'Telugu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tg: {\n name: 'Tajik',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n th: {\n name: 'Thai',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ti: {\n name: 'Tigrinya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tk: {\n name: 'Turkmen',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tr: {\n name: 'Turkish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tt: {\n name: 'Tatar',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ug: {\n name: 'Uyghur',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n uk: {\n name: 'Ukrainian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ur: {\n name: 'Urdu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n uz: {\n name: 'Uzbek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n vi: {\n name: 'Vietnamese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n wa: {\n name: 'Walloon',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n wo: {\n name: 'Wolof',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n yo: {\n name: 'Yoruba',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n zh: {\n name: 'Chinese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n }\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getLocale = getLocale;\nexports.getLanguage = getLanguage;\nexports.translate = translate;\nexports.translatePlural = translatePlural;\nexports.getFirstDay = getFirstDay;\nexports.getDayNames = getDayNames;\nexports.getDayNamesShort = getDayNamesShort;\nexports.getDayNamesMin = getDayNamesMin;\nexports.getMonthNames = getMonthNames;\nexports.getMonthNamesShort = getMonthNamesShort;\n\n/// <reference types=\"@nextcloud/typings\" />\n\n/**\n * Returns the user's locale\n */\nfunction getLocale() {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return 'en';\n }\n\n return OC.getLocale();\n}\n/**\n * Returns the user's language\n */\n\n\nfunction getLanguage() {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return 'en';\n }\n\n return OC.getLanguage();\n}\n\n/**\n * Translate a string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} text the string to translate\n * @param {object} vars map of placeholder key to value\n * @param {number} number to replace %n with\n * @param {object} [options] options object\n * @return {string}\n */\nfunction translate(app, text, vars, count, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return text;\n }\n\n return OC.L10N.translate(app, text, vars, count, options);\n}\n/**\n * Translate a plural string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} textSingular the string to translate for exactly one object\n * @param {string} textPlural the string to translate for n objects\n * @param {number} count number to determine whether to use singular or plural\n * @param {Object} vars of placeholder key to value\n * @param {object} options options object\n * @return {string}\n */\n\n\nfunction translatePlural(app, textSingular, textPlural, count, vars, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return textSingular;\n }\n\n return OC.L10N.translatePlural(app, textSingular, textPlural, count, vars, options);\n}\n/**\n * Get the first day of the week\n *\n * @return {number}\n */\n\n\nfunction getFirstDay() {\n if (typeof window.firstDay === 'undefined') {\n console.warn('No firstDay found');\n return 1;\n }\n\n return window.firstDay;\n}\n/**\n * Get a list of day names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNames() {\n if (typeof window.dayNames === 'undefined') {\n console.warn('No dayNames found');\n return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n }\n\n return window.dayNames;\n}\n/**\n * Get a list of day names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesShort() {\n if (typeof window.dayNamesShort === 'undefined') {\n console.warn('No dayNamesShort found');\n return ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.'];\n }\n\n return window.dayNamesShort;\n}\n/**\n * Get a list of day names (minified names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesMin() {\n if (typeof window.dayNamesMin === 'undefined') {\n console.warn('No dayNamesMin found');\n return ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\n }\n\n return window.dayNamesMin;\n}\n/**\n * Get a list of month names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNames() {\n if (typeof window.monthNames === 'undefined') {\n console.warn('No monthNames found');\n return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\n }\n\n return window.monthNames;\n}\n/**\n * Get a list of month names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNamesShort() {\n if (typeof window.monthNamesShort === 'undefined') {\n console.warn('No monthNamesShort found');\n return ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.'];\n }\n\n return window.monthNamesShort;\n}\n//# sourceMappingURL=index.js.map","import mod from \"-!../node_modules/vue-style-loader/index.js!../node_modules/css-loader/dist/cjs.js!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\"; export default mod; export * from \"-!../node_modules/vue-style-loader/index.js!../node_modules/css-loader/dist/cjs.js!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"\\n.fade-enter-active[data-v-6e2a9f70],\\n.fade-leave-active[data-v-6e2a9f70],\\n.fade-collapse-enter-active[data-v-6e2a9f70],\\n.fade-collapse-leave-active[data-v-6e2a9f70] {\\n\\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\\n}\\n.fade-collapse-enter[data-v-6e2a9f70],\\n.fade-collapse-leave-to[data-v-6e2a9f70] {\\n\\topacity: 0;\\n\\tmax-height: 0;\\n}\\n.fade-enter[data-v-6e2a9f70],\\n.fade-leave-to[data-v-6e2a9f70] {\\n\\topacity: 0;\\n}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (useSourceMap) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item, useSourceMap);\n\n if (item[2]) {\n return \"@media \".concat(item[2], \" {\").concat(content, \"}\");\n }\n\n return content;\n }).join('');\n }; // import a list of modules into the list\n // eslint-disable-next-line func-names\n\n\n list.i = function (modules, mediaQuery, dedupe) {\n if (typeof modules === 'string') {\n // eslint-disable-next-line no-param-reassign\n modules = [[null, modules, '']];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var i = 0; i < this.length; i++) {\n // eslint-disable-next-line prefer-destructuring\n var id = this[i][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _i = 0; _i < modules.length; _i++) {\n var item = [].concat(modules[_i]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (mediaQuery) {\n if (!item[2]) {\n item[2] = mediaQuery;\n } else {\n item[2] = \"\".concat(mediaQuery, \" and \").concat(item[2]);\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring\n\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (useSourceMap && typeof btoa === 'function') {\n var sourceMapping = toComment(cssMapping);\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || '').concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n }\n\n return [content].join('\\n');\n} // Adapted from convert-source-map (MIT)\n\n\nfunction toComment(sourceMap) {\n // eslint-disable-next-line no-undef\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n return \"/*# \".concat(data, \" */\");\n}","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./Action.vue?vue&type=template&id=64def693&\"\nimport script from \"./Action.vue?vue&type=script&lang=js&\"\nexport * from \"./Action.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n\t<button class=\"action-button pull-right\"\n\t\t:class=\"{ primary: primary }\"\n\t\t:data-type=\"type\"\n\t\t:data-href=\"link\"\n\t\t@click=\"onClickActionButton\">\n\t\t{{ label }}\n\t</button>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nexport default {\n\tname: 'Action',\n\n\tprops: {\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tprimary: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tmethods: {\n\t\tasync onClickActionButton() {\n\t\t\tconst type = this.type || 'GET'\n\t\t\tif (type === 'WEB') {\n\t\t\t\tOC.redirect(this.link)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\t// execute action\n\t\t\t\tawait axios({\n\t\t\t\t\tmethod: type,\n\t\t\t\t\turl: this.link,\n\t\t\t\t})\n\n\t\t\t\t// emit event to current app\n\t\t\t\tthis.$parent._$el.fadeOut(OC.menuSpeed)\n\t\t\t\tthis.$parent.$emit('remove')\n\t\t\t\ttry {\n\t\t\t\t\t$('body').trigger(new $.Event('OCA.Notification.Action', {\n\t\t\t\t\t\tnotification: this.$parent,\n\t\t\t\t\t\taction: {\n\t\t\t\t\t\t\turl: this.link,\n\t\t\t\t\t\t\ttype: type,\n\t\t\t\t\t\t},\n\t\t\t\t\t}))\n\t\t\t\t// do not do anything but log, the action went fine\n\t\t\t\t// only the event bus listener failed, this is not our problem\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.error(error)\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Failed to perform action', error)\n\t\t\t\tOC.Notification.showTemporary(t('notifications', 'Failed to perform action'))\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"action-button pull-right\",class:{ primary: _vm.primary },attrs:{\"data-type\":_vm.type,\"data-href\":_vm.link},on:{\"click\":_vm.onClickActionButton}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.label)+\"\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright (c) 2016 Joas Schilling <coding@schilljs.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n *\n * This file is licensed under the Affero General Public License version 3 or\n * later. See the COPYING file.\n */\n\nimport escapeHTML from 'escape-html'\n\nexport default {\n\tfileTemplate: require('./templates/file.handlebars'),\n\n\tuserLocalTemplate: require('./templates/userLocal.handlebars'),\n\tuserRemoteTemplate: require('./templates/userRemote.handlebars'),\n\n\tunknownTemplate: require('./templates/unkown.handlebars'),\n\tunknownLinkTemplate: require('./templates/unkownLink.handlebars'),\n\n\t/**\n\t * @param {string} message The rich object message with placeholders\n\t * @param {Object} parameters The rich objects to be parsed into the message\n\t * @returns {string} The HTML to render this message\n\t */\n\tparseMessage: function(message, parameters) {\n\t\tmessage = escapeHTML(message)\n\t\tconst regex = /\\{([a-z\\-_0-9]+)\\}/gi\n\t\tconst matches = message.match(regex)\n\n\t\tif (!matches) {\n\t\t\treturn message\n\t\t}\n\n\t\tmatches.forEach(parameter => {\n\t\t\tparameter = parameter.substring(1, parameter.length - 1)\n\t\t\tif (!Object.prototype.hasOwnProperty.call(parameters, parameter) || !parameters[parameter]) {\n\t\t\t\t// Malformed translation?\n\t\t\t\tconsole.error('Potential malformed ROS string: parameter {' + parameter + '} was found in the string but is missing from the parameter list')\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst parsed = this.parseParameter(parameters[parameter])\n\t\t\tmessage = message.replace('{' + parameter + '}', parsed)\n\t\t})\n\n\t\treturn message.replace(new RegExp('\\n', 'g'), '<br>')\n\t},\n\n\t/**\n\t * @param {Object} parameter Rich Object\n\t * @param {string} parameter.type Type of the object\n\t * @param {string} parameter.id Identifier of the object\n\t * @param {string} parameter.name Name of the object\n\t * @param {string} parameter.link Absolute link to the object\n\t * @param {string} [parameter.server] Server the user is on\n\t * @param {string} [parameter.path] User visible path of the file\n\t * @returns {string} The HTML to render this object\n\t */\n\tparseParameter: function(parameter) {\n\t\tswitch (parameter.type) {\n\t\tcase 'file':\n\t\t\treturn this.parseFileParameter(parameter).trim('\\n')\n\n\t\tcase 'user':\n\t\t\tif (parameter.server === undefined) {\n\t\t\t\treturn this.userLocalTemplate(parameter).trim('\\n')\n\t\t\t}\n\n\t\t\treturn this.userRemoteTemplate(parameter).trim('\\n')\n\n\t\tdefault:\n\t\t\tif (parameter.link !== undefined) {\n\t\t\t\treturn this.unknownLinkTemplate(parameter).trim('\\n')\n\t\t\t}\n\n\t\t\treturn this.unknownTemplate(parameter).trim('\\n')\n\t\t}\n\t},\n\n\t/**\n\t * @param {Object} parameter Rich Object file\n\t * @param {string} parameter.id Numeric ID of the file\n\t * @param {string} parameter.name Name of the file/folder\n\t * @param {string} parameter.path User visible path of the file\n\t * @param {string} parameter.link Absolute link to the file\n\t * @returns {string} The HTML to render this parameter\n\t */\n\tparseFileParameter: function(parameter) {\n\t\tconst lastSlashPosition = parameter.path.lastIndexOf('/')\n\t\tconst firstSlashPosition = parameter.path.indexOf('/')\n\t\tparameter.path = parameter.path.substring(firstSlashPosition === 0 ? 1 : 0, lastSlashPosition)\n\n\t\treturn this.fileTemplate(Object.assign({}, parameter, {\n\t\t\ttitle: parameter.path.length === 0 ? '' : t('notifications', 'in {path}', parameter),\n\t\t}))\n\t},\n}\n","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=18596d05&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n\t<div class=\"notification\" :data-id=\"notificationId\" :data-timestamp=\"timestamp\">\n\t\t<div class=\"notification-heading\">\n\t\t\t<span class=\"notification-time has-tooltip live-relative-timestamp\" :data-timestamp=\"timestamp\" :title=\"absoluteDate\">{{ relativeDate }}</span>\n\t\t\t<div class=\"notification-delete\" @click=\"onDismissNotification\">\n\t\t\t\t<span class=\"icon icon-close svg\" :title=\"t('notifications', 'Dismiss')\" />\n\t\t\t</div>\n\t\t</div>\n\t\t<a v-if=\"useLink\" :href=\"link\" class=\"notification-subject full-subject-link\">\n\t\t\t<span v-if=\"icon\" class=\"image\"><img :src=\"icon\" class=\"notification-icon\"></span>\n\t\t\t<span class=\"text\" v-html=\"renderedSubject\" />\n\t\t</a>\n\t\t<div v-else class=\"notification-subject\">\n\t\t\t<span v-if=\"icon\" class=\"image\"><img :src=\"icon\" class=\"notification-icon\"></span>\n\t\t\t<span class=\"text\" v-html=\"renderedSubject\" />\n\t\t</div>\n\t\t<div v-if=\"message\" class=\"notification-message\" @click=\"onClickMessage\">\n\t\t\t<div class=\"message-container\" :class=\"{ collapsed: isCollapsedMessage }\" v-html=\"renderedMessage\" />\n\t\t\t<div v-if=\"isCollapsedMessage\" class=\"notification-overflow\" />\n\t\t</div>\n\t\t<div v-if=\"actions.length\" class=\"notification-actions\">\n\t\t\t<Action v-for=\"(a, i) in actions\" :key=\"i\" v-bind=\"a\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nimport Action from './Action'\nimport parser from '../richObjectStringParser'\nimport escapeHTML from 'escape-html'\nimport moment from '@nextcloud/moment'\n\nexport default {\n\tname: 'Notification',\n\n\tcomponents: {\n\t\tAction,\n\t},\n\n\tprops: {\n\t\tnotificationId: {\n\t\t\ttype: Number,\n\t\t\tdefault: -1,\n\t\t\trequired: true,\n\t\t},\n\t\tdatetime: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tapp: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tuser: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tmessage: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tmessageRich: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tmessageRichParameters: {\n\t\t\ttype: [Object, Array],\n\t\t\tdefault() {\n\t\t\t\treturn {}\n\t\t\t},\n\t\t\trequired: true,\n\t\t},\n\t\tsubject: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tsubjectRich: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tsubjectRichParameters: {\n\t\t\ttype: [Object, Array],\n\t\t\tdefault() {\n\t\t\t\treturn {}\n\t\t\t},\n\t\t\trequired: true,\n\t\t},\n\t\tobjectType: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tobjectId: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tactions: {\n\t\t\ttype: Array,\n\t\t\tdefault() {\n\t\t\t\treturn []\n\t\t\t},\n\t\t\trequired: true,\n\t\t},\n\n\t\tindex: {\n\t\t\ttype: Number,\n\t\t\tdefault: -1,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowFullMessage: false,\n\t\t}\n\t},\n\n\t_$el: null,\n\n\tcomputed: {\n\t\ttimestamp: function() {\n\t\t\treturn moment(this.datetime).format('X') * 1000\n\t\t},\n\t\tabsoluteDate: function() {\n\t\t\treturn OC.Util.formatDate(this.timestamp)\n\t\t},\n\t\trelativeDate: function() {\n\t\t\treturn OC.Util.relativeModifiedDate(this.timestamp)\n\t\t},\n\t\tuseLink: function() {\n\t\t\treturn this.link && this.renderedSubject.indexOf('<a ') === -1\n\t\t},\n\t\trenderedSubject: function() {\n\t\t\tif (this.subjectRich.length !== 0) {\n\t\t\t\treturn parser.parseMessage(\n\t\t\t\t\tthis.subjectRich.replace(new RegExp('\\n', 'g'), ' '),\n\t\t\t\t\tthis.subjectRichParameters\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn escapeHTML(this.subject).replace(new RegExp('\\n', 'g'), ' ')\n\t\t},\n\t\tisCollapsedMessage: function() {\n\t\t\treturn this.message.length > 200 && !this.showFullMessage\n\t\t},\n\t\trenderedMessage: function() {\n\t\t\tif (this.messageRich.length !== 0) {\n\t\t\t\treturn parser.parseMessage(\n\t\t\t\t\tthis.messageRich,\n\t\t\t\t\tthis.messageRichParameters\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn escapeHTML(this.message).replace(new RegExp('\\n', 'g'), '<br>')\n\t\t},\n\t},\n\n\tmounted: function() {\n\t\tthis._$el = $(this.$el)\n\n\t\tthis._$el.find('.avatar').each(function() {\n\t\t\tconst element = $(this)\n\t\t\tif (element.data('user-display-name')) {\n\t\t\t\telement.avatar(element.data('user'), 21, undefined, false, undefined, element.data('user-display-name'))\n\t\t\t} else {\n\t\t\t\telement.avatar(element.data('user'), 21)\n\t\t\t}\n\t\t})\n\n\t\tthis._$el.find('.avatar-name-wrapper').each(function() {\n\t\t\tconst element = $(this)\n\t\t\tconst avatar = element.find('.avatar')\n\t\t\tconst label = element.find('strong')\n\n\t\t\t$.merge(avatar, label).contactsMenu(element.data('user'), 0, element)\n\t\t})\n\n\t\tthis._$el.find('.has-tooltip').tooltip({\n\t\t\t// container: this.$container.find('.notification-wrapper'),\n\t\t\tplacement: 'bottom',\n\t\t})\n\n\t\t// Parents: TransitionGroup > NotificationsList\n\t\tif (this.$parent.$parent.backgroundFetching\n\t\t\t&& this.$parent.$parent.webNotificationsGranted) {\n\t\t\tthis._createWebNotification()\n\t\t}\n\t},\n\n\tmethods: {\n\t\tonClickMessage: function(e) {\n\t\t\tif (e.target.classList.contains('message-container')) {\n\t\t\t\tthis.showFullMessage = !this.showFullMessage\n\t\t\t}\n\t\t},\n\n\t\tonDismissNotification: function() {\n\t\t\taxios\n\t\t\t\t.delete(OC.linkToOCS('apps/notifications/api/v2', 2) + 'notifications/' + this.notificationId)\n\t\t\t\t.then(() => {\n\t\t\t\t\t// this._$el.fadeOut(OC.menuSpeed)\n\t\t\t\t\tthis.$emit('remove', this.index)\n\t\t\t\t})\n\t\t\t\t.catch(() => {\n\t\t\t\t\tOC.Notification.showTemporary(t('notifications', 'Failed to dismiss notification'))\n\t\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Create a browser notification\n\t\t * @see https://developer.mozilla.org/en/docs/Web/API/notification\n\t\t */\n\t\t_createWebNotification: function() {\n\t\t\tconst n = new Notification(this.subject, {\n\t\t\t\ttitle: this.subject,\n\t\t\t\tlang: OC.getLocale(),\n\t\t\t\tbody: this.message,\n\t\t\t\ticon: this.icon,\n\t\t\t\ttag: this.notificationId,\n\t\t\t})\n\n\t\t\tif (this.link) {\n\t\t\t\tn.onclick = function(event) {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\twindow.location.href = this.link\n\t\t\t\t}.bind(this)\n\t\t\t}\n\n\t\t\tsetTimeout(n.close.bind(n), 5000)\n\t\t},\n\t},\n}\n</script>\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification\",attrs:{\"data-id\":_vm.notificationId,\"data-timestamp\":_vm.timestamp}},[_c('div',{staticClass:\"notification-heading\"},[_c('span',{staticClass:\"notification-time has-tooltip live-relative-timestamp\",attrs:{\"data-timestamp\":_vm.timestamp,\"title\":_vm.absoluteDate}},[_vm._v(_vm._s(_vm.relativeDate))]),_vm._v(\" \"),_c('div',{staticClass:\"notification-delete\",on:{\"click\":_vm.onDismissNotification}},[_c('span',{staticClass:\"icon icon-close svg\",attrs:{\"title\":_vm.t('notifications', 'Dismiss')}})])]),_vm._v(\" \"),(_vm.useLink)?_c('a',{staticClass:\"notification-subject full-subject-link\",attrs:{\"href\":_vm.link}},[(_vm.icon)?_c('span',{staticClass:\"image\"},[_c('img',{staticClass:\"notification-icon\",attrs:{\"src\":_vm.icon}})]):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"text\",domProps:{\"innerHTML\":_vm._s(_vm.renderedSubject)}})]):_c('div',{staticClass:\"notification-subject\"},[(_vm.icon)?_c('span',{staticClass:\"image\"},[_c('img',{staticClass:\"notification-icon\",attrs:{\"src\":_vm.icon}})]):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"text\",domProps:{\"innerHTML\":_vm._s(_vm.renderedSubject)}})]),_vm._v(\" \"),(_vm.message)?_c('div',{staticClass:\"notification-message\",on:{\"click\":_vm.onClickMessage}},[_c('div',{staticClass:\"message-container\",class:{ collapsed: _vm.isCollapsedMessage },domProps:{\"innerHTML\":_vm._s(_vm.renderedMessage)}}),_vm._v(\" \"),(_vm.isCollapsedMessage)?_c('div',{staticClass:\"notification-overflow\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.actions.length)?_c('div',{staticClass:\"notification-actions\"},_vm._l((_vm.actions),function(a,i){return _c('Action',_vm._b({key:i},'Action',a,false))}),1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div v-if=\"!shutdown\" class=\"notifications\">\n\t\t<div ref=\"button\"\n\t\t\tclass=\"notifications-button menutoggle\"\n\t\t\t:class=\"{ hasNotifications: notifications.length }\"\n\t\t\ttabindex=\"0\"\n\t\t\trole=\"button\"\n\t\t\t:aria-label=\"t('notifications', 'Notifications')\"\n\t\t\taria-haspopup=\"true\"\n\t\t\taria-controls=\"notification-container\"\n\t\t\taria-expanded=\"false\"\n\t\t\t@click=\"requestWebNotificationPermissions\">\n\t\t\t<img ref=\"icon\"\n\t\t\t\tclass=\"svg\"\n\t\t\t\talt=\"\"\n\t\t\t\t:title=\"t('notifications', 'Notifications')\"\n\t\t\t\t:src=\"iconPath\">\n\t\t</div>\n\t\t<div ref=\"container\" class=\"notification-container\">\n\t\t\t<transition name=\"fade\">\n\t\t\t\t<ul v-if=\"notifications.length > 0\" class=\"notification-wrapper\">\n\t\t\t\t\t<transition-group name=\"fade-collapse\" tag=\"li\">\n\t\t\t\t\t\t<Notification\n\t\t\t\t\t\t\tv-for=\"(n, index) in notifications\"\n\t\t\t\t\t\t\t:key=\"n.notification_id\"\n\t\t\t\t\t\t\tv-bind=\"n\"\n\t\t\t\t\t\t\t:index=\"index\"\n\t\t\t\t\t\t\t:notification-id=\"n.notification_id\"\n\t\t\t\t\t\t\t:object-id=\"n.object_id\"\n\t\t\t\t\t\t\t:object-type=\"n.object_type\"\n\t\t\t\t\t\t\t@remove=\"onRemove\" />\n\t\t\t\t\t</transition-group>\n\t\t\t\t\t<li v-if=\"notifications.length > 2\">\n\t\t\t\t\t\t<div class=\"dismiss-all\" @click=\"onDismissAll\">\n\t\t\t\t\t\t\t<span class=\"icon icon-close svg\" :title=\"t('notifications', 'Dismiss all notifications')\" /> {{ t('notifications', 'Dismiss all notifications') }}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<div v-else class=\"emptycontent\">\n\t\t\t\t\t<div class=\"icon icon-notifications-dark\" />\n\t\t\t\t\t<h2 v-if=\"webNotificationsGranted === null\">\n\t\t\t\t\t\t{{ t('notifications', 'Requesting browser permissions to show notifications') }}\n\t\t\t\t\t</h2>\n\t\t\t\t\t<h2 v-else>\n\t\t\t\t\t\t{{ t('notifications', 'No notifications') }}\n\t\t\t\t\t</h2>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport Notification from './Components/Notification'\nimport axios from '@nextcloud/axios'\nimport { subscribe } from '@nextcloud/event-bus'\n\nexport default {\n\tname: 'App',\n\n\tcomponents: {\n\t\tNotification,\n\t},\n\n\tdata: function() {\n\t\treturn {\n\t\t\twebNotificationsGranted: null,\n\t\t\thadNotifications: false,\n\t\t\tbackgroundFetching: false,\n\t\t\tshutdown: false,\n\t\t\tnotifications: [],\n\t\t\tlastETag: null,\n\n\t\t\t/** @type {number} */\n\t\t\tpollInterval: 30000, // milliseconds\n\n\t\t\t/** @type {number|null} */\n\t\t\tinterval: null,\n\t\t}\n\t},\n\n\t_$icon: null,\n\n\tcomputed: {\n\t\ticonPath: function() {\n\t\t\tlet iconPath = 'notifications'\n\n\t\t\tif (this.webNotificationsGranted === null || this.notifications.length) {\n\t\t\t\tif (this.isRedThemed()) {\n\t\t\t\t\ticonPath += '-red'\n\t\t\t\t}\n\t\t\t\ticonPath += '-new'\n\t\t\t}\n\n\t\t\tif (this.invertedTheme()) {\n\t\t\t\ticonPath += '-dark'\n\t\t\t}\n\n\t\t\treturn OC.imagePath('notifications', iconPath)\n\t\t},\n\t},\n\n\tmounted: function() {\n\t\tthis._$icon = $(this.$refs.icon)\n\n\t\t// Bind the button click event\n\t\tOC.registerMenu($(this.$refs.button), $(this.$refs.container), undefined, true)\n\n\t\tthis.checkWebNotificationPermissions()\n\n\t\t// Initial call to the notification endpoint\n\t\tthis._fetch()\n\n\t\t// Setup the background checker\n\t\tthis.setupBackgroundFetcher()\n\n\t\tsubscribe('networkOffline', () => {\n\t\t\tthis._shutDownNotifications(true)\n\t\t})\n\t\tsubscribe('networkOnline', () => {\n\t\t\tthis._fetch()\n\t\t\tthis.setupBackgroundFetcher()\n\t\t})\n\t},\n\n\tupdated: function() {\n\t\tthis._$icon.attr('src', this.iconPath)\n\n\t\tif (!this.hadNotifications && this.notifications.length) {\n\t\t\tthis._$icon\n\t\t\t\t.animate({ opacity: 0.6 }, 600)\n\t\t\t\t.animate({ opacity: 1 }, 600)\n\t\t\t\t.animate({ opacity: 0.6 }, 600)\n\t\t\t\t.animate({ opacity: 1 }, 600)\n\t\t}\n\n\t\tthis.hadNotifications = this.notifications.length > 0\n\t},\n\n\tmethods: {\n\t\tsetupBackgroundFetcher() {\n\t\t\tif (OC.config.session_keepalive) {\n\t\t\t\tthis.interval = setInterval(this._backgroundFetch.bind(this), this.pollInterval)\n\t\t\t}\n\t\t},\n\n\t\tonDismissAll: function() {\n\t\t\taxios\n\t\t\t\t.delete(OC.linkToOCS('apps/notifications/api/v2', 2) + 'notifications')\n\t\t\t\t.then(() => {\n\t\t\t\t\tthis.notifications = []\n\t\t\t\t})\n\t\t\t\t.catch(() => {\n\t\t\t\t\tOC.Notification.showTemporary(t('notifications', 'Failed to dismiss all notifications'))\n\t\t\t\t})\n\t\t},\n\t\tonRemove: function(index) {\n\t\t\tthis.notifications.splice(index, 1)\n\t\t},\n\n\t\tinvertedTheme: function() {\n\t\t\treturn OCA.Theming && OCA.Theming.inverted\n\t\t},\n\n\t\tisRedThemed: function() {\n\t\t\tif (OCA.Theming && OCA.Theming.color) {\n\t\t\t\tconst hsl = this.rgbToHsl(OCA.Theming.color.substring(1, 3),\n\t\t\t\t\tOCA.Theming.color.substring(3, 5),\n\t\t\t\t\tOCA.Theming.color.substring(5, 7))\n\t\t\t\tconst h = hsl[0] * 360\n\t\t\t\treturn (h >= 330 || h <= 15) && hsl[1] > 0.7 && (hsl[2] > 0.1 || hsl[2] < 0.6)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\n\t\trgbToHsl: function(r, g, b) {\n\t\t\tr = parseInt(r, 16) / 255; g = parseInt(g, 16) / 255; b = parseInt(b, 16) / 255\n\t\t\tconst max = Math.max(r, g, b); const min = Math.min(r, g, b)\n\t\t\tlet h; let s; const l = (max + min) / 2\n\n\t\t\tif (max === min) {\n\t\t\t\th = s = 0\n\t\t\t} else {\n\t\t\t\tconst d = max - min\n\t\t\t\ts = l > 0.5 ? d / (2 - max - min) : d / (max + min)\n\t\t\t\tswitch (max) {\n\t\t\t\tcase r: h = (g - b) / d + (g < b ? 6 : 0); break\n\t\t\t\tcase g: h = (b - r) / d + 2; break\n\t\t\t\tcase b: h = (r - g) / d + 4; break\n\t\t\t\t}\n\t\t\t\th /= 6\n\t\t\t}\n\n\t\t\treturn [h, s, l]\n\t\t},\n\n\t\t/**\n\t\t\t * Performs the AJAX request to retrieve the notifications\n\t\t\t */\n\t\t_fetch: function() {\n\t\t\tlet requestConfig = {}\n\t\t\tif (this.lastETag) {\n\t\t\t\trequestConfig = {\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t'If-None-Match': this.lastETag,\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t}\n\n\t\t\taxios\n\t\t\t\t.get(OC.linkToOCS('apps/notifications/api/v2', 2) + 'notifications', requestConfig)\n\t\t\t\t.then(response => {\n\t\t\t\t\tif (response.status === 204) {\n\t\t\t\t\t\t// 204 No Content - Intercept when no notifiers are there.\n\t\t\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else if (response.data !== undefined && response.data.ocs !== undefined && response.data.ocs.data !== undefined && Array.isArray(response.data.ocs.data)) {\n\t\t\t\t\t\tthis.lastETag = response.headers.etag\n\t\t\t\t\t\tthis.notifications = response.data.ocs.data\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.info('data.ocs.data is undefined or not an array')\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._setPollingInterval(30000)\n\t\t\t\t})\n\t\t\t\t.catch(err => {\n\t\t\t\t\tif (!err.response) {\n\t\t\t\t\t\tconsole.info('No response received, retrying')\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else if (err.response.status === 304) {\n\t\t\t\t\t\t// 304 - Not modified\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else if (err.response.status === 503) {\n\t\t\t\t\t\t// 503 - Maintenance mode\n\t\t\t\t\t\tconsole.info('Slowing down notifications: instance is in maintenance mode.')\n\t\t\t\t\t} else if (err.response.status === 404) {\n\t\t\t\t\t\t// 404 - App disabled\n\t\t\t\t\t\tconsole.info('Shutting down notifications: app is disabled.')\n\t\t\t\t\t\tthis._shutDownNotifications(false)\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.info('Slowing down notifications: [' + err.response.status + '] ' + err.response.statusText)\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t\t})\n\t\t},\n\n\t\t_backgroundFetch: function() {\n\t\t\tthis.backgroundFetching = true\n\t\t\tthis._fetch()\n\t\t},\n\n\t\t_setPollingInterval(pollInterval) {\n\t\t\tif (pollInterval === this.pollInterval) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.interval) {\n\t\t\t\twindow.clearInterval(this.interval)\n\t\t\t\tthis.interval = null\n\t\t\t}\n\n\t\t\tthis.pollInterval = pollInterval\n\t\t\tthis.setupBackgroundFetcher()\n\t\t},\n\n\t\t/**\n\t\t * The app was disabled or has no notifiers, so we can stop polling\n\t\t * And hide the UI as well\n\t\t * @param {Boolean} temporary If false, the notification bell will be hidden\n\t\t */\n\t\t_shutDownNotifications: function(temporary) {\n\t\t\tif (this.interval) {\n\t\t\t\twindow.clearInterval(this.interval)\n\t\t\t\tthis.interval = null\n\t\t\t}\n\t\t\tthis.shutdown = !temporary\n\t\t},\n\n\t\t/**\n\t\t * Check if we can do web notifications\n\t\t */\n\t\tcheckWebNotificationPermissions: function() {\n\t\t\tif (!('Notification' in window)) {\n\t\t\t\tconsole.info('Browser does not support notifications')\n\t\t\t\tthis.webNotificationsGranted = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (window.Notification.permission === 'granted') {\n\t\t\t\tconsole.debug('Notifications permissions granted')\n\t\t\t\tthis.webNotificationsGranted = true\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (window.Notification.permission === 'denied') {\n\t\t\t\tconsole.debug('Notifications permissions denied')\n\t\t\t\tthis.webNotificationsGranted = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconsole.info('Notifications permissions not yet requested')\n\t\t},\n\n\t\t/**\n\t\t * Check if we can do web notifications\n\t\t */\n\t\trequestWebNotificationPermissions: async function() {\n\t\t\tif (this.webNotificationsGranted !== null) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconsole.info('Requesting notifications permissions')\n\t\t\twindow.Notification.requestPermission()\n\t\t\t\t.then((permissions) => {\n\t\t\t\t\tthis.webNotificationsGranted = permissions === 'granted'\n\t\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style scoped>\n\t.fade-enter-active,\n\t.fade-leave-active,\n\t.fade-collapse-enter-active,\n\t.fade-collapse-leave-active {\n\t\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\n\t}\n\t.fade-collapse-enter,\n\t.fade-collapse-leave-to {\n\t\topacity: 0;\n\t\tmax-height: 0;\n\t}\n\t.fade-enter,\n\t.fade-leave-to {\n\t\topacity: 0;\n\t}\n</style>\n","import mod from \"-!../node_modules/babel-loader/lib/index.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/babel-loader/lib/index.js!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=6e2a9f70&scoped=true&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=6e2a9f70&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6e2a9f70\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.shutdown)?_c('div',{staticClass:\"notifications\"},[_c('div',{ref:\"button\",staticClass:\"notifications-button menutoggle\",class:{ hasNotifications: _vm.notifications.length },attrs:{\"tabindex\":\"0\",\"role\":\"button\",\"aria-label\":_vm.t('notifications', 'Notifications'),\"aria-haspopup\":\"true\",\"aria-controls\":\"notification-container\",\"aria-expanded\":\"false\"},on:{\"click\":_vm.requestWebNotificationPermissions}},[_c('img',{ref:\"icon\",staticClass:\"svg\",attrs:{\"alt\":\"\",\"title\":_vm.t('notifications', 'Notifications'),\"src\":_vm.iconPath}})]),_vm._v(\" \"),_c('div',{ref:\"container\",staticClass:\"notification-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.notifications.length > 0)?_c('ul',{staticClass:\"notification-wrapper\"},[_c('transition-group',{attrs:{\"name\":\"fade-collapse\",\"tag\":\"li\"}},_vm._l((_vm.notifications),function(n,index){return _c('Notification',_vm._b({key:n.notification_id,attrs:{\"index\":index,\"notification-id\":n.notification_id,\"object-id\":n.object_id,\"object-type\":n.object_type},on:{\"remove\":_vm.onRemove}},'Notification',n,false))}),1),_vm._v(\" \"),(_vm.notifications.length > 2)?_c('li',[_c('div',{staticClass:\"dismiss-all\",on:{\"click\":_vm.onDismissAll}},[_c('span',{staticClass:\"icon icon-close svg\",attrs:{\"title\":_vm.t('notifications', 'Dismiss all notifications')}}),_vm._v(\" \"+_vm._s(_vm.t('notifications', 'Dismiss all notifications'))+\"\\n\\t\\t\\t\\t\\t\")])]):_vm._e()],1):_c('div',{staticClass:\"emptycontent\"},[_c('div',{staticClass:\"icon icon-notifications-dark\"}),_vm._v(\" \"),(_vm.webNotificationsGranted === null)?_c('h2',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('notifications', 'Requesting browser permissions to show notifications'))+\"\\n\\t\\t\\t\\t\")]):_c('h2',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('notifications', 'No notifications'))+\"\\n\\t\\t\\t\\t\")])])])],1)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2018 Joas Schilling <coding@schilljs.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\nimport App from './App'\n\nVue.prototype.t = t\nVue.prototype.n = n\nVue.prototype.OC = OC\nVue.prototype.OCA = OCA\n\nconst searchBox = document.getElementsByClassName('searchbox')\nconst notificationsBell = document.createElement('div')\nnotificationsBell.setAttribute('id', 'notifications')\n\nArray.prototype.map.call(searchBox, (el) => {\n\tif (el.nodeName !== 'FORM') {\n\t\treturn\n\t}\n\n\tel.insertAdjacentHTML('afterend', notificationsBell.outerHTML)\n})\n\nexport default new Vue({\n\tel: '#notifications',\n\tname: 'Init',\n\trender: h => h(App),\n})\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nexport default function addStylesClient (parentId, list, _isProduction, _options) {\n isProduction = _isProduction\n\n options = _options || {}\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[' + ssrIdKey + '~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n if (options.ssrId) {\n styleElement.setAttribute(ssrIdKey, obj.id)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n"],"sourceRoot":""} \ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 61ed5b5..fc5b2dc 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1414,9 +1414,9 @@
"integrity": "sha512-+beqKQOh9PYxuHvijhVl+tIHvT6tuwOrE9m14zd+MT2A38KoKZhh7pYJ0SNleLtwDsiIxHDsIk9bv01oOxvSvA=="
},
"@vue/component-compiler-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.1.1.tgz",
- "integrity": "sha512-+lN3nsfJJDGMNz7fCpcoYIORrXo0K3OTsdr8jCM7FuqdI4+70TY6gxY6viJ2Xi1clqyPg7LpeOWwjF31vSMmUw==",
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.1.2.tgz",
+ "integrity": "sha512-QLq9z8m79mCinpaEeSURhnNCN6djxpHw0lpP/bodMlt5kALfONpryMthvnrQOlTcIKoF+VoPi+lPHUYeDFPXug==",
"dev": true,
"requires": {
"consolidate": "^0.15.1",
@@ -5824,14 +5824,43 @@
"dev": true
},
"loader-utils": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz",
- "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=",
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
+ "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
"dev": true,
"requires": {
- "big.js": "^3.1.3",
- "emojis-list": "^2.0.0",
- "json5": "^0.5.0"
+ "big.js": "^5.2.2",
+ "emojis-list": "^3.0.0",
+ "json5": "^1.0.1"
+ },
+ "dependencies": {
+ "big.js": {
+ "version": "5.2.2",
+ "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
+ "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
+ "dev": true
+ },
+ "emojis-list": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
+ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
+ "dev": true
+ },
+ "json5": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
+ "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.0"
+ }
+ },
+ "minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
+ "dev": true
+ }
}
},
"locate-path": {
@@ -6970,7 +6999,8 @@
"version": "1.19.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz",
"integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==",
- "dev": true
+ "dev": true,
+ "optional": true
},
"private": {
"version": "0.1.8",
@@ -8786,9 +8816,9 @@
"dev": true
},
"vue-loader": {
- "version": "15.9.1",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.1.tgz",
- "integrity": "sha512-IaPU2KOPjs/QjMlxFs/TiTtQUSbftQ7lsAvoxe21rtcQohsMhx+1AltXCNhZIpIn46PtODiAgz+o8RbMpKtmJw==",
+ "version": "15.9.2",
+ "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.2.tgz",
+ "integrity": "sha512-oXBubaY//CYEISBlHX+c2YPJbmOH68xXPXjFv4MAgPqQvUsnjrBAjCJi8HXZ/r/yfn0tPL5VZj1Zcp8mJPI8VA==",
"dev": true,
"requires": {
"@vue/component-compiler-utils": "^3.1.0",
diff --git a/package.json b/package.json
index a640e71..2b59d0b 100644
--- a/package.json
+++ b/package.json
@@ -44,7 +44,7 @@
"handlebars-loader": "^1.7.1",
"node-sass": "^4.14.0",
"sass-loader": "^8.0.2",
- "vue-loader": "^15.9.1",
+ "vue-loader": "^15.9.2",
"vue-template-compiler": "^2.6.11",
"webpack": "^4.43.0",
"webpack-cli": "^3.3.11",