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>2021-01-28 11:22:27 +0300
committerGitHub <noreply@github.com>2021-01-28 11:22:27 +0300
commit13a8b4d4a65d4c0b30143eb09b66b0d061aabf40 (patch)
tree903176f5164fa4e79fa035a6b4e1b7a4d0106468
parentf8a60503b37eeb98ae40c087a248a6337fd571fa (diff)
parentd770912e059ac5c10e468468a12194afb048f0cb (diff)
Merge pull request #846 from nextcloud/backport/845/stable20v20.0.7RC1
[stable20] Cannot unfold plain text notifications
-rw-r--r--css/styles.scss2
-rw-r--r--js/notifications-main.js4
-rw-r--r--js/notifications-main.js.map2
-rw-r--r--src/Components/Notification.vue4
4 files changed, 8 insertions, 4 deletions
diff --git a/css/styles.scss b/css/styles.scss
index 3df3cd3..be3d7c5 100644
--- a/css/styles.scss
+++ b/css/styles.scss
@@ -137,7 +137,7 @@
& > .collapsed {
overflow: hidden;
- max-height: 70px
+ max-height: 70px;
}
& > .notification-overflow {
diff --git a/js/notifications-main.js b/js/notifications-main.js
index 89148ec..515d69b 100644
--- a/js/notifications-main.js
+++ b/js/notifications-main.js
@@ -281,7 +281,7 @@ t.default={data:function(){return{isFullscreen:this._isFullscreen()}},beforeMoun
* @author Feross Aboukhadijeh <https://feross.org>
* @license MIT
*/
-e.exports=function(e){return null!=e&&(n(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&n(e.slice(0,0))}(e)||!!e._isBuffer)}},function(e,t,n){"use strict";var r=n(4),a=n(47),s=n(17),i=n(77),o=[].join,l=a!=Object,u=i("join",",");r({target:"Array",proto:!0,forced:l||!u},{join:function(e){return o.call(s(this),void 0===e?",":e)}})},function(e,t,n){"use strict";var r=n(4),a=n(72).includes,s=n(129);r({target:"Array",proto:!0,forced:!n(32)("indexOf",{ACCESSORS:!0,1:0})},{includes:function(e){return a(this,e,arguments.length>1?arguments[1]:void 0)}}),s("includes")},function(e,t,n){"use strict";var r=n(148),a=n(7),s=n(20),i=n(29),o=n(149),l=n(150);r("match",1,(function(e,t,n){return[function(t){var n=i(this),r=null==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var i=a(e),u=String(this);if(!i.global)return l(i,u);var c=i.unicode;i.lastIndex=0;for(var d,p=[],m=0;null!==(d=l(i,u));){var f=String(d[0]);p[m]=f,""===f&&(i.lastIndex=o(u,s(i.lastIndex),c)),m++}return 0===m?null:p}]}))},function(e,t,n){"use strict";var r=n(63);n.n(r).a},function(e,t,n){(t=n(44)(!1)).push([e.i,".mention[data-v-0fd54af1]{display:contents;white-space:nowrap}\n",""]),e.exports=t},function(e,t,n){"use strict";var r=n(64);n.n(r).a},function(e,t,n){(t=n(44)(!1)).push([e.i,"[data-v-0d034530] .rich-text--wrapper{white-space:pre-wrap;word-break:break-word}\n",""]),e.exports=t},function(e,t,n){"use strict";var r={}.propertyIsEnumerable,a=Object.getOwnPropertyDescriptor,s=a&&!r.call({1:2},1);t.f=s?function(e){var t=a(this,e);return!!t&&t.enumerable}:r},function(e,t,n){var r=n(13),a=n(25),s=r.document,i=a(s)&&a(s.createElement);e.exports=function(e){return i?s.createElement(e):{}}},function(e,t,n){var r=n(13),a=n(60),s=n(34),i=n(100),o=n(292),l=n(401),u=l.get,c=l.enforce,d=String(String).split("String");(e.exports=function(e,t,n,o){var l=!!o&&!!o.unsafe,u=!!o&&!!o.enumerable,p=!!o&&!!o.noTargetGet;"function"==typeof n&&("string"!=typeof t||s(n,"name")||a(n,"name",t),c(n).source=d.join("string"==typeof t?t:"")),e!==r?(l?!p&&e[t]&&(u=!0):delete e[t],u?e[t]=n:a(e,t,n)):u?e[t]=n:i(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||o(this)}))},function(e,t,n){var r,a,s,i=n(402),o=n(13),l=n(25),u=n(60),c=n(34),d=n(403),p=n(297),m=o.WeakMap;if(i){var f=new m,h=f.get,_=f.has,g=f.set;r=function(e,t){return g.call(f,e,t),t},a=function(e){return h.call(f,e)||{}},s=function(e){return _.call(f,e)}}else{var A=d("state");p[A]=!0,r=function(e,t){return u(e,A,t),t},a=function(e){return c(e,A)?e[A]:{}},s=function(e){return c(e,A)}}e.exports={set:r,get:a,has:s,enforce:function(e){return s(e)?a(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=a(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){var r=n(13),a=n(292),s=r.WeakMap;e.exports="function"==typeof s&&/native code/.test(a(s))},function(e,t,n){var r=n(294),a=n(296),s=r("keys");e.exports=function(e){return s[e]||(s[e]=a(e))}},function(e,t,n){var r=n(34),a=n(405),s=n(93),i=n(99);e.exports=function(e,t){for(var n=a(t),o=i.f,l=s.f,u=0;u<n.length;u++){var c=n[u];r(e,c)||o(e,c,l(t,c))}}},function(e,t,n){var r=n(298),a=n(407),s=n(410),i=n(291);e.exports=r("Reflect","ownKeys")||function(e){var t=a.f(i(e)),n=s.f;return n?t.concat(n(e)):t}},function(e,t,n){var r=n(13);e.exports=r},function(e,t,n){var r=n(299),a=n(301).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,a)}},function(e,t,n){var r=n(95),a=n(61),s=n(409),i=function(e){return function(t,n,i){var o,l=r(t),u=a(l.length),c=s(i,u);if(e&&n!=n){for(;u>c;)if((o=l[c++])!=o)return!0}else for(;u>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){var r=n(300),a=Math.max,s=Math.min;e.exports=function(e,t){var n=r(e);return n<0?a(n+t,0):s(n,t)}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var r=n(15),a=/#|\.prototype\./,s=function(e,t){var n=o[i(e)];return n==u||n!=l&&("function"==typeof t?r(t):!!t)},i=s.normalize=function(e){return String(e).replace(a,".").toLowerCase()},o=s.data={},l=s.NATIVE="N",u=s.POLYFILL="P";e.exports=s},function(e,t,n){var r=n(413);e.exports=function(e,t,n){if(r(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,r){return e.call(t,n,r)};case 3:return function(n,r,a){return e.call(t,n,r,a)}}return function(){return e.apply(t,arguments)}}},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 r=n(305);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(e,t,n){var r=n(298);e.exports=r("navigator","userAgent")||""},function(e,t,n){var r=n(299),a=n(301);e.exports=Object.keys||function(e){return r(e,a)}},function(e,t,n){var r=n(418);e.exports=function(e){if(r(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){var r=n(25),a=n(96),s=n(46)("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[s])?!!t:"RegExp"==a(e))}},function(e,t,n){var r=n(46)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[r]=!1,"/./"[e](t)}catch(e){}}return!1}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,a=(r=n(310))&&r.__esModule?r:{default:r};function s(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var o=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i(this,"appId",void 0),i(this,"persisted",!1),i(this,"clearedOnLogout",!1),this.appId=t}var t,n,r;return t=e,(n=[{key:"persist",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this.persisted=e,this}},{key:"clearOnLogout",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this.clearedOnLogout=e,this}},{key:"build",value:function(){return new a.default(this.appId,this.persisted?window.localStorage:window.sessionStorage,!this.clearedOnLogout)}}])&&s(t.prototype,n),r&&s(t,r),e}();t.default=o},function(e,t,n){"use strict";var r=n(45),a=n(15),s=n(304),i=n(25),o=n(101),l=n(61),u=n(422),c=n(303),d=n(102),p=n(46),m=n(306),f=p("isConcatSpreadable"),h=m>=51||!a((function(){var e=[];return e[f]=!1,e.concat()[0]!==e})),_=d("concat"),g=function(e){if(!i(e))return!1;var t=e[f];return void 0!==t?!!t:s(e)};r({target:"Array",proto:!0,forced:!h||!_},{concat:function(e){var t,n,r,a,s,i=o(this),d=c(i,0),p=0;for(t=-1,r=arguments.length;t<r;t++)if(g(s=-1===t?i:arguments[t])){if(p+(a=l(s.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<a;n++,p++)n in s&&u(d,p,s[n])}else{if(p>=9007199254740991)throw TypeError("Maximum allowed index exceeded");u(d,p++,s)}return d.length=p,d}})},function(e,t,n){"use strict";var r=n(98),a=n(99),s=n(94);e.exports=function(e,t,n){var i=r(t);i in e?a.f(e,i,s(0,n)):e[i]=n}},function(e,t,n){"use strict";var r=n(65);n.n(r).a},function(e,t,n){(t=n(44)(!1)).push([e.i,"\n.fade-enter-active[data-v-7bbc2826],\n.fade-leave-active[data-v-7bbc2826],\n.fade-collapse-enter-active[data-v-7bbc2826],\n.fade-collapse-leave-active[data-v-7bbc2826] {\n\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\n}\n.fade-collapse-enter[data-v-7bbc2826],\n.fade-collapse-leave-to[data-v-7bbc2826] {\n\topacity: 0;\n\tmax-height: 0;\n}\n.fade-enter[data-v-7bbc2826],\n.fade-leave-to[data-v-7bbc2826] {\n\topacity: 0;\n}\n",""]),e.exports=t},function(e,t,n){var r=n(43),a=n(426);"string"==typeof(a=a.__esModule?a.default:a)&&(a=[[e.i,a,""]]);var s={insert:"head",singleton:!1};r(a,s);e.exports=a.locals||{}},function(e,t,n){var r=n(44),a=n(427),s=n(428);t=r(!1);var i=a(s);t.push([e.i,".toastify.dialogs{min-width:200px;background:none;background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 6px 0 var(--color-box-shadow);padding:12px;padding-right:34px;margin-top:45px;position:fixed;z-index:9000;border-radius:var(--border-radius)}.toastify.dialogs .toast-undo-button,.toastify.dialogs .toast-close{position:absolute;top:0;right:0;overflow:hidden;box-sizing:border-box;min-width:44px;height:100%;padding:12px;white-space:nowrap;background-repeat:no-repeat;background-position:center;background-color:transparent;min-height:0}.toastify.dialogs .toast-undo-button.toast-close,.toastify.dialogs .toast-close.toast-close{background-image:url("+i+");text-indent:200%;opacity:.4}.toastify.dialogs .toast-undo-button.toast-undo-button,.toastify.dialogs .toast-close.toast-undo-button{margin:3px;height:calc(100% - 2 * 3px)}.toastify.dialogs .toast-undo-button:hover,.toastify.dialogs .toast-undo-button:focus,.toastify.dialogs .toast-undo-button:active,.toastify.dialogs .toast-close:hover,.toastify.dialogs .toast-close:focus,.toastify.dialogs .toast-close:active{cursor:pointer;opacity:1}.toastify.dialogs.toastify-top{right:10px}.toastify.dialogs.toast-with-click{cursor:pointer}.toastify.dialogs.toast-error{border-left:3px solid var(--color-error)}.toastify.dialogs.toast-info{border-left:3px solid var(--color-primary)}.toastify.dialogs.toast-warning{border-left:3px solid var(--color-warning)}.toastify.dialogs.toast-success{border-left:3px solid var(--color-success)}.toastify.dialogs.toast-undo{border-left:3px solid var(--color-success)}\n",""]),e.exports=t},function(e,t,n){"use strict";e.exports=function(e,t){return t||(t={}),"string"!=typeof(e=e&&e.__esModule?e.default:e)?e:(/^['"].*['"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/["'() \t\n]/.test(e)||t.needQuotes?'"'.concat(e.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):e)}},function(e,t,n){"use strict";n.r(t),t.default="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo="},function(e,r,a){"use strict";a.r(r);var s=a(27),i=a(16),o=a.n(i),l=a(66),u=a.n(l),c=a(35);function d(e,t,n,r,a,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(r,a)}function p(e,t,n,r,a,s,i,o){var l,u="function"==typeof e?e.options:e;if(t&&(u.render=t,u.staticRenderFns=n,u._compiled=!0),r&&(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__),a&&a.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},u._ssrRegister=l):a&&(l=o?function(){a.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:a),l)if(u.functional){u._injectStyles=l;var c=u.render;u.render=function(e,t){return l.call(t),c(e,t)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,l):[l]}return{exports:e,options:u}}var m=p({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 r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("WEB"!==(r=n.type||"GET")){e.next=4;break}return window.location=n.link,e.abrupt("return");case 4:return e.prev=4,e.next=7,o()({method:r,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:r}}))}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),Object(c.a)(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(r,a){var s=e.apply(t,n);function i(e){d(s,r,a,i,o,"next",e)}function o(e){d(s,r,a,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,f=a(21),h=a(26),_=a.n(h),g=a(312),A={name:"DefaultParameter",props:{type:{type:String,required:!0},id:{type:[Number,String],required:!0},name:{type:String,required:!0},link:{type:String,default:""}}},v=(a(358),p(A,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.link?n("a",{staticClass:"external",attrs:{href:e.link,target:"_blank",rel:"noopener noreferrer"}},[n("strong",[e._v(e._s(e.name))])]):n("strong",[e._v(e._s(e.name))])}),[],!1,null,"49ca75ce",null).exports),y=p({name:"File",directives:{tooltip:u.a},props:{type:{type:String,required:!0},id:{type:[Number,String],required:!0},name:{type:String,required:!0},path:{type:String,default:""},link:{type:String,default:""}},computed:{title:function(){var e=this.path.lastIndexOf("/"),n=this.path.indexOf("/"),r=this.path.substring(0===n?1:0,e);return 0===r.length?"":t("notifications","in {path}",{path:r})}}},(function(){var e=this.$createElement;return(this._self._c||e)("a",{directives:[{name:"tooltip",rawName:"v-tooltip.bottom",value:this.title,expression:"title",modifiers:{bottom:!0}}],staticClass:"filename",attrs:{href:this.link}},[this._v(this._s(this.name))])}),[],!1,null,null,null).exports,M=a(313),b={name:"User",components:{UserBubble:a.n(M).a},props:{type:{type:String,required:!0},id:{type:String,required:!0},name:{type:String,required:!0},server:{type:String,default:""}},computed:{cloudId:function(){return this.server?this.id+"@"+this.server:""}}},L=(a(394),p(b,(function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"mention"},[this.cloudId?t("strong",{attrs:{title:this.cloudId}},[this._v("\n\t\t"+this._s(this.name)+"\n\t")]):t("UserBubble",{attrs:{"display-name":this.name,user:this.id}})],1)}),[],!1,null,"0fd54af1",null).exports),T={name:"Notification",components:{Action:m,RichText:g.a},directives:{tooltip:u.a},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 new Date(this.datetime).valueOf()},absoluteDate:function(){return _()(this.timestamp).format("LLL")},relativeDate:function(){var e=_()().diff(_()(this.timestamp));return e>=0&&e<45e3?t("core","seconds ago"):_()(this.timestamp).fromNow()},useLink:function(){if(!this.link)return!1;var e=!1;return Object.keys(this.subjectRichParameters).forEach((function(t){t.link&&(e=!0)})),e},preparedSubjectParameters:function(){return this.prepareParameters(this.subjectRichParameters)},preparedMessageParameters:function(){return this.prepareParameters(this.messageRichParameters)},isCollapsedMessage:function(){return this.message.length>200&&!this.showFullMessage}},mounted:function(){this._$el=$(this.$el),this.$parent.$parent.showBrowserNotifications&&this._createWebNotification()},methods:{prepareParameters:function(e){var t={};return Object.keys(e).forEach((function(n){var r=e[n].type;t[n]="user"===r?{component:L,props:e[n]}:"file"===r?{component:y,props:e[n]}:{component:v,props:e[n]}})),t},onClickMessage:function(e){e.target.classList.contains("rich-text--wrapper")&&(this.showFullMessage=!this.showFullMessage)},onDismissNotification:function(){var e=this;o.a.delete(Object(f.generateOcsUrl)("apps/notifications/api/v2",2)+"notifications/"+this.notificationId).then((function(){e.$emit("remove",e.index)})).catch((function(){Object(c.a)(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)}}},w=(a(396),p(T,(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",{directives:[{name:"tooltip",rawName:"v-tooltip.bottom",value:e.absoluteDate,expression:"absoluteDate",modifiers:{bottom:!0}}],staticClass:"notification-time live-relative-timestamp",attrs:{"data-timestamp":e.timestamp}},[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(" "),e.subjectRich?n("RichText",{attrs:{text:e.subjectRich,arguments:e.preparedSubjectParameters}}):n("span",{staticClass:"subject"},[e._v(e._s(e.subject))])],1):n("div",{staticClass:"notification-subject"},[e.icon?n("span",{staticClass:"image"},[n("img",{staticClass:"notification-icon",attrs:{src:e.icon}})]):e._e(),e._v(" "),e.subjectRich?n("RichText",{attrs:{text:e.subjectRich,arguments:e.preparedSubjectParameters}}):n("span",{staticClass:"subject"},[e._v(e._s(e.subject))])],1),e._v(" "),e.message?n("div",{staticClass:"notification-message",on:{click:e.onClickMessage}},[n("div",{staticClass:"message-container",class:{collapsed:e.isCollapsedMessage}},[e.messageRich?n("RichText",{attrs:{text:e.messageRich,arguments:e.preparedMessageParameters,autolink:!0}}):n("span",[e._v(e._s(e.message))])],1),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,r){return n("Action",e._b({key:r},"Action",t,!1))})),1):e._e()])}),[],!1,null,"0d034530",null).exports),x=a(36),Y=a(314),k=Object(Y.getBuilder)("notifications").clearOnLogout().persist().build();function D(e,t,n,r,a,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(r,a)}function S(e){return function(){var t=this,n=arguments;return new Promise((function(r,a){var s=e.apply(t,n);function i(e){D(s,r,a,i,o,"next",e)}function o(e){D(s,r,a,i,o,"throw",e)}i(void 0)}))}}
+e.exports=function(e){return null!=e&&(n(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&n(e.slice(0,0))}(e)||!!e._isBuffer)}},function(e,t,n){"use strict";var r=n(4),a=n(47),s=n(17),i=n(77),o=[].join,l=a!=Object,u=i("join",",");r({target:"Array",proto:!0,forced:l||!u},{join:function(e){return o.call(s(this),void 0===e?",":e)}})},function(e,t,n){"use strict";var r=n(4),a=n(72).includes,s=n(129);r({target:"Array",proto:!0,forced:!n(32)("indexOf",{ACCESSORS:!0,1:0})},{includes:function(e){return a(this,e,arguments.length>1?arguments[1]:void 0)}}),s("includes")},function(e,t,n){"use strict";var r=n(148),a=n(7),s=n(20),i=n(29),o=n(149),l=n(150);r("match",1,(function(e,t,n){return[function(t){var n=i(this),r=null==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var i=a(e),u=String(this);if(!i.global)return l(i,u);var c=i.unicode;i.lastIndex=0;for(var d,p=[],m=0;null!==(d=l(i,u));){var f=String(d[0]);p[m]=f,""===f&&(i.lastIndex=o(u,s(i.lastIndex),c)),m++}return 0===m?null:p}]}))},function(e,t,n){"use strict";var r=n(63);n.n(r).a},function(e,t,n){(t=n(44)(!1)).push([e.i,".mention[data-v-0fd54af1]{display:contents;white-space:nowrap}\n",""]),e.exports=t},function(e,t,n){"use strict";var r=n(64);n.n(r).a},function(e,t,n){(t=n(44)(!1)).push([e.i,"[data-v-5c9d3bb9] .rich-text--wrapper{white-space:pre-wrap;word-break:break-word}\n",""]),e.exports=t},function(e,t,n){"use strict";var r={}.propertyIsEnumerable,a=Object.getOwnPropertyDescriptor,s=a&&!r.call({1:2},1);t.f=s?function(e){var t=a(this,e);return!!t&&t.enumerable}:r},function(e,t,n){var r=n(13),a=n(25),s=r.document,i=a(s)&&a(s.createElement);e.exports=function(e){return i?s.createElement(e):{}}},function(e,t,n){var r=n(13),a=n(60),s=n(34),i=n(100),o=n(292),l=n(401),u=l.get,c=l.enforce,d=String(String).split("String");(e.exports=function(e,t,n,o){var l=!!o&&!!o.unsafe,u=!!o&&!!o.enumerable,p=!!o&&!!o.noTargetGet;"function"==typeof n&&("string"!=typeof t||s(n,"name")||a(n,"name",t),c(n).source=d.join("string"==typeof t?t:"")),e!==r?(l?!p&&e[t]&&(u=!0):delete e[t],u?e[t]=n:a(e,t,n)):u?e[t]=n:i(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||o(this)}))},function(e,t,n){var r,a,s,i=n(402),o=n(13),l=n(25),u=n(60),c=n(34),d=n(403),p=n(297),m=o.WeakMap;if(i){var f=new m,h=f.get,_=f.has,g=f.set;r=function(e,t){return g.call(f,e,t),t},a=function(e){return h.call(f,e)||{}},s=function(e){return _.call(f,e)}}else{var A=d("state");p[A]=!0,r=function(e,t){return u(e,A,t),t},a=function(e){return c(e,A)?e[A]:{}},s=function(e){return c(e,A)}}e.exports={set:r,get:a,has:s,enforce:function(e){return s(e)?a(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=a(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){var r=n(13),a=n(292),s=r.WeakMap;e.exports="function"==typeof s&&/native code/.test(a(s))},function(e,t,n){var r=n(294),a=n(296),s=r("keys");e.exports=function(e){return s[e]||(s[e]=a(e))}},function(e,t,n){var r=n(34),a=n(405),s=n(93),i=n(99);e.exports=function(e,t){for(var n=a(t),o=i.f,l=s.f,u=0;u<n.length;u++){var c=n[u];r(e,c)||o(e,c,l(t,c))}}},function(e,t,n){var r=n(298),a=n(407),s=n(410),i=n(291);e.exports=r("Reflect","ownKeys")||function(e){var t=a.f(i(e)),n=s.f;return n?t.concat(n(e)):t}},function(e,t,n){var r=n(13);e.exports=r},function(e,t,n){var r=n(299),a=n(301).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,a)}},function(e,t,n){var r=n(95),a=n(61),s=n(409),i=function(e){return function(t,n,i){var o,l=r(t),u=a(l.length),c=s(i,u);if(e&&n!=n){for(;u>c;)if((o=l[c++])!=o)return!0}else for(;u>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){var r=n(300),a=Math.max,s=Math.min;e.exports=function(e,t){var n=r(e);return n<0?a(n+t,0):s(n,t)}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var r=n(15),a=/#|\.prototype\./,s=function(e,t){var n=o[i(e)];return n==u||n!=l&&("function"==typeof t?r(t):!!t)},i=s.normalize=function(e){return String(e).replace(a,".").toLowerCase()},o=s.data={},l=s.NATIVE="N",u=s.POLYFILL="P";e.exports=s},function(e,t,n){var r=n(413);e.exports=function(e,t,n){if(r(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,r){return e.call(t,n,r)};case 3:return function(n,r,a){return e.call(t,n,r,a)}}return function(){return e.apply(t,arguments)}}},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 r=n(305);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(e,t,n){var r=n(298);e.exports=r("navigator","userAgent")||""},function(e,t,n){var r=n(299),a=n(301);e.exports=Object.keys||function(e){return r(e,a)}},function(e,t,n){var r=n(418);e.exports=function(e){if(r(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){var r=n(25),a=n(96),s=n(46)("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[s])?!!t:"RegExp"==a(e))}},function(e,t,n){var r=n(46)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[r]=!1,"/./"[e](t)}catch(e){}}return!1}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,a=(r=n(310))&&r.__esModule?r:{default:r};function s(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var o=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i(this,"appId",void 0),i(this,"persisted",!1),i(this,"clearedOnLogout",!1),this.appId=t}var t,n,r;return t=e,(n=[{key:"persist",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this.persisted=e,this}},{key:"clearOnLogout",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this.clearedOnLogout=e,this}},{key:"build",value:function(){return new a.default(this.appId,this.persisted?window.localStorage:window.sessionStorage,!this.clearedOnLogout)}}])&&s(t.prototype,n),r&&s(t,r),e}();t.default=o},function(e,t,n){"use strict";var r=n(45),a=n(15),s=n(304),i=n(25),o=n(101),l=n(61),u=n(422),c=n(303),d=n(102),p=n(46),m=n(306),f=p("isConcatSpreadable"),h=m>=51||!a((function(){var e=[];return e[f]=!1,e.concat()[0]!==e})),_=d("concat"),g=function(e){if(!i(e))return!1;var t=e[f];return void 0!==t?!!t:s(e)};r({target:"Array",proto:!0,forced:!h||!_},{concat:function(e){var t,n,r,a,s,i=o(this),d=c(i,0),p=0;for(t=-1,r=arguments.length;t<r;t++)if(g(s=-1===t?i:arguments[t])){if(p+(a=l(s.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<a;n++,p++)n in s&&u(d,p,s[n])}else{if(p>=9007199254740991)throw TypeError("Maximum allowed index exceeded");u(d,p++,s)}return d.length=p,d}})},function(e,t,n){"use strict";var r=n(98),a=n(99),s=n(94);e.exports=function(e,t,n){var i=r(t);i in e?a.f(e,i,s(0,n)):e[i]=n}},function(e,t,n){"use strict";var r=n(65);n.n(r).a},function(e,t,n){(t=n(44)(!1)).push([e.i,"\n.fade-enter-active[data-v-7bbc2826],\n.fade-leave-active[data-v-7bbc2826],\n.fade-collapse-enter-active[data-v-7bbc2826],\n.fade-collapse-leave-active[data-v-7bbc2826] {\n\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\n}\n.fade-collapse-enter[data-v-7bbc2826],\n.fade-collapse-leave-to[data-v-7bbc2826] {\n\topacity: 0;\n\tmax-height: 0;\n}\n.fade-enter[data-v-7bbc2826],\n.fade-leave-to[data-v-7bbc2826] {\n\topacity: 0;\n}\n",""]),e.exports=t},function(e,t,n){var r=n(43),a=n(426);"string"==typeof(a=a.__esModule?a.default:a)&&(a=[[e.i,a,""]]);var s={insert:"head",singleton:!1};r(a,s);e.exports=a.locals||{}},function(e,t,n){var r=n(44),a=n(427),s=n(428);t=r(!1);var i=a(s);t.push([e.i,".toastify.dialogs{min-width:200px;background:none;background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 6px 0 var(--color-box-shadow);padding:12px;padding-right:34px;margin-top:45px;position:fixed;z-index:9000;border-radius:var(--border-radius)}.toastify.dialogs .toast-undo-button,.toastify.dialogs .toast-close{position:absolute;top:0;right:0;overflow:hidden;box-sizing:border-box;min-width:44px;height:100%;padding:12px;white-space:nowrap;background-repeat:no-repeat;background-position:center;background-color:transparent;min-height:0}.toastify.dialogs .toast-undo-button.toast-close,.toastify.dialogs .toast-close.toast-close{background-image:url("+i+");text-indent:200%;opacity:.4}.toastify.dialogs .toast-undo-button.toast-undo-button,.toastify.dialogs .toast-close.toast-undo-button{margin:3px;height:calc(100% - 2 * 3px)}.toastify.dialogs .toast-undo-button:hover,.toastify.dialogs .toast-undo-button:focus,.toastify.dialogs .toast-undo-button:active,.toastify.dialogs .toast-close:hover,.toastify.dialogs .toast-close:focus,.toastify.dialogs .toast-close:active{cursor:pointer;opacity:1}.toastify.dialogs.toastify-top{right:10px}.toastify.dialogs.toast-with-click{cursor:pointer}.toastify.dialogs.toast-error{border-left:3px solid var(--color-error)}.toastify.dialogs.toast-info{border-left:3px solid var(--color-primary)}.toastify.dialogs.toast-warning{border-left:3px solid var(--color-warning)}.toastify.dialogs.toast-success{border-left:3px solid var(--color-success)}.toastify.dialogs.toast-undo{border-left:3px solid var(--color-success)}\n",""]),e.exports=t},function(e,t,n){"use strict";e.exports=function(e,t){return t||(t={}),"string"!=typeof(e=e&&e.__esModule?e.default:e)?e:(/^['"].*['"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/["'() \t\n]/.test(e)||t.needQuotes?'"'.concat(e.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):e)}},function(e,t,n){"use strict";n.r(t),t.default="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo="},function(e,r,a){"use strict";a.r(r);var s=a(27),i=a(16),o=a.n(i),l=a(66),u=a.n(l),c=a(35);function d(e,t,n,r,a,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(r,a)}function p(e,t,n,r,a,s,i,o){var l,u="function"==typeof e?e.options:e;if(t&&(u.render=t,u.staticRenderFns=n,u._compiled=!0),r&&(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__),a&&a.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},u._ssrRegister=l):a&&(l=o?function(){a.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:a),l)if(u.functional){u._injectStyles=l;var c=u.render;u.render=function(e,t){return l.call(t),c(e,t)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,l):[l]}return{exports:e,options:u}}var m=p({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 r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("WEB"!==(r=n.type||"GET")){e.next=4;break}return window.location=n.link,e.abrupt("return");case 4:return e.prev=4,e.next=7,o()({method:r,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:r}}))}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),Object(c.a)(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(r,a){var s=e.apply(t,n);function i(e){d(s,r,a,i,o,"next",e)}function o(e){d(s,r,a,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,f=a(21),h=a(26),_=a.n(h),g=a(312),A={name:"DefaultParameter",props:{type:{type:String,required:!0},id:{type:[Number,String],required:!0},name:{type:String,required:!0},link:{type:String,default:""}}},v=(a(358),p(A,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.link?n("a",{staticClass:"external",attrs:{href:e.link,target:"_blank",rel:"noopener noreferrer"}},[n("strong",[e._v(e._s(e.name))])]):n("strong",[e._v(e._s(e.name))])}),[],!1,null,"49ca75ce",null).exports),y=p({name:"File",directives:{tooltip:u.a},props:{type:{type:String,required:!0},id:{type:[Number,String],required:!0},name:{type:String,required:!0},path:{type:String,default:""},link:{type:String,default:""}},computed:{title:function(){var e=this.path.lastIndexOf("/"),n=this.path.indexOf("/"),r=this.path.substring(0===n?1:0,e);return 0===r.length?"":t("notifications","in {path}",{path:r})}}},(function(){var e=this.$createElement;return(this._self._c||e)("a",{directives:[{name:"tooltip",rawName:"v-tooltip.bottom",value:this.title,expression:"title",modifiers:{bottom:!0}}],staticClass:"filename",attrs:{href:this.link}},[this._v(this._s(this.name))])}),[],!1,null,null,null).exports,M=a(313),b={name:"User",components:{UserBubble:a.n(M).a},props:{type:{type:String,required:!0},id:{type:String,required:!0},name:{type:String,required:!0},server:{type:String,default:""}},computed:{cloudId:function(){return this.server?this.id+"@"+this.server:""}}},L=(a(394),p(b,(function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"mention"},[this.cloudId?t("strong",{attrs:{title:this.cloudId}},[this._v("\n\t\t"+this._s(this.name)+"\n\t")]):t("UserBubble",{attrs:{"display-name":this.name,user:this.id}})],1)}),[],!1,null,"0fd54af1",null).exports),T={name:"Notification",components:{Action:m,RichText:g.a},directives:{tooltip:u.a},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 new Date(this.datetime).valueOf()},absoluteDate:function(){return _()(this.timestamp).format("LLL")},relativeDate:function(){var e=_()().diff(_()(this.timestamp));return e>=0&&e<45e3?t("core","seconds ago"):_()(this.timestamp).fromNow()},useLink:function(){if(!this.link)return!1;var e=!1;return Object.keys(this.subjectRichParameters).forEach((function(t){t.link&&(e=!0)})),e},preparedSubjectParameters:function(){return this.prepareParameters(this.subjectRichParameters)},preparedMessageParameters:function(){return this.prepareParameters(this.messageRichParameters)},isCollapsedMessage:function(){return this.message.length>200&&!this.showFullMessage}},mounted:function(){this._$el=$(this.$el),this.$parent.$parent.showBrowserNotifications&&this._createWebNotification()},methods:{prepareParameters:function(e){var t={};return Object.keys(e).forEach((function(n){var r=e[n].type;t[n]="user"===r?{component:L,props:e[n]}:"file"===r?{component:y,props:e[n]}:{component:v,props:e[n]}})),t},onClickMessage:function(e){(e.target.classList.contains("rich-text--wrapper")||!this.messageRich&&this.message)&&(this.showFullMessage=!this.showFullMessage)},onDismissNotification:function(){var e=this;o.a.delete(Object(f.generateOcsUrl)("apps/notifications/api/v2",2)+"notifications/"+this.notificationId).then((function(){e.$emit("remove",e.index)})).catch((function(){Object(c.a)(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)}}},w=(a(396),p(T,(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",{directives:[{name:"tooltip",rawName:"v-tooltip.bottom",value:e.absoluteDate,expression:"absoluteDate",modifiers:{bottom:!0}}],staticClass:"notification-time live-relative-timestamp",attrs:{"data-timestamp":e.timestamp}},[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(" "),e.subjectRich?n("RichText",{attrs:{text:e.subjectRich,arguments:e.preparedSubjectParameters}}):n("span",{staticClass:"subject"},[e._v(e._s(e.subject))])],1):n("div",{staticClass:"notification-subject"},[e.icon?n("span",{staticClass:"image"},[n("img",{staticClass:"notification-icon",attrs:{src:e.icon}})]):e._e(),e._v(" "),e.subjectRich?n("RichText",{attrs:{text:e.subjectRich,arguments:e.preparedSubjectParameters}}):n("span",{staticClass:"subject"},[e._v(e._s(e.subject))])],1),e._v(" "),e.message?n("div",{staticClass:"notification-message",on:{click:e.onClickMessage}},[n("div",{staticClass:"message-container",class:{collapsed:e.isCollapsedMessage}},[e.messageRich?n("RichText",{attrs:{text:e.messageRich,arguments:e.preparedMessageParameters,autolink:!0}}):n("span",[e._v(e._s(e.message))])],1),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,r){return n("Action",e._b({key:r},"Action",t,!1))})),1):e._e()])}),[],!1,null,"5c9d3bb9",null).exports),x=a(36),Y=a(314),k=Object(Y.getBuilder)("notifications").clearOnLogout().persist().build();function D(e,t,n,r,a,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(r,a)}function S(e){return function(){var t=this,n=arguments;return new Promise((function(r,a){var s=e.apply(t,n);function i(e){D(s,r,a,i,o,"next",e)}function o(e){D(s,r,a,i,o,"throw",e)}i(void 0)}))}}
/**
* @copyright Copyright (c) 2020 Joas Schilling <coding@schilljs.com>
*
@@ -321,4 +321,4 @@ e.exports=function(e){return null!=e&&(n(e)||function(e){return"function"==typeo
*
*/
s.default.prototype.t=t,s.default.prototype.n=n,s.default.prototype.OC=OC,s.default.prototype.OCA=OCA;var N=document.getElementById("unified-search"),F=document.createElement("div");F.setAttribute("id","notifications"),N.insertAdjacentHTML("afterend",F.outerHTML);r.default=new s.default({el:"#notifications",render:function(e){return e(H)}})}]);
-//# sourceMappingURL=notifications-main.js.map?v=7e353c6fdd2e67ae30c6 \ No newline at end of file
+//# sourceMappingURL=notifications-main.js.map?v=338acbcfeac0f7cc50a7 \ No newline at end of file
diff --git a/js/notifications-main.js.map b/js/notifications-main.js.map
index 0f6f279..11a68a2 100644
--- a/js/notifications-main.js.map
+++ b/js/notifications-main.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/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/fails.js","webpack:///./node_modules/@nextcloud/axios/dist/index.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/@nextcloud/router/dist/index.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-object.js","webpack:///./node_modules/@nextcloud/moment/dist/index.js","webpack:///./node_modules/vue/dist/vue.runtime.esm.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/has.js","webpack:///./node_modules/@nextcloud/dialogs/dist/index.es.js","webpack:///../lib/index.ts","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/export.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-length.js","webpack:///./src/Components/Parameters/DefaultParameter.vue?5079","webpack:///./src/Components/Parameters/User.vue?71e6","webpack:///./src/Components/Notification.vue?d559","webpack:///./src/App.vue?0fdf","webpack:///./node_modules/@nextcloud/vue/dist/Directives/Tooltip.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.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-v8-version.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/iterate.js","webpack:///./node_modules/core-js/internals/classof.js","webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///./node_modules/core-js/internals/redefine-all.js","webpack:///./node_modules/core-js/modules/es.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/es.regexp.exec.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/set-global.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/popper.js/dist/esm/popper.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/object-assign.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/@nextcloud/auth/dist/index.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-species-create.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js","webpack:///./node_modules/core-js/internals/engine-user-agent.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/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/is-array-iterator-method.js","webpack:///./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/set-species.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///./node_modules/core-js/modules/es.array.index-of.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.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/core-js/internals/well-known-symbol-wrapped.js","webpack:///./node_modules/core-js/internals/define-well-known-symbol.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/native-url.js","webpack:///./node_modules/core-js/internals/array-from.js","webpack:///./node_modules/core-js/internals/task.js","webpack:///./node_modules/core-js/internals/engine-is-ios.js","webpack:///./node_modules/core-js/internals/new-promise-capability.js","webpack:///./node_modules/charenc/charenc.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/an-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/uid.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-array.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/v8-version.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/scopedstorage.js","webpack:///./node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///./node_modules/@juliushaertl/vue-richtext/dist/vue-richtext.js","webpack:///./node_modules/@nextcloud/vue/dist/Components/UserBubble.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/index.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/own-keys.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/helpers/cookies.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/cancel/CancelToken.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/@nextcloud/auth/dist/requesttoken.js","webpack:///../lib/ProxyBus.ts","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js","webpack:///../lib/SimpleBus.ts","webpack:///./node_modules/core-js/modules/es.array.filter.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/collection-strong.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/@nextcloud/auth/dist/user.js","webpack:///./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./node_modules/@nextcloud/moment/node_modules/node-gettext/lib/gettext.js","webpack:///./node_modules/lodash.get/index.js","webpack:///./node_modules/@nextcloud/moment/node_modules/node-gettext/lib/plurals.js","webpack:///./node_modules/@nextcloud/moment/node_modules/@nextcloud/l10n/dist/index.js","webpack:///./src/Components/Parameters/DefaultParameter.vue?0755","webpack:///./src/Components/Parameters/DefaultParameter.vue?93f3","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/core-js/modules/es.function.name.js","webpack:///./node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js","webpack:///./node_modules/core-js/modules/web.url.js","webpack:///./node_modules/core-js/internals/string-punycode-to-ascii.js","webpack:///./node_modules/core-js/modules/web.url-search-params.js","webpack:///./node_modules/core-js/internals/get-iterator.js","webpack:///./node_modules/core-js/modules/es.symbol.description.js","webpack:///./node_modules/core-js/modules/es.array.slice.js","webpack:///./node_modules/core-js/modules/es.symbol.iterator.js","webpack:///./node_modules/v-click-outside/dist/v-click-outside.umd.js","webpack:///./node_modules/core-js/modules/es.array.from.js","webpack:///./node_modules/core-js/modules/es.promise.js","webpack:///./node_modules/core-js/internals/native-promise-constructor.js","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/microtask.js","webpack:///./node_modules/core-js/internals/promise-resolve.js","webpack:///./node_modules/core-js/internals/host-report-errors.js","webpack:///./node_modules/core-js/internals/perform.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/@nextcloud/capabilities/dist/index.js","webpack:///./node_modules/@nextcloud/initial-state/dist/index.js","webpack:///./node_modules/md5/md5.js","webpack:///./node_modules/crypt/crypt.js","webpack:///./node_modules/is-buffer/index.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/core-js/modules/es.array.includes.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./src/Components/Parameters/User.vue?381d","webpack:///./src/Components/Parameters/User.vue?7b73","webpack:///./src/Components/Notification.vue?7ff9","webpack:///./src/Components/Notification.vue?f9b8","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/redefine.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/path.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/bind-context.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/a-function.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/user-agent.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/storagebuilder.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-property.js","webpack:///./src/App.vue?ea16","webpack:///./src/App.vue?3fbe","webpack:///./node_modules/@nextcloud/dialogs/styles/toast.scss?ba1a","webpack:///./node_modules/@nextcloud/dialogs/styles/toast.scss","webpack:///./node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./node_modules/@nextcloud/dialogs/styles/close.svg","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./src/Components/Action.vue","webpack:///src/Components/Action.vue","webpack:///./src/Components/Action.vue?0e50","webpack:///./src/Components/Parameters/DefaultParameter.vue?c91f","webpack:///src/Components/Parameters/DefaultParameter.vue","webpack:///./src/Components/Parameters/DefaultParameter.vue","webpack:///./src/Components/Parameters/DefaultParameter.vue?8ec0","webpack:///./src/Components/Parameters/File.vue","webpack:///src/Components/Parameters/File.vue","webpack:///./src/Components/Parameters/File.vue?5133","webpack:///./src/Components/Parameters/User.vue?767a","webpack:///src/Components/Parameters/User.vue","webpack:///./src/Components/Parameters/User.vue","webpack:///./src/Components/Parameters/User.vue?0f26","webpack:///./src/Components/Notification.vue?5486","webpack:///src/Components/Notification.vue","webpack:///./src/Components/Notification.vue","webpack:///./src/Components/Notification.vue?13e8","webpack:///./src/services/BrowserStorage.js","webpack:///./src/services/notificationsService.js","webpack:///src/App.vue","webpack:///./src/App.vue?7e76","webpack:///./src/App.vue","webpack:///./src/App.vue?8eea","webpack:///./src/main.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","getOwnPropertyDescriptor","f","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","options","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","TypeError","String","fails","DESCRIPTORS","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","O","P","Attributes","isPlainObject","getPrototypeOf","isArrayBuffer","isBuffer","constructor","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","navigator","product","document","merge","assignValue","thisArg","trim","str","stripBOM","content","charCodeAt","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","unsafe","simple","g","definePropertyModule","createPropertyDescriptor","default","_axios","_auth","client","headers","requesttoken","getRequestToken","cancelableClient","assign","CancelToken","isCancel","onRequestTokenUpdate","_default","IndexedObject","requireObjectCoercible","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","store","wmget","wmhas","wmset","metadata","STATE","getterFor","TYPE","state","type","toInteger","argument","getRootUrl","generateFilePath","imagePath","generateUrl","generateOcsUrl","generateRemoteUrl","linkTo","app","file","service","location","protocol","host","linkToRemoteBase","url","params","allOptions","escape","noRewrite","_build","text","vars","encodeURIComponent","OC","modRewriteWorking","isCore","coreApps","link","substring","appswebroots","encodeURI","webroot","path","aFunction","variable","namespace","method","TO_STRING_TAG","wellKnownSymbol","TAG","configurable","json","charset","Language","translations","msgid","comments","translator","msgstr","reference","addTranslations","setLocale","gettext","emptyObject","freeze","isUndef","v","isDef","isTrue","isPrimitive","_toString","isRegExp","isValidArrayIndex","isPromise","then","catch","JSON","stringify","toNumber","makeMap","expectsLowerCase","list","isReservedAttribute","remove","item","splice","hasOwn","cached","cache","camelizeRE","camelize","_","capitalize","hyphenateRE","hyphenate","ctx","boundFn","_length","start","_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","def","writable","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","id","subs","addSub","sub","removeSub","depend","addDep","notify","update","targetStack","pushTarget","popTarget","pop","VNode","tag","children","elm","context","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","parent","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","node","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","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","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","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","nodeOps","tagName","multiple","setAttribute","createElementNS","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","target$1","klass","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","currentTarget","ownerDocument","updateDOMListeners","change","normalizeEvents","svgContainer","events","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","end","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","selected","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","attr","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","querySelector","query","bitmap","thrower","METHOD_NAME","ACCESSORS","argument0","argument1","activeXDocument","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","close","parentWindow","NullProtoObjectViaActiveX","contentWindow","open","F","Properties","process","commonjsGlobal","createCommonjsModule","basedir","require","commonjsRequire","global_1","descriptors","document$1","EXISTS","ie8DomDefine","PREFERRED_STRING","objectDefineProperty","sharedStore","copyright","postfix","random","nativeSymbol","getOwnPropertySymbols","useSymbolAsUid","Symbol$1","toStringTagSupport","functionToString","has$1","nativeWeakMap","WeakMap$1","store$1","internalState","classofRaw","TO_STRING_TAG$1","CORRECT_ARGUMENTS","classof","tryGet","callee","objectToString","nativePropertyIsEnumerable","propertyIsEnumerable","objectPropertyIsEnumerable","1","V","indexedObject","toIndexedObject","nativeGetOwnPropertyDescriptor","objectGetOwnPropertyDescriptor","getBuiltIn","toLength","min$1","createMethod","IS_INCLUDES","$this","fromIndex","integer","toAbsoluteIndex","arrayIncludes","includes","objectKeysInternal","hiddenKeys$1","objectGetOwnPropertyNames","objectGetOwnPropertySymbols","replacement","feature","detection","POLYFILL","NATIVE","isForced_1","getOwnPropertyDescriptor$1","_export","nativePromiseConstructor","TO_STRING_TAG$2","SPECIES","aFunction$1","iterators","ITERATOR","ArrayPrototype","functionBindContext","ITERATOR$1","callWithSafeIterationClosing","ENTRIES","returnMethod","iterate_1","Result","stopped","iterable","AS_ENTRIES","IS_ITERATOR","iterFn","step","boundFunction","getIteratorMethod","stop","ITERATOR$2","SAFE_CLOSING","iteratorWithReturn","defer","channel","port","SPECIES$1","speciesConstructor","defaultConstructor","S","C","engineUserAgent","engineIsIos","clearImmediate","process$1","MessageChannel","Dispatch","runner","listener","post","postMessage","port2","port1","onmessage","importScripts","flush","head","toggle","promise","task","getOwnPropertyDescriptor$2","macrotask","WebKitMutationObserver","process$2","Promise$1","IS_NODE","queueMicrotaskDescriptor","queueMicrotask","exit","microtask","PromiseCapability","$$resolve","$$reject","newPromiseCapability","promiseResolve","promiseCapability","perform","process$3","versions","v8","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","FilePickerType","engineV8Version","task$1","SPECIES$2","PROMISE","setInternalState","getInternalPromiseState","PromiseConstructor","TypeError$1","document$2","process$4","$fetch","newPromiseCapability$1","newGenericPromiseCapability","IS_NODE$1","DISPATCH_EVENT","FORCED","PromiseRejectionEvent","FakePromise","INCORRECT_ITERATION","SKIP_CLOSING","ITERATION_SUPPORT","checkCorrectnessOfIteration","all","isThenable","notify$1","isReject","notified","chain","reactions","ok","exited","reaction","fail","rejection","onHandleUnhandled","onUnhandled","hostReportErrors","isUnhandled","unwrap","internalReject","internalResolve","wrapper","executor","Constructor","anInstance","redefineAll","onFulfilled","onRejected","fetch","wrap","CONSTRUCTOR_NAME","setSpecies","capability","$promiseResolve","remaining","alreadyCalled","race","FilePicker","title","multiSelect","mimeTypeFilter","modal","directoriesAllowed","mimeTypeFiler","pick","_this","rej","dialogs","filepicker","allowDirectoryChooser","FilePickerBuilder","Choose","setMultiSelect","addMimeTypeFilter","setMimeTypeFilter","setModal","setType","allowDirectories","allow","startAt","build","objectKeys","nativeAssign","defineProperty$1","objectAssign","A","B","chr","T","argumentsLength","__assign","createProperty","propertyKey","SPECIES$3","arraySpeciesCreate","originalArray","SPECIES$4","arrayMethodHasSpeciesSupport","foo","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","defineProperty$2","arrayMethodUsesToLength","$indexOf","nativeIndexOf","NEGATIVE_ZERO","STRICT_METHOD","USES_TO_LENGTH","searchElement","regexpFlags","ignoreCase","multiline","dotAll","unicode","sticky","RE","re1","re2","regexpStickyHelpers","UNSUPPORTED_Y","re","BROKEN_CARET","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","UNSUPPORTED_Y$1","NPCG_INCLUDED","reCopy","charsAdded","strCopy","regexpExec","SPECIES$5","REPLACE_SUPPORTS_NAMED_GROUPS","groups","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","fixRegexpWellKnownSymbolLogic","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","nativeMethod","regexp","arg2","forceStringMethod","stringMethod","regexMethod","createMethod$1","CONVERT_TO_STRING","first","position","size","codeAt","advanceStringIndex","regexpExecAbstract","R","max$1","min$2","floor$1","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","rx","functionalReplace","fullUnicode","results","accumulatedResult","nextSourcePosition","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","MATCH","arrayPush","min$3","SUPPORTS_Y","SPLIT","nativeSplit","internalSplit","lim","isRegexp","lastLength","lastLastIndex","separatorCopy","splitter","unicodeMatching","q","z","whitespaces","whitespace","ltrim","rtrim","createMethod$2","stringTrim","$trim","_typeof","stringTrimForced","toastify","root","Toastify","lib","getAxisOffsetAValue","axis","containsClass","elem","yourClass","className","toastElement","selector","destination","newWindow","gravity","positionLeft","backgroundColor","avatar","stopOnFocus","onClick","buildToast","divElement","background","Node","ELEMENT_NODE","avatarElement","insertAdjacentElement","closeElement","stopPropagation","removeElement","timeOutValue","width","innerWidth","screen","xOffset","yOffset","showToast","rootElement","getElementById","reposition","hideToast","classUsed","topLeftOffsetSize","bottom","topRightOffsetSize","offsetSize","allToasts","getElementsByClassName","height","createMethod$3","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","callbackfn","specificCreate","$map","find","findIndex","HAS_SPECIES_SUPPORT","USES_TO_LENGTH$1","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","rf","reIsDeepProp","reIsPlainProp","reLeadingDot","rePropName","reEscapeChar","reIsHostCtor","freeGlobal","freeSelf","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","hasOwnProperty$1","objectToString$1","reIsNative","Symbol$2","Map","getNative","nativeCreate","symbolProto","symbolToString","Hash","entries","entry","ListCache","MapCache","assocIndexOf","baseGet","isArray$1","isSymbol","isKey","stringToPath","toKey","baseIsNative","isObject$1","isHostObject","toSource","getMapData","__data__","memoize","baseToString","quote","resolver","memoized","Cache","isObjectLike","lodash_get","defaultValue","plurals","ach","examples","plural","sample","nplurals","pluralsText","pluralsFunc","af","ak","am","an","ar","arn","ast","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","he","hi","hne","hr","hu","hy","ja","jbo","jv","ka","kk","km","kn","ko","ku","kw","ky","lb","ln","lo","lt","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","Gettext","catalogs","sourceLocale","debug","eventName","off","eventData","message","setTextDomain","dnpgettext","dgettext","ngettext","msgidPlural","count","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","getLanguageCode","getComment","textdomain","setlocale","addTextdomain","dist","getCanonicalLocale","getLanguage","translate","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","gtBuilder","getGettextBuilder","GettextBuilder","_nodeGettext","_classCallCheck","instance","_defineProperties","_createClass","protoProps","staticProps","language","setLanguage","GettextWrapper","gt","translated","placeholders","subtitudePlaceholders","singular","detectLocale","TRANSLATIONS","addTranslation","ToastType","ERROR","WARNING","INFO","SUCCESS","PERMANENT","UNDO","showMessage","isHTML","onRemove","element","innerText","classes","isNode","toast","showError","bus","ProxyBus","SimpleBus","propertyIsEnumerableModule","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","browser","argv","addListener","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","memo","isOldIE","atob","getTarget","styleTarget","HTMLIFrameElement","contentDocument","stylesInDom","getIndexByIdentifier","identifier","modulesToDom","idCountMap","identifiers","media","sourceMap","references","updater","addStyle","insertStyleElement","attributes","nonce","textStore","replaceText","applyToSingletonTag","styleSheet","cssNode","applyToTag","btoa","unescape","singleton","singletonCounter","styleIndex","removeStyleElement","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","useSourceMap","cssMapping","sourceMapping","base64","sourceURLs","sources","sourceRoot","cssWithMappingToString","mediaQuery","dedupe","alreadyImportedModules","internalObjectKeys","V8_VERSION","addToUnscopables","Iterators","defineIterator","iterated","kind","Arguments","api","locals","19","VTooltip","defaultTemplate","defaultHtml","2","DEBUG","getElementsByTagName","ssrId","4","55","56","NASHORN_BUG","IS_PURE","MAX_SAFE_INTEGER","SEMVER_SPEC_VERSION","MAX_LENGTH","MAX_SAFE_COMPONENT_LENGTH","$","createIteratorConstructor","setPrototypeOf","setToStringTag","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","CurrentIteratorPrototype","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","isArrayIteratorMethod","TO_STRING_TAG_SUPPORT","point","stickyHelpers","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","scheduled","functionToCheck","getStyleComputedProperty","defaultView","getParentNode","nodeName","getScrollParent","_getStyleComputedProp","overflowX","overflowY","getReferenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","getOffsetParent","documentElement","noOffsetParent","offsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","contains","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","scrollTop","scrollLeft","modifier","right","getBordersSize","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","createClass","_extends","getClientRect","offsets","sizes","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerHeight","isFixed","getFixedPositionOffsetParent","parentElement","getBoundaries","popper","padding","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","_ref","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","filteredAreas","_ref2","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","marginBottom","marginRight","getOppositePlacement","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","runModifiers","ends","enabled","isDestroyed","arrowStyles","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","getWindow","setupEventListeners","updateBound","scrollElement","attachToScrollParents","scrollParents","isBody","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isNumeric","setStyles","isFirefox","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","reverse","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","divider","search","splitRegex","ops","op","mergeWithPrevious","reduce","toValue","index2","Defaults","shiftvariation","_data$offsets","isVertical","shiftOffsets","preventOverflow","transformProp","popperStyles","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","center","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","inner","subtractLength","hide","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","applyStyle","onLoad","modifierOptions","Popper","jquery","Utils","PopperUtils","getOwnPropertyDescriptorModule","getOwnPropertySymbolsModule","utils","encode","paramsSerializer","serializedParams","hashmarkIndex","__CANCEL__","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","adapter","XMLHttpRequest","transformRequest","transformResponse","parse","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","status","common","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","requestData","requestHeaders","request","auth","username","password","Authorization","fullPath","baseURL","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onabort","onerror","ontimeout","timeoutErrorMessage","xsrfValue","withCredentials","read","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancelToken","cancel","abort","send","enhanceError","code","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","directMergeKeys","getMergedValue","mergeDeepProperties","axiosKeys","otherKeys","Cancel","_requesttoken","_user","getCurrentUser","$forEach","arrayMethodIsStrict","createToken","isGlobal","NUMERICIDENTIFIER","NUMERICIDENTIFIERLOOSE","NONNUMERICIDENTIFIER","PRERELEASEIDENTIFIER","PRERELEASEIDENTIFIERLOOSE","BUILDIDENTIFIER","MAINVERSION","PRERELEASE","BUILD","FULLPLAIN","MAINVERSIONLOOSE","PRERELEASELOOSE","LOOSEPLAIN","XRANGEIDENTIFIER","XRANGEIDENTIFIERLOOSE","GTLT","XRANGEPLAIN","XRANGEPLAINLOOSE","COERCE","LONETILDE","tildeTrimReplace","LONECARET","caretTrimReplace","comparatorTrimReplace","NODE_DEBUG","compareIdentifiers","SemVer","loose","includePrerelease","LOOSE","FULL","major","minor","prerelease","num","compareMain","comparePre","release","inc","UNSCOPABLES","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","aPossiblePrototype","CORRECT_SETTER","FREEZING","METADATA","setMetadata","objectID","weakData","meta","REQUIRED","fastKey","getWeakData","onFreeze","dummy","Wrapper","NewTarget","NewTargetPrototype","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","DOMIterables","ArrayIteratorMethods","ArrayValues","COLLECTION_NAME","Collection","CollectionPrototype","_defineProperty","enumerableOnly","sym","_objectSpread2","getOwnPropertyDescriptors","SVGAnimatedString","convertToArray","addClasses","newClasses","baseVal","newClass","SVGElement","removeClasses","_listCacheClear","eq_1","_assocIndexOf","_listCacheDelete","_listCacheGet","_listCacheHas","_listCacheSet","_ListCache","_stackClear","_stackDelete","_stackGet","_stackHas","_freeGlobal","_root","_Symbol","nativeObjectToString","symToStringTag","_getRawTag","isOwn","unmasked","nativeObjectToString$1","_objectToString","symToStringTag$1","_baseGetTag","isObject_1","isFunction_1","_coreJsData","_isMasked","_toSource","funcProto$1","objectProto$2","funcToString$1","_baseIsNative","_getValue","_getNative","_Map","_nativeCreate","_hashClear","_hashDelete","hasOwnProperty$2","_hashGet","hasOwnProperty$3","_hashHas","_hashSet","_Hash","_mapCacheClear","_isKeyable","_getMapData","_mapCacheDelete","_mapCacheGet","_mapCacheHas","_mapCacheSet","_MapCache","_stackSet","pairs","LARGE_ARRAY_SIZE","Stack","_Stack","_setCacheAdd","_setCacheHas","SetCache","_SetCache","_arraySome","predicate","_cacheHas","_equalArrays","bitmask","customizer","equalFunc","isPartial","arrLength","othLength","stacked","arrValue","othValue","compared","othIndex","_Uint8Array","Uint8Array","_mapToArray","_setToArray","symbolValueOf","_equalByTag","byteLength","byteOffset","convert","_arrayPush","isArray_1","_baseGetAllKeys","keysFunc","symbolsFunc","_arrayFilter","resIndex","stubArray_1","nativeGetSymbols","_getSymbols","_baseTimes","iteratee","isObjectLike_1","_baseIsArguments","objectProto$6","hasOwnProperty$4","propertyIsEnumerable$1","isArguments_1","stubFalse_1","isBuffer_1","freeExports","freeModule","Buffer","reIsUint","_isIndex","isLength_1","typedArrayTags","_baseIsTypedArray","_baseUnary","_nodeUtil","freeProcess","nodeUtil","types","nodeIsTypedArray","isTypedArray","isTypedArray_1","hasOwnProperty$5","_arrayLikeKeys","inherited","isArr","isArg","isBuff","isType","skipIndexes","objectProto$8","_isPrototype","_overArg","_nativeKeys","hasOwnProperty$6","_baseKeys","isArrayLike_1","keys_1","_getAllKeys","hasOwnProperty$7","_equalObjects","objProps","objLength","skipCtor","objValue","objCtor","othCtor","_DataView","_Promise","_WeakMap","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ctorString","_getTag","hasOwnProperty$8","_baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","_baseIsEqual","baseIsEqual","isEqual_1","DEFAULT_OPTIONS","container","template","openTooltips","Tooltip","_reference","_options","evt","relatedreference","toElement","relatedTarget","_tooltipNode","evt2","relatedreference2","_scheduleHide","_isOpen","_show","_hide","_dispose","_classes","_setContent","classesUpdated","defaultClass","setClasses","getOptions","needPopperUpdate","needRestart","isOpen","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","tooltipGenerator","tooltipNode","autoHide","_this2","asyncContent","_applyContent","_this3","allowHtml","rootNode","titleNode","innerSelector","loadingClass","loadingContent","asyncResult","_disposeTimer","updateClasses","_ensureShown","_this4","_create","_findContainer","_append","popperOptions","arrowSelector","_this5","_noLongerOpen","disposeTime","disposeTimeout","_removeTooltipNode","_this6","_this7","directEvents","oppositeEvents","hideOnTargetClick","usedByTooltip","_scheduleShow","_this8","computedDelay","_scheduleTimer","_this9","_setTooltipNodeEvent","_onDocumentTouch","positions","defaultOptions","defaultPlacement","defaultTargetClass","defaultArrowSelector","defaultInnerSelector","defaultDelay","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","popover","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","typeofOffset","getPlacement","getContent","createTooltip","tooltip","_tooltip","_vueEl","targetClasses","_tooltipTargetClasses","destroyTooltip","_tooltipOldShow","setContent","setOptions","addListeners","onTouchStart","removeListeners","onTouchEnd","onTouchCancel","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","changedTouches","touch","$_vclosepopover_touchPoint","firstTouch","screenY","screenX","vclosepopover","getDefault","MSStream","openPopovers","Element","script","ResizeObserver","disabled","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","cssClass","popoverId","oldVal","popoverNode","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","beforeDestroy","_ref2$force","skipDelay","$_scheduleShow","$_beingShowed","_ref3","$_scheduleHide","$_show","$_disposeTimer","$_getOffset","hidden","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","event2","_ref4","$_restartPopper","$_handleGlobalClose","$_handleResize","handleGlobalClose","_loop","__vue_script__","__vue_render__","_vm","_h","tabindex","visibility","keyup","keyCode","_withStripped","__vue_component__","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","originalRender","beforeCreate","normalizeComponent","_defineProperty$1","_baseAssignValue","_assignMergeValue","_baseFor","fromRight","_createBaseFor","_cloneBuffer","allocUnsafe","isDeep","copy","_cloneArrayBuffer","arrayBuffer","_cloneTypedArray","typedArray","_copyArray","objectCreate","_baseCreate","_getPrototype","_initCloneObject","isArrayLikeObject_1","funcProto$2","objectProto$c","funcToString$2","hasOwnProperty$9","objectCtorString","isPlainObject_1","_safeGet","hasOwnProperty$a","_assignValue","_copyObject","isNew","newValue","_nativeKeysIn","hasOwnProperty$b","_baseKeysIn","isProto","keysIn_1","toPlainObject_1","_baseMergeDeep","srcIndex","mergeFunc","srcValue","isCommon","isTyped","_baseMerge","baseMerge","identity_1","_apply","nativeMax","_overRest","otherArgs","constant_1","_baseSetToString","nativeNow","_setToString","lastCalled","stamp","_shortOut","_baseRest","_isIterateeCall","merge_1","assigner","guard","_createAssigner","installed","finalOptions","insertAt","styleInject","VClosePopover","VPopover","GlobalVue","fixRegExpWellKnownSymbolLogic","regExpExec","moment","symbolMap","numberMap","pluralForm","pluralize","weekdaysParseExact","suffixes","5","8","70","80","7","20","50","3","100","6","9","10","30","60","90","relativeTimeWithPlural","forms","standalone","lastDigit","last2Digits","relativeTimeWithMutation","mutationTable","softMutation","mutation","lastNumber","monthsParseExact","ll","lll","llll","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","words","correctGrammaticalCase","wordKey","relativeTimeMr","monthsNominative","monthsSubjective","12","13","numbersNouns","numberNoun","hundred","ten","one","word","numberAsNoun","processHoursFunction","wrappedWellKnownSymbolModule","URL","searchParams","pathname","href","arrayLike","mapfn","mapping","iteratorMethod","IS_IOS","charenc","utf8","stringToBytes","bin","bytesToString","bytes","decodeURIComponent","fromCharCode","$filter","nativeKeys","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","ScopedStorage","scope","wrapped","persistent","GLOBAL_SCOPE_PERSISTENT","GLOBAL_SCOPE_VOLATILE","setItem","scopeKey","getItem","removeItem","initCompat","ua","msie","rv","edge","getInternetExplorerVersion","compareAndNotify","addResizeHandlers","_resizeObject","removeResizeHandlers","onload","I","N","U","K","X","G","Z","J","H","Q","nt","rt","ot","ut","ct","at","ft","st","dt","ht","vt","yt","bt","xt","Et","St","Ot","wt","jt","Rt","Ct","At","Tt","Pt","It","kt","Nt","$t","Ut","Ft","Mt","Lt","Bt","Dt","flat","Kt","Wt","Xt","Gt","Vt","Yt","Zt","qt","Jt","Ht","Qt","ee","oe","ie","ue","ce","ae","le","fe","pe","ge","ve","ye","me","xe","Ee","we","Oe","je","Re","Ce","Ae","Te","Ie","Pe","ke","Ne","$e","Ue","Fe","Me","Le","Be","De","ze","Ke","We","Xe","Ge","Ve","Ye","Ze","qe","Je","He","Qe","tn","rn","pn","un","rel","required","cn","linkComponent","autolink","dn","hn","ids","_injectStyles","needQuotes","isMobile","handleWindowResize","onIsMobileChanged","hasStatus","userStatus","icon","fetchUserStatus","regeneratorRuntime","mark","prev","getCapabilities","user_status","abrupt","sent","ocs","t0","return","excludeClickOutsideClasses","clickOutsideMiddleware","hasNodeOrAnyParentClass","isFullscreen","_isFullscreen","_onResize","outerHeight","validator","iconIsUrl","action","PopoverMenuItem","download","click","longtext","submit","preventDefault","checked","for","menu","ClickOutside","PopoverMenu","iconClass","showUserStatus","isGuest","displayName","allowPlaceholder","disableTooltip","disableMenu","tooltipMessage","isNoUser","statusColor","menuPosition","avatarUrlLoaded","avatarSrcSetLoaded","userDoesNotExist","isAvatarLoaded","isMenuLoaded","contactsMenuActions","contactsMenuOpenState","canDisplayUserStatus","getUserIdentifier","isDisplayNameDefined","isUserDefined","isUrlDefined","hasMenu","shouldShowPlaceholder","avatarStyle","lineHeight","fontSize","initials","hyperlink","loadAvatarUrl","toggleMenu","fetchContactsMenu","closeMenu","topAction","actions","oc_userconfig","Image","srcset","alt","xmlns","viewBox","fill","stroke","Popover","Avatar","avatarImage","margin","isPopoverComponent","popoverEmpty","isAvatarUrl","isCustomAvatar","isLinkComponent","borderRadius","onOpenChange","$props","getBuilder","appId","_storagebuilder","clearAll","sessionStorage","localStorage","clearStorage","clearNonPersistent","_scopedstorage","_interopRequireDefault","storage","pred","getOwnPropertyNamesModule","Axios","mergeConfig","createInstance","defaultConfig","axios","instanceConfig","promises","spread","InterceptorManager","dispatchRequest","interceptors","interceptor","fulfilled","rejected","getUri","eject","transformData","throwIfCancellationRequested","throwIfRequested","isAxiosError","description","fileName","lineNumber","columnNumber","expires","secure","cookie","toGMTString","isAbsoluteURL","combineURLs","requestedURL","relativeURL","ignoreDuplicateOf","parsed","line","originURL","urlParsingNode","resolveURL","hostname","requestURL","resolvePromise","observers","_eventBus","tokenElement","subscribe","packageJson","er","numeric","anum","bnum","rcompareIdentifiers","collection","collectionStrong","InternalMetadataModule","iterate","inheritIfRequired","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","getConstructor","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","preventExtensions","internalStateGetterFor","define","previous","getEntry","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","isAdmin","uidElement","displayNameElement","isUserAdmin","webpackPolyfill","paths","webpackContext","req","webpackContextResolve","___CSS_LOADER_API_IMPORT___","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","registerImmediate","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","postMessageIsAsynchronous","oldOnMessage","canUsePostMessage","attachEvent","FunctionPrototype","FunctionPrototypeToString","nameRE","nativeObjectCreate","getOwnPropertyNamesExternal","defineWellKnownSymbol","HIDDEN","TO_PRIMITIVE","$Symbol","$stringify","nativeGetOwnPropertyNames","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","QObject","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","$defineProperty","$defineProperties","properties","$getOwnPropertySymbols","$propertyIsEnumerable","$getOwnPropertyDescriptor","$getOwnPropertyNames","IS_OBJECT_PROTOTYPE","keyFor","useSetter","useSimple","space","$replacer","windowNames","getWindowNames","NativeNumber","NumberPrototype","BROKEN_CLASSOF","third","radix","maxCode","digits","NumberWrapper","forcedStringTrimMethod","EOF","USE_NATIVE_URL","arrayFrom","toASCII","URLSearchParamsModule","NativeURL","getInternalSearchParamsState","getState","getInternalURLState","ALPHA","ALPHANUMERIC","DIGIT","HEX_START","OCT","DEC","HEX","FORBIDDEN_HOST_CODE_POINT","FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT","LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE","TAB_AND_NEW_LINE","parseHost","codePoints","parseIPv6","isSpecial","parseIPv4","percentEncode","C0ControlPercentEncodeSet","partsLength","numbers","part","ipv4","numbersSeen","ipv4Piece","swaps","swap","address","pieceIndex","compress","pointer","char","serializeHost","ignore0","ipv6","maxIndex","maxLength","currStart","currLength","findLongestZeroSequence","fragmentPercentEncodeSet","pathPercentEncodeSet","userinfoPercentEncodeSet","specialSchemes","ftp","http","https","wss","scheme","includesCredentials","cannotHaveUsernamePasswordPort","cannotBeABaseURL","isWindowsDriveLetter","startsWithWindowsDriveLetter","shortenURLsPath","pathSize","isSingleDot","segment","SCHEME_START","SCHEME","NO_SCHEME","SPECIAL_RELATIVE_OR_AUTHORITY","PATH_OR_AUTHORITY","RELATIVE","RELATIVE_SLASH","SPECIAL_AUTHORITY_SLASHES","SPECIAL_AUTHORITY_IGNORE_SLASHES","AUTHORITY","HOST","HOSTNAME","PORT","FILE","FILE_SLASH","FILE_HOST","PATH_START","PATH","CANNOT_BE_A_BASE_URL_PATH","QUERY","FRAGMENT","parseURL","stateOverride","bufferCodePoints","failure","seenAt","seenBracket","seenPasswordToken","fragment","codePoint","encodedCodePoints","URLConstructor","baseState","urlString","searchParamsState","updateSearchParams","updateURL","serializeURL","origin","getOrigin","getProtocol","getUsername","getPassword","getHost","getHostname","getPort","getPathname","getSearch","getSearchParams","getHash","URLPrototype","accessorDescriptor","nativeCreateObjectURL","createObjectURL","nativeRevokeObjectURL","revokeObjectURL","blob","regexNonASCII","regexSeparators","OVERFLOW_ERROR","stringFromCharCode","digitToBasic","digit","adapt","delta","numPoints","baseMinusTMin","currentValue","inputLength","extra","ucs2decode","bias","basicLength","handledCPCount","handledCPCountPlusOne","RangeError","qMinusT","baseMinusT","label","encoded","labels","getIterator","Headers","getInternalParamsState","URL_SEARCH_PARAMS","plus","sequences","percentSequence","percentDecode","sequence","deserialize","serialize","parseSearchParams","attribute","validateArgumentsLength","passed","URLSearchParamsIterator","URLSearchParamsConstructor","entryIterator","entryNext","URLSearchParamsPrototype","append","getAll","found","entriesIndex","sliceIndex","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","symbolPrototype","native","desc","nativeSlice","fin","msMaxTouchPoints","middleware","isActive","detectIframe","srcTarget","composedPath","NativePromise","newPromiseCapabilityModule","runtime","Op","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","_sent","dispatchException","record","tryCatch","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","invoke","__await","unwrapped","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isGeneratorFunction","genFun","ctor","awrap","iter","skipTempReset","rootRecord","rval","exception","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","accidentalStrictMode","_initialState","loadState","crypt","md5","encoding","bytesToWords","FF","_ff","_gg","HH","_hh","II","_ii","aa","bb","cc","endian","_blocksize","_digestsize","digestbytes","wordsToBytes","asBytes","asString","bytesToHex","base64map","rotl","rotr","randomBytes","hex","hexToBytes","bytesToBase64","triplet","base64ToBytes","imod4","readFloatLE","isSlowBuffer","_isBuffer","nativeJoin","ES3_STRINGS","$includes","nativeMatch","matchStr","StorageBuilder","_persist","persisted","clearedOnLogout","___CSS_LOADER_GET_URL_IMPORT___","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_REPLACEMENT_0___","scriptExports","functionalTemplate","injectStyles","onClickActionButton","cloudId","notificationId","timestamp","relativeDate","onDismissNotification","subjectRich","preparedSubjectParameters","subject","onClickMessage","collapsed","isCollapsedMessage","messageRich","preparedMessageParameters","clearOnLogout","persist","getNotificationsData","tabId","lastETag","forceRefresh","lastUpdated","BrowserStorage","lastTab","refreshData","requestConfig","shutdown","hasNotifications","notifications","requestWebNotificationPermissions","iconPath","notification_id","object_id","object_type","onDismissAll","webNotificationsGranted","OCA","unifiedSearch","notificationsBell","insertAdjacentHTML","outerHTML","App"],"mappings":"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IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,gBAAiB,IACjB,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,UAAW,IACX,aAAc,IACd,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,UAAW,IACX,aAAc,IACd,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OA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","file":"notifications-main.js?v=7e353c6fdd2e67ae30c6","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 = 429);\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","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","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","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","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","'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 plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\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 (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\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\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\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 isPlainObject: isPlainObject,\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 extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\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","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 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 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","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\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","// 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 toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\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","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","\"use strict\";\n\nrequire(\"core-js/modules/es.array.index-of\");\n\nrequire(\"core-js/modules/es.object.assign\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.regexp.to-string\");\n\nrequire(\"core-js/modules/es.string.replace\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRootUrl = exports.generateFilePath = exports.imagePath = exports.generateUrl = exports.generateOcsUrl = exports.generateRemoteUrl = exports.linkTo = void 0;\n\n/// <reference types=\"@nextcloud/typings\" />\n\n/**\n * Get an absolute url to a file in an app\n *\n * @param {string} app the id of the app the file belongs to\n * @param {string} file the file path relative to the app folder\n * @return {string} Absolute URL to a file\n */\nvar linkTo = function linkTo(app, file) {\n return generateFilePath(app, '', file);\n};\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\n\n\nexports.linkTo = linkTo;\n\nvar linkToRemoteBase = function linkToRemoteBase(service) {\n return getRootUrl() + '/remote.php/' + service;\n};\n/**\n * @brief Creates an absolute url for remote use\n * @param {string} service id\n * @return {string} the url\n */\n\n\nvar generateRemoteUrl = function generateRemoteUrl(service) {\n return window.location.protocol + '//' + window.location.host + linkToRemoteBase(service);\n};\n/**\n * Get the base path for the given OCS API service\n *\n * @param {string} service name\n * @param {int} version OCS API version\n * @return {string} OCS API base path\n */\n\n\nexports.generateRemoteUrl = generateRemoteUrl;\n\nvar generateOcsUrl = function generateOcsUrl(service, version) {\n version = version !== 2 ? 1 : 2;\n return window.location.protocol + '//' + window.location.host + getRootUrl() + '/ocs/v' + version + '.php/' + service + '/';\n};\n\nexports.generateOcsUrl = generateOcsUrl;\n\n/**\n * Generate the absolute url for the given relative url, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @return {string} Absolute URL for the given relative URL\n */\nvar generateUrl = function generateUrl(url, params, options) {\n var allOptions = Object.assign({\n escape: true,\n noRewrite: false\n }, options || {});\n\n var _build = function _build(text, vars) {\n vars = vars || {};\n return text.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n\n if (allOptions.escape) {\n return typeof r === 'string' || typeof r === 'number' ? encodeURIComponent(r.toString()) : encodeURIComponent(a);\n } else {\n return typeof r === 'string' || typeof r === 'number' ? r.toString() : a;\n }\n });\n };\n\n if (url.charAt(0) !== '/') {\n url = '/' + url;\n }\n\n if (OC.config.modRewriteWorking === true && !allOptions.noRewrite) {\n return getRootUrl() + _build(url, params || {});\n }\n\n return getRootUrl() + '/index.php' + _build(url, params || {});\n};\n/**\n * Get the absolute path to an image file\n * if no extension is given for the image, it will automatically decide\n * between .png and .svg based on what the browser supports\n *\n * @param {string} app the app id to which the image belongs\n * @param {string} file the name of the image file\n * @return {string}\n */\n\n\nexports.generateUrl = generateUrl;\n\nvar imagePath = function imagePath(app, file) {\n if (file.indexOf('.') === -1) {\n //if no extension is given, use svg\n return generateFilePath(app, 'img', file + '.svg');\n }\n\n return generateFilePath(app, 'img', file);\n};\n/**\n * Get the absolute url for a file in an app\n *\n * @param {string} app the id of the app\n * @param {string} type the type of the file to link to (e.g. css,img,ajax.template)\n * @param {string} file the filename\n * @return {string} Absolute URL for a file in an app\n */\n\n\nexports.imagePath = imagePath;\n\nvar generateFilePath = function generateFilePath(app, type, file) {\n var isCore = OC.coreApps.indexOf(app) !== -1;\n var link = getRootUrl();\n\n if (file.substring(file.length - 3) === 'php' && !isCore) {\n link += '/index.php/apps/' + app;\n\n if (file !== 'index.php') {\n link += '/';\n\n if (type) {\n link += encodeURI(type + '/');\n }\n\n link += file;\n }\n } else if (file.substring(file.length - 3) !== 'php' && !isCore) {\n link = OC.appswebroots[app];\n\n if (type) {\n link += '/' + type + '/';\n }\n\n if (link.substring(link.length - 1) !== '/') {\n link += '/';\n }\n\n link += file;\n } else {\n if ((app === 'settings' || app === 'core' || app === 'search') && type === 'ajax') {\n link += '/index.php/';\n } else {\n link += '/';\n }\n\n if (!isCore) {\n link += 'apps/';\n }\n\n if (app !== '') {\n app += '/';\n link += app;\n }\n\n if (type) {\n link += type + '/';\n }\n\n link += file;\n }\n\n return link;\n};\n/**\n * Return the web root path where this Nextcloud instance\n * is accessible, with a leading slash.\n * For example \"/nextcloud\".\n *\n * @return {string} web root path\n */\n\n\nexports.generateFilePath = generateFilePath;\n\nvar getRootUrl = function getRootUrl() {\n return OC.webroot;\n};\n\nexports.getRootUrl = getRootUrl;\n//# sourceMappingURL=index.js.map","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 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","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","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\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","/*!\n * Vue.js v2.6.12\n * (c) 2014-2020 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 * 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\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\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/* */\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.12';\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 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\n/* */\n\n/* */\n\n/* */\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\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 unnecessary `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\nexport default Vue;\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","// `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","module.exports = false;\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 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 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","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","(function() {\n const env = {\"TRANSLATIONS\":[{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfacer\"]}}}}},{\"locale\":\"br\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Kervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\",\"Language-Team\":\"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"br\",\"Plural-Forms\":\"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\"},\"translations\":{\"\":{\"\":{\"msgid\":\"\",\"comments\":{\"translator\":\"\\nTranslators:\\nKervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Kervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Disober\"]}}}}},{\"locale\":\"ca\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Marc Riera <marcriera@softcatala.org>, 2020\",\"Language-Team\":\"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"ca\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},\"translations\":{\"\":{\"\":{\"msgid\":\"\",\"comments\":{\"translator\":\"\\nTranslators:\\nMarc Riera <marcriera@softcatala.org>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Marc Riera <marcriera@softcatala.org>, 2020\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfés\"]}}}}},{\"locale\":\"cs\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Pavel Borecki <pavel.borecki@gmail.com>, 2020\",\"Language-Team\":\"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"cs\",\"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\":\"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Zpět\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Zpět\"]}}}}},{\"locale\":\"de\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Mark Ziegler <mark.ziegler@rakekniven.de>, 2020\",\"Language-Team\":\"German (https://www.transifex.com/nextcloud/teams/64236/de/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"de\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},\"translations\":{\"\":{\"\":{\"msgid\":\"\",\"comments\":{\"translator\":\"\\nTranslators:\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2020\\nLanguage-Team: German (https://www.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Rückgängig\"]}}}}},{\"locale\":\"de_DE\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Mark Ziegler <mark.ziegler@rakekniven.de>, 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\":\"\\nTranslators:\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Rückgängig\"]}}}}},{\"locale\":\"el\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"ByteGet, 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\":\"\\nTranslators:\\nByteGet, 2020\\n\"},\"msgstr\":[\"Last-Translator: ByteGet, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Αναίρεση\"]}}}}},{\"locale\":\"fr\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"John Molakvoæ <skjnldsv@protonmail.com>, 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\":\"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2020\\n\"},\"msgstr\":[\"Last-Translator: John Molakvoæ <skjnldsv@protonmail.com>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Annuler\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfacer\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"ביטול\"]}}}}},{\"locale\":\"it\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Vincenzo Reale <vinx.reale@gmail.com>, 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\":\"\\nTranslators:\\nVincenzo Reale <vinx.reale@gmail.com>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Annulla\"]}}}}},{\"locale\":\"ja_JP\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"323484, 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\":\"\\nTranslators:\\n323484, 2020\\n\"},\"msgstr\":[\"Last-Translator: 323484, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Atšaukti\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Врати\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Anullar\"]}}}}},{\"locale\":\"pl\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Robert Szmurło <robert.szmurlo@ee.pw.edu.pl>, 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\":\"\\nTranslators:\\nRobert Szmurło <robert.szmurlo@ee.pw.edu.pl>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Robert Szmurło <robert.szmurlo@ee.pw.edu.pl>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Cofnij\"]}}}}},{\"locale\":\"pt_BR\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Paulo Schopf, 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\":\"\\nTranslators:\\nPaulo Schopf, 2020\\n\"},\"msgstr\":[\"Last-Translator: Paulo Schopf, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfazer\"]}}}}},{\"locale\":\"ru\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Andrey Atapin <atab@kirovedu.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\":\"\\nTranslators:\\nAndrey Atapin <atab@kirovedu.ru>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Andrey Atapin <atab@kirovedu.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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Отменить\"]}}}}}]};\n try {\n if (process) {\n process.env = Object.assign({}, process.env);\n Object.assign(process.env, env);\n return;\n }\n } catch (e) {} // avoid ReferenceError: process is not defined\n globalThis.process = { env:env };\n})();\n\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, basedir, module) {\n\treturn module = {\n\t path: basedir,\n\t exports: {},\n\t require: function (path, base) {\n return commonjsRequire(path, (base === undefined || base === null) ? module.path : base);\n }\n\t}, fn(module, module.exports), module.exports;\n}\n\nfunction commonjsRequire () {\n\tthrow new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');\n}\n\nvar check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global_1 =\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 commonjsGlobal == 'object' && commonjsGlobal) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n\nvar fails = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n\n// Thank's IE8 for his funny defineProperty\nvar descriptors = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n\nvar isObject = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\nvar document$1 = global_1.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document$1) && isObject(document$1.createElement);\n\nvar documentCreateElement = function (it) {\n return EXISTS ? document$1.createElement(it) : {};\n};\n\n// Thank's IE8 for his funny defineProperty\nvar ie8DomDefine = !descriptors && !fails(function () {\n return Object.defineProperty(documentCreateElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n\nvar anObject = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\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\nvar toPrimitive = 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\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nvar f = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (ie8DomDefine) 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\nvar objectDefineProperty = {\n\tf: f\n};\n\nvar createPropertyDescriptor = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\nvar createNonEnumerableProperty = descriptors ? function (object, key, value) {\n return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\nvar setGlobal = function (key, value) {\n try {\n createNonEnumerableProperty(global_1, key, value);\n } catch (error) {\n global_1[key] = value;\n } return value;\n};\n\nvar SHARED = '__core-js_shared__';\nvar store = global_1[SHARED] || setGlobal(SHARED, {});\n\nvar sharedStore = store;\n\nvar shared = createCommonjsModule(function (module) {\n(module.exports = function (key, value) {\n return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n});\n\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar has = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\nvar id = 0;\nvar postfix = Math.random();\n\nvar uid = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n\nvar nativeSymbol = !!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\nvar useSymbolAsUid = nativeSymbol\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol$1 = global_1.Symbol;\nvar createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid;\n\nvar wellKnownSymbol = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (nativeSymbol && has(Symbol$1, name)) WellKnownSymbolsStore[name] = Symbol$1[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nvar toStringTagSupport = String(test) === '[object z]';\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 sharedStore.inspectSource != 'function') {\n sharedStore.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nvar inspectSource = sharedStore.inspectSource;\n\nvar WeakMap = global_1.WeakMap;\n\nvar nativeWeakMap = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n\nvar keys = shared('keys');\n\nvar sharedKey = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n\nvar hiddenKeys = {};\n\nvar WeakMap$1 = global_1.WeakMap;\nvar set, get, has$1;\n\nvar enforce = function (it) {\n return has$1(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 (nativeWeakMap) {\n var store$1 = new WeakMap$1();\n var wmget = store$1.get;\n var wmhas = store$1.has;\n var wmset = store$1.set;\n set = function (it, metadata) {\n wmset.call(store$1, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store$1, it) || {};\n };\n has$1 = function (it) {\n return wmhas.call(store$1, 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 has(it, STATE) ? it[STATE] : {};\n };\n has$1 = function (it) {\n return has(it, STATE);\n };\n}\n\nvar internalState = {\n set: set,\n get: get,\n has: has$1,\n enforce: enforce,\n getterFor: getterFor\n};\n\nvar redefine = createCommonjsModule(function (module) {\nvar getInternalState = internalState.get;\nvar enforceInternalState = internalState.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_1) {\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});\n\nvar toString = {}.toString;\n\nvar classofRaw = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\nvar TO_STRING_TAG$1 = 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`\nvar classof = toStringTagSupport ? 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$1)) == '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\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nvar objectToString = toStringTagSupport ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!toStringTagSupport) {\n redefine(Object.prototype, 'toString', objectToString, { unsafe: true });\n}\n\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\nvar f$1 = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n\nvar objectPropertyIsEnumerable = {\n\tf: f$1\n};\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar indexedObject = 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 classofRaw(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nvar requireObjectCoercible = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n// toObject with fallback for non-array-like ES3 strings\n\n\n\nvar toIndexedObject = function (it) {\n return indexedObject(requireObjectCoercible(it));\n};\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nvar f$2 = descriptors ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (ie8DomDefine) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);\n};\n\nvar objectGetOwnPropertyDescriptor = {\n\tf: f$2\n};\n\nvar path = global_1;\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nvar getBuiltIn = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global_1[namespace])\n : path[namespace] && path[namespace][method] || global_1[namespace] && global_1[namespace][method];\n};\n\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nvar toInteger = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nvar toLength = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n\nvar max = Math.max;\nvar min$1 = 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).\nvar toAbsoluteIndex = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min$1(integer, length);\n};\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\nvar arrayIncludes = {\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\nvar indexOf = arrayIncludes.indexOf;\n\n\nvar objectKeysInternal = 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\n// IE8- don't enum bug keys\nvar enumBugKeys = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n\nvar hiddenKeys$1 = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nvar f$3 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return objectKeysInternal(O, hiddenKeys$1);\n};\n\nvar objectGetOwnPropertyNames = {\n\tf: f$3\n};\n\nvar f$4 = Object.getOwnPropertySymbols;\n\nvar objectGetOwnPropertySymbols = {\n\tf: f$4\n};\n\n// all object keys, includes non-enumerable and symbols\nvar ownKeys = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = objectGetOwnPropertyNames.f(anObject(it));\n var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n\nvar copyConstructorProperties = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = objectDefineProperty.f;\n var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.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\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\nvar isForced_1 = isForced;\n\nvar getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;\n\n\n\n\n\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*/\nvar _export = 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_1;\n } else if (STATIC) {\n target = global_1[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global_1[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor$1(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced_1(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\nvar nativePromiseConstructor = global_1.Promise;\n\nvar redefineAll = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n\nvar defineProperty = objectDefineProperty.f;\n\n\n\nvar TO_STRING_TAG$2 = wellKnownSymbol('toStringTag');\n\nvar setToStringTag = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG$2)) {\n defineProperty(it, TO_STRING_TAG$2, { configurable: true, value: TAG });\n }\n};\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar setSpecies = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = objectDefineProperty.f;\n\n if (descriptors && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n\nvar aFunction$1 = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n\nvar anInstance = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n\nvar iterators = {};\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nvar isArrayIteratorMethod = function (it) {\n return it !== undefined && (iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n\n// optional / simple context binding\nvar functionBindContext = function (fn, that, length) {\n aFunction$1(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\nvar ITERATOR$1 = wellKnownSymbol('iterator');\n\nvar getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR$1]\n || it['@@iterator']\n || iterators[classof(it)];\n};\n\n// call something on iterator step with safe closing on error\nvar callWithSafeIterationClosing = 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\nvar iterate_1 = createCommonjsModule(function (module) {\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 = functionBindContext(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});\n\nvar ITERATOR$2 = 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$2] = 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\nvar checkCorrectnessOfIteration = 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$2] = 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\nvar SPECIES$1 = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nvar speciesConstructor = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES$1]) == undefined ? defaultConstructor : aFunction$1(S);\n};\n\nvar html = getBuiltIn('document', 'documentElement');\n\nvar engineUserAgent = getBuiltIn('navigator', 'userAgent') || '';\n\nvar engineIsIos = /(iphone|ipod|ipad).*applewebkit/i.test(engineUserAgent);\n\nvar location = global_1.location;\nvar set$1 = global_1.setImmediate;\nvar clear = global_1.clearImmediate;\nvar process$1 = global_1.process;\nvar MessageChannel = global_1.MessageChannel;\nvar Dispatch = global_1.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global_1.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set$1 || !clear) {\n set$1 = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classofRaw(process$1) == 'process') {\n defer = function (id) {\n process$1.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !engineIsIos) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = functionBindContext(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global_1.addEventListener &&\n typeof postMessage == 'function' &&\n !global_1.importScripts &&\n !fails(post) &&\n location.protocol !== 'file:'\n ) {\n defer = post;\n global_1.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in documentCreateElement('script')) {\n defer = function (id) {\n html.appendChild(documentCreateElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nvar task = {\n set: set$1,\n clear: clear\n};\n\nvar getOwnPropertyDescriptor$2 = objectGetOwnPropertyDescriptor.f;\n\nvar macrotask = task.set;\n\n\nvar MutationObserver = global_1.MutationObserver || global_1.WebKitMutationObserver;\nvar process$2 = global_1.process;\nvar Promise$1 = global_1.Promise;\nvar IS_NODE = classofRaw(process$2) == 'process';\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor$2(global_1, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process$2.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (IS_NODE) {\n notify = function () {\n process$2.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n } else if (MutationObserver && !engineIsIos) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise$1 && Promise$1.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise$1.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global_1, flush);\n };\n }\n}\n\nvar microtask = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction$1(resolve);\n this.reject = aFunction$1(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nvar f$5 = function (C) {\n return new PromiseCapability(C);\n};\n\nvar newPromiseCapability = {\n\tf: f$5\n};\n\nvar promiseResolve = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n\nvar hostReportErrors = function (a, b) {\n var console = global_1.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n\nvar perform = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n\nvar process$3 = global_1.process;\nvar versions = process$3 && process$3.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 (engineUserAgent) {\n match = engineUserAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = engineUserAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nvar engineV8Version = version && +version;\n\nvar task$1 = task.set;\n\n\n\n\n\n\n\n\n\n\nvar SPECIES$2 = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = internalState.get;\nvar setInternalState = internalState.set;\nvar getInternalPromiseState = internalState.getterFor(PROMISE);\nvar PromiseConstructor = nativePromiseConstructor;\nvar TypeError$1 = global_1.TypeError;\nvar document$2 = global_1.document;\nvar process$4 = global_1.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability$1 = newPromiseCapability.f;\nvar newGenericPromiseCapability = newPromiseCapability$1;\nvar IS_NODE$1 = classofRaw(process$4) == 'process';\nvar DISPATCH_EVENT = !!(document$2 && document$2.createEvent && global_1.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced_1(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (engineV8Version === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE$1 && typeof PromiseRejectionEvent != 'function') return true;\n }\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (engineV8Version >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES$2] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify$1 = function (promise, state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError$1('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(promise, state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document$2.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global_1.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (handler = global_1['on' + name]) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (promise, state) {\n task$1.call(global_1, function () {\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE$1) {\n process$4.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE$1 || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (promise, state) {\n task$1.call(global_1, function () {\n if (IS_NODE$1) {\n process$4.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, promise, state, unwrap) {\n return function (value) {\n fn(promise, state, value, unwrap);\n };\n};\n\nvar internalReject = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify$1(promise, state, true);\n};\n\nvar internalResolve = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (promise === value) throw TypeError$1(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, promise, wrapper, state),\n bind(internalReject, promise, wrapper, state)\n );\n } catch (error) {\n internalReject(promise, wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify$1(promise, state, false);\n }\n } catch (error) {\n internalReject(promise, { done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction$1(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, this, state), bind(internalReject, this, state));\n } catch (error) {\n internalReject(this, state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability$1(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE$1 ? process$4.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify$1(this, state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, promise, state);\n this.reject = bind(internalReject, promise, state);\n };\n newPromiseCapability.f = newPromiseCapability$1 = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if ( typeof nativePromiseConstructor == 'function') {\n nativeThen = nativePromiseConstructor.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(nativePromiseConstructor.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') _export({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global_1, arguments));\n }\n });\n }\n}\n\n_export({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n_export({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability$1(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n_export({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve( this, x);\n }\n});\n\n_export({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability$1(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction$1(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate_1(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability$1(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction$1(C.resolve);\n iterate_1(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n\nvar FilePickerType;\n\n(function (FilePickerType) {\n FilePickerType[FilePickerType[\"Choose\"] = 1] = \"Choose\";\n FilePickerType[FilePickerType[\"Move\"] = 2] = \"Move\";\n FilePickerType[FilePickerType[\"Copy\"] = 3] = \"Copy\";\n FilePickerType[FilePickerType[\"CopyMove\"] = 4] = \"CopyMove\";\n})(FilePickerType || (FilePickerType = {}));\n\nvar FilePicker =\n/** @class */\nfunction () {\n function FilePicker(title, multiSelect, mimeTypeFilter, modal, type, directoriesAllowed, path) {\n this.title = title;\n this.multiSelect = multiSelect;\n this.mimeTypeFiler = mimeTypeFilter;\n this.modal = modal;\n this.type = type;\n this.directoriesAllowed = directoriesAllowed;\n this.path = path;\n }\n\n FilePicker.prototype.pick = function () {\n var _this = this;\n\n return new Promise(function (res, rej) {\n OC.dialogs.filepicker(_this.title, res, _this.multiSelect, _this.mimeTypeFiler, _this.modal, _this.type, _this.path, {\n allowDirectoryChooser: _this.directoriesAllowed\n });\n });\n };\n\n return FilePicker;\n}();\n\nvar FilePickerBuilder =\n/** @class */\nfunction () {\n function FilePickerBuilder(title) {\n this.multiSelect = false;\n this.mimeTypeFiler = [];\n this.modal = true;\n this.type = FilePickerType.Choose;\n this.directoriesAllowed = false;\n this.title = title;\n }\n\n FilePickerBuilder.prototype.setMultiSelect = function (ms) {\n this.multiSelect = ms;\n return this;\n };\n\n FilePickerBuilder.prototype.addMimeTypeFilter = function (filter) {\n this.mimeTypeFiler.push(filter);\n return this;\n };\n\n FilePickerBuilder.prototype.setMimeTypeFilter = function (filter) {\n this.mimeTypeFiler = filter;\n return this;\n };\n\n FilePickerBuilder.prototype.setModal = function (modal) {\n this.modal = modal;\n return this;\n };\n\n FilePickerBuilder.prototype.setType = function (type) {\n this.type = type;\n return this;\n };\n\n FilePickerBuilder.prototype.allowDirectories = function (allow) {\n if (allow === void 0) {\n allow = true;\n }\n\n this.directoriesAllowed = allow;\n return this;\n };\n\n FilePickerBuilder.prototype.startAt = function (path) {\n this.path = path;\n return this;\n };\n\n FilePickerBuilder.prototype.build = function () {\n return new FilePicker(this.title, this.multiSelect, this.mimeTypeFiler, this.modal, this.type, this.directoriesAllowed, this.path);\n };\n\n return FilePickerBuilder;\n}();\nfunction getFilePickerBuilder(title) {\n return new FilePickerBuilder(title);\n}\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nvar objectKeys = Object.keys || function keys(O) {\n return objectKeysInternal(O, enumBugKeys);\n};\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nvar toObject = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n\nvar nativeAssign = Object.assign;\nvar defineProperty$1 = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nvar objectAssign = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (descriptors && nativeAssign({ b: 1 }, nativeAssign(defineProperty$1({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty$1(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 = objectGetOwnPropertySymbols.f;\n var propertyIsEnumerable = objectPropertyIsEnumerable.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\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n_export({ target: 'Object', stat: true, forced: Object.assign !== objectAssign }, {\n assign: objectAssign\n});\n\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nvar isArray = Array.isArray || function isArray(arg) {\n return classofRaw(arg) == 'Array';\n};\n\nvar createProperty = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n\nvar SPECIES$3 = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nvar arraySpeciesCreate = 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$3];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n\nvar SPECIES$4 = wellKnownSymbol('species');\n\nvar arrayMethodHasSpeciesSupport = 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 engineV8Version >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES$4] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\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 = engineV8Version >= 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$1 = !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_export({ target: 'Array', proto: true, forced: FORCED$1 }, {\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\nvar arrayMethodIsStrict = 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\nvar defineProperty$2 = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nvar arrayMethodUsesToLength = 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$2(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n\nvar $indexOf = arrayIncludes.indexOf;\n\n\n\nvar nativeIndexOf = [].indexOf;\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('indexOf');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.indexOf` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n_export({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nvar regexpFlags = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nvar UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nvar BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n\nvar regexpStickyHelpers = {\n\tUNSUPPORTED_Y: UNSUPPORTED_Y,\n\tBROKEN_CARET: BROKEN_CARET\n};\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y$1 = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y$1 && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nvar regexpExec = patchedExec;\n\n_export({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {\n exec: regexpExec\n});\n\n// TODO: Remove from `core-js@4` since it's moved to entry points\n\n\n\n\n\n\n\nvar SPECIES$5 = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nvar fixRegexpWellKnownSymbolLogic = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES$5] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod$1 = 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\nvar stringMultibyte = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod$1(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod$1(true)\n};\n\nvar charAt = stringMultibyte.charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nvar advanceStringIndex = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nvar regexpExecAbstract = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classofRaw(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\nvar max$1 = Math.max;\nvar min$2 = Math.min;\nvar floor$1 = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegexpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regexpExecAbstract(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max$1(min$2(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor$1(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nvar isRegexp = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classofRaw(it) == 'RegExp');\n};\n\nvar arrayPush = [].push;\nvar min$3 = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegexpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegexp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return regexpExecAbstract(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = regexpExecAbstract(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min$3(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n\n// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nvar whitespaces = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod$2 = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nvar stringTrim = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod$2(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod$2(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod$2(3)\n};\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nvar stringTrimForced = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n\nvar $trim = stringTrim.trim;\n\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n_export({ target: 'String', proto: true, forced: stringTrimForced('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar toastify = createCommonjsModule(function (module) {\n /*!\n * Toastify js 1.9.1\n * https://github.com/apvarun/toastify-js\n * @license MIT licensed\n *\n * Copyright (C) 2018 Varun A P\n */\n (function (root, factory) {\n if ( module.exports) {\n module.exports = factory();\n } else {\n root.Toastify = factory();\n }\n })(commonjsGlobal, function (global) {\n // Object initialization\n var Toastify = function Toastify(options) {\n // Returning a new init object\n return new Toastify.lib.init(options);\n },\n // Library version\n version = \"1.9.1\"; // Defining the prototype of the object\n\n\n Toastify.lib = Toastify.prototype = {\n toastify: version,\n constructor: Toastify,\n // Initializing the object with required parameters\n init: function init(options) {\n // Verifying and validating the input object\n if (!options) {\n options = {};\n } // Creating the options object\n\n\n this.options = {};\n this.toastElement = null; // Validating the options\n\n this.options.text = options.text || \"Hi there!\"; // Display message\n\n this.options.node = options.node; // Display content as node\n\n this.options.duration = options.duration === 0 ? 0 : options.duration || 3000; // Display duration\n\n this.options.selector = options.selector; // Parent selector\n\n this.options.callback = options.callback || function () {}; // Callback after display\n\n\n this.options.destination = options.destination; // On-click destination\n\n this.options.newWindow = options.newWindow || false; // Open destination in new window\n\n this.options.close = options.close || false; // Show toast close icon\n\n this.options.gravity = options.gravity === \"bottom\" ? \"toastify-bottom\" : \"toastify-top\"; // toast position - top or bottom\n\n this.options.positionLeft = options.positionLeft || false; // toast position - left or right\n\n this.options.position = options.position || ''; // toast position - left or right\n\n this.options.backgroundColor = options.backgroundColor; // toast background color\n\n this.options.avatar = options.avatar || \"\"; // img element src - url or a path\n\n this.options.className = options.className || \"\"; // additional class names for the toast\n\n this.options.stopOnFocus = options.stopOnFocus === undefined ? true : options.stopOnFocus; // stop timeout on focus\n\n this.options.onClick = options.onClick; // Callback after click\n\n var normalOffset = {\n x: 0,\n y: 0\n };\n this.options.offset = options.offset || normalOffset; // toast offset\n // Returning the current object for chaining functions\n\n return this;\n },\n // Building the DOM element\n buildToast: function buildToast() {\n // Validating if the options are defined\n if (!this.options) {\n throw \"Toastify is not initialized\";\n } // Creating the DOM object\n\n\n var divElement = document.createElement(\"div\");\n divElement.className = \"toastify on \" + this.options.className; // Positioning toast to left or right or center\n\n if (!!this.options.position) {\n divElement.className += \" toastify-\" + this.options.position;\n } else {\n // To be depreciated in further versions\n if (this.options.positionLeft === true) {\n divElement.className += \" toastify-left\";\n console.warn('Property `positionLeft` will be depreciated in further versions. Please use `position` instead.');\n } else {\n // Default position\n divElement.className += \" toastify-right\";\n }\n } // Assigning gravity of element\n\n\n divElement.className += \" \" + this.options.gravity;\n\n if (this.options.backgroundColor) {\n divElement.style.background = this.options.backgroundColor;\n } // Adding the toast message/node\n\n\n if (this.options.node && this.options.node.nodeType === Node.ELEMENT_NODE) {\n // If we have a valid node, we insert it\n divElement.appendChild(this.options.node);\n } else {\n divElement.innerHTML = this.options.text;\n\n if (this.options.avatar !== \"\") {\n var avatarElement = document.createElement(\"img\");\n avatarElement.src = this.options.avatar;\n avatarElement.className = \"toastify-avatar\";\n\n if (this.options.position == \"left\" || this.options.positionLeft === true) {\n // Adding close icon on the left of content\n divElement.appendChild(avatarElement);\n } else {\n // Adding close icon on the right of content\n divElement.insertAdjacentElement(\"afterbegin\", avatarElement);\n }\n }\n } // Adding a close icon to the toast\n\n\n if (this.options.close === true) {\n // Create a span for close element\n var closeElement = document.createElement(\"span\");\n closeElement.innerHTML = \"&#10006;\";\n closeElement.className = \"toast-close\"; // Triggering the removal of toast from DOM on close click\n\n closeElement.addEventListener(\"click\", function (event) {\n event.stopPropagation();\n this.removeElement(this.toastElement);\n window.clearTimeout(this.toastElement.timeOutValue);\n }.bind(this)); //Calculating screen width\n\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width; // Adding the close icon to the toast element\n // Display on the right if screen width is less than or equal to 360px\n\n if ((this.options.position == \"left\" || this.options.positionLeft === true) && width > 360) {\n // Adding close icon on the left of content\n divElement.insertAdjacentElement(\"afterbegin\", closeElement);\n } else {\n // Adding close icon on the right of content\n divElement.appendChild(closeElement);\n }\n } // Clear timeout while toast is focused\n\n\n if (this.options.stopOnFocus && this.options.duration > 0) {\n var self = this; // stop countdown\n\n divElement.addEventListener(\"mouseover\", function (event) {\n window.clearTimeout(divElement.timeOutValue);\n }); // add back the timeout\n\n divElement.addEventListener(\"mouseleave\", function () {\n divElement.timeOutValue = window.setTimeout(function () {\n // Remove the toast from DOM\n self.removeElement(divElement);\n }, self.options.duration);\n });\n } // Adding an on-click destination path\n\n\n if (typeof this.options.destination !== \"undefined\") {\n divElement.addEventListener(\"click\", function (event) {\n event.stopPropagation();\n\n if (this.options.newWindow === true) {\n window.open(this.options.destination, \"_blank\");\n } else {\n window.location = this.options.destination;\n }\n }.bind(this));\n }\n\n if (typeof this.options.onClick === \"function\" && typeof this.options.destination === \"undefined\") {\n divElement.addEventListener(\"click\", function (event) {\n event.stopPropagation();\n this.options.onClick();\n }.bind(this));\n } // Adding offset\n\n\n if (_typeof(this.options.offset) === \"object\") {\n var x = getAxisOffsetAValue(\"x\", this.options);\n var y = getAxisOffsetAValue(\"y\", this.options);\n var xOffset = this.options.position == \"left\" ? x : \"-\".concat(x);\n var yOffset = this.options.gravity == \"toastify-top\" ? y : \"-\".concat(y);\n divElement.style.transform = \"translate(\".concat(xOffset, \", \").concat(yOffset, \")\");\n } // Returning the generated element\n\n\n return divElement;\n },\n // Displaying the toast\n showToast: function showToast() {\n // Creating the DOM object for the toast\n this.toastElement = this.buildToast(); // Getting the root element to with the toast needs to be added\n\n var rootElement;\n\n if (typeof this.options.selector === \"undefined\") {\n rootElement = document.body;\n } else {\n rootElement = document.getElementById(this.options.selector);\n } // Validating if root element is present in DOM\n\n\n if (!rootElement) {\n throw \"Root element is not defined\";\n } // Adding the DOM element\n\n\n rootElement.insertBefore(this.toastElement, rootElement.firstChild); // Repositioning the toasts in case multiple toasts are present\n\n Toastify.reposition();\n\n if (this.options.duration > 0) {\n this.toastElement.timeOutValue = window.setTimeout(function () {\n // Remove the toast from DOM\n this.removeElement(this.toastElement);\n }.bind(this), this.options.duration); // Binding `this` for function invocation\n } // Supporting function chaining\n\n\n return this;\n },\n hideToast: function hideToast() {\n if (this.toastElement.timeOutValue) {\n clearTimeout(this.toastElement.timeOutValue);\n }\n\n this.removeElement(this.toastElement);\n },\n // Removing the element from the DOM\n removeElement: function removeElement(toastElement) {\n // Hiding the element\n // toastElement.classList.remove(\"on\");\n toastElement.className = toastElement.className.replace(\" on\", \"\"); // Removing the element from DOM after transition end\n\n window.setTimeout(function () {\n // remove options node if any\n if (this.options.node && this.options.node.parentNode) {\n this.options.node.parentNode.removeChild(this.options.node);\n } // Remove the elemenf from the DOM, only when the parent node was not removed before.\n\n\n if (toastElement.parentNode) {\n toastElement.parentNode.removeChild(toastElement);\n } // Calling the callback function\n\n\n this.options.callback.call(toastElement); // Repositioning the toasts again\n\n Toastify.reposition();\n }.bind(this), 400); // Binding `this` for function invocation\n }\n }; // Positioning the toasts on the DOM\n\n Toastify.reposition = function () {\n // Top margins with gravity\n var topLeftOffsetSize = {\n top: 15,\n bottom: 15\n };\n var topRightOffsetSize = {\n top: 15,\n bottom: 15\n };\n var offsetSize = {\n top: 15,\n bottom: 15\n }; // Get all toast messages on the DOM\n\n var allToasts = document.getElementsByClassName(\"toastify\");\n var classUsed; // Modifying the position of each toast element\n\n for (var i = 0; i < allToasts.length; i++) {\n // Getting the applied gravity\n if (containsClass(allToasts[i], \"toastify-top\") === true) {\n classUsed = \"toastify-top\";\n } else {\n classUsed = \"toastify-bottom\";\n }\n\n var height = allToasts[i].offsetHeight;\n classUsed = classUsed.substr(9, classUsed.length - 1); // Spacing between toasts\n\n var offset = 15;\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width; // Show toast in center if screen with less than or qual to 360px\n\n if (width <= 360) {\n // Setting the position\n allToasts[i].style[classUsed] = offsetSize[classUsed] + \"px\";\n offsetSize[classUsed] += height + offset;\n } else {\n if (containsClass(allToasts[i], \"toastify-left\") === true) {\n // Setting the position\n allToasts[i].style[classUsed] = topLeftOffsetSize[classUsed] + \"px\";\n topLeftOffsetSize[classUsed] += height + offset;\n } else {\n // Setting the position\n allToasts[i].style[classUsed] = topRightOffsetSize[classUsed] + \"px\";\n topRightOffsetSize[classUsed] += height + offset;\n }\n }\n } // Supporting function chaining\n\n\n return this;\n }; // Helper function to get offset.\n\n\n function getAxisOffsetAValue(axis, options) {\n if (options.offset[axis]) {\n if (isNaN(options.offset[axis])) {\n return options.offset[axis];\n } else {\n return options.offset[axis] + 'px';\n }\n }\n\n return '0px';\n }\n\n function containsClass(elem, yourClass) {\n if (!elem || typeof yourClass !== \"string\") {\n return false;\n } else if (elem.className && elem.className.trim().split(/\\s+/gi).indexOf(yourClass) > -1) {\n return true;\n } else {\n return false;\n }\n } // Setting up the prototype for the init object\n\n\n Toastify.lib.init.prototype = Toastify.lib; // Returning the Toastify function to be assigned to the window object/module\n\n return Toastify;\n });\n});\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod$3 = 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 = functionBindContext(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\nvar arrayIteration = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod$3(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod$3(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod$3(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod$3(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod$3(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod$3(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod$3(6)\n};\n\nvar $map = arrayIteration.map;\n\n\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH$1 = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n_export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH$1 }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? regexpFlags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\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 commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;\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$1 = 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$1 = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty$1).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Symbol$2 = 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$2 ? Symbol$2.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$1.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$1.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$1(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$1(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$1(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$1(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$1 = 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$1(value) ? objectToString$1.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$1(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$1.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$1(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$1(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nvar lodash_get = get$1;\n\nvar plurals = {\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: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 5\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3);\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};\n\nvar gettext = 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 this.debug = 'debug' in options && options.debug === true;\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', new 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 lodash_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\nvar dist = createCommonjsModule(function (module, exports) {\n\n\n\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getLocale = getLocale;\nexports.getCanonicalLocale = getCanonicalLocale;\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\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, '-');\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\n});\n\nvar gettext$1 = createCommonjsModule(function (module, exports) {\n\n\n\n\n\n\n\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getGettextBuilder = getGettextBuilder;\n\nvar _nodeGettext = _interopRequireDefault(gettext);\n\n\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\nvar GettextBuilder = /*#__PURE__*/function () {\n function GettextBuilder() {\n _classCallCheck(this, GettextBuilder);\n\n this.translations = {};\n this.debug = false;\n }\n\n _createClass(GettextBuilder, [{\n key: \"setLanguage\",\n value: function setLanguage(language) {\n this.locale = language;\n return this;\n }\n }, {\n key: \"detectLocale\",\n value: function detectLocale() {\n return this.setLanguage((0, dist.getLanguage)());\n }\n }, {\n key: \"addTranslation\",\n value: function addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n }, {\n key: \"enableDebugMode\",\n value: function enableDebugMode() {\n this.debug = true;\n return this;\n }\n }, {\n key: \"build\",\n value: function build() {\n return new GettextWrapper(this.locale || 'en', this.translations, this.debug);\n }\n }]);\n\n return GettextBuilder;\n}();\n\nvar GettextWrapper = /*#__PURE__*/function () {\n function GettextWrapper(locale, data, debug) {\n _classCallCheck(this, GettextWrapper);\n\n this.gt = new _nodeGettext.default({\n debug: debug,\n sourceLocale: 'en'\n });\n\n for (var key in data) {\n this.gt.addTranslations(key, 'messages', data[key]);\n }\n\n this.gt.setLocale(locale);\n }\n\n _createClass(GettextWrapper, [{\n key: \"subtitudePlaceholders\",\n value: function subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n\n if (typeof r === 'string' || typeof r === 'number') {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n }, {\n key: \"gettext\",\n value: function gettext(original) {\n var placeholders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return this.subtitudePlaceholders(this.gt.gettext(original), placeholders);\n }\n }, {\n key: \"ngettext\",\n value: function ngettext(singular, plural, count) {\n var placeholders = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n return this.subtitudePlaceholders(this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()), placeholders);\n }\n }]);\n\n return GettextWrapper;\n}();\n\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\n\n});\n\nvar gtBuilder = gettext$1.getGettextBuilder().detectLocale();\nprocess.env.TRANSLATIONS.map(function (data) {\n return gtBuilder.addTranslation(data.locale, data.json);\n});\nvar gt = gtBuilder.build();\nvar n = gt.ngettext.bind(gt);\nvar t = gt.gettext.bind(gt);\n\nvar ToastType =\n/** @class */\nfunction () {\n function ToastType() {}\n\n ToastType.ERROR = 'toast-error';\n ToastType.WARNING = 'toast-warning';\n ToastType.INFO = 'toast-info';\n ToastType.SUCCESS = 'toast-success';\n ToastType.PERMANENT = 'toast-error';\n ToastType.UNDO = 'toast-undo';\n return ToastType;\n}();\n/**\r\n * Show a toast message\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\n\nfunction showMessage(data, options) {\n var _a;\n\n var _b;\n\n options = Object.assign({\n timeout: 7,\n isHTML: false,\n type: undefined,\n // An undefined selector defaults to the body element\n selector: undefined,\n onRemove: function onRemove() {},\n onClick: undefined,\n close: true\n }, options);\n\n if (typeof data === 'string' && !options.isHTML) {\n // fime mae sure that text is extracted\n var element = document.createElement('div');\n element.innerHTML = data;\n data = element.innerText;\n }\n\n var classes = (_b = options.type) !== null && _b !== void 0 ? _b : '';\n\n if (typeof options.onClick === 'function') {\n classes += ' toast-with-click ';\n }\n\n var isNode = data instanceof Node;\n var timeout = null;\n\n if (options.timeout) {\n timeout = options.timeout === -1 ? -1 : options.timeout * 1000;\n }\n\n var toast = toastify((_a = {}, _a[!isNode ? 'text' : 'node'] = data, _a.duration = timeout, _a.callback = options.onRemove, _a.onClick = options.onClick, _a.close = options.close, _a.gravity = 'top', _a.selector = options.selector, _a.position = 'right', _a.backgroundColor = '', _a.className = 'dialogs ' + classes, _a));\n toast.showToast();\n return toast;\n}\n/**\r\n * Show a toast message with error styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showError(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.ERROR\n }));\n}\n/**\r\n * Show a toast message with warning styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showWarning(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.WARNING\n }));\n}\n/**\r\n * Show a toast message with info styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showInfo(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.INFO\n }));\n}\n/**\r\n * Show a toast message with success styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showSuccess(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.SUCCESS\n }));\n}\n/**\r\n * Show a toast message with undo styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param onUndo Function that is called when the undo button is clicked\r\n * @param options\r\n */\n\nfunction showUndo(text, onUndo, options) {\n // onUndo callback is mandatory\n if (!(onUndo instanceof Function)) {\n throw new Error('Please provide a valid onUndo method');\n }\n\n var toast;\n options = Object.assign(options || {}, {\n // force 10 seconds of timeout\n timeout: 10000,\n // remove close button\n close: false\n }); // Generate undo layout\n\n var undoContent = document.createElement('span');\n var undoButton = document.createElement('button');\n undoButton.classList.add('toast-undo-button');\n undoButton.innerText = t('Undo');\n undoContent.innerText = text;\n undoContent.appendChild(undoButton);\n undoButton.addEventListener('click', function (event) {\n event.stopPropagation();\n onUndo(event); // Hide toast\n\n if ((toast === null || toast === void 0 ? void 0 : toast.hideToast) instanceof Function) {\n toast.hideToast();\n }\n });\n toast = showMessage(undoContent, __assign(__assign({}, options), {\n type: ToastType.UNDO\n }));\n return toast;\n}\n\nexport { FilePicker, FilePickerBuilder, getFilePickerBuilder, showError, showInfo, showMessage, showSuccess, showUndo, showWarning };\n//# sourceMappingURL=index.es.js.map\n","import { EventBus } from \"./EventBus\"\nimport { ProxyBus } from \"./ProxyBus\"\nimport { SimpleBus } from \"./SimpleBus\"\n\ndeclare global {\n interface Window {\n OC: any\n _nc_event_bus: any\n }\n}\n\nfunction getBus(): EventBus {\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 }\n\n // Either use an existing event bus instance or create one\n if (typeof window._nc_event_bus !== 'undefined') {\n return new ProxyBus(window._nc_event_bus)\n } else {\n return window._nc_event_bus = new SimpleBus()\n }\n}\n\nconst bus = getBus()\n\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 */\nexport function subscribe(name: string, handler: (string) => void): void {\n bus.subscribe(name, handler)\n}\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 */\nexport function unsubscribe(name: string, handler: (string) => void): void {\n bus.unsubscribe(name, handler)\n}\n\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\nexport function emit(name: string, event: object): void {\n bus.emit(name, event)\n}\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","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","module.exports = {};\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","module.exports = {};\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","\"use strict\";\n\nvar isOldIE = function isOldIE() {\n var memo;\n return function memorize() {\n if (typeof memo === 'undefined') {\n // Test for IE <= 9 as proposed by Browserhacks\n // @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n // Tests for existence of standard globals is to allow style-loader\n // to operate correctly into non-standard environments\n // @see https://github.com/webpack-contrib/style-loader/issues/177\n memo = Boolean(window && document && document.all && !window.atob);\n }\n\n return memo;\n };\n}();\n\nvar getTarget = function getTarget() {\n var memo = {};\n return function memorize(target) {\n if (typeof memo[target] === 'undefined') {\n var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself\n\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n\n memo[target] = styleTarget;\n }\n\n return memo[target];\n };\n}();\n\nvar stylesInDom = [];\n\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n\n for (var i = 0; i < stylesInDom.length; i++) {\n if (stylesInDom[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n\n return result;\n}\n\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var index = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3]\n };\n\n if (index !== -1) {\n stylesInDom[index].references++;\n stylesInDom[index].updater(obj);\n } else {\n stylesInDom.push({\n identifier: identifier,\n updater: addStyle(obj, options),\n references: 1\n });\n }\n\n identifiers.push(identifier);\n }\n\n return identifiers;\n}\n\nfunction insertStyleElement(options) {\n var style = document.createElement('style');\n var attributes = options.attributes || {};\n\n if (typeof attributes.nonce === 'undefined') {\n var nonce = typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n\n if (nonce) {\n attributes.nonce = nonce;\n }\n }\n\n Object.keys(attributes).forEach(function (key) {\n style.setAttribute(key, attributes[key]);\n });\n\n if (typeof options.insert === 'function') {\n options.insert(style);\n } else {\n var target = getTarget(options.insert || 'head');\n\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n\n target.appendChild(style);\n }\n\n return style;\n}\n\nfunction removeStyleElement(style) {\n // istanbul ignore if\n if (style.parentNode === null) {\n return false;\n }\n\n style.parentNode.removeChild(style);\n}\n/* istanbul ignore next */\n\n\nvar replaceText = function replaceText() {\n var textStore = [];\n return function replace(index, replacement) {\n textStore[index] = replacement;\n return textStore.filter(Boolean).join('\\n');\n };\n}();\n\nfunction applyToSingletonTag(style, index, remove, obj) {\n var css = remove ? '' : obj.media ? \"@media \".concat(obj.media, \" {\").concat(obj.css, \"}\") : obj.css; // For old IE\n\n /* istanbul ignore if */\n\n if (style.styleSheet) {\n style.styleSheet.cssText = replaceText(index, css);\n } else {\n var cssNode = document.createTextNode(css);\n var childNodes = style.childNodes;\n\n if (childNodes[index]) {\n style.removeChild(childNodes[index]);\n }\n\n if (childNodes.length) {\n style.insertBefore(cssNode, childNodes[index]);\n } else {\n style.appendChild(cssNode);\n }\n }\n}\n\nfunction applyToTag(style, options, obj) {\n var css = obj.css;\n var media = obj.media;\n var sourceMap = obj.sourceMap;\n\n if (media) {\n style.setAttribute('media', media);\n } else {\n style.removeAttribute('media');\n }\n\n if (sourceMap && btoa) {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n } // For old IE\n\n /* istanbul ignore if */\n\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n while (style.firstChild) {\n style.removeChild(style.firstChild);\n }\n\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar singleton = null;\nvar singletonCounter = 0;\n\nfunction addStyle(obj, options) {\n var style;\n var update;\n var remove;\n\n if (options.singleton) {\n var styleIndex = singletonCounter++;\n style = singleton || (singleton = insertStyleElement(options));\n update = applyToSingletonTag.bind(null, style, styleIndex, false);\n remove = applyToSingletonTag.bind(null, style, styleIndex, true);\n } else {\n style = insertStyleElement(options);\n update = applyToTag.bind(null, style, options);\n\n remove = function remove() {\n removeStyleElement(style);\n };\n }\n\n update(obj);\n return function updateStyle(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap) {\n return;\n }\n\n update(obj = newObj);\n } else {\n remove();\n }\n };\n}\n\nmodule.exports = function (list, options) {\n options = options || {}; // Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n // tags it will allow on a page\n\n if (!options.singleton && typeof options.singleton !== 'boolean') {\n options.singleton = isOldIE();\n }\n\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n\n if (Object.prototype.toString.call(newList) !== '[object Array]') {\n return;\n }\n\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDom[index].references--;\n }\n\n var newLastIdentifiers = modulesToDom(newList, options);\n\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n\n var _index = getIndexByIdentifier(_identifier);\n\n if (stylesInDom[_index].references === 0) {\n stylesInDom[_index].updater();\n\n stylesInDom.splice(_index, 1);\n }\n }\n\n lastIdentifiers = newLastIdentifiers;\n };\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 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","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","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 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","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 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 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","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 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","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\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');\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","'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","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 fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\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 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 api = require(\"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","var api = require(\"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","var api = require(\"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=0d034530&lang=scss&scoped=true&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","var api = require(\"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var 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=7bbc2826&scoped=true&lang=css&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"Directives/Tooltip\",[],e):\"object\"==typeof exports?exports[\"Directives/Tooltip\"]=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Directives/Tooltip\"]=e())}(window,(function(){return function(t){var e={};function r(o){if(e[o])return e[o].exports;var n=e[o]={i:o,l:!1,exports:{}};return t[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,o){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var n in t)r.d(o,n,function(e){return t[e]}.bind(null,n));return o},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,\"a\",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p=\"/dist/\",r(r.s=19)}({1:function(t,e,r){\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var r=function(t,e){var r=t[1]||\"\",o=t[3];if(!o)return r;if(e&&\"function\"==typeof btoa){var n=(a=o,l=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),s=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(l),\"/*# \".concat(s,\" */\")),i=o.sources.map((function(t){return\"/*# sourceURL=\".concat(o.sourceRoot||\"\").concat(t,\" */\")}));return[r].concat(i).concat([n]).join(\"\\n\")}var a,l,s;return[r].join(\"\\n\")}(e,t);return e[2]?\"@media \".concat(e[2],\" {\").concat(r,\"}\"):r})).join(\"\")},e.i=function(t,r,o){\"string\"==typeof t&&(t=[[null,t,\"\"]]);var n={};if(o)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(n[a]=!0)}for(var l=0;l<t.length;l++){var s=[].concat(t[l]);o&&n[s[0]]||(r&&(s[2]?s[2]=\"\".concat(r,\" and \").concat(s[2]):s[2]=r),e.push(s))}},e}},19:function(t,e,r){\"use strict\";r.r(e);var o=r(4);r(55);\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.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 */\no.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"b74ff51\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),o.VTooltip.options.defaultHtml=!1,e.default=o.VTooltip},2:function(t,e,r){\"use strict\";function o(t,e){for(var r=[],o={},n=0;n<e.length;n++){var i=e[n],a=i[0],l={id:t+\":\"+n,css:i[1],media:i[2],sourceMap:i[3]};o[a]?o[a].parts.push(l):r.push(o[a]={id:a,parts:[l]})}return r}r.r(e),r.d(e,\"default\",(function(){return f}));var n=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!n)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var i={},a=n&&(document.head||document.getElementsByTagName(\"head\")[0]),l=null,s=0,p=!1,c=function(){},d=null,u=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function f(t,e,r,n){p=r,d=n||{};var a=o(t,e);return v(a),function(e){for(var r=[],n=0;n<a.length;n++){var l=a[n];(s=i[l.id]).refs--,r.push(s)}e?v(a=o(t,e)):a=[];for(n=0;n<r.length;n++){var s;if(0===(s=r[n]).refs){for(var p=0;p<s.parts.length;p++)s.parts[p]();delete i[s.id]}}}}function v(t){for(var e=0;e<t.length;e++){var r=t[e],o=i[r.id];if(o){o.refs++;for(var n=0;n<o.parts.length;n++)o.parts[n](r.parts[n]);for(;n<r.parts.length;n++)o.parts.push(h(r.parts[n]));o.parts.length>r.parts.length&&(o.parts.length=r.parts.length)}else{var a=[];for(n=0;n<r.parts.length;n++)a.push(h(r.parts[n]));i[r.id]={id:r.id,refs:1,parts:a}}}}function b(){var t=document.createElement(\"style\");return t.type=\"text/css\",a.appendChild(t),t}function h(t){var e,r,o=document.querySelector('style[data-vue-ssr-id~=\"'+t.id+'\"]');if(o){if(p)return c;o.parentNode.removeChild(o)}if(u){var n=s++;o=l||(l=b()),e=x.bind(null,o,n,!1),r=x.bind(null,o,n,!0)}else o=b(),e=y.bind(null,o),r=function(){o.parentNode.removeChild(o)};return e(t),function(o){if(o){if(o.css===t.css&&o.media===t.media&&o.sourceMap===t.sourceMap)return;e(t=o)}else r()}}var g,m=(g=[],function(t,e){return g[t]=e,g.filter(Boolean).join(\"\\n\")});function x(t,e,r,o){var n=r?\"\":o.css;if(t.styleSheet)t.styleSheet.cssText=m(e,n);else{var i=document.createTextNode(n),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(i,a[e]):t.appendChild(i)}}function y(t,e){var r=e.css,o=e.media,n=e.sourceMap;if(o&&t.setAttribute(\"media\",o),d.ssrId&&t.setAttribute(\"data-vue-ssr-id\",e.id),n&&(r+=\"\\n/*# sourceURL=\"+n.sources[0]+\" */\",r+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(n))))+\" */\"),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}},4:function(t,e){t.exports=require(\"v-tooltip\")},55:function(t,e,r){var o=r(56);\"string\"==typeof o&&(o=[[t.i,o,\"\"]]),o.locals&&(t.exports=o.locals);(0,r(2).default)(\"941c791e\",o,!0,{})},56:function(t,e,r){(e=r(1)(!1)).push([t.i,\".vue-tooltip[data-v-b74ff51]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-b74ff51][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-b74ff51][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-b74ff51][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-b74ff51] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-b74ff51] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\"]),t.exports=e}})}));\n//# sourceMappingURL=Tooltip.js.map","'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 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 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 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 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 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","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","exports.f = Object.getOwnPropertySymbols;\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","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","'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","// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n /* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\nmodule.exports = {\n SEMVER_SPEC_VERSION,\n MAX_LENGTH,\n MAX_SAFE_INTEGER,\n MAX_SAFE_COMPONENT_LENGTH\n}\n","'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 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 $ = 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 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","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 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 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","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 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","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\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","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 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 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 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 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","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/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","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.<br />\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is <html> the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.<br />\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.<br />\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.<br />\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.<br />\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.<br />\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.<br />\n * It will read the variation of the `placement` property.<br />\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.<br />\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.<br />\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.<br />\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.<br />\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".<br />\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.<br />\n * These can be overridden using the `options` argument of Popper.js.<br />\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.<br />\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","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 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 setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\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 global = require('../internals/global');\n\nmodule.exports = global;\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","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","'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(/%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 maxBodyLength: -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 cookies = require('./../helpers/cookies');\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 if (\n (utils.isBlob(requestData) || utils.isFile(requestData)) &&\n requestData.type\n ) {\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 = unescape(encodeURIComponent(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 // 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) {\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', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n var defaultToConfig2Keys = [\n 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',\n 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'\n ];\n var directMergeKeys = ['validateStatus'];\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n }\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n utils.forEach(directMergeKeys, function merge(prop) {\n if (prop in config2) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys)\n .concat(directMergeKeys);\n\n var otherKeys = Object\n .keys(config1)\n .concat(Object.keys(config2))\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, mergeDeepProperties);\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\";\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';\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 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 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","const { MAX_SAFE_COMPONENT_LENGTH } = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst src = exports.src = []\nconst t = exports.t = {}\nlet R = 0\n\nconst createToken = (name, value, isGlobal) => {\n const index = R++\n debug(index, value)\n t[name] = index\n src[index] = value\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\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\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('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\ncreateToken('NONNUMERICIDENTIFIER', '\\\\d*[a-zA-Z-][a-zA-Z0-9-]*')\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('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\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\ncreateToken('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\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+')\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('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\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('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.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('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.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('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])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('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`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.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.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\.0\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\.0\\.0-0\\\\s*$')\n","const debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n","const debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { re, t } = require('../internal/re')\n\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (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 version.includePrerelease === !!options.includePrerelease) {\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(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const 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((id) => {\n if (/^[0-9]+$/.test(id)) {\n const 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\n format () {\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\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return (\n compareIdentifiers(this.major, other.major) ||\n compareIdentifiers(this.minor, other.minor) ||\n compareIdentifiers(this.patch, other.patch)\n )\n }\n\n comparePre (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 let i = 0\n do {\n const a = this.prerelease[i]\n const 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\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const 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.\n inc (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 (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\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 let 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}\n\nmodule.exports = SemVer\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\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","'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 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 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 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 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","// 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","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","import Popper from 'popper.js';\nimport { ResizeObserver } from 'vue-resize';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nvar SVGAnimatedString = function SVGAnimatedString() {};\n\nif (typeof window !== 'undefined') {\n SVGAnimatedString = window.SVGAnimatedString;\n}\n\nfunction convertToArray(value) {\n if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n return value;\n}\n/**\n * Add classes to an element.\n * This method checks to ensure that the classes don't already exist before adding them.\n * It uses el.className rather than classList in order to be IE friendly.\n * @param {object} el - The element to add the classes to.\n * @param {classes} string - List of space separated classes to be added to the element.\n */\n\nfunction addClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n if (classList.indexOf(newClass) === -1) {\n classList.push(newClass);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\n/**\n * Remove classes from an element.\n * It uses el.className rather than classList in order to be IE friendly.\n * @export\n * @param {any} el The element to remove the classes from.\n * @param {any} classes List of space separated classes to be removed from the element.\n */\n\nfunction removeClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n var index = classList.indexOf(newClass);\n\n if (index !== -1) {\n classList.splice(index, 1);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\nvar supportsPassive = false;\n\nif (typeof window !== 'undefined') {\n supportsPassive = false;\n\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (e) {}\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 this.size = 0;\n}\n\nvar _listCacheClear = listCacheClear;\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\nvar eq_1 = eq;\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_1(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nvar _assocIndexOf = assocIndexOf;\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\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 --this.size;\n return true;\n}\n\nvar _listCacheDelete = listCacheDelete;\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\nvar _listCacheGet = listCacheGet;\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\nvar _listCacheHas = listCacheHas;\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 ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nvar _listCacheSet = listCacheSet;\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 == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\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\nvar _ListCache = ListCache;\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new _ListCache;\n this.size = 0;\n}\n\nvar _stackClear = stackClear;\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\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 stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nvar _stackDelete = stackDelete;\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nvar _stackGet = stackGet;\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\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 stackHas(key) {\n return this.__data__.has(key);\n}\n\nvar _stackHas = stackHas;\n\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;\n\nvar _freeGlobal = freeGlobal;\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\nvar _root = root;\n\n/** Built-in value references. */\nvar Symbol$1 = _root.Symbol;\n\nvar _Symbol = Symbol$1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\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 nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nvar _getRawTag = getRawTag;\n\n/** Used for built-in method references. */\nvar objectProto$1 = Object.prototype;\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 nativeObjectToString$1 = objectProto$1.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString$1.call(value);\n}\n\nvar _objectToString = objectToString;\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag$1 && symToStringTag$1 in Object(value))\n ? _getRawTag(value)\n : _objectToString(value);\n}\n\nvar _baseGetTag = baseGetTag;\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 != null && (type == 'object' || type == 'function');\n}\n\nvar isObject_1 = isObject;\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\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 if (!isObject_1(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = _baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nvar isFunction_1 = isFunction;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = _root['__core-js_shared__'];\n\nvar _coreJsData = coreJsData;\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/**\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\nvar _isMasked = isMasked;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\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\nvar _toSource = toSource;\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 detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto$1 = Function.prototype,\n objectProto$2 = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString$1 = funcProto$1.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$1 = objectProto$2.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString$1.call(hasOwnProperty$1).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\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_1(value) || _isMasked(value)) {\n return false;\n }\n var pattern = isFunction_1(value) ? reIsNative : reIsHostCtor;\n return pattern.test(_toSource(value));\n}\n\nvar _baseIsNative = baseIsNative;\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\nvar _getValue = getValue;\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\nvar _getNative = getNative;\n\n/* Built-in method references that are verified to be native. */\nvar Map = _getNative(_root, 'Map');\n\nvar _Map = Map;\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = _getNative(Object, 'create');\n\nvar _nativeCreate = nativeCreate;\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 this.size = 0;\n}\n\nvar _hashClear = hashClear;\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 var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nvar _hashDelete = hashDelete;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto$3 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$2 = objectProto$3.hasOwnProperty;\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$2.call(data, key) ? data[key] : undefined;\n}\n\nvar _hashGet = hashGet;\n\n/** Used for built-in method references. */\nvar objectProto$4 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$3 = objectProto$4.hasOwnProperty;\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$3.call(data, key);\n}\n\nvar _hashHas = hashHas;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED$1 = '__lodash_hash_undefined__';\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 this.size += this.has(key) ? 0 : 1;\n data[key] = (_nativeCreate && value === undefined) ? HASH_UNDEFINED$1 : value;\n return this;\n}\n\nvar _hashSet = hashSet;\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 == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\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\nvar _Hash = Hash;\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.size = 0;\n this.__data__ = {\n 'hash': new _Hash,\n 'map': new (_Map || _ListCache),\n 'string': new _Hash\n };\n}\n\nvar _mapCacheClear = mapCacheClear;\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\nvar _isKeyable = isKeyable;\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\nvar _getMapData = getMapData;\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 var result = _getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nvar _mapCacheDelete = mapCacheDelete;\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\nvar _mapCacheGet = mapCacheGet;\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\nvar _mapCacheHas = mapCacheHas;\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 var data = _getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nvar _mapCacheSet = mapCacheSet;\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 == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\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\nvar _MapCache = MapCache;\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof _ListCache) {\n var pairs = data.__data__;\n if (!_Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new _MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nvar _stackSet = stackSet;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new _ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = _stackClear;\nStack.prototype['delete'] = _stackDelete;\nStack.prototype.get = _stackGet;\nStack.prototype.has = _stackHas;\nStack.prototype.set = _stackSet;\n\nvar _Stack = Stack;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED$2 = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED$2);\n return this;\n}\n\nvar _setCacheAdd = setCacheAdd;\n\n/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nvar _setCacheHas = setCacheHas;\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new _MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = _setCacheAdd;\nSetCache.prototype.has = _setCacheHas;\n\nvar _SetCache = SetCache;\n\n/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nvar _arraySome = arraySome;\n\n/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\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 cacheHas(cache, key) {\n return cache.has(key);\n}\n\nvar _cacheHas = cacheHas;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(array);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new _SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!_arraySome(other, function(othValue, othIndex) {\n if (!_cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nvar _equalArrays = equalArrays;\n\n/** Built-in value references. */\nvar Uint8Array = _root.Uint8Array;\n\nvar _Uint8Array = Uint8Array;\n\n/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nvar _mapToArray = mapToArray;\n\n/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nvar _setToArray = setToArray;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$1 = 1,\n COMPARE_UNORDERED_FLAG$1 = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = _Symbol ? _Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new _Uint8Array(object), new _Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq_1(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = _mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG$1;\n convert || (convert = _setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG$1;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = _equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nvar _equalByTag = equalByTag;\n\n/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nvar _arrayPush = arrayPush;\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\nvar isArray_1 = isArray;\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray_1(object) ? result : _arrayPush(result, symbolsFunc(object));\n}\n\nvar _baseGetAllKeys = baseGetAllKeys;\n\n/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nvar _arrayFilter = arrayFilter;\n\n/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nvar stubArray_1 = stubArray;\n\n/** Used for built-in method references. */\nvar objectProto$5 = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto$5.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray_1 : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return _arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nvar _getSymbols = getSymbols;\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nvar _baseTimes = baseTimes;\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 != null && typeof value == 'object';\n}\n\nvar isObjectLike_1 = isObjectLike;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike_1(value) && _baseGetTag(value) == argsTag;\n}\n\nvar _baseIsArguments = baseIsArguments;\n\n/** Used for built-in method references. */\nvar objectProto$6 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$4 = objectProto$6.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable$1 = objectProto$6.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` 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 `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = _baseIsArguments(function() { return arguments; }()) ? _baseIsArguments : function(value) {\n return isObjectLike_1(value) && hasOwnProperty$4.call(value, 'callee') &&\n !propertyIsEnumerable$1.call(value, 'callee');\n};\n\nvar isArguments_1 = isArguments;\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nvar stubFalse_1 = stubFalse;\n\nvar isBuffer_1 = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? _root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse_1;\n\nmodule.exports = isBuffer;\n});\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nvar _isIndex = isIndex;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER$1 = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\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 valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER$1;\n}\n\nvar isLength_1 = isLength;\n\n/** `Object#toString` result references. */\nvar argsTag$1 = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag$1 = '[object Boolean]',\n dateTag$1 = '[object Date]',\n errorTag$1 = '[object Error]',\n funcTag$1 = '[object Function]',\n mapTag$1 = '[object Map]',\n numberTag$1 = '[object Number]',\n objectTag = '[object Object]',\n regexpTag$1 = '[object RegExp]',\n setTag$1 = '[object Set]',\n stringTag$1 = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag$1 = '[object ArrayBuffer]',\n dataViewTag$1 = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag$1] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag$1] = typedArrayTags[boolTag$1] =\ntypedArrayTags[dataViewTag$1] = typedArrayTags[dateTag$1] =\ntypedArrayTags[errorTag$1] = typedArrayTags[funcTag$1] =\ntypedArrayTags[mapTag$1] = typedArrayTags[numberTag$1] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag$1] =\ntypedArrayTags[setTag$1] = typedArrayTags[stringTag$1] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike_1(value) &&\n isLength_1(value.length) && !!typedArrayTags[_baseGetTag(value)];\n}\n\nvar _baseIsTypedArray = baseIsTypedArray;\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nvar _baseUnary = baseUnary;\n\nvar _nodeUtil = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && _freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n});\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = _nodeUtil && _nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? _baseUnary(nodeIsTypedArray) : _baseIsTypedArray;\n\nvar isTypedArray_1 = isTypedArray;\n\n/** Used for built-in method references. */\nvar objectProto$7 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$5 = objectProto$7.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray_1(value),\n isArg = !isArr && isArguments_1(value),\n isBuff = !isArr && !isArg && isBuffer_1(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray_1(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? _baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty$5.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n _isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _arrayLikeKeys = arrayLikeKeys;\n\n/** Used for built-in method references. */\nvar objectProto$8 = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto$8;\n\n return value === proto;\n}\n\nvar _isPrototype = isPrototype;\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nvar _overArg = overArg;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = _overArg(Object.keys, Object);\n\nvar _nativeKeys = nativeKeys;\n\n/** Used for built-in method references. */\nvar objectProto$9 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$6 = objectProto$9.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!_isPrototype(object)) {\n return _nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty$6.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _baseKeys = baseKeys;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\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 array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength_1(value.length) && !isFunction_1(value);\n}\n\nvar isArrayLike_1 = isArrayLike;\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike_1(object) ? _arrayLikeKeys(object) : _baseKeys(object);\n}\n\nvar keys_1 = keys;\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return _baseGetAllKeys(object, keys_1, _getSymbols);\n}\n\nvar _getAllKeys = getAllKeys;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$2 = 1;\n\n/** Used for built-in method references. */\nvar objectProto$a = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$7 = objectProto$a.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG$2,\n objProps = _getAllKeys(object),\n objLength = objProps.length,\n othProps = _getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty$7.call(other, key))) {\n return false;\n }\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nvar _equalObjects = equalObjects;\n\n/* Built-in method references that are verified to be native. */\nvar DataView = _getNative(_root, 'DataView');\n\nvar _DataView = DataView;\n\n/* Built-in method references that are verified to be native. */\nvar Promise$1 = _getNative(_root, 'Promise');\n\nvar _Promise = Promise$1;\n\n/* Built-in method references that are verified to be native. */\nvar Set = _getNative(_root, 'Set');\n\nvar _Set = Set;\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = _getNative(_root, 'WeakMap');\n\nvar _WeakMap = WeakMap;\n\n/** `Object#toString` result references. */\nvar mapTag$2 = '[object Map]',\n objectTag$1 = '[object Object]',\n promiseTag = '[object Promise]',\n setTag$2 = '[object Set]',\n weakMapTag$1 = '[object WeakMap]';\n\nvar dataViewTag$2 = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = _toSource(_DataView),\n mapCtorString = _toSource(_Map),\n promiseCtorString = _toSource(_Promise),\n setCtorString = _toSource(_Set),\n weakMapCtorString = _toSource(_WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = _baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((_DataView && getTag(new _DataView(new ArrayBuffer(1))) != dataViewTag$2) ||\n (_Map && getTag(new _Map) != mapTag$2) ||\n (_Promise && getTag(_Promise.resolve()) != promiseTag) ||\n (_Set && getTag(new _Set) != setTag$2) ||\n (_WeakMap && getTag(new _WeakMap) != weakMapTag$1)) {\n getTag = function(value) {\n var result = _baseGetTag(value),\n Ctor = result == objectTag$1 ? value.constructor : undefined,\n ctorString = Ctor ? _toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag$2;\n case mapCtorString: return mapTag$2;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag$2;\n case weakMapCtorString: return weakMapTag$1;\n }\n }\n return result;\n };\n}\n\nvar _getTag = getTag;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$3 = 1;\n\n/** `Object#toString` result references. */\nvar argsTag$2 = '[object Arguments]',\n arrayTag$1 = '[object Array]',\n objectTag$2 = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto$b = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$8 = objectProto$b.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray_1(object),\n othIsArr = isArray_1(other),\n objTag = objIsArr ? arrayTag$1 : _getTag(object),\n othTag = othIsArr ? arrayTag$1 : _getTag(other);\n\n objTag = objTag == argsTag$2 ? objectTag$2 : objTag;\n othTag = othTag == argsTag$2 ? objectTag$2 : othTag;\n\n var objIsObj = objTag == objectTag$2,\n othIsObj = othTag == objectTag$2,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer_1(object)) {\n if (!isBuffer_1(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new _Stack);\n return (objIsArr || isTypedArray_1(object))\n ? _equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG$3)) {\n var objIsWrapped = objIsObj && hasOwnProperty$8.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty$8.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new _Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new _Stack);\n return _equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nvar _baseIsEqualDeep = baseIsEqualDeep;\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike_1(value) && !isObjectLike_1(other))) {\n return value !== value && other !== other;\n }\n return _baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nvar _baseIsEqual = baseIsEqual;\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.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 * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return _baseIsEqual(value, other);\n}\n\nvar isEqual_1 = isEqual;\n\nvar DEFAULT_OPTIONS = {\n container: false,\n delay: 0,\n html: false,\n placement: 'top',\n title: '',\n template: '<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',\n trigger: 'hover focus',\n offset: 0\n};\nvar openTooltips = [];\n\nvar Tooltip =\n/*#__PURE__*/\nfunction () {\n /**\n * Create a new Tooltip.js instance\n * @class Tooltip\n * @param {HTMLElement} reference - The DOM node used as reference of the tooltip (it can be a jQuery element).\n * @param {Object} options\n * @param {String} options.placement=bottom\n * Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -end),\n * left(-start, -end)`\n * @param {HTMLElement|String|false} options.container=false - Append the tooltip to a specific element.\n * @param {Number|Object} options.delay=0\n * Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type.\n * If a number is supplied, delay is applied to both hide/show.\n * Object structure is: `{ show: 500, hide: 100 }`\n * @param {Boolean} options.html=false - Insert HTML into the tooltip. If false, the content will inserted with `innerText`.\n * @param {String|PlacementFunction} options.placement='top' - One of the allowed placements, or a function returning one of them.\n * @param {String} [options.template='<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>']\n * Base HTML to used when creating the tooltip.\n * The tooltip's `title` will be injected into the `.tooltip-inner` or `.tooltip__inner`.\n * `.tooltip-arrow` or `.tooltip__arrow` will become the tooltip's arrow.\n * The outermost wrapper element should have the `.tooltip` class.\n * @param {String|HTMLElement|TitleFunction} options.title='' - Default title value if `title` attribute isn't present.\n * @param {String} [options.trigger='hover focus']\n * How tooltip is triggered - click, hover, focus, manual.\n * You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.\n * @param {HTMLElement} options.boundariesElement\n * The element used as boundaries for the tooltip. For more information refer to Popper.js'\n * [boundariesElement docs](https://popper.js.org/popper-documentation.html)\n * @param {Number|String} options.offset=0 - Offset of the tooltip relative to its reference. For more information refer to Popper.js'\n * [offset docs](https://popper.js.org/popper-documentation.html)\n * @param {Object} options.popperOptions={} - Popper options, will be passed directly to popper instance. For more information refer to Popper.js'\n * [options docs](https://popper.js.org/popper-documentation.html)\n * @return {Object} instance - The generated tooltip instance\n */\n function Tooltip(_reference, _options) {\n var _this = this;\n\n _classCallCheck(this, Tooltip);\n\n _defineProperty(this, \"_events\", []);\n\n _defineProperty(this, \"_setTooltipNodeEvent\", function (evt, reference, delay, options) {\n var relatedreference = evt.relatedreference || evt.toElement || evt.relatedTarget;\n\n var callback = function callback(evt2) {\n var relatedreference2 = evt2.relatedreference || evt2.toElement || evt2.relatedTarget; // Remove event listener after call\n\n _this._tooltipNode.removeEventListener(evt.type, callback); // If the new reference is not the reference element\n\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this._scheduleHide(reference, options.delay, options, evt2);\n }\n };\n\n if (_this._tooltipNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n _this._tooltipNode.addEventListener(evt.type, callback);\n\n return true;\n }\n\n return false;\n });\n\n // apply user options over default ones\n _options = _objectSpread2({}, DEFAULT_OPTIONS, {}, _options);\n _reference.jquery && (_reference = _reference[0]);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this); // cache reference and options\n\n this.reference = _reference;\n this.options = _options; // set initial state\n\n this._isOpen = false;\n\n this._init();\n } //\n // Public methods\n //\n\n /**\n * Reveals an element's tooltip. This is considered a \"manual\" triggering of the tooltip.\n * Tooltips with zero-length titles are never displayed.\n * @method Tooltip#show\n * @memberof Tooltip\n */\n\n\n _createClass(Tooltip, [{\n key: \"show\",\n value: function show() {\n this._show(this.reference, this.options);\n }\n /**\n * Hides an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#hide\n * @memberof Tooltip\n */\n\n }, {\n key: \"hide\",\n value: function hide() {\n this._hide();\n }\n /**\n * Hides and destroys an element’s tooltip.\n * @method Tooltip#dispose\n * @memberof Tooltip\n */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n this._dispose();\n }\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#toggle\n * @memberof Tooltip\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this._isOpen) {\n return this.hide();\n } else {\n return this.show();\n }\n }\n }, {\n key: \"setClasses\",\n value: function setClasses(classes) {\n this._classes = classes;\n }\n }, {\n key: \"setContent\",\n value: function setContent(content) {\n this.options.title = content;\n\n if (this._tooltipNode) {\n this._setContent(content, this.options);\n }\n }\n }, {\n key: \"setOptions\",\n value: function setOptions(options) {\n var classesUpdated = false;\n var classes = options && options.classes || directive.options.defaultClass;\n\n if (!isEqual_1(this._classes, classes)) {\n this.setClasses(classes);\n classesUpdated = true;\n }\n\n options = getOptions(options);\n var needPopperUpdate = false;\n var needRestart = false;\n\n if (this.options.offset !== options.offset || this.options.placement !== options.placement) {\n needPopperUpdate = true;\n }\n\n if (this.options.template !== options.template || this.options.trigger !== options.trigger || this.options.container !== options.container || classesUpdated) {\n needRestart = true;\n }\n\n for (var key in options) {\n this.options[key] = options[key];\n }\n\n if (this._tooltipNode) {\n if (needRestart) {\n var isOpen = this._isOpen;\n this.dispose();\n\n this._init();\n\n if (isOpen) {\n this.show();\n }\n } else if (needPopperUpdate) {\n this.popperInstance.update();\n }\n }\n } //\n // Private methods\n //\n\n }, {\n key: \"_init\",\n value: function _init() {\n // get events list\n var events = typeof this.options.trigger === 'string' ? this.options.trigger.split(' ') : [];\n this._isDisposed = false;\n this._enableDocumentTouch = events.indexOf('manual') === -1;\n events = events.filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }); // set event listeners\n\n this._setEventListeners(this.reference, events, this.options); // title attribute\n\n\n this.$_originalTitle = this.reference.getAttribute('title');\n this.reference.removeAttribute('title');\n this.reference.setAttribute('data-original-title', this.$_originalTitle);\n }\n /**\n * Creates a new tooltip node\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} reference\n * @param {String} template\n * @param {String|HTMLElement|TitleFunction} title\n * @param {Boolean} allowHtml\n * @return {HTMLelement} tooltipNode\n */\n\n }, {\n key: \"_create\",\n value: function _create(reference, template) {\n // create tooltip element\n var tooltipGenerator = window.document.createElement('div');\n tooltipGenerator.innerHTML = template.trim();\n var tooltipNode = tooltipGenerator.childNodes[0]; // add unique ID to our tooltip (needed for accessibility reasons)\n\n tooltipNode.id = \"tooltip_\".concat(Math.random().toString(36).substr(2, 10)); // Initially hide the tooltip\n // The attribute will be switched in a next frame so\n // CSS transitions can play\n\n tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.options.autoHide && this.options.trigger.indexOf('hover') !== -1) {\n tooltipNode.addEventListener('mouseenter', this.hide);\n tooltipNode.addEventListener('click', this.hide);\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this2 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n _this2.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this3 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this3._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this3.options.innerSelector);\n\n if (title.nodeType === 1) {\n // if title is a node, append it only if allowHtml is true\n if (allowHtml) {\n while (titleNode.firstChild) {\n titleNode.removeChild(titleNode.firstChild);\n }\n\n titleNode.appendChild(title);\n }\n } else if (typeof title === 'function') {\n // if title is a function, call it and set innerText or innerHtml depending by `allowHtml` value\n var result = title();\n\n if (result && typeof result.then === 'function') {\n _this3.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this3._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this3._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this3._applyContent(result, options).then(resolve).catch(reject);\n }\n\n return;\n } else {\n // if it's just a simple text, set innerText or innerHtml depending by `allowHtml` value\n allowHtml ? titleNode.innerHTML = title : titleNode.innerText = title;\n }\n\n resolve();\n });\n }\n }, {\n key: \"_show\",\n value: function _show(reference, options) {\n if (options && typeof options.container === 'string') {\n var container = document.querySelector(options.container);\n if (!container) return;\n }\n\n clearTimeout(this._disposeTimer);\n options = Object.assign({}, options);\n delete options.offset;\n var updateClasses = true;\n\n if (this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n updateClasses = false;\n }\n\n var result = this._ensureShown(reference, options);\n\n if (updateClasses && this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n }\n\n addClasses(reference, ['v-tooltip-open']);\n return result;\n }\n }, {\n key: \"_ensureShown\",\n value: function _ensureShown(reference, options) {\n var _this4 = this;\n\n // don't show if it's already visible\n if (this._isOpen) {\n return this;\n }\n\n this._isOpen = true;\n openTooltips.push(this); // if the tooltipNode already exists, just show it\n\n if (this._tooltipNode) {\n this._tooltipNode.style.display = '';\n\n this._tooltipNode.setAttribute('aria-hidden', 'false');\n\n this.popperInstance.enableEventListeners();\n this.popperInstance.update();\n\n if (this.asyncContent) {\n this._setContent(options.title, options);\n }\n\n return this;\n } // get title\n\n\n var title = reference.getAttribute('title') || options.title; // don't show tooltip if no title is defined\n\n if (!title) {\n return this;\n } // create tooltip node\n\n\n var tooltipNode = this._create(reference, options.template);\n\n this._tooltipNode = tooltipNode; // Add `aria-describedby` to our reference element for accessibility reasons\n\n reference.setAttribute('aria-describedby', tooltipNode.id); // append tooltip to container\n\n var container = this._findContainer(options.container, reference);\n\n this._append(tooltipNode, container);\n\n var popperOptions = _objectSpread2({}, options.popperOptions, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread2({}, popperOptions.modifiers, {\n arrow: {\n element: this.options.arrowSelector\n }\n });\n\n if (options.boundariesElement) {\n popperOptions.modifiers.preventOverflow = {\n boundariesElement: options.boundariesElement\n };\n }\n\n this.popperInstance = new Popper(reference, tooltipNode, popperOptions);\n\n this._setContent(title, options); // Fix position\n\n\n requestAnimationFrame(function () {\n if (!_this4._isDisposed && _this4.popperInstance) {\n _this4.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this4._isDisposed) {\n _this4._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this4.dispose();\n }\n });\n } else {\n _this4.dispose();\n }\n });\n return this;\n }\n }, {\n key: \"_noLongerOpen\",\n value: function _noLongerOpen() {\n var index = openTooltips.indexOf(this);\n\n if (index !== -1) {\n openTooltips.splice(index, 1);\n }\n }\n }, {\n key: \"_hide\",\n value: function _hide()\n /* reference, options */\n {\n var _this5 = this;\n\n // don't hide if it's already hidden\n if (!this._isOpen) {\n return this;\n }\n\n this._isOpen = false;\n\n this._noLongerOpen(); // hide tooltipNode\n\n\n this._tooltipNode.style.display = 'none';\n\n this._tooltipNode.setAttribute('aria-hidden', 'true');\n\n this.popperInstance.disableEventListeners();\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this5._tooltipNode) {\n _this5._tooltipNode.removeEventListener('mouseenter', _this5.hide);\n\n _this5._tooltipNode.removeEventListener('click', _this5.hide); // Don't remove popper instance, just the HTML element\n\n\n _this5._removeTooltipNode();\n }\n }, disposeTime);\n }\n\n removeClasses(this.reference, ['v-tooltip-open']);\n return this;\n }\n }, {\n key: \"_removeTooltipNode\",\n value: function _removeTooltipNode() {\n if (!this._tooltipNode) return;\n var parentNode = this._tooltipNode.parentNode;\n\n if (parentNode) {\n parentNode.removeChild(this._tooltipNode);\n this.reference.removeAttribute('aria-describedby');\n }\n\n this._tooltipNode = null;\n }\n }, {\n key: \"_dispose\",\n value: function _dispose() {\n var _this6 = this;\n\n this._isDisposed = true;\n this.reference.removeAttribute('data-original-title');\n\n if (this.$_originalTitle) {\n this.reference.setAttribute('title', this.$_originalTitle);\n } // remove event listeners first to prevent any unexpected behaviour\n\n\n this._events.forEach(function (_ref) {\n var func = _ref.func,\n event = _ref.event;\n\n _this6.reference.removeEventListener(event, func);\n });\n\n this._events = [];\n\n if (this._tooltipNode) {\n this._hide();\n\n this._tooltipNode.removeEventListener('mouseenter', this.hide);\n\n this._tooltipNode.removeEventListener('click', this.hide); // destroy instance\n\n\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n this._removeTooltipNode();\n }\n } else {\n this._noLongerOpen();\n }\n\n return this;\n }\n }, {\n key: \"_findContainer\",\n value: function _findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n }\n /**\n * Append tooltip to container\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} tooltip\n * @param {HTMLElement|String|false} container\n */\n\n }, {\n key: \"_append\",\n value: function _append(tooltipNode, container) {\n container.appendChild(tooltipNode);\n }\n }, {\n key: \"_setEventListeners\",\n value: function _setEventListeners(reference, events, options) {\n var _this7 = this;\n\n var directEvents = [];\n var oppositeEvents = [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n if (_this7.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this7.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(evt) {\n if (_this7._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this7._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this7._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(evt) {\n if (evt.usedByTooltip === true) {\n return;\n }\n\n _this7._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this7._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n }\n }, {\n key: \"_onDocumentTouch\",\n value: function _onDocumentTouch(event) {\n if (this._enableDocumentTouch) {\n this._scheduleHide(this.reference, this.options.delay, this.options, event);\n }\n }\n }, {\n key: \"_scheduleShow\",\n value: function _scheduleShow(reference, delay, options\n /*, evt */\n ) {\n var _this8 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.show || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n return _this8._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this9 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.hide || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n if (_this9._isOpen === false) {\n return;\n }\n\n if (!_this9._tooltipNode.ownerDocument.body.contains(_this9._tooltipNode)) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (evt.type === 'mouseleave') {\n var isSet = _this9._setTooltipNodeEvent(evt, reference, delay, options); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this9._hide(reference, options);\n }, computedDelay);\n }\n }]);\n\n return Tooltip;\n}(); // Hide tooltips on touch devices\n\nif (typeof document !== 'undefined') {\n document.addEventListener('touchstart', function (event) {\n for (var i = 0; i < openTooltips.length; i++) {\n openTooltips[i]._onDocumentTouch(event);\n }\n }, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n}\n/**\n * Placement function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback PlacementFunction\n * @param {HTMLElement} tooltip - tooltip DOM node.\n * @param {HTMLElement} reference - reference DOM node.\n * @return {String} placement - One of the allowed placement options.\n */\n\n/**\n * Title function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback TitleFunction\n * @return {String} placement - The desired title.\n */\n\nvar state = {\n enabled: true\n};\nvar positions = ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end'];\nvar defaultOptions = {\n // Default tooltip placement relative to target element\n defaultPlacement: 'top',\n // Default CSS classes applied to the tooltip element\n defaultClass: 'vue-tooltip-theme',\n // Default CSS classes applied to the target element of the tooltip\n defaultTargetClass: 'has-tooltip',\n // Is the content HTML by default?\n defaultHtml: true,\n // Default HTML template of the tooltip element\n // It must include `tooltip-arrow` & `tooltip-inner` CSS classes (can be configured, see below)\n // Change if the classes conflict with other libraries (for example bootstrap)\n defaultTemplate: '<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',\n // Selector used to get the arrow element in the tooltip template\n defaultArrowSelector: '.tooltip-arrow, .tooltip__arrow',\n // Selector used to get the inner content element in the tooltip template\n defaultInnerSelector: '.tooltip-inner, .tooltip__inner',\n // Delay (ms)\n defaultDelay: 0,\n // Default events that trigger the tooltip\n defaultTrigger: 'hover focus',\n // Default position offset (px)\n defaultOffset: 0,\n // Default container where the tooltip will be appended\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Class added when content is loading\n defaultLoadingClass: 'tooltip-loading',\n // Displayed when tooltip content is loading\n defaultLoadingContent: '...',\n // Hide on mouseover tooltip\n autoHide: true,\n // Close tooltip on click on tooltip target?\n defaultHideOnTargetClick: true,\n // Auto destroy tooltip DOM nodes (ms)\n disposeTimeout: 5000,\n // Options for popover\n popover: {\n defaultPlacement: 'bottom',\n // Use the `popoverClass` prop for theming\n defaultClass: 'vue-popover-theme',\n // Base class (change if conflicts with other libraries)\n defaultBaseClass: 'tooltip popover',\n // Wrapper class (contains arrow and inner)\n defaultWrapperClass: 'wrapper',\n // Inner content class\n defaultInnerClass: 'tooltip-inner popover-inner',\n // Arrow class\n defaultArrowClass: 'tooltip-arrow popover-arrow',\n // Class added when popover is open\n defaultOpenClass: 'open',\n defaultDelay: 0,\n defaultTrigger: 'click',\n defaultOffset: 0,\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Hides if clicked outside of popover\n defaultAutoHide: true,\n // Update popper on content resize\n defaultHandleResize: true\n }\n};\nfunction getOptions(options) {\n var result = {\n placement: typeof options.placement !== 'undefined' ? options.placement : directive.options.defaultPlacement,\n delay: typeof options.delay !== 'undefined' ? options.delay : directive.options.defaultDelay,\n html: typeof options.html !== 'undefined' ? options.html : directive.options.defaultHtml,\n template: typeof options.template !== 'undefined' ? options.template : directive.options.defaultTemplate,\n arrowSelector: typeof options.arrowSelector !== 'undefined' ? options.arrowSelector : directive.options.defaultArrowSelector,\n innerSelector: typeof options.innerSelector !== 'undefined' ? options.innerSelector : directive.options.defaultInnerSelector,\n trigger: typeof options.trigger !== 'undefined' ? options.trigger : directive.options.defaultTrigger,\n offset: typeof options.offset !== 'undefined' ? options.offset : directive.options.defaultOffset,\n container: typeof options.container !== 'undefined' ? options.container : directive.options.defaultContainer,\n boundariesElement: typeof options.boundariesElement !== 'undefined' ? options.boundariesElement : directive.options.defaultBoundariesElement,\n autoHide: typeof options.autoHide !== 'undefined' ? options.autoHide : directive.options.autoHide,\n hideOnTargetClick: typeof options.hideOnTargetClick !== 'undefined' ? options.hideOnTargetClick : directive.options.defaultHideOnTargetClick,\n loadingClass: typeof options.loadingClass !== 'undefined' ? options.loadingClass : directive.options.defaultLoadingClass,\n loadingContent: typeof options.loadingContent !== 'undefined' ? options.loadingContent : directive.options.defaultLoadingContent,\n popperOptions: _objectSpread2({}, typeof options.popperOptions !== 'undefined' ? options.popperOptions : directive.options.defaultPopperOptions)\n };\n\n if (result.offset) {\n var typeofOffset = _typeof(result.offset);\n\n var offset = result.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n if (!result.popperOptions.modifiers) {\n result.popperOptions.modifiers = {};\n }\n\n result.popperOptions.modifiers.offset = {\n offset: offset\n };\n }\n\n if (result.trigger && result.trigger.indexOf('click') !== -1) {\n result.hideOnTargetClick = false;\n }\n\n return result;\n}\nfunction getPlacement(value, modifiers) {\n var placement = value.placement;\n\n for (var i = 0; i < positions.length; i++) {\n var pos = positions[i];\n\n if (modifiers[pos]) {\n placement = pos;\n }\n }\n\n return placement;\n}\nfunction getContent(value) {\n var type = _typeof(value);\n\n if (type === 'string') {\n return value;\n } else if (value && type === 'object') {\n return value.content;\n } else {\n return false;\n }\n}\nfunction createTooltip(el, value) {\n var modifiers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var content = getContent(value);\n var classes = typeof value.classes !== 'undefined' ? value.classes : directive.options.defaultClass;\n\n var opts = _objectSpread2({\n title: content\n }, getOptions(_objectSpread2({}, value, {\n placement: getPlacement(value, modifiers)\n })));\n\n var tooltip = el._tooltip = new Tooltip(el, opts);\n tooltip.setClasses(classes);\n tooltip._vueEl = el; // Class on target\n\n var targetClasses = typeof value.targetClasses !== 'undefined' ? value.targetClasses : directive.options.defaultTargetClass;\n el._tooltipTargetClasses = targetClasses;\n addClasses(el, targetClasses);\n return tooltip;\n}\nfunction destroyTooltip(el) {\n if (el._tooltip) {\n el._tooltip.dispose();\n\n delete el._tooltip;\n delete el._tooltipOldShow;\n }\n\n if (el._tooltipTargetClasses) {\n removeClasses(el, el._tooltipTargetClasses);\n delete el._tooltipTargetClasses;\n }\n}\nfunction bind(el, _ref) {\n var value = _ref.value,\n oldValue = _ref.oldValue,\n modifiers = _ref.modifiers;\n var content = getContent(value);\n\n if (!content || !state.enabled) {\n destroyTooltip(el);\n } else {\n var tooltip;\n\n if (el._tooltip) {\n tooltip = el._tooltip; // Content\n\n tooltip.setContent(content); // Options\n\n tooltip.setOptions(_objectSpread2({}, value, {\n placement: getPlacement(value, modifiers)\n }));\n } else {\n tooltip = createTooltip(el, value, modifiers);\n } // Manual show\n\n\n if (typeof value.show !== 'undefined' && value.show !== el._tooltipOldShow) {\n el._tooltipOldShow = value.show;\n value.show ? tooltip.show() : tooltip.hide();\n }\n }\n}\nvar directive = {\n options: defaultOptions,\n bind: bind,\n update: bind,\n unbind: function unbind(el) {\n destroyTooltip(el);\n }\n};\n\nfunction addListeners(el) {\n el.addEventListener('click', onClick);\n el.addEventListener('touchstart', onTouchStart, supportsPassive ? {\n passive: true\n } : false);\n}\n\nfunction removeListeners(el) {\n el.removeEventListener('click', onClick);\n el.removeEventListener('touchstart', onTouchStart);\n el.removeEventListener('touchend', onTouchEnd);\n el.removeEventListener('touchcancel', onTouchCancel);\n}\n\nfunction onClick(event) {\n var el = event.currentTarget;\n event.closePopover = !el.$_vclosepopover_touch;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n}\n\nfunction onTouchStart(event) {\n if (event.changedTouches.length === 1) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = true;\n var touch = event.changedTouches[0];\n el.$_vclosepopover_touchPoint = touch;\n el.addEventListener('touchend', onTouchEnd);\n el.addEventListener('touchcancel', onTouchCancel);\n }\n}\n\nfunction onTouchEnd(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n\n if (event.changedTouches.length === 1) {\n var touch = event.changedTouches[0];\n var firstTouch = el.$_vclosepopover_touchPoint;\n event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n }\n}\n\nfunction onTouchCancel(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n}\n\nvar vclosepopover = {\n bind: function bind(el, _ref) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n }\n },\n update: function update(el, _ref2) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (value !== oldValue) {\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n } else {\n removeListeners(el);\n }\n }\n },\n unbind: function unbind(el) {\n removeListeners(el);\n }\n};\n\nfunction getDefault(key) {\n var value = directive.options.popover[key];\n\n if (typeof value === 'undefined') {\n return directive.options[key];\n }\n\n return value;\n}\n\nvar isIOS = false;\n\nif (typeof window !== 'undefined' && typeof navigator !== 'undefined') {\n isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;\n}\n\nvar openPopovers = [];\n\nvar Element = function Element() {};\n\nif (typeof window !== 'undefined') {\n Element = window.Element;\n}\n\nvar script = {\n name: 'VPopover',\n components: {\n ResizeObserver: ResizeObserver\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n placement: {\n type: String,\n default: function _default() {\n return getDefault('defaultPlacement');\n }\n },\n delay: {\n type: [String, Number, Object],\n default: function _default() {\n return getDefault('defaultDelay');\n }\n },\n offset: {\n type: [String, Number],\n default: function _default() {\n return getDefault('defaultOffset');\n }\n },\n trigger: {\n type: String,\n default: function _default() {\n return getDefault('defaultTrigger');\n }\n },\n container: {\n type: [String, Object, Element, Boolean],\n default: function _default() {\n return getDefault('defaultContainer');\n }\n },\n boundariesElement: {\n type: [String, Element],\n default: function _default() {\n return getDefault('defaultBoundariesElement');\n }\n },\n popperOptions: {\n type: Object,\n default: function _default() {\n return getDefault('defaultPopperOptions');\n }\n },\n popoverClass: {\n type: [String, Array],\n default: function _default() {\n return getDefault('defaultClass');\n }\n },\n popoverBaseClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultBaseClass;\n }\n },\n popoverInnerClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultInnerClass;\n }\n },\n popoverWrapperClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultWrapperClass;\n }\n },\n popoverArrowClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultArrowClass;\n }\n },\n autoHide: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultAutoHide;\n }\n },\n handleResize: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultHandleResize;\n }\n },\n openGroup: {\n type: String,\n default: null\n },\n openClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultOpenClass;\n }\n }\n },\n data: function data() {\n return {\n isOpen: false,\n id: Math.random().toString(36).substr(2, 10)\n };\n },\n computed: {\n cssClass: function cssClass() {\n return _defineProperty({}, this.openClass, this.isOpen);\n },\n popoverId: function popoverId() {\n return \"popover_\".concat(this.id);\n }\n },\n watch: {\n open: function open(val) {\n if (val) {\n this.show();\n } else {\n this.hide();\n }\n },\n disabled: function disabled(val, oldVal) {\n if (val !== oldVal) {\n if (val) {\n this.hide();\n } else if (this.open) {\n this.show();\n }\n }\n },\n container: function container(val) {\n if (this.isOpen && this.popperInstance) {\n var popoverNode = this.$refs.popover;\n var reference = this.$refs.trigger;\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.popperInstance.scheduleUpdate();\n }\n },\n trigger: function trigger(val) {\n this.$_removeEventListeners();\n this.$_addEventListeners();\n },\n placement: function placement(val) {\n var _this = this;\n\n this.$_updatePopper(function () {\n _this.popperInstance.options.placement = val;\n });\n },\n offset: '$_restartPopper',\n boundariesElement: '$_restartPopper',\n popperOptions: {\n handler: '$_restartPopper',\n deep: true\n }\n },\n created: function created() {\n this.$_isDisposed = false;\n this.$_mounted = false;\n this.$_events = [];\n this.$_preventOpen = false;\n },\n mounted: function mounted() {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n this.$_init();\n\n if (this.open) {\n this.show();\n }\n },\n deactivated: function deactivated() {\n this.hide();\n },\n beforeDestroy: function beforeDestroy() {\n this.dispose();\n },\n methods: {\n show: function show() {\n var _this2 = this;\n\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref2.event,\n _ref2$skipDelay = _ref2.skipDelay,\n _ref2$force = _ref2.force,\n force = _ref2$force === void 0 ? false : _ref2$force;\n\n if (force || !this.disabled) {\n this.$_scheduleShow(event);\n this.$emit('show');\n }\n\n this.$emit('update:open', true);\n this.$_beingShowed = true;\n requestAnimationFrame(function () {\n _this2.$_beingShowed = false;\n });\n },\n hide: function hide() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref3.event,\n _ref3$skipDelay = _ref3.skipDelay;\n\n this.$_scheduleHide(event);\n this.$emit('hide');\n this.$emit('update:open', false);\n },\n dispose: function dispose() {\n this.$_isDisposed = true;\n this.$_removeEventListeners();\n this.hide({\n skipDelay: true\n });\n\n if (this.popperInstance) {\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n }\n }\n\n this.$_mounted = false;\n this.popperInstance = null;\n this.isOpen = false;\n this.$emit('dispose');\n },\n $_init: function $_init() {\n if (this.trigger.indexOf('manual') === -1) {\n this.$_addEventListeners();\n }\n },\n $_show: function $_show() {\n var _this3 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n clearTimeout(this.$_disposeTimer); // Already open\n\n if (this.isOpen) {\n return;\n } // Popper is already initialized\n\n\n if (this.popperInstance) {\n this.isOpen = true;\n this.popperInstance.enableEventListeners();\n this.popperInstance.scheduleUpdate();\n }\n\n if (!this.$_mounted) {\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.$_mounted = true;\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread2({}, this.popperOptions, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread2({}, popperOptions.modifiers, {\n arrow: _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.arrow, {\n element: this.$refs.arrow\n })\n });\n\n if (this.offset) {\n var offset = this.$_getOffset();\n popperOptions.modifiers.offset = _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.offset, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.preventOverflow, {\n boundariesElement: this.boundariesElement\n });\n }\n\n this.popperInstance = new Popper(reference, popoverNode, popperOptions); // Fix position\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed && _this3.popperInstance) {\n _this3.popperInstance.scheduleUpdate(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed) {\n _this3.isOpen = true;\n } else {\n _this3.dispose();\n }\n });\n } else {\n _this3.dispose();\n }\n });\n }\n\n var openGroup = this.openGroup;\n\n if (openGroup) {\n var popover;\n\n for (var i = 0; i < openPopovers.length; i++) {\n popover = openPopovers[i];\n\n if (popover.openGroup !== openGroup) {\n popover.hide();\n popover.$emit('close-group');\n }\n }\n }\n\n openPopovers.push(this);\n this.$emit('apply-show');\n },\n $_hide: function $_hide() {\n var _this4 = this;\n\n // Already hidden\n if (!this.isOpen) {\n return;\n }\n\n var index = openPopovers.indexOf(this);\n\n if (index !== -1) {\n openPopovers.splice(index, 1);\n }\n\n this.isOpen = false;\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this.$_disposeTimer);\n var disposeTime = directive.options.popover.disposeTimeout || directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this.$_disposeTimer = setTimeout(function () {\n var popoverNode = _this4.$refs.popover;\n\n if (popoverNode) {\n // Don't remove popper instance, just the HTML element\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n _this4.$_mounted = false;\n }\n }, disposeTime);\n }\n\n this.$emit('apply-hide');\n },\n $_findContainer: function $_findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n },\n $_getOffset: function $_getOffset() {\n var typeofOffset = _typeof(this.offset);\n\n var offset = this.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n return offset;\n },\n $_addEventListeners: function $_addEventListeners() {\n var _this5 = this;\n\n var reference = this.$refs.trigger;\n var directEvents = [];\n var oppositeEvents = [];\n var events = typeof this.trigger === 'string' ? this.trigger.split(' ').filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }) : [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(event) {\n if (_this5.isOpen) {\n return;\n }\n\n event.usedByTooltip = true;\n !_this5.$_preventOpen && _this5.show({\n event: event\n });\n _this5.hidden = false;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(event) {\n if (event.usedByTooltip) {\n return;\n }\n\n _this5.hide({\n event: event\n });\n\n _this5.hidden = true;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n },\n $_scheduleShow: function $_scheduleShow() {\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_show();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.show || this.delay || 0);\n this.$_scheduleTimer = setTimeout(this.$_show.bind(this), computedDelay);\n }\n },\n $_scheduleHide: function $_scheduleHide() {\n var _this6 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_hide();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.hide || this.delay || 0);\n this.$_scheduleTimer = setTimeout(function () {\n if (!_this6.isOpen) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (event && event.type === 'mouseleave') {\n var isSet = _this6.$_setTooltipNodeEvent(event); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this6.$_hide();\n }, computedDelay);\n }\n },\n $_setTooltipNodeEvent: function $_setTooltipNodeEvent(event) {\n var _this7 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n var relatedreference = event.relatedreference || event.toElement || event.relatedTarget;\n\n var callback = function callback(event2) {\n var relatedreference2 = event2.relatedreference || event2.toElement || event2.relatedTarget; // Remove event listener after call\n\n popoverNode.removeEventListener(event.type, callback); // If the new reference is not the reference element\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this7.hide({\n event: event2\n });\n }\n };\n\n if (popoverNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n popoverNode.addEventListener(event.type, callback);\n return true;\n }\n\n return false;\n },\n $_removeEventListeners: function $_removeEventListeners() {\n var reference = this.$refs.trigger;\n this.$_events.forEach(function (_ref4) {\n var func = _ref4.func,\n event = _ref4.event;\n reference.removeEventListener(event, func);\n });\n this.$_events = [];\n },\n $_updatePopper: function $_updatePopper(cb) {\n if (this.popperInstance) {\n cb();\n if (this.isOpen) this.popperInstance.scheduleUpdate();\n }\n },\n $_restartPopper: function $_restartPopper() {\n if (this.popperInstance) {\n var isOpen = this.isOpen;\n this.dispose();\n this.$_isDisposed = false;\n this.$_init();\n\n if (isOpen) {\n this.show({\n skipDelay: true,\n force: true\n });\n }\n }\n },\n $_handleGlobalClose: function $_handleGlobalClose(event) {\n var _this8 = this;\n\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (this.$_beingShowed) return;\n this.hide({\n event: event\n });\n\n if (event.closePopover) {\n this.$emit('close-directive');\n } else {\n this.$emit('auto-hide');\n }\n\n if (touch) {\n this.$_preventOpen = true;\n setTimeout(function () {\n _this8.$_preventOpen = false;\n }, 300);\n }\n },\n $_handleResize: function $_handleResize() {\n if (this.isOpen && this.popperInstance) {\n this.popperInstance.scheduleUpdate();\n this.$emit('resize');\n }\n }\n }\n};\n\nif (typeof document !== 'undefined' && typeof window !== 'undefined') {\n if (isIOS) {\n document.addEventListener('touchend', handleGlobalTouchend, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n } else {\n window.addEventListener('click', handleGlobalClick, true);\n }\n}\n\nfunction handleGlobalClick(event) {\n handleGlobalClose(event);\n}\n\nfunction handleGlobalTouchend(event) {\n handleGlobalClose(event, true);\n}\n\nfunction handleGlobalClose(event) {\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var _loop = function _loop(i) {\n var popover = openPopovers[i];\n\n if (popover.$refs.popover) {\n var contains = popover.$refs.popover.contains(event.target);\n requestAnimationFrame(function () {\n if (event.closeAllPopover || event.closePopover && contains || popover.autoHide && !contains) {\n popover.$_handleGlobalClose(event, touch);\n }\n });\n }\n };\n\n // Delay so that close directive has time to set values\n for (var i = 0; i < openPopovers.length; i++) {\n _loop(i);\n }\n}\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"v-popover\",\n class: _vm.cssClass\n }, [_c(\"div\", {\n ref: \"trigger\",\n staticClass: \"trigger\",\n staticStyle: {\n display: \"inline-block\"\n },\n attrs: {\n \"aria-describedby\": _vm.popoverId,\n tabindex: _vm.trigger.indexOf(\"focus\") !== -1 ? 0 : undefined\n }\n }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _c(\"div\", {\n ref: \"popover\",\n class: [_vm.popoverBaseClass, _vm.popoverClass, _vm.cssClass],\n style: {\n visibility: _vm.isOpen ? \"visible\" : \"hidden\"\n },\n attrs: {\n id: _vm.popoverId,\n \"aria-hidden\": _vm.isOpen ? \"false\" : \"true\",\n tabindex: _vm.autoHide ? 0 : undefined\n },\n on: {\n keyup: function keyup($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) {\n return null;\n }\n\n _vm.autoHide && _vm.hide();\n }\n }\n }, [_c(\"div\", {\n class: _vm.popoverWrapperClass\n }, [_c(\"div\", {\n ref: \"inner\",\n class: _vm.popoverInnerClass,\n staticStyle: {\n position: \"relative\"\n }\n }, [_c(\"div\", [_vm._t(\"popover\")], 2), _vm._v(\" \"), _vm.handleResize ? _c(\"ResizeObserver\", {\n on: {\n notify: _vm.$_handleResize\n }\n }) : _vm._e()], 1), _vm._v(\" \"), _c(\"div\", {\n ref: \"arrow\",\n class: _vm.popoverArrowClass\n })])])]);\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nvar defineProperty = (function() {\n try {\n var func = _getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nvar _defineProperty$1 = defineProperty;\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && _defineProperty$1) {\n _defineProperty$1(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nvar _baseAssignValue = baseAssignValue;\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq_1(object[key], value)) ||\n (value === undefined && !(key in object))) {\n _baseAssignValue(object, key, value);\n }\n}\n\nvar _assignMergeValue = assignMergeValue;\n\n/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nvar _createBaseFor = createBaseFor;\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = _createBaseFor();\n\nvar _baseFor = baseFor;\n\nvar _cloneBuffer = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? _root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n});\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new _Uint8Array(result).set(new _Uint8Array(arrayBuffer));\n return result;\n}\n\nvar _cloneArrayBuffer = cloneArrayBuffer;\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? _cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nvar _cloneTypedArray = cloneTypedArray;\n\n/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nvar _copyArray = copyArray;\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject_1(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nvar _baseCreate = baseCreate;\n\n/** Built-in value references. */\nvar getPrototype = _overArg(Object.getPrototypeOf, Object);\n\nvar _getPrototype = getPrototype;\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !_isPrototype(object))\n ? _baseCreate(_getPrototype(object))\n : {};\n}\n\nvar _initCloneObject = initCloneObject;\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an 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 an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike_1(value) && isArrayLike_1(value);\n}\n\nvar isArrayLikeObject_1 = isArrayLikeObject;\n\n/** `Object#toString` result references. */\nvar objectTag$3 = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto$2 = Function.prototype,\n objectProto$c = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString$2 = funcProto$2.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$9 = objectProto$c.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString$2.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike_1(value) || _baseGetTag(value) != objectTag$3) {\n return false;\n }\n var proto = _getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty$9.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString$2.call(Ctor) == objectCtorString;\n}\n\nvar isPlainObject_1 = isPlainObject;\n\n/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\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 safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nvar _safeGet = safeGet;\n\n/** Used for built-in method references. */\nvar objectProto$d = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$a = objectProto$d.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty$a.call(object, key) && eq_1(objValue, value)) ||\n (value === undefined && !(key in object))) {\n _baseAssignValue(object, key, value);\n }\n}\n\nvar _assignValue = assignValue;\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n _baseAssignValue(object, key, newValue);\n } else {\n _assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nvar _copyObject = copyObject;\n\n/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _nativeKeysIn = nativeKeysIn;\n\n/** Used for built-in method references. */\nvar objectProto$e = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$b = objectProto$e.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject_1(object)) {\n return _nativeKeysIn(object);\n }\n var isProto = _isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty$b.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _baseKeysIn = baseKeysIn;\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike_1(object) ? _arrayLikeKeys(object, true) : _baseKeysIn(object);\n}\n\nvar keysIn_1 = keysIn;\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return _copyObject(value, keysIn_1(value));\n}\n\nvar toPlainObject_1 = toPlainObject;\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = _safeGet(object, key),\n srcValue = _safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n _assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray_1(srcValue),\n isBuff = !isArr && isBuffer_1(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray_1(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray_1(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject_1(objValue)) {\n newValue = _copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = _cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = _cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject_1(srcValue) || isArguments_1(srcValue)) {\n newValue = objValue;\n if (isArguments_1(objValue)) {\n newValue = toPlainObject_1(objValue);\n }\n else if (!isObject_1(objValue) || isFunction_1(objValue)) {\n newValue = _initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n _assignMergeValue(object, key, newValue);\n}\n\nvar _baseMergeDeep = baseMergeDeep;\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n _baseFor(source, function(srcValue, key) {\n stack || (stack = new _Stack);\n if (isObject_1(srcValue)) {\n _baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(_safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n _assignMergeValue(object, key, newValue);\n }\n }, keysIn_1);\n}\n\nvar _baseMerge = baseMerge;\n\n/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nvar identity_1 = identity;\n\n/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nvar _apply = apply;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return _apply(func, this, otherArgs);\n };\n}\n\nvar _overRest = overRest;\n\n/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nvar constant_1 = constant;\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !_defineProperty$1 ? identity_1 : function(func, string) {\n return _defineProperty$1(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant_1(string),\n 'writable': true\n });\n};\n\nvar _baseSetToString = baseSetToString;\n\n/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nvar _shortOut = shortOut;\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = _shortOut(_baseSetToString);\n\nvar _setToString = setToString;\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return _setToString(_overRest(func, start, identity_1), func + '');\n}\n\nvar _baseRest = baseRest;\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject_1(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike_1(object) && _isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq_1(object[index], value);\n }\n return false;\n}\n\nvar _isIterateeCall = isIterateeCall;\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return _baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && _isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nvar _createAssigner = createAssigner;\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = _createAssigner(function(object, source, srcIndex) {\n _baseMerge(object, source, srcIndex);\n});\n\nvar merge_1 = merge;\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \".resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css);\n\nfunction install(Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (install.installed) return;\n install.installed = true;\n var finalOptions = {};\n merge_1(finalOptions, defaultOptions, options);\n plugin.options = finalOptions;\n directive.options = finalOptions;\n Vue.directive('tooltip', directive);\n Vue.directive('close-popover', vclosepopover);\n Vue.component('v-popover', __vue_component__);\n}\nvar VTooltip = directive;\nvar VClosePopover = vclosepopover;\nvar VPopover = __vue_component__;\nvar plugin = {\n install: install,\n\n get enabled() {\n return state.enabled;\n },\n\n set enabled(value) {\n state.enabled = value;\n }\n\n}; // Auto-install\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { VClosePopover, VPopover, VTooltip, createTooltip, destroyTooltip, install };\n","'use strict';\nvar $ = require('../internals/export');\nvar $indexOf = require('../internals/array-includes').indexOf;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar nativeIndexOf = [].indexOf;\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('indexOf');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.indexOf` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\nvar flags = require('../internals/regexp-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\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 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","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classof(process) == 'process') {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n !fails(post) &&\n location.protocol !== 'file:'\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar fails = require('../internals/fails');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = HAS_SPECIES_SUPPORT && !fails(function () {\n [].filter.call({ length: -1, 0: 1 }, function (it) { throw it; });\n});\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 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 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 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","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.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\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","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 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","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 bind = require('../internals/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 global = require('../internals/global');\nvar userAgent = require('../internals/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 $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar fails = require('../internals/fails');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = HAS_SPECIES_SUPPORT && !fails(function () {\n [].map.call({ length: -1, 0: 1 }, function (it) { throw it; });\n});\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\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.map\");\n\nrequire(\"core-js/modules/es.object.keys\");\n\nrequire(\"core-js/modules/es.string.starts-with\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = 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 ScopedStorage =\n/*#__PURE__*/\nfunction () {\n function ScopedStorage(scope, wrapped, persistent) {\n _classCallCheck(this, ScopedStorage);\n\n _defineProperty(this, \"scope\", void 0);\n\n _defineProperty(this, \"wrapped\", void 0);\n\n this.scope = \"\".concat(persistent ? ScopedStorage.GLOBAL_SCOPE_PERSISTENT : ScopedStorage.GLOBAL_SCOPE_VOLATILE, \"_\").concat(btoa(scope), \"_\");\n this.wrapped = wrapped;\n }\n\n _createClass(ScopedStorage, [{\n key: \"scopeKey\",\n value: function scopeKey(key) {\n return \"\".concat(this.scope).concat(key);\n }\n }, {\n key: \"setItem\",\n value: function setItem(key, value) {\n this.wrapped.setItem(this.scopeKey(key), value);\n }\n }, {\n key: \"getItem\",\n value: function getItem(key) {\n return this.wrapped.getItem(this.scopeKey(key));\n }\n }, {\n key: \"removeItem\",\n value: function removeItem(key) {\n this.wrapped.removeItem(this.scopeKey(key));\n }\n }, {\n key: \"clear\",\n value: function clear() {\n var _this = this;\n\n Object.keys(this.wrapped).filter(function (key) {\n return key.startsWith(_this.scope);\n }).map(this.wrapped.removeItem.bind(this.wrapped));\n }\n }]);\n\n return ScopedStorage;\n}();\n\nexports.default = ScopedStorage;\n\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_VOLATILE\", 'nextcloud_vol');\n\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_PERSISTENT\", 'nextcloud_per');\n//# sourceMappingURL=scopedstorage.js.map","function getInternetExplorerVersion() {\n\tvar ua = window.navigator.userAgent;\n\n\tvar msie = ua.indexOf('MSIE ');\n\tif (msie > 0) {\n\t\t// IE 10 or older => return version number\n\t\treturn parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n\t}\n\n\tvar trident = ua.indexOf('Trident/');\n\tif (trident > 0) {\n\t\t// IE 11 => return version number\n\t\tvar rv = ua.indexOf('rv:');\n\t\treturn parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n\t}\n\n\tvar edge = ua.indexOf('Edge/');\n\tif (edge > 0) {\n\t\t// Edge (IE 12+) => return version number\n\t\treturn parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n\t}\n\n\t// other browser\n\treturn -1;\n}\n\nvar isIE = void 0;\n\nfunction initCompat() {\n\tif (!initCompat.init) {\n\t\tinitCompat.init = true;\n\t\tisIE = getInternetExplorerVersion() !== -1;\n\t}\n}\n\nvar ResizeObserver = { render: function render() {\n\t\tvar _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { staticClass: \"resize-observer\", attrs: { \"tabindex\": \"-1\" } });\n\t}, staticRenderFns: [], _scopeId: 'data-v-b329ee4c',\n\tname: 'resize-observer',\n\n\tmethods: {\n\t\tcompareAndNotify: function compareAndNotify() {\n\t\t\tif (this._w !== this.$el.offsetWidth || this._h !== this.$el.offsetHeight) {\n\t\t\t\tthis._w = this.$el.offsetWidth;\n\t\t\t\tthis._h = this.$el.offsetHeight;\n\t\t\t\tthis.$emit('notify');\n\t\t\t}\n\t\t},\n\t\taddResizeHandlers: function addResizeHandlers() {\n\t\t\tthis._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\t\t\tthis.compareAndNotify();\n\t\t},\n\t\tremoveResizeHandlers: function removeResizeHandlers() {\n\t\t\tif (this._resizeObject && this._resizeObject.onload) {\n\t\t\t\tif (!isIE && this._resizeObject.contentDocument) {\n\t\t\t\t\tthis._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n\t\t\t\t}\n\t\t\t\tdelete this._resizeObject.onload;\n\t\t\t}\n\t\t}\n\t},\n\n\tmounted: function mounted() {\n\t\tvar _this = this;\n\n\t\tinitCompat();\n\t\tthis.$nextTick(function () {\n\t\t\t_this._w = _this.$el.offsetWidth;\n\t\t\t_this._h = _this.$el.offsetHeight;\n\t\t});\n\t\tvar object = document.createElement('object');\n\t\tthis._resizeObject = object;\n\t\tobject.setAttribute('aria-hidden', 'true');\n\t\tobject.setAttribute('tabindex', -1);\n\t\tobject.onload = this.addResizeHandlers;\n\t\tobject.type = 'text/html';\n\t\tif (isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t\tobject.data = 'about:blank';\n\t\tif (!isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tthis.removeResizeHandlers();\n\t}\n};\n\n// Install the components\nfunction install(Vue) {\n\tVue.component('resize-observer', ResizeObserver);\n\tVue.component('ResizeObserver', ResizeObserver);\n}\n\n// Plugin\nvar plugin = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.4.5\",\n\tinstall: install\n};\n\n// Auto-install\nvar GlobalVue = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n\tGlobalVue = global.Vue;\n}\nif (GlobalVue) {\n\tGlobalVue.use(plugin);\n}\n\nexport { install, ResizeObserver };\nexport default plugin;\n","var t=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function e(t,e){return t(e={exports:{}},e.exports),e.exports}var n=function(t){return t&&t.Math==Math&&t},r=n(\"object\"==typeof globalThis&&globalThis)||n(\"object\"==typeof window&&window)||n(\"object\"==typeof self&&self)||n(\"object\"==typeof t&&t)||Function(\"return this\")(),o=function(t){try{return!!t()}catch(t){return!0}},i=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),u={}.propertyIsEnumerable,c=Object.getOwnPropertyDescriptor,a={f:c&&!u.call({1:2},1)?function(t){var e=c(this,t);return!!e&&e.enumerable}:u},l=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},f={}.toString,s=function(t){return f.call(t).slice(8,-1)},p=\"\".split,d=o((function(){return!Object(\"z\").propertyIsEnumerable(0)}))?function(t){return\"String\"==s(t)?p.call(t,\"\"):Object(t)}:Object,h=function(t){if(null==t)throw TypeError(\"Can't call method on \"+t);return t},g=function(t){return d(h(t))},v=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t},y=function(t,e){if(!v(t))return t;var n,r;if(e&&\"function\"==typeof(n=t.toString)&&!v(r=n.call(t)))return r;if(\"function\"==typeof(n=t.valueOf)&&!v(r=n.call(t)))return r;if(!e&&\"function\"==typeof(n=t.toString)&&!v(r=n.call(t)))return r;throw TypeError(\"Can't convert object to primitive value\")},m={}.hasOwnProperty,b=function(t,e){return m.call(t,e)},x=r.document,S=v(x)&&v(x.createElement),E=function(t){return S?x.createElement(t):{}},w=!i&&!o((function(){return 7!=Object.defineProperty(E(\"div\"),\"a\",{get:function(){return 7}}).a})),O=Object.getOwnPropertyDescriptor,_={f:i?O:function(t,e){if(t=g(t),e=y(e,!0),w)try{return O(t,e)}catch(t){}if(b(t,e))return l(!a.f.call(t,e),t[e])}},j=function(t){if(!v(t))throw TypeError(String(t)+\" is not an object\");return t},R=Object.defineProperty,C={f:i?R:function(t,e,n){if(j(t),e=y(e,!0),j(n),w)try{return R(t,e,n)}catch(t){}if(\"get\"in n||\"set\"in n)throw TypeError(\"Accessors not supported\");return\"value\"in n&&(t[e]=n.value),t}},A=i?function(t,e,n){return C.f(t,e,l(1,n))}:function(t,e,n){return t[e]=n,t},T=function(t,e){try{A(r,t,e)}catch(n){r[t]=e}return e},I=r[\"__core-js_shared__\"]||T(\"__core-js_shared__\",{}),P=Function.toString;\"function\"!=typeof I.inspectSource&&(I.inspectSource=function(t){return P.call(t)});var k,N,$,U=I.inspectSource,F=r.WeakMap,M=\"function\"==typeof F&&/native code/.test(U(F)),L=e((function(t){(t.exports=function(t,e){return I[t]||(I[t]=void 0!==e?e:{})})(\"versions\",[]).push({version:\"3.6.5\",mode:\"global\",copyright:\"© 2020 Denis Pushkarev (zloirock.ru)\"})})),B=0,D=Math.random(),z=function(t){return\"Symbol(\"+String(void 0===t?\"\":t)+\")_\"+(++B+D).toString(36)},K=L(\"keys\"),W=function(t){return K[t]||(K[t]=z(t))},X={},G=r.WeakMap;if(M){var V=new G,Y=V.get,Z=V.has,q=V.set;k=function(t,e){return q.call(V,t,e),e},N=function(t){return Y.call(V,t)||{}},$=function(t){return Z.call(V,t)}}else{var J=W(\"state\");X[J]=!0,k=function(t,e){return A(t,J,e),e},N=function(t){return b(t,J)?t[J]:{}},$=function(t){return b(t,J)}}var H={set:k,get:N,has:$,enforce:function(t){return $(t)?N(t):k(t,{})},getterFor:function(t){return function(e){var n;if(!v(e)||(n=N(e)).type!==t)throw TypeError(\"Incompatible receiver, \"+t+\" required\");return n}}},Q=e((function(t){var e=H.get,n=H.enforce,o=String(String).split(\"String\");(t.exports=function(t,e,i,u){var c=!!u&&!!u.unsafe,a=!!u&&!!u.enumerable,l=!!u&&!!u.noTargetGet;\"function\"==typeof i&&(\"string\"!=typeof e||b(i,\"name\")||A(i,\"name\",e),n(i).source=o.join(\"string\"==typeof e?e:\"\")),t!==r?(c?!l&&t[e]&&(a=!0):delete t[e],a?t[e]=i:A(t,e,i)):a?t[e]=i:T(e,i)})(Function.prototype,\"toString\",(function(){return\"function\"==typeof this&&e(this).source||U(this)}))})),tt=r,et=function(t){return\"function\"==typeof t?t:void 0},nt=function(t,e){return arguments.length<2?et(tt[t])||et(r[t]):tt[t]&&tt[t][e]||r[t]&&r[t][e]},rt=Math.ceil,ot=Math.floor,it=function(t){return isNaN(t=+t)?0:(t>0?ot:rt)(t)},ut=Math.min,ct=function(t){return t>0?ut(it(t),9007199254740991):0},at=Math.max,lt=Math.min,ft=function(t){return function(e,n,r){var o,i=g(e),u=ct(i.length),c=function(t,e){var n=it(t);return n<0?at(n+e,0):lt(n,e)}(r,u);if(t&&n!=n){for(;u>c;)if((o=i[c++])!=o)return!0}else for(;u>c;c++)if((t||c in i)&&i[c]===n)return t||c||0;return!t&&-1}},st={includes:ft(!0),indexOf:ft(!1)}.indexOf,pt=function(t,e){var n,r=g(t),o=0,i=[];for(n in r)!b(X,n)&&b(r,n)&&i.push(n);for(;e.length>o;)b(r,n=e[o++])&&(~st(i,n)||i.push(n));return i},dt=[\"constructor\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"toLocaleString\",\"toString\",\"valueOf\"],ht=dt.concat(\"length\",\"prototype\"),gt={f:Object.getOwnPropertyNames||function(t){return pt(t,ht)}},vt={f:Object.getOwnPropertySymbols},yt=nt(\"Reflect\",\"ownKeys\")||function(t){var e=gt.f(j(t)),n=vt.f;return n?e.concat(n(t)):e},mt=function(t,e){for(var n=yt(e),r=C.f,o=_.f,i=0;i<n.length;i++){var u=n[i];b(t,u)||r(t,u,o(e,u))}},bt=/#|\\.prototype\\./,xt=function(t,e){var n=Et[St(t)];return n==Ot||n!=wt&&(\"function\"==typeof e?o(e):!!e)},St=xt.normalize=function(t){return String(t).replace(bt,\".\").toLowerCase()},Et=xt.data={},wt=xt.NATIVE=\"N\",Ot=xt.POLYFILL=\"P\",_t=xt,jt=_.f,Rt=function(t,e){var n,o,i,u,c,a=t.target,l=t.global,f=t.stat;if(n=l?r:f?r[a]||T(a,{}):(r[a]||{}).prototype)for(o in e){if(u=e[o],i=t.noTargetGet?(c=jt(n,o))&&c.value:n[o],!_t(l?o:a+(f?\".\":\"#\")+o,t.forced)&&void 0!==i){if(typeof u==typeof i)continue;mt(u,i)}(t.sham||i&&i.sham)&&A(u,\"sham\",!0),Q(n,o,u,t)}},Ct=Array.isArray||function(t){return\"Array\"==s(t)},At=function(t){if(\"function\"!=typeof t)throw TypeError(String(t)+\" is not a function\");return t},Tt=function(t,e,n){if(At(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}},It=function(t,e,n,r,o,i,u,c){for(var a,l=o,f=0,s=!!u&&Tt(u,c,3);f<r;){if(f in n){if(a=s?s(n[f],f,e):n[f],i>0&&Ct(a))l=It(t,e,a,ct(a.length),l,i-1)-1;else{if(l>=9007199254740991)throw TypeError(\"Exceed the acceptable array length\");t[l]=a}l++}f++}return l},Pt=It,kt=function(t){return Object(h(t))},Nt=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())})),$t=Nt&&!Symbol.sham&&\"symbol\"==typeof Symbol.iterator,Ut=L(\"wks\"),Ft=r.Symbol,Mt=$t?Ft:Ft&&Ft.withoutSetter||z,Lt=function(t){return b(Ut,t)||(Nt&&b(Ft,t)?Ut[t]=Ft[t]:Ut[t]=Mt(\"Symbol.\"+t)),Ut[t]},Bt=Lt(\"species\"),Dt=function(t,e){var n;return Ct(t)&&(\"function\"!=typeof(n=t.constructor)||n!==Array&&!Ct(n.prototype)?v(n)&&null===(n=n[Bt])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)};Rt({target:\"Array\",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=kt(this),n=ct(e.length),r=Dt(e,0);return r.length=Pt(r,e,e,n,0,void 0===t?1:it(t)),r}});var zt,Kt,Wt=[].join,Xt=d!=Object,Gt=(zt=\",\",!!(Kt=[][\"join\"])&&o((function(){Kt.call(null,zt||function(){throw 1},1)})));Rt({target:\"Array\",proto:!0,forced:Xt||!Gt},{join:function(t){return Wt.call(g(this),void 0===t?\",\":t)}});var Vt,Yt,Zt=[].push,qt=function(t){var e=1==t,n=2==t,r=3==t,o=4==t,i=6==t,u=5==t||i;return function(c,a,l,f){for(var s,p,h=kt(c),g=d(h),v=Tt(a,l,3),y=ct(g.length),m=0,b=f||Dt,x=e?b(c,y):n?b(c,0):void 0;y>m;m++)if((u||m in g)&&(p=v(s=g[m],m,h),t))if(e)x[m]=p;else if(p)switch(t){case 3:return!0;case 5:return s;case 6:return m;case 2:Zt.call(x,s)}else if(o)return!1;return i?-1:r||o?o:x}},Jt={forEach:qt(0),map:qt(1),filter:qt(2),some:qt(3),every:qt(4),find:qt(5),findIndex:qt(6)},Ht=nt(\"navigator\",\"userAgent\")||\"\",Qt=r.process,te=Qt&&Qt.versions,ee=te&&te.v8;ee?Yt=(Vt=ee.split(\".\"))[0]+Vt[1]:Ht&&(!(Vt=Ht.match(/Edge\\/(\\d+)/))||Vt[1]>=74)&&(Vt=Ht.match(/Chrome\\/(\\d+)/))&&(Yt=Vt[1]);var ne=Yt&&+Yt,re=Lt(\"species\"),oe=Object.defineProperty,ie={},ue=function(t){throw t},ce=Jt.map,ae=function(t){return ne>=51||!o((function(){var e=[];return(e.constructor={})[re]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}(\"map\"),le=function(t,e){if(b(ie,t))return ie[t];e||(e={});var n=[][t],r=!!b(e,\"ACCESSORS\")&&e.ACCESSORS,u=b(e,0)?e[0]:ue,c=b(e,1)?e[1]:void 0;return ie[t]=!!n&&!o((function(){if(r&&!i)return!0;var t={length:-1};r?oe(t,1,{enumerable:!0,get:ue}):t[1]=1,n.call(t,u,c)}))}(\"map\");Rt({target:\"Array\",proto:!0,forced:!ae||!le},{map:function(t){return ce(this,t,arguments.length>1?arguments[1]:void 0)}});var fe,se=Object.keys||function(t){return pt(t,dt)},pe=i?Object.defineProperties:function(t,e){j(t);for(var n,r=se(e),o=r.length,i=0;o>i;)C.f(t,n=r[i++],e[n]);return t},de=nt(\"document\",\"documentElement\"),he=W(\"IE_PROTO\"),ge=function(){},ve=function(t){return\"<script>\"+t+\"<\\/script>\"},ye=function(){try{fe=document.domain&&new ActiveXObject(\"htmlfile\")}catch(t){}var t,e;ye=fe?function(t){t.write(ve(\"\")),t.close();var e=t.parentWindow.Object;return t=null,e}(fe):((e=E(\"iframe\")).style.display=\"none\",de.appendChild(e),e.src=String(\"javascript:\"),(t=e.contentWindow.document).open(),t.write(ve(\"document.F=Object\")),t.close(),t.F);for(var n=dt.length;n--;)delete ye.prototype[dt[n]];return ye()};X[he]=!0;var me=Object.create||function(t,e){var n;return null!==t?(ge.prototype=j(t),n=new ge,ge.prototype=null,n[he]=t):n=ye(),void 0===e?n:pe(n,e)},be=Lt(\"unscopables\"),xe=Array.prototype;null==xe[be]&&C.f(xe,be,{configurable:!0,value:me(null)});var Se;Se=\"flat\",xe[be][Se]=!0;var Ee=function(){var t=j(this),e=\"\";return t.global&&(e+=\"g\"),t.ignoreCase&&(e+=\"i\"),t.multiline&&(e+=\"m\"),t.dotAll&&(e+=\"s\"),t.unicode&&(e+=\"u\"),t.sticky&&(e+=\"y\"),e};function we(t,e){return RegExp(t,e)}var Oe,_e,je={UNSUPPORTED_Y:o((function(){var t=we(\"a\",\"y\");return t.lastIndex=2,null!=t.exec(\"abcd\")})),BROKEN_CARET:o((function(){var t=we(\"^r\",\"gy\");return t.lastIndex=2,null!=t.exec(\"str\")}))},Re=RegExp.prototype.exec,Ce=String.prototype.replace,Ae=Re,Te=(Oe=/a/,_e=/b*/g,Re.call(Oe,\"a\"),Re.call(_e,\"a\"),0!==Oe.lastIndex||0!==_e.lastIndex),Ie=je.UNSUPPORTED_Y||je.BROKEN_CARET,Pe=void 0!==/()??/.exec(\"\")[1];(Te||Pe||Ie)&&(Ae=function(t){var e,n,r,o,i=this,u=Ie&&i.sticky,c=Ee.call(i),a=i.source,l=0,f=t;return u&&(-1===(c=c.replace(\"y\",\"\")).indexOf(\"g\")&&(c+=\"g\"),f=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&\"\\n\"!==t[i.lastIndex-1])&&(a=\"(?: \"+a+\")\",f=\" \"+f,l++),n=new RegExp(\"^(?:\"+a+\")\",c)),Pe&&(n=new RegExp(\"^\"+a+\"$(?!\\\\s)\",c)),Te&&(e=i.lastIndex),r=Re.call(u?n:i,f),u?r?(r.input=r.input.slice(l),r[0]=r[0].slice(l),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:Te&&r&&(i.lastIndex=i.global?r.index+r[0].length:e),Pe&&r&&r.length>1&&Ce.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r});var ke=Ae;Rt({target:\"RegExp\",proto:!0,forced:/./.exec!==ke},{exec:ke});var Ne=Lt(\"species\"),$e=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:\"7\"},t},\"7\"!==\"\".replace(t,\"$<a>\")})),Ue=\"$0\"===\"a\".replace(/./,\"$0\"),Fe=Lt(\"replace\"),Me=!!/./[Fe]&&\"\"===/./[Fe](\"a\",\"$0\"),Le=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n=\"ab\".split(t);return 2!==n.length||\"a\"!==n[0]||\"b\"!==n[1]})),Be=function(t,e,n,r){var i=Lt(t),u=!o((function(){var e={};return e[i]=function(){return 7},7!=\"\"[t](e)})),c=u&&!o((function(){var e=!1,n=/a/;return\"split\"===t&&((n={}).constructor={},n.constructor[Ne]=function(){return n},n.flags=\"\",n[i]=/./[i]),n.exec=function(){return e=!0,null},n[i](\"\"),!e}));if(!u||!c||\"replace\"===t&&(!$e||!Ue||Me)||\"split\"===t&&!Le){var a=/./[i],l=n(i,\"\"[t],(function(t,e,n,r,o){return e.exec===ke?u&&!o?{done:!0,value:a.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:Ue,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Me}),f=l[0],s=l[1];Q(String.prototype,t,f),Q(RegExp.prototype,i,2==e?function(t,e){return s.call(t,this,e)}:function(t){return s.call(t,this)})}r&&A(RegExp.prototype[i],\"sham\",!0)},De=function(t){return function(e,n){var r,o,i=String(h(e)),u=it(n),c=i.length;return u<0||u>=c?t?\"\":void 0:(r=i.charCodeAt(u))<55296||r>56319||u+1===c||(o=i.charCodeAt(u+1))<56320||o>57343?t?i.charAt(u):r:t?i.slice(u,u+2):o-56320+(r-55296<<10)+65536}},ze={codeAt:De(!1),charAt:De(!0)}.charAt,Ke=function(t,e,n){return e+(n?ze(t,e).length:1)},We=function(t,e){var n=t.exec;if(\"function\"==typeof n){var r=n.call(t,e);if(\"object\"!=typeof r)throw TypeError(\"RegExp exec method returned something other than an Object or null\");return r}if(\"RegExp\"!==s(t))throw TypeError(\"RegExp#exec called on incompatible receiver\");return ke.call(t,e)};Be(\"match\",1,(function(t,e,n){return[function(e){var n=h(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var o=j(t),i=String(this);if(!o.global)return We(o,i);var u=o.unicode;o.lastIndex=0;for(var c,a=[],l=0;null!==(c=We(o,i));){var f=String(c[0]);a[l]=f,\"\"===f&&(o.lastIndex=Ke(i,ct(o.lastIndex),u)),l++}return 0===l?null:a}]}));var Xe=Lt(\"match\"),Ge=Lt(\"species\"),Ve=[].push,Ye=Math.min,Ze=!o((function(){return!RegExp(4294967295,\"y\")}));Be(\"split\",2,(function(t,e,n){var r;return r=\"c\"==\"abbc\".split(/(b)*/)[1]||4!=\"test\".split(/(?:)/,-1).length||2!=\"ab\".split(/(?:ab)*/).length||4!=\".\".split(/(.?)(.?)/).length||\".\".split(/()()/).length>1||\"\".split(/.?/).length?function(t,n){var r,o,i=String(h(this)),u=void 0===n?4294967295:n>>>0;if(0===u)return[];if(void 0===t)return[i];if(!v(r=t)||!(void 0!==(o=r[Xe])?o:\"RegExp\"==s(r)))return e.call(i,t,u);for(var c,a,l,f=[],p=(t.ignoreCase?\"i\":\"\")+(t.multiline?\"m\":\"\")+(t.unicode?\"u\":\"\")+(t.sticky?\"y\":\"\"),d=0,g=new RegExp(t.source,p+\"g\");(c=ke.call(g,i))&&!((a=g.lastIndex)>d&&(f.push(i.slice(d,c.index)),c.length>1&&c.index<i.length&&Ve.apply(f,c.slice(1)),l=c[0].length,d=a,f.length>=u));)g.lastIndex===c.index&&g.lastIndex++;return d===i.length?!l&&g.test(\"\")||f.push(\"\"):f.push(i.slice(d)),f.length>u?f.slice(0,u):f}:\"0\".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=h(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var i=n(r,t,this,o,r!==e);if(i.done)return i.value;var u=j(t),c=String(this),a=function(t,e){var n,r=j(t).constructor;return void 0===r||null==(n=j(r)[Ge])?e:At(n)}(u,RegExp),l=u.unicode,f=(u.ignoreCase?\"i\":\"\")+(u.multiline?\"m\":\"\")+(u.unicode?\"u\":\"\")+(Ze?\"y\":\"g\"),s=new a(Ze?u:\"^(?:\"+u.source+\")\",f),p=void 0===o?4294967295:o>>>0;if(0===p)return[];if(0===c.length)return null===We(s,c)?[c]:[];for(var d=0,h=0,g=[];h<c.length;){s.lastIndex=Ze?h:0;var v,y=We(s,Ze?c:c.slice(h));if(null===y||(v=Ye(ct(s.lastIndex+(Ze?0:h)),c.length))===d)h=Ke(c,h,l);else{if(g.push(c.slice(d,h)),g.length===p)return g;for(var m=1;m<=y.length-1;m++)if(g.push(y[m]),g.length===p)return g;h=d=v}}return g.push(c.slice(d)),g}]}),!Ze);var qe=\"\\t\\n\\v\\f\\r                 \\u2028\\u2029\\ufeff\",Je=\"[\"+qe+\"]\",He=RegExp(\"^\"+Je+Je+\"*\"),Qe=RegExp(Je+Je+\"*$\"),tn=function(t){return function(e){var n=String(h(e));return 1&t&&(n=n.replace(He,\"\")),2&t&&(n=n.replace(Qe,\"\")),n}},en={start:tn(1),end:tn(2),trim:tn(3)},nn=en.trim;function rn(t){return(rn=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t})(t)}function on(t,e,n,r,o,i,u,c,a,l){\"boolean\"!=typeof u&&(a=c,c=u,u=!1);const f=\"function\"==typeof n?n.options:n;let s;if(t&&t.render&&(f.render=t.render,f.staticRenderFns=t.staticRenderFns,f._compiled=!0,o&&(f.functional=!0)),r&&(f._scopeId=r),i?(s=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,a(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},f._ssrRegister=s):e&&(s=u?function(t){e.call(this,l(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,c(t))}),s)if(f.functional){const t=f.render;f.render=function(e,n){return s.call(n),t(e,n)}}else{const t=f.beforeCreate;f.beforeCreate=t?[].concat(t,s):[s]}return n}Rt({target:\"String\",proto:!0,forced:function(t){return o((function(){return!!qe[t]()||\"​…᠎\"!=\"​…᠎\"[t]()||qe[t].name!==t}))}(\"trim\")},{trim:function(){return nn(this)}});const un=on({render:function(t,e){return(0,e._c)(\"a\",{staticClass:\"external\",attrs:{href:e.props.href.trim(),rel:\"noopener noreferrer\",target:\"_blank\"}},[e._v(e._s(e.props.href.trim()))])},staticRenderFns:[]},undefined,{name:\"Link\",functional:!0,props:{href:{type:String,required:!0}}},undefined,true,undefined,!1,void 0,void 0,void 0);var cn=/(\\s|\\(|^)((https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/gi,an=function(t,e){var n=t.h,r=t.context;return r.props.autolink&&(e=function(t,e){for(var n=cn.exec(t),r=[],o=0;null!==n;){var i=n[2],u=void 0,c=t.substring(o,n.index+n[1].length);\" \"===i[0]&&(c+=i[0],i=i.substring(1).trim());var a=i[i.length-1];(\".\"===a||\",\"===a||\";\"===a||\"(\"===n[0][0]&&\")\"===a)&&(i=i.substring(0,i.length-1),u=a),r.push(c),r.push({component:e,props:{href:i}}),u&&r.push(u),o=n.index+n[0].length,n=cn.exec(t)}return r.push(t.substring(o)),t===r.map((function(t){return\"string\"==typeof t?t:t.props.href})).join(\"\")?r:(console.error(\"Failed to reassemble the chunked text: \"+t),t)}(e,r.props.linkComponent)),Array.isArray(e)?e.map((function(t){if(\"string\"==typeof t)return t;var e=t.component,r=t.props;return n(e,{props:r,class:\"rich-text--component\"})})):e},ln={name:\"RichText\",functional:!0,props:{text:{type:String,default:\"\"},arguments:{type:Object,default:function(){return{}}},linkComponent:{type:Object,default:function(){return un}},autolink:{type:Boolean,default:!1}},render:function(t,e){var n=e.props.text.split(/(\\{[a-z\\-_.0-9]+\\})/gi).map((function(n,r,o){var i=n.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);if(!i)return an({h:t,context:e},n);var u=i[1],c=e.props.arguments[u];if(\"object\"===rn(c)){var a=c.component,l=c.props;return t(a,{props:l,class:\"rich-text--component\"})}return c?t(\"span\",{class:\"rich-text--fallback\"},c):n}));return t(\"div\",{class:\"rich-text--wrapper\"},n.flat())}};const fn=\"undefined\"!=typeof navigator&&/msie [6-9]\\\\b/.test(navigator.userAgent.toLowerCase());function sn(t){return(t,e)=>function(t,e){const n=fn?e.media||\"default\":t,r=dn[n]||(dn[n]={ids:new Set,styles:[]});if(!r.ids.has(t)){r.ids.add(t);let n=e.source;if(e.map&&(n+=\"\\n/*# sourceURL=\"+e.map.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(e.map))))+\" */\"),r.element||(r.element=document.createElement(\"style\"),r.element.type=\"text/css\",e.media&&r.element.setAttribute(\"media\",e.media),void 0===pn&&(pn=document.head||document.getElementsByTagName(\"head\")[0]),pn.appendChild(r.element)),\"styleSheet\"in r.element)r.styles.push(n),r.element.styleSheet.cssText=r.styles.filter(Boolean).join(\"\\n\");else{const t=r.ids.size-1,e=document.createTextNode(n),o=r.element.childNodes;o[t]&&r.element.removeChild(o[t]),o.length?r.element.insertBefore(e,o[t]):r.element.appendChild(e)}}}(t,e)}let pn;const dn={};const hn=on({},(function(t){t&&t(\"data-v-252db2c7_0\",{source:'.rich-text--fallback[data-v-252db2c7],.rich-text-component[data-v-252db2c7]{display:inline}a.external[data-v-252db2c7]:after{content:\" ↗\"}',map:void 0,media:void 0})}),ln,\"data-v-252db2c7\",undefined,undefined,!1,sn,void 0,void 0);export default hn;\n","!function(A,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(\"Components/UserBubble\",[],t):\"object\"==typeof exports?exports[\"Components/UserBubble\"]=t():(A.NextcloudVue=A.NextcloudVue||{},A.NextcloudVue[\"Components/UserBubble\"]=t())}(window,(function(){return function(A){var t={};function e(a){if(t[a])return t[a].exports;var i=t[a]={i:a,l:!1,exports:{}};return A[a].call(i.exports,i,i.exports,e),i.l=!0,i.exports}return e.m=A,e.c=t,e.d=function(A,t,a){e.o(A,t)||Object.defineProperty(A,t,{enumerable:!0,get:a})},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,t){if(1&t&&(A=e(A)),8&t)return A;if(4&t&&\"object\"==typeof A&&A&&A.__esModule)return A;var a=Object.create(null);if(e.r(a),Object.defineProperty(a,\"default\",{enumerable:!0,value:A}),2&t&&\"string\"!=typeof A)for(var i in A)e.d(a,i,function(t){return A[t]}.bind(null,i));return a},e.n=function(A){var t=A&&A.__esModule?function(){return A.default}:function(){return A};return e.d(t,\"a\",t),t},e.o=function(A,t){return Object.prototype.hasOwnProperty.call(A,t)},e.p=\"/dist/\",e(e.s=200)}([function(A,t,e){\"use strict\";function a(A,t,e,a,i,n,o,r){var s,c=\"function\"==typeof A?A.options:A;if(t&&(c.render=t,c.staticRenderFns=e,c._compiled=!0),a&&(c.functional=!0),n&&(c._scopeId=\"data-v-\"+n),o?(s=function(A){(A=A||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(A=__VUE_SSR_CONTEXT__),i&&i.call(this,A),A&&A._registeredComponents&&A._registeredComponents.add(o)},c._ssrRegister=s):i&&(s=r?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),s)if(c.functional){c._injectStyles=s;var l=c.render;c.render=function(A,t){return s.call(t),l(A,t)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,s):[s]}return{exports:A,options:c}}e.d(t,\"a\",(function(){return a}))},function(A,t,e){\"use strict\";A.exports=function(A){var t=[];return t.toString=function(){return this.map((function(t){var e=function(A,t){var e=A[1]||\"\",a=A[3];if(!a)return e;if(t&&\"function\"==typeof btoa){var i=(o=a,r=btoa(unescape(encodeURIComponent(JSON.stringify(o)))),s=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(r),\"/*# \".concat(s,\" */\")),n=a.sources.map((function(A){return\"/*# sourceURL=\".concat(a.sourceRoot||\"\").concat(A,\" */\")}));return[e].concat(n).concat([i]).join(\"\\n\")}var o,r,s;return[e].join(\"\\n\")}(t,A);return t[2]?\"@media \".concat(t[2],\" {\").concat(e,\"}\"):e})).join(\"\")},t.i=function(A,e,a){\"string\"==typeof A&&(A=[[null,A,\"\"]]);var i={};if(a)for(var n=0;n<this.length;n++){var o=this[n][0];null!=o&&(i[o]=!0)}for(var r=0;r<A.length;r++){var s=[].concat(A[r]);a&&i[s[0]]||(e&&(s[2]?s[2]=\"\".concat(e,\" and \").concat(s[2]):s[2]=e),t.push(s))}},t}},function(A,t,e){\"use strict\";function a(A,t){for(var e=[],a={},i=0;i<t.length;i++){var n=t[i],o=n[0],r={id:A+\":\"+i,css:n[1],media:n[2],sourceMap:n[3]};a[o]?a[o].parts.push(r):e.push(a[o]={id:o,parts:[r]})}return e}e.r(t),e.d(t,\"default\",(function(){return g}));var i=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!i)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var n={},o=i&&(document.head||document.getElementsByTagName(\"head\")[0]),r=null,s=0,c=!1,l=function(){},d=null,u=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function g(A,t,e,i){c=e,d=i||{};var o=a(A,t);return p(o),function(t){for(var e=[],i=0;i<o.length;i++){var r=o[i];(s=n[r.id]).refs--,e.push(s)}t?p(o=a(A,t)):o=[];for(i=0;i<e.length;i++){var s;if(0===(s=e[i]).refs){for(var c=0;c<s.parts.length;c++)s.parts[c]();delete n[s.id]}}}}function p(A){for(var t=0;t<A.length;t++){var e=A[t],a=n[e.id];if(a){a.refs++;for(var i=0;i<a.parts.length;i++)a.parts[i](e.parts[i]);for(;i<e.parts.length;i++)a.parts.push(v(e.parts[i]));a.parts.length>e.parts.length&&(a.parts.length=e.parts.length)}else{var o=[];for(i=0;i<e.parts.length;i++)o.push(v(e.parts[i]));n[e.id]={id:e.id,refs:1,parts:o}}}}function M(){var A=document.createElement(\"style\");return A.type=\"text/css\",o.appendChild(A),A}function v(A){var t,e,a=document.querySelector('style[data-vue-ssr-id~=\"'+A.id+'\"]');if(a){if(c)return l;a.parentNode.removeChild(a)}if(u){var i=s++;a=r||(r=M()),t=I.bind(null,a,i,!1),e=I.bind(null,a,i,!0)}else a=M(),t=f.bind(null,a),e=function(){a.parentNode.removeChild(a)};return t(A),function(a){if(a){if(a.css===A.css&&a.media===A.media&&a.sourceMap===A.sourceMap)return;t(A=a)}else e()}}var m,b=(m=[],function(A,t){return m[A]=t,m.filter(Boolean).join(\"\\n\")});function I(A,t,e,a){var i=e?\"\":a.css;if(A.styleSheet)A.styleSheet.cssText=b(t,i);else{var n=document.createTextNode(i),o=A.childNodes;o[t]&&A.removeChild(o[t]),o.length?A.insertBefore(n,o[t]):A.appendChild(n)}}function f(A,t){var e=t.css,a=t.media,i=t.sourceMap;if(a&&A.setAttribute(\"media\",a),d.ssrId&&A.setAttribute(\"data-vue-ssr-id\",t.id),i&&(e+=\"\\n/*# sourceURL=\"+i.sources[0]+\" */\",e+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+\" */\"),A.styleSheet)A.styleSheet.cssText=e;else{for(;A.firstChild;)A.removeChild(A.firstChild);A.appendChild(document.createTextNode(e))}}},function(A,t){A.exports=require(\"core-js/modules/es.object.to-string\")},function(A,t){A.exports=require(\"v-tooltip\")},function(A,t){A.exports=require(\"vue\")},,function(A,t){A.exports=require(\"core-js/modules/es.function.name\")},function(A,t){A.exports=require(\"core-js/modules/es.array.iterator\")},function(A,t){A.exports=require(\"core-js/modules/es.string.iterator\")},function(A,t){A.exports=require(\"core-js/modules/web.dom-collections.iterator\")},function(A,t){A.exports=require(\"core-js/modules/es.array.map\")},function(A,t){A.exports=require(\"core-js/modules/es.regexp.to-string\")},function(A,t,e){\"use strict\";A.exports=function(A,t){return t||(t={}),\"string\"!=typeof(A=A&&A.__esModule?A.default:A)?A:(/^['\"].*['\"]$/.test(A)&&(A=A.slice(1,-1)),t.hash&&(A+=t.hash),/[\"'() \\t\\n]/.test(A)||t.needQuotes?'\"'.concat(A.replace(/\"/g,'\\\\\"').replace(/\\n/g,\"\\\\n\"),'\"'):A)}},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:application/vnd.ms-fontobject;base64,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\"},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:font/woff;base64,d09GRgABAAAAAA8sAAoAAAAADuQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgdOOP0WNtYXAAAAFUAAABQgAAAUIADeu4Z2x5ZgAAApgAAAf8AAAH/MdHOUxoZWFkAAAKlAAAADYAAAA2KULQemhoZWEAAArMAAAAJAAAACQm/ROFaG10eAAACvAAAAA0AAAANGe+//9sb2NhAAALJAAAACgAAAAoDbwPZm1heHAAAAtMAAAAIAAAACABIABXbmFtZQAAC2wAAAKmAAACpt995rZwb3N0AAAOFAAAARYAAAEWP1S+1wAEEsoBkAAFAAAMZQ2sAAACvAxlDawAAAlgAPUFCgAAAgAFAwAAAAAAAAAAAAAQAAAAAAAAAAAAAABQZkVkAEDqAeoSE4gAAAHCE4gAAAAAAAEAAAAAAAAAAAAAACAAAAAAAAMAAAADAAAAHAABAAAAAAA8AAMAAQAAABwABAAgAAAABAAEAAEAAOoS//8AAOoB//8WAAABAAAAAAAAAQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAA6mD0MABQALAAAJAhEJBBEJAQ6m+oIFfvu6BEb6gvqCBX77ugRGD0L6gvqCATgERgRGATj6gvqCATgERgRGAAEAAAAADW4SUAAFAAAJAREJAREGGwdT93QIjAnE+K3+yAiLCIz+xwACAAAAAA/fD0MABQALAAAJAhEJBBEJAQTiBX76ggRG+7oFfgV/+oEERvu6BEYFfgV+/sj7uvu6/sgFfgV+/sj7uvu6AAEAAAAADqYSUAAFAAAJAREJARENbvitCIv3dQnEB1MBOfd093UBOAABAAAAAAY3E4gABQAAEwcJARcBlJQFcvqOlAWjE4hV9pH2kVUJxAAAAQAAAAARhw+DAAUAAAkFD8338/v7/kYFvwnHD4P38wQF/kf6QQnGAAEAAAAAERcRFwALAAAJCxEX/e36wPrA/e0FQPrAAhMFQAVAAhP6wASE/e0FQPrAAhMFQAVAAhP6wAVA/e36wAAB//8AABOTEuwAMwAAASIHDgEXFhcBISYHBgcGBwYUFxYXFhcWNyEBBgcGFxYXHgEXFhcWNzY3ATY3NicmJwEuAQpgZU9KRhASSAXX8eBNPjopJxQUFBQnKTo+TQ4g+ik3GhgDAxsZVjU3Oz46PzUH7TsVFRQVPPgTLHQS7Dk0rFlgR/oqARsYLiw5OHg4OSwuGBsC+ik1Pzs+Ojc2VhkaAwMYGTgH7DxRUE9SPAfsLTIAAAACAAAAAA6mElAAGABGAAABIgcOAQcGFBceARcWMjc+ATc2NCcuAScmASIHBgcGFBcWFxYzIREhIgcGBwYUFxYXFjchMjc2NzY0JyYnJiMhETQnJicmIwl2b2ZimCkrKymYYmbeZmKXKisrKpdiZvw2VkhHKSsrKUdIVgJx/Y9WSEcpKyspR0hWB1NVSEcpKyspR0hV/Y8rKUdJVRJQKyqXY2XfZWKYKSsrKZhiZd9lY5cqK/nlKylHSKtIRykr+eYrKUdJqklHKSsBKilHSapJRykrB1NVSEcpKwAAAwAAAAARFxEXAAMABwALAAABESERAREhEQERIRECcQ6m8VoOpvFaDqYRF/2PAnH55v2PAnH55f2PAnEAAwAAAAASngvnABgAMQBKAAABMhceARcWFAcOAQcGIicuAScmNDc+ATc2ITIXHgEXFhQHDgEHBiInLgEnJjQ3PgE3NiEyFx4BFxYUBw4BBwYiJy4BJyY0Nz4BNzYDDXBlYpgpKyspmGJl32ZilyorKyqXYmYHJm9mYpcqKysql2Jm3mZilyorKyqXYmYHJm9mYpcqKysql2Jm32VimCkrKymYYmUL5ysql2Jm3mZilyorKyqXYmbeZmKXKisrKpdiZt5mYpcqKysql2Jm3mZilyorKyqXYmbeZmKXKisrKpdiZt5mYpcqKwAAAAACAAAAAA/fD98AAwAHAAABESERIREhEQOqBOICcQTiD9/zyww188sMNQAAAAEAAAAAERcRFwACAAAJAgJxDqbxWhEX+K34rQABAAAAAA6mDDUAAgAACQIE4gTiBOIMNfseBOAAAf/gAAATaRNpADEAAAEEBQQFBAMCAwIREBMSExIFBAUEISAlJCUkExITEhMGAAUEISAlJCcmJyYDAhEQExIACGz+mP6x/rr+7f7uxsprboB76eUBOQE8AXIBfgGWAXEBYQFWAS4BKuvsmZw4vP4p/vn+8/7q/r7+zv7Z/fu4u2NnUE4BJxNpLpeT6ef+1/7T/qv+n/6P/mr+gv6O/sT+x+XofIBraMXCAQ0BDgFDAUsBacz+2k5QZ2O7uPv9AScBMgFCASUBEwENAcsAAgAAAAATiBOIACQAQAAAASAFBAUEAwIDAhATEhMSBQQFBCAlJCUkExITEhADAgMCJSQlJAEhMhceARcWFAcOAQcGIyEiJy4BJyY0Nz4BNzYJxP5q/oL+jv7E/sfl6HyAgHzo5QE5ATwBcgF+AywBfgFyATwBOeXofICAfOjl/sf+xP6O/oL6wQdTW1dUhCQmJiSEVFdb+K1cV1SEJCYmJIRUVxOIgHzo5f7H/sT+jv6C/NT+gv6O/sT+x+XofICAfOjlATkBPAFyAX4DLAF+AXIBPAE55eh8gPgRJiWEU1e4V1OEJSYmJYRTV7hXU4QlJgAAAAIAAAAAE4gTiAAkAD0AAAEgBQQFBAMCAwIQExITEgUEBQQgJSQlJBMSExIQAwIDAiUkJSQBIAUEABMSEAMCAAUEICUkAAMCEBMSACUkCcT+av6C/o7+xP7H5eh8gIB86OUBOQE8AXIBfgMsAX4BcgE8ATnl6HyAgHzo5f7H/sT+jv6C/moBNwEXAQ8Bm3B0dHD+Zf7x/un9kv7p/vH+ZXB0dHABmwEPARcTiIB86OX+x/7E/o7+gvzU/oL+jv7E/sfl6HyAgHzo5QE5ATwBcgF+AywBfgFyATwBOeXofID8GHRw/mX+8f7p/ZL+6f7x/mVwdHRwAZsBDwEXAm4BFwEPAZtwdAAAAAIAAAAAE4gTiAADACgAAAEhESEBIAUEBQQDAgMCEBMSExIFBAUEICUkJSQTEhMSEAMCAwIlJCUkBdwH0PgwA+j+av6C/o7+xP7H5eh8gIB86OUBOQE8AXIBfgMsAX4BcgE8ATnl6HyAgHzo5f7H/sT+jv6CBdwH0AXcgHzo5f7H/sT+jv6C/NT+gv6O/sT+x+XofICAfOjlATkBPAFyAX4DLAF+AXIBPAE55eh8gAAAAQAAAAEAAGHLsHFfDzz1AAsTiAAAAADbgSQ2AAAAANswSDf/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtYjc0ZmY1MVJlZ3VsYXJpY29uZm9udC12dWUtYjc0ZmY1MWljb25mb250LXZ1ZS1iNzRmZjUxVmVyc2lvbiAxLjBpY29uZm9udC12dWUtYjc0ZmY1MUdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtAGIANwA0AGYAZgA1ADEAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:font/ttf;base64,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AAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtYjc0ZmY1MVJlZ3VsYXJpY29uZm9udC12dWUtYjc0ZmY1MWljb25mb250LXZ1ZS1iNzRmZjUxVmVyc2lvbiAxLjBpY29uZm9udC12dWUtYjc0ZmY1MUdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtAGIANwA0AGYAZgA1ADEAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlLWI3NGZmNTEiIGhvcml6LWFkdi14PSI1MDAwIj48Zm9udC1mYWNlIGZvbnQtZmFtaWx5PSJpY29uZm9udC12dWUtYjc0ZmY1MSIgZm9udC13ZWlnaHQ9IjQwMCIgZm9udC1zdHJldGNoPSJub3JtYWwiIHVuaXRzLXBlci1lbT0iNTAwMCIgcGFub3NlLTE9IjIgMCA1IDMgMCAwIDAgMCAwIDAiIGFzY2VudD0iNTAwMCIgZGVzY2VudD0iMCIgeC1oZWlnaHQ9IjAiIGJib3g9Ii0zMiAwIDUwMTEgNTAwMCIgdW5kZXJsaW5lLXRoaWNrbmVzcz0iMCIgdW5kZXJsaW5lLXBvc2l0aW9uPSI1MCIgdW5pY29kZS1yYW5nZT0iVStlYTAxLWVhMTIiIC8+PG1pc3NpbmctZ2x5cGggaG9yaXotYWR2LXg9IjAiICAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1sZWZ0LWRvdWJsZSIgdW5pY29kZT0iJiN4ZWEwMTsiIGQ9Ik0zNzUwIDM5MDYgbC0xNDA2IC0xNDA2IGwxNDA2IC0xNDA2IGwwIDMxMiBsLTEwOTQgMTA5NCBsMTA5NCAxMDk0IGwwIDMxMiBaTTIzNDQgMzkwNiBsLTE0MDYgLTE0MDYgbDE0MDYgLTE0MDYgbDAgMzEyIGwtMTA5NCAxMDk0IGwxMDk0IDEwOTQgbDAgMzEyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LWxlZnQiIHVuaWNvZGU9IiYjeGVhMDI7IiBkPSJNMTU2MyAyNTAwIGwxODc1IC0xODc1IGwwIC0zMTIgbC0yMTg4IDIxODcgbDIxODggMjE4OCBsMCAtMzEzIGwtMTg3NSAtMTg3NSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1yaWdodC1kb3VibGUiIHVuaWNvZGU9IiYjeGVhMDM7IiBkPSJNMTI1MCAxMDk0IGwxNDA2IDE0MDYgbC0xNDA2IDE0MDYgbDAgLTMxMiBsMTA5NCAtMTA5NCBsLTEwOTQgLTEwOTQgbDAgLTMxMiBaTTI2NTYgMTA5NCBsMTQwNyAxNDA2IGwtMTQwNyAxNDA2IGwwIC0zMTIgbDEwOTQgLTEwOTQgbC0xMDk0IC0xMDk0IGwwIC0zMTIgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctcmlnaHQiIHVuaWNvZGU9IiYjeGVhMDQ7IiBkPSJNMzQzOCAyNTAwIGwtMTg3NSAxODc1IGwwIDMxMyBsMjE4NyAtMjE4OCBsLTIxODcgLTIxODcgbDAgMzEyIGwxODc1IDE4NzUgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYnJlYWRjcnVtYiIgdW5pY29kZT0iJiN4ZWEwNTsiIGQ9Ik0xNDggNTAwMCBsLTE0OCAtODUgbDEzOTQgLTI0MTUgbC0xMzk0IC0yNDE1IGwxNDggLTg1IGwxNDQzIDI1MDAgbC0xNDQzIDI1MDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY2hlY2ttYXJrIiB1bmljb2RlPSImI3hlYTA2OyIgZD0iTTQwNDUgMzk3MSBsLTIwNjEgLTIwNjEgbC0xMDI5IDEwMjkgbC00NDIgLTQ0MSBsMTQ3MSAtMTQ3MSBsMjUwMyAyNTAyIGwtNDQyIDQ0MiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJjbG9zZSIgdW5pY29kZT0iJiN4ZWEwNzsiIGQ9Ik00Mzc1IDExNTYgbC01MzEgLTUzMSBsLTEzNDQgMTM0NCBsLTEzNDQgLTEzNDQgbC01MzEgNTMxIGwxMzQ0IDEzNDQgbC0xMzQ0IDEzNDQgbDUzMSA1MzEgbDEzNDQgLTEzNDQgbDEzNDQgMTM0NCBsNTMxIC01MzEgbC0xMzQ0IC0xMzQ0IGwxMzQ0IC0xMzQ0IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNvbmZpcm0iIHVuaWNvZGU9IiYjeGVhMDg7IiBkPSJNMjY1NiA0ODQ0IHEtMTAxIDAgLTE4MCAtNTcgcS03NCAtNTIgLTEwOSAtMTM4IHEtMzUgLTg2IC0xOSAtMTc1IHExOCAtOTYgOTAgLTE2NyBsMTQ5NSAtMTQ5NCBsLTM2MTYgMCBxLTc3IDEgLTEzOSAtMjYgcS01OCAtMjQgLTk5IC03MCBxLTM5IC00NCAtNTkgLTEwMSBxLTIwIC01NiAtMjAgLTExNiBxMCAtNjAgMjAgLTExNiBxMjAgLTU3IDU5IC0xMDEgcTQxIC00NiA5OSAtNzAgcTYyIC0yNyAxMzkgLTI1IGwzNjE2IDAgbC0xNDk1IC0xNDk1IHEtNTUgLTUzIC04MSAtMTE2IHEtMjQgLTU5IC0yMSAtMTIxIHEzIC01OCAzMCAtMTEzIHEyNSAtNTQgNjggLTk3IHE0MyAtNDMgOTYgLTY4IHE1NSAtMjYgMTE0IC0yOSBxNjIgLTMgMTIwIDIxIHE2MyAyNSAxMTYgODEgbDIwMjkgMjAyOCBxNTkgNjAgODAgMTQxIHEyMSA4MCAxIDE1OSBxLTIxIDgyIC04MSAxNDIgbC0yMDI5IDIwMjggcS00NCA0NSAtMTAyIDcwIHEtNTggMjUgLTEyMiAyNSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJpbmZvIiB1bmljb2RlPSImI3hlYTA5OyIgZD0iTTI0MjIgNDY4OCBxLTExMSAwIC0yMTMgLTQzIHEtOTggLTQyIC0xNzQgLTExNy41IHEtNzYgLTc1LjUgLTExNyAtMTc0LjUgcS00MyAtMTAxIC00MyAtMjEyLjUgcTAgLTExMS41IDQzIC0yMTIuNSBxNDEgLTk4IDExNyAtMTc0IHE3NiAtNzYgMTc0IC0xMTcgcTEwMiAtNDMgMjEzIC00MyBxMTExIDAgMjEzIDQzIHE5OCA0MSAxNzMuNSAxMTcgcTc1LjUgNzYgMTE3LjUgMTc0IHE0MyAxMDEgNDMgMjEyLjUgcTAgMTExLjUgLTQzIDIxMi41IHEtNDIgOTkgLTExNy41IDE3NC41IHEtNzUuNSA3NS41IC0xNzMuNSAxMTcuNSBxLTEwMiA0MyAtMjEzIDQzIFpNMTU2MyAzMTI1IHEtODYgMCAtMTU4IC00MyBxLTcxIC00MSAtMTEyIC0xMTIgcS00MyAtNzIgLTQzIC0xNTcuNSBxMCAtODUuNSA0MyAtMTU3LjUgcTQxIC03MSAxMTIgLTExMiBxNzIgLTQzIDE1OCAtNDMgbDYyNSAwIGwwIC0xNTYyIGwtNjI1IDAgcS04NiAwIC0xNTggLTQzIHEtNzEgLTQxIC0xMTIgLTExMiBxLTQzIC03MyAtNDMgLTE1OCBxMCAtODUgNDMgLTE1OCBxNDEgLTcxIDExMiAtMTEyIHE3MiAtNDMgMTU4IC00MiBsMTg3NSAwIHE4NSAwIDE1NyA0MiBxNzEgNDEgMTEyIDExMiBxNDMgNzMgNDMgMTU4IHEwIDg1IC00MyAxNTggcS00MSA3MSAtMTEyIDExMiBxLTcyIDQzIC0xNTcgNDMgbC02MjUgMCBsMCAxODc1IHEwIDg1IC00MyAxNTcgcS00MSA3MSAtMTEyIDExMiBxLTczIDQzIC0xNTggNDMgbC05MzcgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtZW51IiB1bmljb2RlPSImI3hlYTBhOyIgZD0iTTYyNSA0Mzc1IGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMjgxMyBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFpNNjI1IDEyNTAgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtb3JlIiB1bmljb2RlPSImI3hlYTBiOyIgZD0iTTc4MSAzMDQ3IHExMTIgMCAyMTMgLTQzIHE5OCAtNDIgMTc0IC0xMTcuNSBxNzYgLTc1LjUgMTE3IC0xNzMuNSBxNDMgLTEwMiA0MyAtMjEzIHEwIC0xMTEgLTQzIC0yMTMgcS00MSAtOTggLTExNyAtMTczLjUgcS03NiAtNzUuNSAtMTc0IC0xMTcuNSBxLTEwMSAtNDMgLTIxMi41IC00MyBxLTExMS41IDAgLTIxMy41IDQzIHEtOTggNDIgLTE3My41IDExNy41IHEtNzUuNSA3NS41IC0xMTcuNSAxNzMuNSBxLTQzIDEwMiAtNDMgMjEzIHEwIDExMSA0MyAyMTMgcTQyIDk4IDExNy41IDE3My41IHE3NS41IDc1LjUgMTczLjUgMTE3LjUgcTEwMiA0MyAyMTMgNDMgWk0yNTAwIDMwNDcgcTExMSAwIDIxMyAtNDMgcTk4IC00MiAxNzMuNSAtMTE3LjUgcTc1LjUgLTc1LjUgMTE3LjUgLTE3My41IHE0MyAtMTAyIDQzIC0yMTMgcTAgLTExMSAtNDMgLTIxMyBxLTQyIC05OCAtMTE3LjUgLTE3My41IHEtNzUuNSAtNzUuNSAtMTczLjUgLTExNy41IHEtMTAyIC00MyAtMjEzIC00MyBxLTExMSAwIC0yMTMgNDMgcS05OCA0MiAtMTczLjUgMTE3LjUgcS03NS41IDc1LjUgLTExNy41IDE3My41IHEtNDMgMTAyIC00MyAyMTMgcTAgMTExIDQzIDIxMyBxNDIgOTggMTE3LjUgMTczLjUgcTc1LjUgNzUuNSAxNzMuNSAxMTcuNSBxMTAyIDQzIDIxMyA0MyBaTTQyMTkgMzA0NyBxMTExIDAgMjEzIC00MyBxOTggLTQyIDE3My41IC0xMTcuNSBxNzUuNSAtNzUuNSAxMTcuNSAtMTczLjUgcTQzIC0xMDIgNDMgLTIxMyBxMCAtMTExIC00MyAtMjEzIHEtNDIgLTk4IC0xMTcuNSAtMTczLjUgcS03NS41IC03NS41IC0xNzMuNSAtMTE3LjUgcS0xMDIgLTQzIC0yMTMuNSAtNDMgcS0xMTEuNSAwIC0yMTIuNSA0MyBxLTk4IDQyIC0xNzQgMTE3LjUgcS03NiA3NS41IC0xMTcgMTczLjUgcS00MyAxMDIgLTQzIDIxMyBxMCAxMTEgNDMgMjEzIHE0MSA5OCAxMTcgMTczLjUgcTc2IDc1LjUgMTc0IDExNy41IHExMDEgNDMgMjEzIDQzIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InBhdXNlIiB1bmljb2RlPSImI3hlYTBjOyIgZD0iTTkzOCA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaTTI4MTMgNDA2MyBsMCAtMzEyNSBsMTI1MCAwIGwwIDMxMjUgbC0xMjUwIDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGxheSIgdW5pY29kZT0iJiN4ZWEwZDsiIGQ9Ik02MjUgNDM3NSBsMzc1MCAtMTg3NSBsLTM3NTAgLTE4NzUgbDAgMzc1MCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJ0cmlhbmdsZS1zIiB1bmljb2RlPSImI3hlYTBlOyIgZD0iTTEyNTAgMzEyNSBsMTI1MCAtMTI1MCBsMTI1MCAxMjQ4IGwtMjUwMCAyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWF3YXkiIHVuaWNvZGU9IiYjeGVhMGY7IiBkPSJNMjE1NiA0OTY5IHEtMzYwIC00NiAtNjk1IC0xOTcgcS0zMjYgLTE0NyAtNjAxIC0zODAgcS0yNzQgLTIzMSAtNDcyIC01MjggcS0yMDIgLTMwMSAtMzA5IC02NDIgcS0xMTAgLTM1MyAtMTEwIC03MjIgcTAgLTQwNiAxMjggLTc4OCBxMTIzIC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTM2OSAwIDcyMiAxMDcgcTM0MiAxMDQgNjQ0IDMwMSBxMjk4IDE5NCA1MzMgNDYzIHEyMzYgMjcwIDM4OSA1OTMgcTE1NiAzMzEgMjEyIDY5MiBxLTE4OCAtMjA0IC00MjMuNSAtMzUxIHEtMjM1LjUgLTE0NyAtNDk4LjUgLTIyNSBxLTI2OSAtODAgLTU0NyAtODAgcS0zMjIgMCAtNjI4IDEwMyBxLTI5NSA5OSAtNTQ4IDI4NiBxLTI1MSAxODQgLTQzNSA0MzUgcS0xODcgMjUzIC0yODYgNTQ4IHEtMTAzIDMwNiAtMTAzIDYyOCBxMCAyOTMgODAgNTY4IHE3OCAyNjkgMjI1LjUgNDk4LjUgcTE0Ny41IDIyOS41IDM1MC41IDQwMi41IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWRuZCIgdW5pY29kZT0iJiN4ZWExMDsiIGQ9Ik0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFpNMTU2MyAyOTY5IGwxODc1IDAgcTkxIDAgMTc4IC0zOCBxODQgLTM3IDE1MCAtMTAzIHE2NiAtNjYgMTAyIC0xNDkgcTM4IC04NyAzOCAtMTc5IHEwIC05MiAtMzggLTE3OSBxLTM2IC04MyAtMTAyIC0xNDkgcS02NiAtNjYgLTE1MCAtMTAzIHEtODcgLTM4IC0xNzggLTM4IGwtMTg3NSAwIHEtOTIgMCAtMTc5IDM4IHEtODQgMzcgLTE1MCAxMDMgcS02NiA2NiAtMTAyIDE0OSBxLTM4IDg3IC0zOCAxNzkgcTAgOTIgMzggMTc5IHEzNiA4MyAxMDIgMTQ5IHE2NiA2NiAxNTAgMTAzIHE4NyAzOCAxNzkgMzggWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtaW52aXNpYmxlIiB1bmljb2RlPSImI3hlYTExOyIgZD0iTTI1MDAgNTAwMCBxLTQwNiAwIC03ODggLTEyOCBxLTM3MCAtMTI0IC02ODYgLTM1NiBxLTMxMyAtMjI5IC01NDIgLTU0MiBxLTIzMiAtMzE2IC0zNTYgLTY4NiBxLTEyOCAtMzgyIC0xMjggLTc4OCBxMCAtNDA2IDEyOCAtNzg4IHExMjQgLTM3MCAzNTYgLTY4NiBxMjI5IC0zMTMgNTQyIC01NDIgcTMxNiAtMjMyIDY4NiAtMzU2IHEzODIgLTEyOCA3ODggLTEyOCBxNDA2IDAgNzg4IDEyOCBxMzcwIDEyNCA2ODYgMzU2IHEzMTMgMjI5IDU0MiA1NDIgcTIzMiAzMTYgMzU2IDY4NiBxMTI4IDM4MiAxMjggNzg4IHEwIDQwNiAtMTI4IDc4OCBxLTEyNCAzNzAgLTM1NiA2ODYgcS0yMjkgMzEzIC01NDIgNTQyIHEtMzE2IDIzMiAtNjg2IDM1NiBxLTM4MiAxMjggLTc4OCAxMjggWk0yNTAwIDQwMDAgcTMxMSAwIDU5MCAtMTE2IHEyNzEgLTExMiA0NzYuNSAtMzE3LjUgcTIwNS41IC0yMDUuNSAzMTcuNSAtNDc2LjUgcTExNiAtMjc5IDExNiAtNTkwIHEwIC0zMTEgLTExNiAtNTkwIHEtMTEyIC0yNzEgLTMxNy41IC00NzYuNSBxLTIwNS41IC0yMDUuNSAtNDc2LjUgLTMxNy41IHEtMjc5IC0xMTYgLTU5MCAtMTE2IHEtMzExIDAgLTU5MCAxMTYgcS0yNzEgMTEyIC00NzYuNSAzMTcuNSBxLTIwNS41IDIwNS41IC0zMTcuNSA0NzYuNSBxLTExNiAyNzkgLTExNiA1OTAgcTAgMzExIDExNiA1OTAgcTExMiAyNzEgMzE3LjUgNDc2LjUgcTIwNS41IDIwNS41IDQ3Ni41IDMxNy41IHEyNzkgMTE2IDU5MCAxMTYgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtb25saW5lIiB1bmljb2RlPSImI3hlYTEyOyIgZD0iTTE1MDAgMTUwMCBsMjAwMCAwIGwwIDIwMDAgbC0yMDAwIDAgbDAgLTIwMDAgWk0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFoiIC8+PC9mb250PjwvZGVmcz48L3N2Zz4=\"},function(A,t,e){var a=e(67);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"7a7fb996\",a,!0,{})},function(A,t,e){\"use strict\";e.r(t);var a=e(4);e(55);\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.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 */\na.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"b74ff51\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),a.VTooltip.options.defaultHtml=!1,t.default=a.VTooltip},function(A,t){A.exports=require(\"core-js/modules/es.array.index-of\")},function(A,t){A.exports=require(\"core-js/modules/es.regexp.exec\")},,function(A,t){A.exports=require(\"@nextcloud/router\")},function(A,t){},function(A,t){A.exports=require(\"core-js/modules/es.symbol\")},function(A,t){A.exports=require(\"core-js/modules/es.array.concat\")},,,function(A,t){A.exports=require(\"core-js/modules/es.number.constructor\")},function(A,t){A.exports=require(\"core-js/modules/es.string.trim\")},function(A,t){A.exports=require(\"core-js/modules/web.url\")},function(A,t){A.exports=require(\"@nextcloud/axios\")},function(A,t){A.exports=require(\"@nextcloud/auth\")},function(A,t,e){\"use strict\";e.r(t);var a={name:\"Popover\",components:{VPopover:e(4).VPopover}},i=(e(66),e(0)),n=e(24),o=e.n(n),r=Object(i.a)(a,(function(){var A=this.$createElement,t=this._self._c||A;return t(\"VPopover\",this._g(this._b({attrs:{\"popover-base-class\":\"popover\",\"popover-wrapper-class\":\"popover__wrapper\",\"popover-arrow-class\":\"popover__arrow\",\"popover-inner-class\":\"popover__inner\"}},\"VPopover\",this.$attrs,!1),this.$listeners),[this._t(\"trigger\"),this._v(\" \"),t(\"template\",{slot:\"popover\"},[this._t(\"default\")],2)],2)}),[],!1,null,null,null);\"function\"==typeof o.a&&o()(r);var s=r.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\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 */t.default=s},,,function(A,t){A.exports=require(\"core-js/modules/es.string.replace\")},function(A,t){A.exports=require(\"core-js/modules/es.symbol.description\")},function(A,t){A.exports=require(\"core-js/modules/es.array.slice\")},,function(A,t,e){var a=e(96);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"2c4a49e8\",a,!0,{})},function(A,t,e){var a=e(98);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"482a1b4c\",a,!0,{})},function(A,t,e){var a=e(100);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"93093140\",a,!0,{})},,function(A,t){A.exports=require(\"core-js/modules/es.symbol.iterator\")},function(A,t,e){\"use strict\";e.r(t);var a=e(5),i=new(e.n(a).a)({data:function(){return{isMobile:!1}},watch:{isMobile:function(A){this.$emit(\"changed\",A)}},created:function(){window.addEventListener(\"resize\",this.handleWindowResize),this.handleWindowResize()},beforeDestroy:function(){window.removeEventListener(\"resize\",this.handleWindowResize)},methods:{handleWindowResize:function(){this.isMobile=document.documentElement.clientWidth<1024}}});t.default={data:function(){return{isMobile:!1}},mounted:function(){i.$on(\"changed\",this.onIsMobileChanged),this.isMobile=i.isMobile},beforeDestroy:function(){i.$off(\"changed\",this.onIsMobileChanged)},methods:{onIsMobileChanged:function(A){this.isMobile=A}}}},function(A,t){A.exports=require(\"v-click-outside\")},function(A,t,e){\"use strict\";e.d(t,\"a\",(function(){return a.default})),e.d(t,\"b\",(function(){return i.default})),e.d(t,\"c\",(function(){return n.default})),e.d(t,\"d\",(function(){return u}));var a=e(62),i=e(63),n=e(46),o=(e(3),e(59),e(60),e(32)),r=e.n(o),s=e(23),c=e(72),l=e(33);function d(A,t,e,a,i,n,o){try{var r=A[n](o),s=r.value}catch(A){return void e(A)}r.done?t(s):Promise.resolve(s).then(a,i)}\n/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\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 */var u={data:function(){return{hasStatus:!1,userStatus:{status:null,message:null,icon:null}}},methods:{fetchUserStatus:function(A){var t,e=this;return(t=regeneratorRuntime.mark((function t(){var a,i,n,o,d,u,g,p,M;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=Object(c.getCapabilities)(),Object.prototype.hasOwnProperty.call(a,\"user_status\")&&a.user_status.enabled){t.next=3;break}return t.abrupt(\"return\");case 3:if(Object(l.getCurrentUser)()){t.next=5;break}return t.abrupt(\"return\");case 5:return t.prev=5,t.next=8,r.a.get(Object(s.generateOcsUrl)(\"apps/user_status/api/v1\",2)+\"statuses/\".concat(encodeURIComponent(A)));case 8:i=t.sent,n=i.data,o=n.ocs.data,d=o.status,u=o.message,g=o.icon,e.userStatus.status=d,e.userStatus.message=u||\"\",e.userStatus.icon=g||\"\",e.hasStatus=!0,t.next=22;break;case 17:if(t.prev=17,t.t0=t.catch(5),404!==t.t0.response.status||0!==(null===(p=t.t0.response.data.ocs)||void 0===p||null===(M=p.data)||void 0===M?void 0:M.length)){t.next=21;break}return t.abrupt(\"return\");case 21:console.error(t.t0);case 22:case\"end\":return t.stop()}}),t,null,[[5,17]])})),function(){var A=this,e=arguments;return new Promise((function(a,i){var n=t.apply(A,e);function o(A){d(n,a,i,o,r,\"next\",A)}function r(A){d(n,a,i,o,r,\"throw\",A)}o(void 0)}))})()}}};\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */},function(A,t,e){var a=e(106);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"2cc33a90\",a,!0,{})},,function(A,t){A.exports=require(\"core-js/modules/es.array.from\")},,function(A,t){},,function(A,t,e){var a=e(56);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"941c791e\",a,!0,{})},function(A,t,e){(t=e(1)(!1)).push([A.i,\".vue-tooltip[data-v-b74ff51]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-b74ff51][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-b74ff51][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-b74ff51][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-b74ff51] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-b74ff51] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";e(26);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */\nfunction a(A,t,e){this.r=A,this.g=t,this.b=e}function i(A,t,e){var i=[];i.push(t);for(var n=function(A,t){var e=new Array(3);return e[0]=(t[1].r-t[0].r)/A,e[1]=(t[1].g-t[0].g)/A,e[2]=(t[1].b-t[0].b)/A,e}(A,[t,e]),o=1;o<A;o++){var r=parseInt(t.r+n[0]*o,10),s=parseInt(t.g+n[1]*o,10),c=parseInt(t.b+n[2]*o,10);i.push(new a(r,s,c))}return i}t.a=function(A){A||(A=6);var t=new a(182,70,157),e=new a(221,203,85),n=new a(0,130,201),o=i(A,t,e),r=i(A,e,n),s=i(A,n,t);return o.concat(r).concat(s)}},,function(A,t){A.exports=require(\"core-js/modules/es.promise\")},function(A,t){A.exports=require(\"regenerator-runtime/runtime\")},function(A,t){},function(A,t,e){\"use strict\";e.r(t);e(25),e(38),e(45),e(51),e(8),e(39),e(7),e(3),e(12),e(9),e(10);function a(A,t){var e;if(\"undefined\"==typeof Symbol||null==A[Symbol.iterator]){if(Array.isArray(A)||(e=function(A,t){if(!A)return;if(\"string\"==typeof A)return i(A,t);var e=Object.prototype.toString.call(A).slice(8,-1);\"Object\"===e&&A.constructor&&(e=A.constructor.name);if(\"Map\"===e||\"Set\"===e)return Array.from(A);if(\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return i(A,t)}(A))||t&&A&&\"number\"==typeof A.length){e&&(A=e);var a=0,n=function(){};return{s:n,n:function(){return a>=A.length?{done:!0}:{done:!1,value:A[a++]}},e:function(A){throw A},f:n}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var o,r=!0,s=!1;return{s:function(){e=A[Symbol.iterator]()},n:function(){var A=e.next();return r=A.done,A},e:function(A){s=!0,o=A},f:function(){try{r||null==e.return||e.return()}finally{if(s)throw o}}}}function i(A,t){(null==t||t>A.length)&&(t=A.length);for(var e=0,a=new Array(t);e<t;e++)a[e]=A[e];return a}\n/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\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 */t.default={props:{excludeClickOutsideClasses:{type:String|Array,default:function(){return[]}}},methods:{clickOutsideMiddleware:function(A){var t=Array.isArray(this.excludeClickOutsideClasses)?this.excludeClickOutsideClasses:[this.excludeClickOutsideClasses];return 0===t.length||!this.hasNodeOrAnyParentClass(A.target,t)},hasNodeOrAnyParentClass:function(A,t){var e,i=a(t);try{for(i.s();!(e=i.n()).done;){var n=e.value;if(A.classList.contains(n))return!0}}catch(A){i.e(A)}finally{i.f()}return!!A.parentElement&&this.hasNodeOrAnyParentClass(A.parentElement,t)}}}},function(A,t,e){\"use strict\";e.r(t),\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */t.default={data:function(){return{isFullscreen:this._isFullscreen()}},beforeMount:function(){window.addEventListener(\"resize\",this._onResize)},beforeDestroy:function(){window.removeEventListener(\"resize\",this._onResize)},methods:{_onResize:function(){this.isFullscreen=this._isFullscreen()},_isFullscreen:function(){return window.outerHeight===screen.height}}}},,,function(A,t,e){\"use strict\";var a=e(18);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\".popover{z-index:100000;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.popover__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius);background:var(--color-main-background)}.popover__arrow{position:absolute;z-index:1;width:0;height:0;margin:10px;border-style:solid;border-color:var(--color-main-background)}.popover[x-placement^='top']{margin-bottom:10px}.popover[x-placement^='top'] .popover__arrow{bottom:-10px;left:calc(50% - $arrow-width);margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent !important;border-bottom-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='bottom']{margin-top:10px}.popover[x-placement^='bottom'] .popover__arrow{top:-10px;left:calc(50% - $arrow-width);margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent !important;border-right-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='right']{margin-left:10px}.popover[x-placement^='right'] .popover__arrow{top:calc(50% - $arrow-width);left:-10px;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent !important;border-bottom-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='left']{margin-right:10px}.popover[x-placement^='left'] .popover__arrow{top:calc(50% - $arrow-width);right:-10px;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent !important;border-right-color:transparent !important;border-bottom-color:transparent !important}.popover[aria-hidden='true']{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.popover[aria-hidden='false']{visibility:visible;transition:opacity var(--animation-quick);opacity:1}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";e.r(t);e(20),e(8),e(3),e(12),e(9),e(10),e(31);var a={name:\"PopoverMenuItem\",props:{item:{type:Object,required:!0,default:function(){return{key:\"nextcloud-link\",href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}},validator:function(A){return!A.input||-1!==[\"text\",\"checkbox\"].indexOf(A.input)}}},computed:{key:function(){return this.item.key?this.item.key:Math.round(16*Math.random()*1e6).toString(16)},iconIsUrl:function(){try{return new URL(this.item.icon),!0}catch(A){return!1}}},methods:{action:function(A){this.item.action&&this.item.action(A)}}},i=(e(95),e(97),e(0)),n={name:\"PopoverMenu\",components:{PopoverMenuItem:Object(i.a)(a,(function(){var A=this,t=A.$createElement,e=A._self._c||t;return e(\"li\",[A.item.href?e(\"a\",{staticClass:\"focusable\",attrs:{href:A.item.href?A.item.href:\"#\",target:A.item.target?A.item.target:\"\",download:A.item.download,rel:\"noreferrer noopener\"},on:{click:A.action}},[A.iconIsUrl?e(\"img\",{attrs:{src:A.item.icon}}):e(\"span\",{class:A.item.icon}),A._v(\" \"),A.item.text&&A.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),A._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\\t\")])]):A.item.text?e(\"span\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\")]):A.item.longtext?e(\"p\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\")]):A._e()]):A.item.input?e(\"span\",{staticClass:\"menuitem\",class:{active:A.item.active}},[\"checkbox\"!==A.item.input?e(\"span\",{class:A.item.icon}):A._e(),A._v(\" \"),\"text\"===A.item.input?e(\"form\",{class:A.item.input,on:{submit:function(t){return t.preventDefault(),A.item.action(t)}}},[e(\"input\",{attrs:{type:A.item.input,placeholder:A.item.text,required:\"\"},domProps:{value:A.item.value}}),A._v(\" \"),e(\"input\",{staticClass:\"icon-confirm\",attrs:{type:\"submit\",value:\"\"}})]):[\"checkbox\"===A.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:A.item.model,expression:\"item.model\"}],class:A.item.input,attrs:{id:A.key,type:\"checkbox\"},domProps:{checked:Array.isArray(A.item.model)?A._i(A.item.model,null)>-1:A.item.model},on:{change:[function(t){var e=A.item.model,a=t.target,i=!!a.checked;if(Array.isArray(e)){var n=A._i(e,null);a.checked?n<0&&A.$set(A.item,\"model\",e.concat([null])):n>-1&&A.$set(A.item,\"model\",e.slice(0,n).concat(e.slice(n+1)))}else A.$set(A.item,\"model\",i)},A.item.action]}}):\"radio\"===A.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:A.item.model,expression:\"item.model\"}],class:A.item.input,attrs:{id:A.key,type:\"radio\"},domProps:{checked:A._q(A.item.model,null)},on:{change:[function(t){return A.$set(A.item,\"model\",null)},A.item.action]}}):e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:A.item.model,expression:\"item.model\"}],class:A.item.input,attrs:{id:A.key,type:A.item.input},domProps:{value:A.item.model},on:{change:A.item.action,input:function(t){t.target.composing||A.$set(A.item,\"model\",t.target.value)}}}),A._v(\" \"),e(\"label\",{attrs:{for:A.key},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),A.item.action(t)}}},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")])]],2):A.item.action?e(\"button\",{staticClass:\"menuitem focusable\",class:{active:A.item.active},attrs:{disabled:A.item.disabled},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),A.item.action(t)}}},[e(\"span\",{class:A.item.icon}),A._v(\" \"),A.item.text&&A.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),A._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\\t\")])]):A.item.text?e(\"span\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\")]):A.item.longtext?e(\"p\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\")]):A._e()]):e(\"span\",{staticClass:\"menuitem\",class:{active:A.item.active}},[e(\"span\",{class:A.item.icon}),A._v(\" \"),A.item.text&&A.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),A._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\\t\")])]):A.item.text?e(\"span\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\")]):A.item.longtext?e(\"p\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\")]):A._e()])])}),[],!1,null,\"3ad7b73b\",null).exports},props:{menu:{type:Array,default:function(){return[{href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}]},required:!0}}},o=(e(99),e(53)),r=e.n(o),s=Object(i.a)(n,(function(){var A=this.$createElement,t=this._self._c||A;return t(\"ul\",this._l(this.menu,(function(A,e){return t(\"PopoverMenuItem\",{key:e,attrs:{item:A}})})),1)}),[],!1,null,\"81c2afc0\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */t.default=c},,,function(A,t,e){\"use strict\";e.r(t);e(26),e(86),e(80),e(11),e(29),e(3),e(59),e(60);var a=e(47),i=e(68),n=e(33),o=e(32),r=e.n(o),s=e(23),c=e(19),l=e(77),d=e(48);function u(A,t,e,a,i,n,o){try{var r=A[n](o),s=r.value}catch(A){return void e(A)}r.done?t(s):Promise.resolve(s).then(a,i)}function g(A){return function(){var t=this,e=arguments;return new Promise((function(a,i){var n=A.apply(t,e);function o(A){u(n,a,i,o,r,\"next\",A)}function r(A){u(n,a,i,o,r,\"throw\",A)}o(void 0)}))}}var p={name:\"Avatar\",directives:{tooltip:c.default,ClickOutside:a.directive},components:{PopoverMenu:i.default},mixins:[d.d],props:{url:{type:String,default:void 0},iconClass:{type:String,default:void 0},user:{type:String,default:void 0},showUserStatus:{type:Boolean,default:!0},isGuest:{type:Boolean,default:!1},displayName:{type:String,default:void 0},size:{type:Number,default:32},allowPlaceholder:{type:Boolean,default:!0},disableTooltip:{type:Boolean,default:!1},disableMenu:{type:Boolean,default:!1},tooltipMessage:{type:String,default:null},isNoUser:{type:Boolean,default:!1},status:{type:String,default:null,validator:function(A){switch(A){case\"positive\":case\"negative\":case\"neutral\":return!0}return!1}},statusColor:{type:[Number,String],default:null,validator:function(A){return/^([a-f0-9]{3}){1,2}$/i.test(A)}},menuPosition:{type:String,default:\"center\"}},data:function(){return{avatarUrlLoaded:null,avatarSrcSetLoaded:null,userDoesNotExist:!1,isAvatarLoaded:!1,isMenuLoaded:!1,contactsMenuActions:[],contactsMenuOpenState:!1}},computed:{canDisplayUserStatus:function(){return this.showUserStatus&&this.hasStatus&&[\"online\",\"away\",\"dnd\"].includes(this.userStatus.status)},getUserIdentifier:function(){return this.isDisplayNameDefined?this.displayName:this.isUserDefined?this.user:\"\"},isUserDefined:function(){return void 0!==this.user},isDisplayNameDefined:function(){return void 0!==this.displayName},isUrlDefined:function(){return void 0!==this.url},hasMenu:function(){var A;return!this.disableMenu&&(this.isMenuLoaded?this.menu.length>0:!(this.user===(null===(A=Object(n.getCurrentUser)())||void 0===A?void 0:A.uid)||this.userDoesNotExist||this.url))},shouldShowPlaceholder:function(){return this.allowPlaceholder&&this.userDoesNotExist},avatarStyle:function(){var A={width:this.size+\"px\",height:this.size+\"px\",lineHeight:this.size+\"px\",fontSize:Math.round(.55*this.size)+\"px\"};if(!this.iconClass&&!this.avatarSrcSetLoaded){var t=Object(l.default)(this.getUserIdentifier);A.backgroundColor=\"rgb(\"+t.r+\", \"+t.g+\", \"+t.b+\")\"}return A},tooltip:function(){return!this.disableTooltip&&(this.tooltipMessage?this.tooltipMessage:this.displayName)},initials:function(){return this.shouldShowPlaceholder?this.getUserIdentifier.charAt(0).toUpperCase():\"?\"},menu:function(){var A,t,e,a=this.contactsMenuActions.map((function(A){return{href:A.hyperlink,icon:A.icon,text:A.title}}));return this.showUserStatus&&(this.userStatus.icon||this.userStatus.message)?[{href:\"#\",icon:\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><text x='0' y='14' font-size='14'>\".concat((A=this.userStatus.icon,t=document.createTextNode(A),e=document.createElement(\"p\"),e.appendChild(t),e.innerHTML),\"</text></svg>\"),text:\"\".concat(this.userStatus.message)}].concat(a):a}},watch:{url:function(){this.userDoesNotExist=!1,this.loadAvatarUrl()},user:function(){this.userDoesNotExist=!1,this.isMenuLoaded=!1,this.loadAvatarUrl()}},mounted:function(){this.loadAvatarUrl(),this.showUserStatus&&this.user&&!this.isNoUser&&this.fetchUserStatus(this.user)},methods:{toggleMenu:function(){var A=this;return g(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(A.hasMenu){t.next=2;break}return t.abrupt(\"return\");case 2:if(A.contactsMenuOpenState){t.next=5;break}return t.next=5,A.fetchContactsMenu();case 5:A.contactsMenuOpenState=!A.contactsMenuOpenState;case 6:case\"end\":return t.stop()}}),t)})))()},closeMenu:function(){this.contactsMenuOpenState=!1},fetchContactsMenu:function(){var A=this;return g(regeneratorRuntime.mark((function t(){var e,a,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,e=encodeURIComponent(A.user),t.next=4,r.a.post(Object(s.generateUrl)(\"contactsmenu/findOne\"),\"shareType=0&shareWith=\".concat(e));case 4:a=t.sent,i=a.data,A.contactsMenuActions=i.topAction?[i.topAction].concat(i.actions):i.actions,t.next=12;break;case 9:t.prev=9,t.t0=t.catch(0),A.contactsMenuOpenState=!1;case 12:A.isMenuLoaded=!0;case 13:case\"end\":return t.stop()}}),t,null,[[0,9]])})))()},loadAvatarUrl:function(){var A=this;if(this.isAvatarLoaded=!1,!this.isUrlDefined&&(!this.isUserDefined||this.isNoUser))return this.isAvatarLoaded=!0,void(this.userDoesNotExist=!0);var t=function(t,e){var a,i=\"/avatar/{user}/{size}\";A.isGuest&&(i=\"/avatar/guest/{user}/{size}\");var o=Object(s.generateUrl)(i,{user:t,size:e});return t===(null===(a=Object(n.getCurrentUser)())||void 0===a?void 0:a.uid)&&\"undefined\"!=typeof oc_userconfig&&(o+=\"?v=\"+oc_userconfig.avatar.version),o},e=t(this.user,this.size);this.isUrlDefined&&(e=this.url);var a=[e+\" 1x\",t(this.user,2*this.size)+\" 2x\",t(this.user,4*this.size)+\" 4x\"].join(\", \"),i=new Image;i.onload=function(){A.avatarUrlLoaded=e,A.isUrlDefined||(A.avatarSrcSetLoaded=a),A.isAvatarLoaded=!0},i.onerror=function(){A.userDoesNotExist=!0,A.isAvatarLoaded=!0},this.isUrlDefined||(i.srcset=a),i.src=e}}},M=(e(105),e(0)),v=e(61),m=e.n(v),b=Object(M.a)(p,(function(){var A=this,t=A.$createElement,e=A._self._c||t;return e(\"div\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:A.tooltip,expression:\"tooltip\"},{name:\"click-outside\",rawName:\"v-click-outside\",value:A.closeMenu,expression:\"closeMenu\"}],staticClass:\"avatardiv popovermenu-wrapper\",class:{\"avatardiv--unknown\":A.userDoesNotExist,\"avatardiv--with-menu\":A.hasMenu},style:A.avatarStyle,on:{click:A.toggleMenu}},[A.iconClass?e(\"div\",{staticClass:\"avatar-class-icon\",class:A.iconClass}):A.isAvatarLoaded&&!A.userDoesNotExist?e(\"img\",{attrs:{src:A.avatarUrlLoaded,srcset:A.avatarSrcSetLoaded,alt:\"\"}}):A._e(),A._v(\" \"),A.hasMenu?e(\"div\",{staticClass:\"icon-more\"}):A._e(),A._v(\" \"),A.canDisplayUserStatus?e(\"div\",{staticClass:\"avatardiv__user-status\",class:\"avatardiv__user-status--\"+A.userStatus.status}):A.status?e(\"div\",{staticClass:\"avatardiv__status\",class:\"avatardiv__status--\"+A.status,style:{backgroundColor:\"#\"+A.statusColor}},[\"neutral\"===A.status?e(\"svg\",{attrs:{xmlns:\"http://www.w3.org/2000/svg\",width:\"12\",height:\"11\",viewBox:\"0 0 3.175 2.91\"}},[e(\"path\",{style:{fill:\"#\"+A.statusColor},attrs:{d:\"M3.21 3.043H.494l.679-1.177.68-1.176.678 1.176z\",stroke:\"#fff\",\"stroke-width\":\".265\",\"stroke-linecap\":\"square\"}})]):A._e()]):A._e(),A._v(\" \"),A.userDoesNotExist?e(\"div\",{staticClass:\"unknown\"},[A._v(\"\\n\\t\\t\"+A._s(A.initials)+\"\\n\\t\")]):A._e(),A._v(\" \"),A.hasMenu?e(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:A.contactsMenuOpenState,expression:\"contactsMenuOpenState\"}],staticClass:\"popovermenu\",class:\"menu-\"+A.menuPosition},[e(\"PopoverMenu\",{attrs:{\"is-open\":A.contactsMenuOpenState,menu:A.menu}})],1):A._e()])}),[],!1,null,\"296c073c\",null);\"function\"==typeof m.a&&m()(b);var I=b.exports;\n/**\n * @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\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 */t.default=I},function(A,t){A.exports=require(\"@nextcloud/capabilities\")},function(A,t){A.exports=require(\"md5\")},,,,function(A,t,e){\"use strict\";e.r(t);e(21),e(101),e(37);var a=e(73),i=e.n(a),n=e(57),o=function(A){var t=A.toLowerCase();null===t.match(/^([0-9a-f]{4}-?){8}$/)&&(t=i()(t)),t=t.replace(/[^0-9a-f]/g,\"\");return Object(n.a)(6)[function(A,t){for(var e=0,a=[],i=0;i<A.length;i++)a.push(parseInt(A.charAt(i),16)%16);for(var n in a)e+=a[n];return parseInt(parseInt(e,10)%t,10)}(t,18)]};t.default=o},,,function(A,t){A.exports=require(\"core-js/modules/es.array.join\")},,,,,,function(A,t){A.exports=require(\"core-js/modules/es.array.includes\")},,,,,,,,,function(A,t,e){\"use strict\";var a=e(41);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\"\\nbutton.menuitem[data-v-3ad7b73b] {\\n\\ttext-align: left;\\n}\\nbutton.menuitem *[data-v-3ad7b73b] {\\n\\tcursor: pointer;\\n}\\nbutton.menuitem[data-v-3ad7b73b]:disabled {\\n\\topacity: 0.5 !important;\\n\\tcursor: default;\\n}\\nbutton.menuitem:disabled *[data-v-3ad7b73b] {\\n\\tcursor: default;\\n}\\n.menuitem.active[data-v-3ad7b73b] {\\n\\tbox-shadow: inset 2px 0 var(--color-primary);\\n\\tborder-radius: 0;\\n}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";var a=e(42);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\"li[data-v-3ad7b73b]{display:flex;flex:0 0 auto}li.hidden[data-v-3ad7b73b]{display:none}li>button[data-v-3ad7b73b],li>a[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]{cursor:pointer;line-height:44px;border:0;border-radius:0;background-color:transparent;display:flex;align-items:flex-start;height:auto;margin:0;padding:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap;opacity:.7}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{min-width:0;min-height:0;background-position:14px center;background-size:16px}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b]{padding:22px 0 22px 44px}li>button:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child{margin-left:44px}li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{padding:0 14px 0 44px}li>button[data-v-3ad7b73b]:not(:disabled):hover,li>button[data-v-3ad7b73b]:not(:disabled):focus,li>button:not(:disabled).active[data-v-3ad7b73b],li>a[data-v-3ad7b73b]:not(:disabled):hover,li>a[data-v-3ad7b73b]:not(:disabled):focus,li>a:not(:disabled).active[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]:not(:disabled):hover,li>.menuitem[data-v-3ad7b73b]:not(:disabled):focus,li>.menuitem:not(:disabled).active[data-v-3ad7b73b]{opacity:1 !important}li>button.action[data-v-3ad7b73b],li>a.action[data-v-3ad7b73b],li>.menuitem.action[data-v-3ad7b73b]{padding:inherit !important}li>button>span[data-v-3ad7b73b],li>a>span[data-v-3ad7b73b],li>.menuitem>span[data-v-3ad7b73b]{cursor:pointer;white-space:nowrap}li>button>p[data-v-3ad7b73b],li>a>p[data-v-3ad7b73b],li>.menuitem>p[data-v-3ad7b73b]{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}li>button>select[data-v-3ad7b73b],li>a>select[data-v-3ad7b73b],li>.menuitem>select[data-v-3ad7b73b]{margin:0;margin-left:6px}li>button[data-v-3ad7b73b]:not(:empty),li>a[data-v-3ad7b73b]:not(:empty),li>.menuitem[data-v-3ad7b73b]:not(:empty){padding-right:14px !important}li>button>img[data-v-3ad7b73b],li>a>img[data-v-3ad7b73b],li>.menuitem>img[data-v-3ad7b73b]{width:44px;padding:14px}li>button>input.radio+label[data-v-3ad7b73b],li>button>input.checkbox+label[data-v-3ad7b73b],li>a>input.radio+label[data-v-3ad7b73b],li>a>input.checkbox+label[data-v-3ad7b73b],li>.menuitem>input.radio+label[data-v-3ad7b73b],li>.menuitem>input.checkbox+label[data-v-3ad7b73b]{padding:0 !important;width:100%}li>button>input.checkbox+label[data-v-3ad7b73b]::before,li>a>input.checkbox+label[data-v-3ad7b73b]::before,li>.menuitem>input.checkbox+label[data-v-3ad7b73b]::before{margin:-2px 13px 0}li>button>input.radio+label[data-v-3ad7b73b]::before,li>a>input.radio+label[data-v-3ad7b73b]::before,li>.menuitem>input.radio+label[data-v-3ad7b73b]::before{margin:-2px 12px 0}li>button>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>a>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>.menuitem>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}li>button form[data-v-3ad7b73b],li>a form[data-v-3ad7b73b],li>.menuitem form[data-v-3ad7b73b]{display:flex;flex:1 1 auto}li>button form[data-v-3ad7b73b]:not(:first-child),li>a form[data-v-3ad7b73b]:not(:first-child),li>.menuitem form[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li>button>span.hidden+form[data-v-3ad7b73b],li>button>span[style*='display:none']+form[data-v-3ad7b73b],li>a>span.hidden+form[data-v-3ad7b73b],li>a>span[style*='display:none']+form[data-v-3ad7b73b],li>.menuitem>span.hidden+form[data-v-3ad7b73b],li>.menuitem>span[style*='display:none']+form[data-v-3ad7b73b]{margin-left:0}li>button input[data-v-3ad7b73b],li>a input[data-v-3ad7b73b],li>.menuitem input[data-v-3ad7b73b]{min-width:44px;max-height:40px;margin:2px 0;flex:1 1 auto}li>button input[data-v-3ad7b73b]:not(:first-child),li>a input[data-v-3ad7b73b]:not(:first-child),li>.menuitem input[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li:not(.hidden):not([style*='display:none']):first-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>input[data-v-3ad7b73b]{margin-top:12px}li:not(.hidden):not([style*='display:none']):last-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>input[data-v-3ad7b73b]{margin-bottom:12px}li>button[data-v-3ad7b73b]{padding:0}li>button span[data-v-3ad7b73b]{opacity:1}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";var a=e(43);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\"ul[data-v-81c2afc0]{display:flex;flex-direction:column}\\n\",\"\"]),A.exports=t},function(A,t){A.exports=require(\"core-js/modules/es.string.match\")},,,,function(A,t,e){\"use strict\";var a=e(49);e.n(a).a},function(A,t,e){var a=e(1),i=e(13),n=e(14),o=e(15),r=e(16),s=e(17);t=a(!1);var c=i(n),l=i(o),d=i(r),u=i(s);t.push([A.i,'@font-face{font-family:\"iconfont-vue-b74ff51\";src:url('+c+\");src:url(\"+c+') format(\"embedded-opentype\"),url('+l+') format(\"woff\"),url('+d+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-296c073c]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.arrow-left[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.arrow-right-double[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.arrow-right[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.breadcrumb[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.checkmark[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.close[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.confirm[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.info[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.menu[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.more[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.pause[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.play[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.triangle-s[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-away[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-dnd[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-invisible[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-online[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.avatardiv[data-v-296c073c]{position:relative;display:inline-block}.avatardiv--unknown[data-v-296c073c]{position:relative;background-color:var(--color-text-maxcontrast)}.avatardiv[data-v-296c073c]:not(.avatardiv--unknown){background-color:#fff !important;box-shadow:0 0 5px rgba(0,0,0,0.05) inset}body.theme--dark .avatardiv[data-v-296c073c]:not(.avatardiv--unknown){background-color:#000 !important}.avatardiv--with-menu[data-v-296c073c]{cursor:pointer}.avatardiv--with-menu .icon-more[data-v-296c073c]{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:inherit;height:inherit;cursor:pointer;opacity:0;background:none;font-size:18px}.avatardiv--with-menu .icon-more[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv--with-menu .icon-more[data-v-296c073c]::before{display:block}.avatardiv--with-menu:focus .icon-more[data-v-296c073c],.avatardiv--with-menu:hover .icon-more[data-v-296c073c]{opacity:1}.avatardiv--with-menu:focus img[data-v-296c073c],.avatardiv--with-menu:hover img[data-v-296c073c]{opacity:0.3}.avatardiv--with-menu .icon-more[data-v-296c073c],.avatardiv--with-menu img[data-v-296c073c]{transition:opacity var(--animation-quick)}.avatardiv>.unknown[data-v-296c073c]{position:absolute;top:0;left:0;display:block;width:100%;text-align:center;font-weight:normal;color:var(--color-main-background)}.avatardiv img[data-v-296c073c]{width:100%;height:100%}.avatardiv .avatardiv__status[data-v-296c073c]{position:absolute;top:22px;left:22px;width:10px;height:10px;border:1px solid rgba(255,255,255,0.5);background-clip:content-box}.avatardiv .avatardiv__status--positive[data-v-296c073c]{border-radius:50%;background-color:var(--color-success)}.avatardiv .avatardiv__status--negative[data-v-296c073c]{background-color:var(--color-error)}.avatardiv .avatardiv__status--neutral[data-v-296c073c]{border:none;background-color:transparent !important}.avatardiv .avatardiv__status--neutral svg[data-v-296c073c]{position:absolute;top:-3px;left:-2px}.avatardiv .avatardiv__status--neutral svg path[data-v-296c073c]{fill:#aaa}.avatardiv .avatardiv__user-status[data-v-296c073c]{position:absolute;right:-4px;bottom:-4px;height:18px;width:18px;line-height:14px;font-size:14px;border:2px solid var(--color-main-background);background-color:var(--color-main-background);border-radius:50%}.acli:hover .avatardiv .avatardiv__user-status[data-v-296c073c]{border-color:var(--color-background-hover);background-color:var(--color-background-hover)}.acli.active .avatardiv .avatardiv__user-status[data-v-296c073c]{border-color:var(--color-primary-light);background-color:var(--color-primary-light)}.avatardiv .avatardiv__user-status--online[data-v-296c073c]{color:#49b382}.avatardiv .avatardiv__user-status--online[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .avatardiv__user-status--dnd[data-v-296c073c]{background-color:#ffffff;color:#ed484c}.avatardiv .avatardiv__user-status--dnd[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .avatardiv__user-status--away[data-v-296c073c]{color:#f4a331}.avatardiv .avatardiv__user-status--away[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .popovermenu-wrapper[data-v-296c073c]{position:relative;display:inline-block}.avatardiv .popovermenu[data-v-296c073c]{display:block;margin:0;font-size:14px}.avatar-class-icon[data-v-296c073c]{border-radius:50%;background-color:var(--color-background-darker);height:100%}\\n',\"\"]),A.exports=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(A,t,e){var a=e(277);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"eb4debd2\",a,!0,{})},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(A,t){},,,,,,,,,,,,,,,,,,,,,,,,function(A,t,e){\"use strict\";e.r(t);e(8),e(29),e(3),e(9),e(30),e(10),e(31);var a=e(34),i=e(71),n={name:\"UserBubble\",components:{Popover:a.default,Avatar:i.default},props:{avatarImage:{type:String,default:void 0},user:{type:String,default:void 0},displayName:{type:String,required:!0},showUserStatus:{type:Boolean,default:!1},url:{type:String,default:void 0,validator:function(A){try{return!!(A=new URL(A))}catch(A){return!1}}},open:{type:Boolean,default:!1},primary:{type:Boolean,default:!1},size:{type:Number,default:20},margin:{type:Number,default:2}},computed:{isPopoverComponent:function(){return this.popoverEmpty?\"div\":\"Popover\"},isAvatarUrl:function(){if(!this.avatarImage)return!1;try{return!!new URL(this.avatarImage)}catch(A){return!1}},isCustomAvatar:function(){return!!this.avatarImage},isLinkComponent:function(){return this.url&&\"\"!==this.url.trim()?{is:\"a\",href:this.url}:{is:\"div\"}},popoverEmpty:function(){return!(\"default\"in this.$slots)},styles:function(){return{content:{height:this.size+\"px\",lineHeight:this.size+\"px\",borderRadius:this.size/2+\"px\"},avatar:{marginLeft:this.margin+\"px\"}}}},methods:{onOpenChange:function(A){this.$emit(\"update:open\",A)},onClick:function(A){this.$emit(\"click\",A)}}},o=(e(276),e(0)),r=e(176),s=e.n(r),c=Object(o.a)(n,(function(){var A=this,t=A.$createElement,e=A._self._c||t;return e(A.isPopoverComponent,{tag:\"Popover\",staticClass:\"user-bubble__wrapper\",attrs:{trigger:\"hover focus\",open:A.open},on:{\"update:open\":A.onOpenChange}},[e(\"div\",A._b({staticClass:\"user-bubble__content\",class:A.primary?\"user-bubble__content--primary\":\"\",style:A.styles.content,attrs:{slot:\"trigger\"},on:{click:A.onClick},slot:\"trigger\"},\"div\",A.isLinkComponent,!1),[e(\"Avatar\",A._b({staticClass:\"user-bubble__avatar\",style:A.styles.avatar,attrs:{url:A.isCustomAvatar&&A.isAvatarUrl?A.avatarImage:void 0,\"icon-class\":A.isCustomAvatar&&!A.isAvatarUrl?A.avatarImage:void 0,user:A.user,\"display-name\":A.displayName,size:A.size-2*A.margin,\"disable-tooltip\":!0,\"disable-menu\":!0}},\"Avatar\",A.$props,!1)),A._v(\" \"),e(\"h6\",{staticClass:\"user-bubble__title\"},[A._v(\"\\n\\t\\t\\t\"+A._s(A.displayName||A.user)+\"\\n\\t\\t\")]),A._v(\" \"),A.$slots.title?e(\"span\",{staticClass:\"user-bubble__secondary\"},[A._t(\"title\")],2):A._e()],1),A._v(\" \"),A._t(\"default\")],2)}),[],!1,null,\"4442f088\",null);\"function\"==typeof s.a&&s()(c);var l=c.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\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 */t.default=l},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(A,t,e){\"use strict\";var a=e(144);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\".user-bubble__wrapper[data-v-4442f088]{display:inline-block;vertical-align:middle;min-width:0;max-width:100%}.user-bubble__content[data-v-4442f088]{display:inline-flex;max-width:100%;background-color:var(--color-background-dark)}.user-bubble__content--primary[data-v-4442f088]{color:var(--color-primary-text);background-color:var(--color-primary-element)}.user-bubble__content[data-v-4442f088]>:last-child{padding-right:8px}.user-bubble__avatar[data-v-4442f088]{align-self:center}.user-bubble__title[data-v-4442f088]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.user-bubble__title[data-v-4442f088],.user-bubble__secondary[data-v-4442f088]{padding:0;padding-left:4px}\\n\",\"\"]),A.exports=t}])}));\n//# sourceMappingURL=UserBubble.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.map\");\n\nrequire(\"core-js/modules/es.object.keys\");\n\nrequire(\"core-js/modules/es.string.starts-with\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getBuilder = getBuilder;\nexports.clearAll = clearAll;\nexports.clearNonPersistent = clearNonPersistent;\n\nvar _storagebuilder = _interopRequireDefault(require(\"./storagebuilder\"));\n\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getBuilder(appId) {\n return new _storagebuilder.default(appId);\n}\n\nfunction clearStorage(storage, pred) {\n Object.keys(storage).filter(function (k) {\n return pred ? pred(k) : true;\n }).map(storage.removeItem.bind(storage));\n}\n\nfunction clearAll() {\n var storages = [window.sessionStorage, window.localStorage];\n storages.map(function (s) {\n return clearStorage(s);\n });\n}\n\nfunction clearNonPersistent() {\n var storages = [window.sessionStorage, window.localStorage];\n storages.map(function (s) {\n return clearStorage(s, function (k) {\n return !k.startsWith(_scopedstorage.default.GLOBAL_SCOPE_PERSISTENT);\n });\n });\n}\n//# sourceMappingURL=index.js.map","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 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","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(mergeConfig(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(mergeConfig(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 (!response.status || !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 toJSON() {\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 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 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 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\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","import valid from \"semver/functions/valid\";\nimport major from \"semver/functions/major\";\n\nimport packageJson from \"../package.json\";\nimport { Event } from \"./Event.js\";\nimport { EventBus } from \"./EventBus.js\";\nimport { EventHandler } from \"./EventHandler.js\";\n\nexport class ProxyBus implements EventBus {\n\n private bus: EventBus;\n\n constructor(bus: EventBus) {\n if (typeof bus.getVersion !== 'function' || !valid(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version')\n } else if (major(bus.getVersion()) !== 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 getVersion(): string {\n return packageJson.version\n }\n\n subscribe(name: string, handler: EventHandler): void {\n this.bus.subscribe(name, handler);\n }\n\n unsubscribe(name: string, handler: EventHandler): void {\n this.bus.unsubscribe(name, handler);\n }\n\n emit(name: string, event: Event): void {\n this.bus.emit(name, event);\n }\n\n}\n","const parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n","const {MAX_LENGTH} = require('../internal/constants')\nconst { re, t } = require('../internal/re')\nconst SemVer = require('../classes/semver')\n\nconst 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 const 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\nmodule.exports = parse\n","const numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n const anum = numeric.test(a)\n const 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\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers\n}\n","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","import packageJson from \"../package.json\";\nimport { Event } from \"./Event.js\";\nimport { EventBus } from \"./EventBus.js\";\nimport { EventHandler } from \"./EventHandler.js\";\n\nexport class SimpleBus implements EventBus {\n\n private handlers = new Map<string, EventHandler[]>();\n\n getVersion(): string {\n return packageJson.version\n }\n\n subscribe(name: string, handler: EventHandler): void {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n\n unsubscribe(name: string, handler: EventHandler): void {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(h => h != handler));\n }\n\n emit(name: string, event: Event): void {\n (this.handlers.get(name) || []).forEach(h => {\n try {\n h(event)\n } catch (e) {\n console.error('could not invoke event listener', e)\n }\n })\n }\n\n}\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 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","'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","'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","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","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCurrentUser = getCurrentUser;\n/// <reference types=\"@nextcloud/typings\" />\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;\nvar isAdmin = typeof OC === 'undefined' ? false : OC.isUserAdmin();\n\nfunction getCurrentUser() {\n if (uid === null) {\n return null;\n }\n\n return {\n uid: uid,\n displayName: displayName,\n isAdmin: isAdmin\n };\n}\n//# sourceMappingURL=user.js.map","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","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\": 151,\n\t\"./af.js\": 151,\n\t\"./ar\": 152,\n\t\"./ar-dz\": 153,\n\t\"./ar-dz.js\": 153,\n\t\"./ar-kw\": 154,\n\t\"./ar-kw.js\": 154,\n\t\"./ar-ly\": 155,\n\t\"./ar-ly.js\": 155,\n\t\"./ar-ma\": 156,\n\t\"./ar-ma.js\": 156,\n\t\"./ar-sa\": 157,\n\t\"./ar-sa.js\": 157,\n\t\"./ar-tn\": 158,\n\t\"./ar-tn.js\": 158,\n\t\"./ar.js\": 152,\n\t\"./az\": 159,\n\t\"./az.js\": 159,\n\t\"./be\": 160,\n\t\"./be.js\": 160,\n\t\"./bg\": 161,\n\t\"./bg.js\": 161,\n\t\"./bm\": 162,\n\t\"./bm.js\": 162,\n\t\"./bn\": 163,\n\t\"./bn.js\": 163,\n\t\"./bo\": 164,\n\t\"./bo.js\": 164,\n\t\"./br\": 165,\n\t\"./br.js\": 165,\n\t\"./bs\": 166,\n\t\"./bs.js\": 166,\n\t\"./ca\": 167,\n\t\"./ca.js\": 167,\n\t\"./cs\": 168,\n\t\"./cs.js\": 168,\n\t\"./cv\": 169,\n\t\"./cv.js\": 169,\n\t\"./cy\": 170,\n\t\"./cy.js\": 170,\n\t\"./da\": 171,\n\t\"./da.js\": 171,\n\t\"./de\": 172,\n\t\"./de-at\": 173,\n\t\"./de-at.js\": 173,\n\t\"./de-ch\": 174,\n\t\"./de-ch.js\": 174,\n\t\"./de.js\": 172,\n\t\"./dv\": 175,\n\t\"./dv.js\": 175,\n\t\"./el\": 176,\n\t\"./el.js\": 176,\n\t\"./en-SG\": 177,\n\t\"./en-SG.js\": 177,\n\t\"./en-au\": 178,\n\t\"./en-au.js\": 178,\n\t\"./en-ca\": 179,\n\t\"./en-ca.js\": 179,\n\t\"./en-gb\": 180,\n\t\"./en-gb.js\": 180,\n\t\"./en-ie\": 181,\n\t\"./en-ie.js\": 181,\n\t\"./en-il\": 182,\n\t\"./en-il.js\": 182,\n\t\"./en-nz\": 183,\n\t\"./en-nz.js\": 183,\n\t\"./eo\": 184,\n\t\"./eo.js\": 184,\n\t\"./es\": 185,\n\t\"./es-do\": 186,\n\t\"./es-do.js\": 186,\n\t\"./es-us\": 187,\n\t\"./es-us.js\": 187,\n\t\"./es.js\": 185,\n\t\"./et\": 188,\n\t\"./et.js\": 188,\n\t\"./eu\": 189,\n\t\"./eu.js\": 189,\n\t\"./fa\": 190,\n\t\"./fa.js\": 190,\n\t\"./fi\": 191,\n\t\"./fi.js\": 191,\n\t\"./fo\": 192,\n\t\"./fo.js\": 192,\n\t\"./fr\": 193,\n\t\"./fr-ca\": 194,\n\t\"./fr-ca.js\": 194,\n\t\"./fr-ch\": 195,\n\t\"./fr-ch.js\": 195,\n\t\"./fr.js\": 193,\n\t\"./fy\": 196,\n\t\"./fy.js\": 196,\n\t\"./ga\": 197,\n\t\"./ga.js\": 197,\n\t\"./gd\": 198,\n\t\"./gd.js\": 198,\n\t\"./gl\": 199,\n\t\"./gl.js\": 199,\n\t\"./gom-latn\": 200,\n\t\"./gom-latn.js\": 200,\n\t\"./gu\": 201,\n\t\"./gu.js\": 201,\n\t\"./he\": 202,\n\t\"./he.js\": 202,\n\t\"./hi\": 203,\n\t\"./hi.js\": 203,\n\t\"./hr\": 204,\n\t\"./hr.js\": 204,\n\t\"./hu\": 205,\n\t\"./hu.js\": 205,\n\t\"./hy-am\": 206,\n\t\"./hy-am.js\": 206,\n\t\"./id\": 207,\n\t\"./id.js\": 207,\n\t\"./is\": 208,\n\t\"./is.js\": 208,\n\t\"./it\": 209,\n\t\"./it-ch\": 210,\n\t\"./it-ch.js\": 210,\n\t\"./it.js\": 209,\n\t\"./ja\": 211,\n\t\"./ja.js\": 211,\n\t\"./jv\": 212,\n\t\"./jv.js\": 212,\n\t\"./ka\": 213,\n\t\"./ka.js\": 213,\n\t\"./kk\": 214,\n\t\"./kk.js\": 214,\n\t\"./km\": 215,\n\t\"./km.js\": 215,\n\t\"./kn\": 216,\n\t\"./kn.js\": 216,\n\t\"./ko\": 217,\n\t\"./ko.js\": 217,\n\t\"./ku\": 218,\n\t\"./ku.js\": 218,\n\t\"./ky\": 219,\n\t\"./ky.js\": 219,\n\t\"./lb\": 220,\n\t\"./lb.js\": 220,\n\t\"./lo\": 221,\n\t\"./lo.js\": 221,\n\t\"./lt\": 222,\n\t\"./lt.js\": 222,\n\t\"./lv\": 223,\n\t\"./lv.js\": 223,\n\t\"./me\": 224,\n\t\"./me.js\": 224,\n\t\"./mi\": 225,\n\t\"./mi.js\": 225,\n\t\"./mk\": 226,\n\t\"./mk.js\": 226,\n\t\"./ml\": 227,\n\t\"./ml.js\": 227,\n\t\"./mn\": 228,\n\t\"./mn.js\": 228,\n\t\"./mr\": 229,\n\t\"./mr.js\": 229,\n\t\"./ms\": 230,\n\t\"./ms-my\": 231,\n\t\"./ms-my.js\": 231,\n\t\"./ms.js\": 230,\n\t\"./mt\": 232,\n\t\"./mt.js\": 232,\n\t\"./my\": 233,\n\t\"./my.js\": 233,\n\t\"./nb\": 234,\n\t\"./nb.js\": 234,\n\t\"./ne\": 235,\n\t\"./ne.js\": 235,\n\t\"./nl\": 236,\n\t\"./nl-be\": 237,\n\t\"./nl-be.js\": 237,\n\t\"./nl.js\": 236,\n\t\"./nn\": 238,\n\t\"./nn.js\": 238,\n\t\"./pa-in\": 239,\n\t\"./pa-in.js\": 239,\n\t\"./pl\": 240,\n\t\"./pl.js\": 240,\n\t\"./pt\": 241,\n\t\"./pt-br\": 242,\n\t\"./pt-br.js\": 242,\n\t\"./pt.js\": 241,\n\t\"./ro\": 243,\n\t\"./ro.js\": 243,\n\t\"./ru\": 244,\n\t\"./ru.js\": 244,\n\t\"./sd\": 245,\n\t\"./sd.js\": 245,\n\t\"./se\": 246,\n\t\"./se.js\": 246,\n\t\"./si\": 247,\n\t\"./si.js\": 247,\n\t\"./sk\": 248,\n\t\"./sk.js\": 248,\n\t\"./sl\": 249,\n\t\"./sl.js\": 249,\n\t\"./sq\": 250,\n\t\"./sq.js\": 250,\n\t\"./sr\": 251,\n\t\"./sr-cyrl\": 252,\n\t\"./sr-cyrl.js\": 252,\n\t\"./sr.js\": 251,\n\t\"./ss\": 253,\n\t\"./ss.js\": 253,\n\t\"./sv\": 254,\n\t\"./sv.js\": 254,\n\t\"./sw\": 255,\n\t\"./sw.js\": 255,\n\t\"./ta\": 256,\n\t\"./ta.js\": 256,\n\t\"./te\": 257,\n\t\"./te.js\": 257,\n\t\"./tet\": 258,\n\t\"./tet.js\": 258,\n\t\"./tg\": 259,\n\t\"./tg.js\": 259,\n\t\"./th\": 260,\n\t\"./th.js\": 260,\n\t\"./tl-ph\": 261,\n\t\"./tl-ph.js\": 261,\n\t\"./tlh\": 262,\n\t\"./tlh.js\": 262,\n\t\"./tr\": 263,\n\t\"./tr.js\": 263,\n\t\"./tzl\": 264,\n\t\"./tzl.js\": 264,\n\t\"./tzm\": 265,\n\t\"./tzm-latn\": 266,\n\t\"./tzm-latn.js\": 266,\n\t\"./tzm.js\": 265,\n\t\"./ug-cn\": 267,\n\t\"./ug-cn.js\": 267,\n\t\"./uk\": 268,\n\t\"./uk.js\": 268,\n\t\"./ur\": 269,\n\t\"./ur.js\": 269,\n\t\"./uz\": 270,\n\t\"./uz-latn\": 271,\n\t\"./uz-latn.js\": 271,\n\t\"./uz.js\": 270,\n\t\"./vi\": 272,\n\t\"./vi.js\": 272,\n\t\"./x-pseudo\": 273,\n\t\"./x-pseudo.js\": 273,\n\t\"./yo\": 274,\n\t\"./yo.js\": 274,\n\t\"./zh-cn\": 275,\n\t\"./zh-cn.js\": 275,\n\t\"./zh-hk\": 276,\n\t\"./zh-hk.js\": 276,\n\t\"./zh-tw\": 277,\n\t\"./zh-tw.js\": 277\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 = 353;","'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/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\"","// 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, \".external[data-v-49ca75ce]:after{content:' ↗'}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\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","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.github.io/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.github.io/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar defineProperties = require('../internals/object-define-properties');\nvar redefine = require('../internals/redefine');\nvar anInstance = require('../internals/an-instance');\nvar has = require('../internals/has');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar URLSearchParamsModule = require('../modules/web.url-search-params');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar NativeURL = global.URL;\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar floor = Math.floor;\nvar pow = Math.pow;\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[A-Za-z]/;\nvar ALPHANUMERIC = /[\\d+-.A-Za-z]/;\nvar DIGIT = /\\d/;\nvar HEX_START = /^(0x|0X)/;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\dA-Fa-f]+$/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT = /[\\u0000\\u0009\\u000A\\u000D #%/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\u0000\\u0009\\u000A\\u000D #/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u001F ]+|[\\u0000-\\u001F ]+$/g;\n// eslint-disable-next-line no-control-regex\nvar TAB_AND_NEW_LINE = /[\\u0009\\u000A\\u000D]/g;\nvar EOF;\n\nvar parseHost = function (url, input) {\n var result, codePoints, index;\n if (input.charAt(0) == '[') {\n if (input.charAt(input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(input.slice(1, -1));\n if (!result) return INVALID_HOST;\n url.host = result;\n // opaque host\n } else if (!isSpecial(url)) {\n if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n url.host = result;\n } else {\n input = toASCII(input);\n if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n url.host = result;\n }\n};\n\nvar parseIPv4 = function (input) {\n var parts = input.split('.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.pop();\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && part.charAt(0) == '0') {\n radix = HEX_START.test(part) ? 16 : 8;\n part = part.slice(radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;\n number = parseInt(part, radix);\n }\n numbers.push(number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = numbers.pop();\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// eslint-disable-next-line max-statements\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var char = function () {\n return input.charAt(pointer);\n };\n\n if (char() == ':') {\n if (input.charAt(1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (char()) {\n if (pieceIndex == 8) return;\n if (char() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && HEX.test(char())) {\n value = value * 16 + parseInt(char(), 16);\n pointer++;\n length++;\n }\n if (char() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (char()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (char() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!DIGIT.test(char())) return;\n while (DIGIT.test(char())) {\n number = parseInt(char(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (char() == ':') {\n pointer++;\n if (!char()) return;\n } else if (char()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n result.unshift(host % 256);\n host = floor(host / 256);\n } return result.join('.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += host[index].toString(16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (char, set) {\n var code = codeAt(char, 0);\n return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);\n};\n\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\nvar isSpecial = function (url) {\n return has(specialSchemes, url.scheme);\n};\n\nvar includesCredentials = function (url) {\n return url.username != '' || url.password != '';\n};\n\nvar cannotHaveUsernamePasswordPort = function (url) {\n return !url.host || url.cannotBeABaseURL || url.scheme == 'file';\n};\n\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && ALPHA.test(string.charAt(0))\n && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));\n};\n\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (\n string.length == 2 ||\n ((third = string.charAt(2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\nvar shortenURLsPath = function (url) {\n var path = url.path;\n var pathSize = path.length;\n if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.pop();\n }\n};\n\nvar isSingleDot = function (segment) {\n return segment === '.' || segment.toLowerCase() === '%2e';\n};\n\nvar isDoubleDot = function (segment) {\n segment = segment.toLowerCase();\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\n// eslint-disable-next-line max-statements\nvar parseURL = function (url, input, stateOverride, base) {\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, char, bufferCodePoints, failure;\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = input.replace(TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n char = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (char && ALPHA.test(char)) {\n buffer += char.toLowerCase();\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {\n buffer += char.toLowerCase();\n } else if (char == ':') {\n if (stateOverride && (\n (isSpecial(url) != has(specialSchemes, buffer)) ||\n (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (isSpecial(url) && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (isSpecial(url)) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n url.path.push('');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && char == '#') {\n url.scheme = base.scheme;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (char == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (char == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (char == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '/' || (char == '\\\\' && isSpecial(url))) {\n state = RELATIVE_SLASH;\n } else if (char == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.path.pop();\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (isSpecial(url) && (char == '/' || char == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (char == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (char != '/' && char != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (char == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += char;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (char == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (isSpecial(url) && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (char == '[') seenBracket = true;\n else if (char == ']') seenBracket = false;\n buffer += char;\n } break;\n\n case PORT:\n if (DIGIT.test(char)) {\n buffer += char;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url)) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (char == '/' || char == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (char == EOF) {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '?') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n url.host = base.host;\n url.path = base.path.slice();\n shortenURLsPath(url);\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (char == '/' || char == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (char == EOF || char == '/' || char == '\\\\' || char == '?' || char == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = parseHost(url, buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += char;\n break;\n\n case PATH_START:\n if (isSpecial(url)) {\n state = PATH;\n if (char != '/' && char != '\\\\') continue;\n } else if (!stateOverride && char == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n state = PATH;\n if (char != '/') continue;\n } break;\n\n case PATH:\n if (\n char == EOF || char == '/' ||\n (char == '\\\\' && isSpecial(url)) ||\n (!stateOverride && (char == '?' || char == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n shortenURLsPath(url);\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else if (isSingleDot(buffer)) {\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = buffer.charAt(0) + ':'; // normalize windows drive letter\n }\n url.path.push(buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n url.path.shift();\n }\n }\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(char, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n if (char == \"'\" && isSpecial(url)) url.query += '%27';\n else if (char == '#') url.query += '%23';\n else url.query += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLConstructor, 'URL');\n var base = arguments.length > 1 ? arguments[1] : undefined;\n var urlString = String(url);\n var state = setInternalState(that, { type: 'URL' });\n var baseState, failure;\n if (base !== undefined) {\n if (base instanceof URLConstructor) baseState = getInternalURLState(base);\n else {\n failure = parseURL(baseState = {}, String(base));\n if (failure) throw TypeError(failure);\n }\n }\n failure = parseURL(state, urlString, null, baseState);\n if (failure) throw TypeError(failure);\n var searchParams = state.searchParams = new URLSearchParams();\n var searchParamsState = getInternalSearchParamsState(searchParams);\n searchParamsState.updateSearchParams(state.query);\n searchParamsState.updateURL = function () {\n state.query = String(searchParams) || null;\n };\n if (!DESCRIPTORS) {\n that.href = serializeURL.call(that);\n that.origin = getOrigin.call(that);\n that.protocol = getProtocol.call(that);\n that.username = getUsername.call(that);\n that.password = getPassword.call(that);\n that.host = getHost.call(that);\n that.hostname = getHostname.call(that);\n that.port = getPort.call(that);\n that.pathname = getPathname.call(that);\n that.search = getSearch.call(that);\n that.searchParams = getSearchParams.call(that);\n that.hash = getHash.call(that);\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar serializeURL = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (includesCredentials(url)) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n};\n\nvar getOrigin = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var port = url.port;\n if (scheme == 'blob') try {\n return new URL(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !isSpecial(url)) return 'null';\n return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');\n};\n\nvar getProtocol = function () {\n return getInternalURLState(this).scheme + ':';\n};\n\nvar getUsername = function () {\n return getInternalURLState(this).username;\n};\n\nvar getPassword = function () {\n return getInternalURLState(this).password;\n};\n\nvar getHost = function () {\n var url = getInternalURLState(this);\n var host = url.host;\n var port = url.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n};\n\nvar getHostname = function () {\n var host = getInternalURLState(this).host;\n return host === null ? '' : serializeHost(host);\n};\n\nvar getPort = function () {\n var port = getInternalURLState(this).port;\n return port === null ? '' : String(port);\n};\n\nvar getPathname = function () {\n var url = getInternalURLState(this);\n var path = url.path;\n return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n};\n\nvar getSearch = function () {\n var query = getInternalURLState(this).query;\n return query ? '?' + query : '';\n};\n\nvar getSearchParams = function () {\n return getInternalURLState(this).searchParams;\n};\n\nvar getHash = function () {\n var fragment = getInternalURLState(this).fragment;\n return fragment ? '#' + fragment : '';\n};\n\nvar accessorDescriptor = function (getter, setter) {\n return { get: getter, set: setter, configurable: true, enumerable: true };\n};\n\nif (DESCRIPTORS) {\n defineProperties(URLPrototype, {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n href: accessorDescriptor(serializeURL, function (href) {\n var url = getInternalURLState(this);\n var urlString = String(href);\n var failure = parseURL(url, urlString);\n if (failure) throw TypeError(failure);\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n origin: accessorDescriptor(getOrigin),\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n protocol: accessorDescriptor(getProtocol, function (protocol) {\n var url = getInternalURLState(this);\n parseURL(url, String(protocol) + ':', SCHEME_START);\n }),\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n username: accessorDescriptor(getUsername, function (username) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(username));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n password: accessorDescriptor(getPassword, function (password) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(password));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n host: accessorDescriptor(getHost, function (host) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(host), HOST);\n }),\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n hostname: accessorDescriptor(getHostname, function (hostname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(hostname), HOSTNAME);\n }),\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n port: accessorDescriptor(getPort, function (port) {\n var url = getInternalURLState(this);\n if (cannotHaveUsernamePasswordPort(url)) return;\n port = String(port);\n if (port == '') url.port = null;\n else parseURL(url, port, PORT);\n }),\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n pathname: accessorDescriptor(getPathname, function (pathname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n url.path = [];\n parseURL(url, pathname + '', PATH_START);\n }),\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n search: accessorDescriptor(getSearch, function (search) {\n var url = getInternalURLState(this);\n search = String(search);\n if (search == '') {\n url.query = null;\n } else {\n if ('?' == search.charAt(0)) search = search.slice(1);\n url.query = '';\n parseURL(url, search, QUERY);\n }\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n searchParams: accessorDescriptor(getSearchParams),\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n hash: accessorDescriptor(getHash, function (hash) {\n var url = getInternalURLState(this);\n hash = String(hash);\n if (hash == '') {\n url.fragment = null;\n return;\n }\n if ('#' == hash.charAt(0)) hash = hash.slice(1);\n url.fragment = '';\n parseURL(url, hash, FRAGMENT);\n })\n });\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\nredefine(URLPrototype, 'toJSON', function toJSON() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\nredefine(URLPrototype, 'toString', function toString() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {\n return nativeCreateObjectURL.apply(NativeURL, arguments);\n });\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {\n return nativeRevokeObjectURL.apply(NativeURL, arguments);\n });\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\nvar floor = Math.floor;\nvar stringFromCharCode = String.fromCharCode;\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n for (; delta > baseMinusTMin * tMax >> 1; k += base) {\n delta = floor(delta / baseMinusTMin);\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\n// eslint-disable-next-line max-statements\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n output.push(stringFromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n output.push(delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's <n,i> state to <m,0>, but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n for (var k = base; /* no condition */; k += base) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n }\n\n output.push(stringFromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n ++handledCPCount;\n }\n }\n\n ++delta;\n ++n;\n }\n return output.join('');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = input.toLowerCase().replace(regexSeparators, '\\u002E').split('.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);\n }\n return encoded.join('.');\n};\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $fetch = getBuiltIn('fetch');\nvar Headers = getBuiltIn('Headers');\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = it.replace(plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = result.replace(percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replace[match];\n};\n\nvar serialize = function (it) {\n return encodeURIComponent(it).replace(find, replacer);\n};\n\nvar parseSearchParams = function (result, query) {\n if (query) {\n var attributes = query.split('&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = attribute.split('=');\n result.push({\n key: deserialize(entry.shift()),\n value: deserialize(entry.join('='))\n });\n }\n }\n }\n};\n\nvar updateSearchParams = function (query) {\n this.entries.length = 0;\n parseSearchParams(this.entries, query);\n};\n\nvar validateArgumentsLength = function (passed, required) {\n if (passed < required) throw TypeError('Not enough arguments');\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n});\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n var that = this;\n var entries = [];\n var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;\n\n setInternalState(that, {\n type: URL_SEARCH_PARAMS,\n entries: entries,\n updateURL: function () { /* empty */ },\n updateSearchParams: updateSearchParams\n });\n\n if (init !== undefined) {\n if (isObject(init)) {\n iteratorMethod = getIteratorMethod(init);\n if (typeof iteratorMethod === 'function') {\n iterator = iteratorMethod.call(init);\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = entryNext.call(entryIterator)).done ||\n (second = entryNext.call(entryIterator)).done ||\n !entryNext.call(entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n entries.push({ key: first.value + '', value: second.value + '' });\n }\n } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });\n } else {\n parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');\n }\n }\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\nredefineAll(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.appent` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n state.entries.push({ key: name + '', value: value + '' });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) entries.splice(index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) result.push(entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = name + '';\n var val = value + '';\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) entries.splice(index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) entries.push({ key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n var entries = state.entries;\n // Array#sort is not stable in some engines\n var slice = entries.slice();\n var entry, entriesIndex, sliceIndex;\n entries.length = 0;\n for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {\n entry = slice[sliceIndex];\n for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {\n if (entries[entriesIndex].key > entry.key) {\n entries.splice(entriesIndex, 0, entry);\n break;\n }\n }\n if (entriesIndex === sliceIndex) entries.push(entry);\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\nredefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\nredefine(URLSearchParamsPrototype, 'toString', function toString() {\n var entries = getInternalParamsState(this).entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n result.push(serialize(entry.key) + '=' + serialize(entry.value));\n } return result.join('&');\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` for correct work with polyfilled `URLSearchParams`\n// https://github.com/zloirock/core-js/issues/674\nif (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {\n $({ global: true, enumerable: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n var args = [input];\n var init, body, headers;\n if (arguments.length > 1) {\n init = arguments[1];\n if (isObject(init)) {\n body = init.body;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headers.has('content-type')) {\n headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n init = create(init, {\n body: createPropertyDescriptor(0, String(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n }\n args.push(init);\n } return $fetch.apply(this, args);\n }\n });\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","var anObject = require('../internals/an-object');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nmodule.exports = function (it) {\n var iteratorMethod = getIteratorMethod(it);\n if (typeof iteratorMethod != 'function') {\n throw TypeError(String(it) + ' is not iterable');\n } return anObject(iteratorMethod.call(it));\n};\n","// `Symbol.prototype.description` getter\n// https://tc39.github.io/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 });\n\nvar SPECIES = wellKnownSymbol('species');\nvar nativeSlice = [].slice;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === Array || Constructor === undefined) {\n return nativeSlice.call(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","var defineWellKnownSymbol = require('../internals/define-well-known-symbol');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.github.io/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=e||self)[\"v-click-outside\"]=n()}(this,function(){var e=\"undefined\"!=typeof window,n=\"undefined\"!=typeof navigator,t=e&&(\"ontouchstart\"in window||n&&navigator.msMaxTouchPoints>0)?[\"touchstart\"]:[\"click\"];function i(e){var n=e.event,t=e.handler;(0,e.middleware)(n)&&t(n)}function r(e,n){var r=function(e){var n=\"function\"==typeof e;if(!n&&\"object\"!=typeof e)throw new Error(\"v-click-outside: Binding value must be a function or an object\");return{handler:n?e:e.handler,middleware:e.middleware||function(e){return e},events:e.events||t,isActive:!(!1===e.isActive),detectIframe:!(!1===e.detectIframe)}}(n.value),d=r.handler,o=r.middleware,a=r.detectIframe;if(r.isActive){if(e[\"__v-click-outside\"]=r.events.map(function(n){return{event:n,srcTarget:document.documentElement,handler:function(n){return function(e){var n=e.el,t=e.event,r=e.handler,d=e.middleware,o=t.path||t.composedPath&&t.composedPath();(o?o.indexOf(n)<0:!n.contains(t.target))&&i({event:t,handler:r,middleware:d})}({el:e,event:n,handler:d,middleware:o})}}}),a){var c={event:\"blur\",srcTarget:window,handler:function(n){return function(e){var n=e.el,t=e.event,r=e.handler,d=e.middleware;setTimeout(function(){var e=document.activeElement;\"IFRAME\"!==e.tagName||n.contains(e)||i({event:t,handler:r,middleware:d})},0)}({el:e,event:n,handler:d,middleware:o})}};e[\"__v-click-outside\"]=[].concat(e[\"__v-click-outside\"],[c])}e[\"__v-click-outside\"].forEach(function(n){var t=n.event,i=n.srcTarget,r=n.handler;return setTimeout(function(){e[\"__v-click-outside\"]&&i.addEventListener(t,r,!1)},0)})}}function d(e){(e[\"__v-click-outside\"]||[]).forEach(function(e){return e.srcTarget.removeEventListener(e.event,e.handler,!1)}),delete e[\"__v-click-outside\"]}var o=e?{bind:r,update:function(e,n){var t=n.value,i=n.oldValue;JSON.stringify(t)!==JSON.stringify(i)&&(d(e),r(e,{value:t}))},unbind:d}:{};return{install:function(e){e.directive(\"click-outside\",o)},directive:o}});\n//# sourceMappingURL=v-click-outside.umd.js.map\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar classof = require('../internals/classof-raw');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar PromiseConstructor = NativePromise;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar IS_NODE = classof(process) == 'process';\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (V8_VERSION === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE && typeof PromiseRejectionEvent != 'function') return true;\n }\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (promise, state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(promise, state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (handler = global['on' + name]) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (promise, state) {\n task.call(global, function () {\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (promise, state) {\n task.call(global, function () {\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, promise, state, unwrap) {\n return function (value) {\n fn(promise, state, value, unwrap);\n };\n};\n\nvar internalReject = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(promise, state, true);\n};\n\nvar internalResolve = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, promise, wrapper, state),\n bind(internalReject, promise, wrapper, state)\n );\n } catch (error) {\n internalReject(promise, wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(promise, state, false);\n }\n } catch (error) {\n internalReject(promise, { done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, this, state), bind(internalReject, this, state));\n } catch (error) {\n internalReject(this, state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(this, state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, promise, state);\n this.reject = bind(internalReject, promise, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function') {\n nativeThen = NativePromise.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));\n }\n });\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar classof = require('../internals/classof-raw');\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar IS_NODE = classof(process) == 'process';\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n } else if (MutationObserver && !IS_IOS) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCapabilities = getCapabilities;\n\nvar _initialState = require(\"@nextcloud/initial-state\");\n\nfunction getCapabilities() {\n try {\n return (0, _initialState.loadState)('core', 'capabilities');\n } catch (error) {\n console.debug('Could not find capabilities initial state fall back to _oc_capabilities');\n\n if (!('_oc_capabilities' in window)) {\n return {};\n }\n\n return window['_oc_capabilities'];\n }\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.loadState = loadState;\n\n/**\n * @param app app ID, e.g. \"mail\"\n * @param key name of the property\n * @throws if the key can't be found\n */\nfunction loadState(app, key) {\n var elem = document.querySelector(\"#initial-state-\".concat(app, \"-\").concat(key));\n\n if (elem === null) {\n throw new Error(\"Could not find initial state \".concat(key, \" of \").concat(app));\n }\n\n try {\n return JSON.parse(atob(elem.value));\n } catch (e) {\n throw new Error(\"Could not parse initial state \".concat(key, \" of \").concat(app));\n }\n}\n//# sourceMappingURL=index.js.map","(function(){\r\n var crypt = require('crypt'),\r\n utf8 = require('charenc').utf8,\r\n isBuffer = require('is-buffer'),\r\n bin = require('charenc').bin,\r\n\r\n // The core\r\n md5 = function (message, options) {\r\n // Convert to byte array\r\n if (message.constructor == String)\r\n if (options && options.encoding === 'binary')\r\n message = bin.stringToBytes(message);\r\n else\r\n message = utf8.stringToBytes(message);\r\n else if (isBuffer(message))\r\n message = Array.prototype.slice.call(message, 0);\r\n else if (!Array.isArray(message) && message.constructor !== Uint8Array)\r\n message = message.toString();\r\n // else, assume byte array already\r\n\r\n var m = crypt.bytesToWords(message),\r\n l = message.length * 8,\r\n a = 1732584193,\r\n b = -271733879,\r\n c = -1732584194,\r\n d = 271733878;\r\n\r\n // Swap endian\r\n for (var i = 0; i < m.length; i++) {\r\n m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF |\r\n ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00;\r\n }\r\n\r\n // Padding\r\n m[l >>> 5] |= 0x80 << (l % 32);\r\n m[(((l + 64) >>> 9) << 4) + 14] = l;\r\n\r\n // Method shortcuts\r\n var FF = md5._ff,\r\n GG = md5._gg,\r\n HH = md5._hh,\r\n II = md5._ii;\r\n\r\n for (var i = 0; i < m.length; i += 16) {\r\n\r\n var aa = a,\r\n bb = b,\r\n cc = c,\r\n dd = d;\r\n\r\n a = FF(a, b, c, d, m[i+ 0], 7, -680876936);\r\n d = FF(d, a, b, c, m[i+ 1], 12, -389564586);\r\n c = FF(c, d, a, b, m[i+ 2], 17, 606105819);\r\n b = FF(b, c, d, a, m[i+ 3], 22, -1044525330);\r\n a = FF(a, b, c, d, m[i+ 4], 7, -176418897);\r\n d = FF(d, a, b, c, m[i+ 5], 12, 1200080426);\r\n c = FF(c, d, a, b, m[i+ 6], 17, -1473231341);\r\n b = FF(b, c, d, a, m[i+ 7], 22, -45705983);\r\n a = FF(a, b, c, d, m[i+ 8], 7, 1770035416);\r\n d = FF(d, a, b, c, m[i+ 9], 12, -1958414417);\r\n c = FF(c, d, a, b, m[i+10], 17, -42063);\r\n b = FF(b, c, d, a, m[i+11], 22, -1990404162);\r\n a = FF(a, b, c, d, m[i+12], 7, 1804603682);\r\n d = FF(d, a, b, c, m[i+13], 12, -40341101);\r\n c = FF(c, d, a, b, m[i+14], 17, -1502002290);\r\n b = FF(b, c, d, a, m[i+15], 22, 1236535329);\r\n\r\n a = GG(a, b, c, d, m[i+ 1], 5, -165796510);\r\n d = GG(d, a, b, c, m[i+ 6], 9, -1069501632);\r\n c = GG(c, d, a, b, m[i+11], 14, 643717713);\r\n b = GG(b, c, d, a, m[i+ 0], 20, -373897302);\r\n a = GG(a, b, c, d, m[i+ 5], 5, -701558691);\r\n d = GG(d, a, b, c, m[i+10], 9, 38016083);\r\n c = GG(c, d, a, b, m[i+15], 14, -660478335);\r\n b = GG(b, c, d, a, m[i+ 4], 20, -405537848);\r\n a = GG(a, b, c, d, m[i+ 9], 5, 568446438);\r\n d = GG(d, a, b, c, m[i+14], 9, -1019803690);\r\n c = GG(c, d, a, b, m[i+ 3], 14, -187363961);\r\n b = GG(b, c, d, a, m[i+ 8], 20, 1163531501);\r\n a = GG(a, b, c, d, m[i+13], 5, -1444681467);\r\n d = GG(d, a, b, c, m[i+ 2], 9, -51403784);\r\n c = GG(c, d, a, b, m[i+ 7], 14, 1735328473);\r\n b = GG(b, c, d, a, m[i+12], 20, -1926607734);\r\n\r\n a = HH(a, b, c, d, m[i+ 5], 4, -378558);\r\n d = HH(d, a, b, c, m[i+ 8], 11, -2022574463);\r\n c = HH(c, d, a, b, m[i+11], 16, 1839030562);\r\n b = HH(b, c, d, a, m[i+14], 23, -35309556);\r\n a = HH(a, b, c, d, m[i+ 1], 4, -1530992060);\r\n d = HH(d, a, b, c, m[i+ 4], 11, 1272893353);\r\n c = HH(c, d, a, b, m[i+ 7], 16, -155497632);\r\n b = HH(b, c, d, a, m[i+10], 23, -1094730640);\r\n a = HH(a, b, c, d, m[i+13], 4, 681279174);\r\n d = HH(d, a, b, c, m[i+ 0], 11, -358537222);\r\n c = HH(c, d, a, b, m[i+ 3], 16, -722521979);\r\n b = HH(b, c, d, a, m[i+ 6], 23, 76029189);\r\n a = HH(a, b, c, d, m[i+ 9], 4, -640364487);\r\n d = HH(d, a, b, c, m[i+12], 11, -421815835);\r\n c = HH(c, d, a, b, m[i+15], 16, 530742520);\r\n b = HH(b, c, d, a, m[i+ 2], 23, -995338651);\r\n\r\n a = II(a, b, c, d, m[i+ 0], 6, -198630844);\r\n d = II(d, a, b, c, m[i+ 7], 10, 1126891415);\r\n c = II(c, d, a, b, m[i+14], 15, -1416354905);\r\n b = II(b, c, d, a, m[i+ 5], 21, -57434055);\r\n a = II(a, b, c, d, m[i+12], 6, 1700485571);\r\n d = II(d, a, b, c, m[i+ 3], 10, -1894986606);\r\n c = II(c, d, a, b, m[i+10], 15, -1051523);\r\n b = II(b, c, d, a, m[i+ 1], 21, -2054922799);\r\n a = II(a, b, c, d, m[i+ 8], 6, 1873313359);\r\n d = II(d, a, b, c, m[i+15], 10, -30611744);\r\n c = II(c, d, a, b, m[i+ 6], 15, -1560198380);\r\n b = II(b, c, d, a, m[i+13], 21, 1309151649);\r\n a = II(a, b, c, d, m[i+ 4], 6, -145523070);\r\n d = II(d, a, b, c, m[i+11], 10, -1120210379);\r\n c = II(c, d, a, b, m[i+ 2], 15, 718787259);\r\n b = II(b, c, d, a, m[i+ 9], 21, -343485551);\r\n\r\n a = (a + aa) >>> 0;\r\n b = (b + bb) >>> 0;\r\n c = (c + cc) >>> 0;\r\n d = (d + dd) >>> 0;\r\n }\r\n\r\n return crypt.endian([a, b, c, d]);\r\n };\r\n\r\n // Auxiliary functions\r\n md5._ff = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & c | ~b & d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._gg = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & d | c & ~d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._hh = function (a, b, c, d, x, s, t) {\r\n var n = a + (b ^ c ^ d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._ii = function (a, b, c, d, x, s, t) {\r\n var n = a + (c ^ (b | ~d)) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n\r\n // Package private blocksize\r\n md5._blocksize = 16;\r\n md5._digestsize = 16;\r\n\r\n module.exports = function (message, options) {\r\n if (message === undefined || message === null)\r\n throw new Error('Illegal argument ' + message);\r\n\r\n var digestbytes = crypt.wordsToBytes(md5(message, options));\r\n return options && options.asBytes ? digestbytes :\r\n options && options.asString ? bin.bytesToString(digestbytes) :\r\n crypt.bytesToHex(digestbytes);\r\n };\r\n\r\n})();\r\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","import mod from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\"","// 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, \".mention[data-v-0fd54af1]{display:contents;white-space:nowrap}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","import mod from \"-!../../node_modules/style-loader/dist/cjs.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=0d034530&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=0d034530&lang=scss&scoped=true&\"","// 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, \"[data-v-0d034530] .rich-text--wrapper{white-space:pre-wrap;word-break:break-word}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\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 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 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","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","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 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","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","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 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","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","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\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","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\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 StorageBuilder =\n/*#__PURE__*/\nfunction () {\n function StorageBuilder(appId) {\n _classCallCheck(this, StorageBuilder);\n\n _defineProperty(this, \"appId\", void 0);\n\n _defineProperty(this, \"persisted\", false);\n\n _defineProperty(this, \"clearedOnLogout\", false);\n\n this.appId = appId;\n }\n\n _createClass(StorageBuilder, [{\n key: \"persist\",\n value: function persist() {\n var _persist = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n this.persisted = _persist;\n return this;\n }\n }, {\n key: \"clearOnLogout\",\n value: function clearOnLogout() {\n var clear = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n this.clearedOnLogout = clear;\n return this;\n }\n }, {\n key: \"build\",\n value: function build() {\n return new _scopedstorage.default(this.appId, this.persisted ? window.localStorage : window.sessionStorage, !this.clearedOnLogout);\n }\n }]);\n\n return StorageBuilder;\n}();\n\nexports.default = StorageBuilder;\n//# sourceMappingURL=storagebuilder.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/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","import mod from \"-!../node_modules/style-loader/dist/cjs.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=7bbc2826&scoped=true&lang=css&\"; export default mod; export * from \"-!../node_modules/style-loader/dist/cjs.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=7bbc2826&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-7bbc2826],\\n.fade-leave-active[data-v-7bbc2826],\\n.fade-collapse-enter-active[data-v-7bbc2826],\\n.fade-collapse-leave-active[data-v-7bbc2826] {\\n\\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\\n}\\n.fade-collapse-enter[data-v-7bbc2826],\\n.fade-collapse-leave-to[data-v-7bbc2826] {\\n\\topacity: 0;\\n\\tmax-height: 0;\\n}\\n.fade-enter[data-v-7bbc2826],\\n.fade-leave-to[data-v-7bbc2826] {\\n\\topacity: 0;\\n}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var api = require(\"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../css-loader/dist/cjs.js!../../../sass-loader/dist/cjs.js!./toast.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_GET_URL_IMPORT___ = require(\"../../../css-loader/dist/runtime/getUrl.js\");\nvar ___CSS_LOADER_URL_IMPORT_0___ = require(\"./close.svg\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\nexports.push([module.id, \".toastify.dialogs{min-width:200px;background:none;background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 6px 0 var(--color-box-shadow);padding:12px;padding-right:34px;margin-top:45px;position:fixed;z-index:9000;border-radius:var(--border-radius)}.toastify.dialogs .toast-undo-button,.toastify.dialogs .toast-close{position:absolute;top:0;right:0;overflow:hidden;box-sizing:border-box;min-width:44px;height:100%;padding:12px;white-space:nowrap;background-repeat:no-repeat;background-position:center;background-color:transparent;min-height:0}.toastify.dialogs .toast-undo-button.toast-close,.toastify.dialogs .toast-close.toast-close{background-image:url(\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \");text-indent:200%;opacity:.4}.toastify.dialogs .toast-undo-button.toast-undo-button,.toastify.dialogs .toast-close.toast-undo-button{margin:3px;height:calc(100% - 2 * 3px)}.toastify.dialogs .toast-undo-button:hover,.toastify.dialogs .toast-undo-button:focus,.toastify.dialogs .toast-undo-button:active,.toastify.dialogs .toast-close:hover,.toastify.dialogs .toast-close:focus,.toastify.dialogs .toast-close:active{cursor:pointer;opacity:1}.toastify.dialogs.toastify-top{right:10px}.toastify.dialogs.toast-with-click{cursor:pointer}.toastify.dialogs.toast-error{border-left:3px solid var(--color-error)}.toastify.dialogs.toast-info{border-left:3px solid var(--color-primary)}.toastify.dialogs.toast-warning{border-left:3px solid var(--color-warning)}.toastify.dialogs.toast-success{border-left:3px solid var(--color-success)}.toastify.dialogs.toast-undo{border-left:3px solid var(--color-success)}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n // eslint-disable-next-line no-param-reassign\n options = {};\n } // eslint-disable-next-line no-underscore-dangle, no-param-reassign\n\n\n url = url && url.__esModule ? url.default : url;\n\n if (typeof url !== 'string') {\n return url;\n } // If url is already wrapped in quotes, remove them\n\n\n if (/^['\"].*['\"]$/.test(url)) {\n // eslint-disable-next-line no-param-reassign\n url = url.slice(1, -1);\n }\n\n if (options.hash) {\n // eslint-disable-next-line no-param-reassign\n url += options.hash;\n } // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n\n\n if (/[\"'() \\t\\n]/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, '\\\\n'), \"\\\"\");\n }\n\n return url;\n};","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=\"","/* 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=5788e320&\"\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'\nimport { showError } from '@nextcloud/dialogs'\n\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\twindow.location = 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,\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\tshowError(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 }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.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!./DefaultParameter.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2019 Joas Schilling <coding@schilljs.com>\n -\n - @author 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<template>\n\t<a v-if=\"link\"\n\t\t:href=\"link\"\n\t\tclass=\"external\"\n\t\ttarget=\"_blank\"\n\t\trel=\"noopener noreferrer\">\n\t\t<strong>{{ name }}</strong>\n\t</a>\n\t<strong v-else>{{ name }}</strong>\n</template>\n\n<script>\nexport default {\n\tname: 'DefaultParameter',\n\tprops: {\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tid: {\n\t\t\ttype: [Number, String],\n\t\t\trequired: true,\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.external:after {\n\tcontent: ' ↗';\n}\n</style>\n","import { render, staticRenderFns } from \"./DefaultParameter.vue?vue&type=template&id=49ca75ce&scoped=true&\"\nimport script from \"./DefaultParameter.vue?vue&type=script&lang=js&\"\nexport * from \"./DefaultParameter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\"\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 \"49ca75ce\",\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.link)?_c('a',{staticClass:\"external\",attrs:{\"href\":_vm.link,\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('strong',[_vm._v(_vm._s(_vm.name))])]):_c('strong',[_vm._v(_vm._s(_vm.name))])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=2980f23f&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.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","<!--\n - @copyright Copyright (c) 2019 Joas Schilling <coding@schilljs.com>\n -\n - @author 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<template>\n\t<a\n\t\tv-tooltip.bottom=\"title\"\n\t\tclass=\"filename\"\n\t\t:href=\"link\">{{ name }}</a>\n</template>\n\n<script>\nimport Tooltip from '@nextcloud/vue/dist/Directives/Tooltip'\n\nexport default {\n\tname: 'File',\n\n\tdirectives: {\n\t\ttooltip: Tooltip,\n\t},\n\n\tprops: {\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tid: {\n\t\t\ttype: [Number, String],\n\t\t\trequired: true,\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tpath: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tcomputed: {\n\t\ttitle() {\n\t\t\tconst lastSlashPosition = this.path.lastIndexOf('/')\n\t\t\tconst firstSlashPosition = this.path.indexOf('/')\n\t\t\tconst path = this.path.substring(firstSlashPosition === 0 ? 1 : 0, lastSlashPosition)\n\n\t\t\tif (path.length === 0) {\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\treturn t('notifications', 'in {path}', {\n\t\t\t\tpath,\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('a',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.bottom\",value:(_vm.title),expression:\"title\",modifiers:{\"bottom\":true}}],staticClass:\"filename\",attrs:{\"href\":_vm.link}},[_vm._v(_vm._s(_vm.name))])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.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!./User.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2019 Joas Schilling <coding@schilljs.com>\n -\n - @author 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<template>\n\t<div class=\"mention\">\n\t\t<UserBubble v-if=\"!cloudId\"\n\t\t\t:display-name=\"name\"\n\t\t\t:user=\"id\" />\n\t\t<strong v-else\n\t\t\t:title=\"cloudId\">\n\t\t\t{{ name }}\n\t\t</strong>\n\t</div>\n</template>\n\n<script>\n\nimport UserBubble from '@nextcloud/vue/dist/Components/UserBubble'\n\nexport default {\n\tname: 'User',\n\n\tcomponents: {\n\t\tUserBubble,\n\t},\n\n\tprops: {\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tserver: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tcloudId() {\n\t\t\treturn this.server ? (this.id + '@' + this.server) : ''\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mention {\n\tdisplay: contents;\n\twhite-space: nowrap;\n}\n</style>\n","import { render, staticRenderFns } from \"./User.vue?vue&type=template&id=0fd54af1&scoped=true&\"\nimport script from \"./User.vue?vue&type=script&lang=js&\"\nexport * from \"./User.vue?vue&type=script&lang=js&\"\nimport style0 from \"./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\"\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 \"0fd54af1\",\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 _c('div',{staticClass:\"mention\"},[(!_vm.cloudId)?_c('UserBubble',{attrs:{\"display-name\":_vm.name,\"user\":_vm.id}}):_c('strong',{attrs:{\"title\":_vm.cloudId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.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!./Notification.vue?vue&type=script&lang=js&\"","<template>\n\t<div class=\"notification\" :data-id=\"notificationId\" :data-timestamp=\"timestamp\">\n\t\t<div class=\"notification-heading\">\n\t\t\t<span\n\t\t\t\tv-tooltip.bottom=\"absoluteDate\"\n\t\t\t\tclass=\"notification-time live-relative-timestamp\"\n\t\t\t\t:data-timestamp=\"timestamp\">{{ 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<RichText\n\t\t\t\tv-if=\"subjectRich\"\n\t\t\t\t:text=\"subjectRich\"\n\t\t\t\t:arguments=\"preparedSubjectParameters\" />\n\t\t\t<span v-else class=\"subject\">{{ subject }}</span>\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<RichText\n\t\t\t\tv-if=\"subjectRich\"\n\t\t\t\t:text=\"subjectRich\"\n\t\t\t\t:arguments=\"preparedSubjectParameters\" />\n\t\t\t<span v-else class=\"subject\">{{ subject }}</span>\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 }\">\n\t\t\t\t<RichText\n\t\t\t\t\tv-if=\"messageRich\"\n\t\t\t\t\t:text=\"messageRich\"\n\t\t\t\t\t:arguments=\"preparedMessageParameters\"\n\t\t\t\t\t:autolink=\"true\" />\n\t\t\t\t<span v-else>{{ message }}</span>\n\t\t\t</div>\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 Tooltip from '@nextcloud/vue/dist/Directives/Tooltip'\nimport { showError } from '@nextcloud/dialogs'\nimport Action from './Action'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport moment from '@nextcloud/moment'\nimport RichText from '@juliushaertl/vue-richtext'\nimport DefaultParameter from './Parameters/DefaultParameter'\nimport File from './Parameters/File'\nimport User from './Parameters/User'\n\nexport default {\n\tname: 'Notification',\n\n\tcomponents: {\n\t\tAction,\n\t\tRichText,\n\t},\n\n\tdirectives: {\n\t\ttooltip: Tooltip,\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() {\n\t\t\treturn (new Date(this.datetime)).valueOf()\n\t\t},\n\t\tabsoluteDate() {\n\t\t\treturn moment(this.timestamp).format('LLL')\n\t\t},\n\t\trelativeDate() {\n\t\t\tconst diff = moment().diff(moment(this.timestamp))\n\t\t\tif (diff >= 0 && diff < 45000) {\n\t\t\t\treturn t('core', 'seconds ago')\n\t\t\t}\n\t\t\treturn moment(this.timestamp).fromNow()\n\t\t},\n\t\tuseLink() {\n\t\t\tif (!this.link) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tlet parametersHaveLink = false\n\t\t\tObject.keys(this.subjectRichParameters).forEach(p => {\n\t\t\t\tif (p.link) {\n\t\t\t\t\tparametersHaveLink = true\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn parametersHaveLink\n\t\t},\n\n\t\tpreparedSubjectParameters() {\n\t\t\treturn this.prepareParameters(this.subjectRichParameters)\n\t\t},\n\n\t\tpreparedMessageParameters() {\n\t\t\treturn this.prepareParameters(this.messageRichParameters)\n\t\t},\n\n\t\tisCollapsedMessage() {\n\t\t\treturn this.message.length > 200 && !this.showFullMessage\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis._$el = $(this.$el)\n\n\t\t// Parents: TransitionGroup > NotificationsList\n\t\tif (this.$parent.$parent.showBrowserNotifications) {\n\t\t\tthis._createWebNotification()\n\t\t}\n\t},\n\n\tmethods: {\n\t\tprepareParameters(parameters) {\n\t\t\tconst richParameters = {}\n\t\t\tObject.keys(parameters).forEach(p => {\n\t\t\t\tconst type = parameters[p].type\n\t\t\t\tif (type === 'user') {\n\t\t\t\t\trichParameters[p] = {\n\t\t\t\t\t\tcomponent: User,\n\t\t\t\t\t\tprops: parameters[p],\n\t\t\t\t\t}\n\t\t\t\t} else if (type === 'file') {\n\t\t\t\t\trichParameters[p] = {\n\t\t\t\t\t\tcomponent: File,\n\t\t\t\t\t\tprops: parameters[p],\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\trichParameters[p] = {\n\t\t\t\t\t\tcomponent: DefaultParameter,\n\t\t\t\t\t\tprops: parameters[p],\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn richParameters\n\t\t},\n\n\t\tonClickMessage(e) {\n\t\t\tif (e.target.classList.contains('rich-text--wrapper')) {\n\t\t\t\tthis.showFullMessage = !this.showFullMessage\n\t\t\t}\n\t\t},\n\n\t\tonDismissNotification() {\n\t\t\taxios\n\t\t\t\t.delete(generateOcsUrl('apps/notifications/api/v2', 2) + 'notifications/' + this.notificationId)\n\t\t\t\t.then(() => {\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\tshowError(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() {\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\n<style lang=\"scss\" scoped>\n::v-deep .rich-text--wrapper {\n\twhite-space: pre-wrap;\n\tword-break: break-word;\n}\n</style>\n","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=0d034530&scoped=true&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&id=0d034530&lang=scss&scoped=true&\"\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 \"0d034530\",\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 _c('div',{staticClass:\"notification\",attrs:{\"data-id\":_vm.notificationId,\"data-timestamp\":_vm.timestamp}},[_c('div',{staticClass:\"notification-heading\"},[_c('span',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.bottom\",value:(_vm.absoluteDate),expression:\"absoluteDate\",modifiers:{\"bottom\":true}}],staticClass:\"notification-time live-relative-timestamp\",attrs:{\"data-timestamp\":_vm.timestamp}},[_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(\" \"),(_vm.subjectRich)?_c('RichText',{attrs:{\"text\":_vm.subjectRich,\"arguments\":_vm.preparedSubjectParameters}}):_c('span',{staticClass:\"subject\"},[_vm._v(_vm._s(_vm.subject))])],1):_c('div',{staticClass:\"notification-subject\"},[(_vm.icon)?_c('span',{staticClass:\"image\"},[_c('img',{staticClass:\"notification-icon\",attrs:{\"src\":_vm.icon}})]):_vm._e(),_vm._v(\" \"),(_vm.subjectRich)?_c('RichText',{attrs:{\"text\":_vm.subjectRich,\"arguments\":_vm.preparedSubjectParameters}}):_c('span',{staticClass:\"subject\"},[_vm._v(_vm._s(_vm.subject))])],1),_vm._v(\" \"),(_vm.message)?_c('div',{staticClass:\"notification-message\",on:{\"click\":_vm.onClickMessage}},[_c('div',{staticClass:\"message-container\",class:{ collapsed: _vm.isCollapsedMessage }},[(_vm.messageRich)?_c('RichText',{attrs:{\"text\":_vm.messageRich,\"arguments\":_vm.preparedMessageParameters,\"autolink\":true}}):_c('span',[_vm._v(_vm._s(_vm.message))])],1),_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 }","/**\n * @copyright Copyright (c) 2020 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 { getBuilder } from '@nextcloud/browser-storage'\n\nexport default getBuilder('notifications').clearOnLogout().persist().build()\n","/**\n * @copyright Copyright (c) 2020 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 moment from '@nextcloud/moment'\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport BrowserStorage from './BrowserStorage'\n\nconst getNotificationsData = async(tabId, lastETag, forceRefresh) => {\n\tconst lastUpdated = parseInt(BrowserStorage.getItem('lastUpdated'), 10)\n\tconst lastTab = BrowserStorage.getItem('tabId')\n\tconst now = moment().format('X')\n\n\tif (forceRefresh\n\t\t// Allow the same tab to refresh with less than the timeout,\n\t\t|| (lastTab === tabId && lastUpdated + 25 < now)\n\t\t// and at the same time give it some more time against other tabs.\n\t\t|| lastUpdated + 35 < now) {\n\t\tBrowserStorage.setItem('tabId', tabId)\n\t\tBrowserStorage.setItem('lastUpdated', now)\n\t\t// console.debug('Refetching data in ' + tabId + ' (prev: ' + lastTab + ' age: ' + (now - lastUpdated) + ')')\n\t\tawait refreshData(lastETag)\n\t// } else {\n\t// console.debug('Reusing data in ' + tabId + ' (prev: ' + lastTab + ' age: ' + (now - lastUpdated) + ')')\n\t}\n\n\treturn {\n\t\tstatus: parseInt(BrowserStorage.getItem('status'), 10),\n\t\theaders: JSON.parse(BrowserStorage.getItem('headers') || '[]'),\n\t\tdata: JSON.parse(BrowserStorage.getItem('data') || '[]'),\n\t\ttabId: BrowserStorage.getItem('tabId'),\n\t\tlastUpdated: parseInt(BrowserStorage.getItem('lastUpdated'), 10),\n\t}\n}\n\nconst refreshData = async(lastETag) => {\n\tlet requestConfig = {}\n\tif (lastETag) {\n\t\trequestConfig = {\n\t\t\theaders: {\n\t\t\t\t'If-None-Match': lastETag,\n\t\t\t},\n\t\t}\n\t}\n\n\ttry {\n\t\tconst response = await axios.get(generateOcsUrl('apps/notifications/api/v2', 2) + 'notifications', requestConfig)\n\n\t\tBrowserStorage.setItem('status', '' + response.status)\n\t\tif (response.status !== 204) {\n\t\t\tBrowserStorage.setItem('headers', JSON.stringify(response.headers))\n\t\t\tBrowserStorage.setItem('data', JSON.stringify(response.data.ocs.data))\n\t\t}\n\t} catch (error) {\n\t\tBrowserStorage.setItem('status', '' + error.response.status)\n\t}\n}\n\nexport {\n\tgetNotificationsData,\n}\n","<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, unsubscribe } from '@nextcloud/event-bus'\nimport { showError } from '@nextcloud/dialogs'\nimport { imagePath, generateOcsUrl } from '@nextcloud/router'\nimport { getNotificationsData } from './services/notificationsService'\n\nexport default {\n\tname: 'App',\n\n\tcomponents: {\n\t\tNotification,\n\t},\n\n\tdata() {\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\t\t\tlastTabId: null,\n\t\t\tuserStatus: null,\n\t\t\ttabId: 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() {\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 imagePath('notifications', iconPath)\n\t\t},\n\n\t\tshowBrowserNotifications() {\n\t\t\treturn this.backgroundFetching\n\t\t\t\t&& this.webNotificationsGranted\n\t\t\t\t&& this.userStatus !== 'dnd'\n\t\t\t\t&& this.tabId !== this.lastTabId\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.tabId = OC.requestToken || ('' + Math.random())\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', this.handleNetworkOffline)\n\t\tsubscribe('networkOnline', this.handleNetworkOnline)\n\t},\n\n\tbeforeDestroy() {\n\t\tunsubscribe('networkOffline', this.handleNetworkOffline)\n\t\tunsubscribe('networkOnline', this.handleNetworkOnline)\n\t},\n\n\tupdated() {\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\thandleNetworkOffline() {\n\t\t\tthis._setPollingInterval(300000)\n\t\t},\n\n\t\thandleNetworkOnline() {\n\t\t\tthis._fetch()\n\t\t\tthis._setPollingInterval(30000)\n\t\t\tthis.setupBackgroundFetcher()\n\t\t},\n\n\t\tsetupBackgroundFetcher() {\n\t\t\tif (OC.config.session_keepalive) {\n\t\t\t\tthis.interval = window.setInterval(this._backgroundFetch.bind(this), this.pollInterval)\n\t\t\t}\n\t\t},\n\n\t\tonDismissAll() {\n\t\t\taxios\n\t\t\t\t.delete(generateOcsUrl('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\tshowError(t('notifications', 'Failed to dismiss all notifications'))\n\t\t\t\t})\n\t\t},\n\t\tonRemove(index) {\n\t\t\tthis.notifications.splice(index, 1)\n\t\t},\n\n\t\tinvertedTheme() {\n\t\t\treturn OCA.Theming && OCA.Theming.inverted\n\t\t},\n\n\t\tisRedThemed() {\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(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\tasync _fetch() {\n\t\t\tconst response = await getNotificationsData(this.tabId, this.lastETag, !this.backgroundFetching)\n\n\t\t\tif (response.status === 204) {\n\t\t\t\t// 204 No Content - Intercept when no notifiers are there.\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t} else if (response.status === 200) {\n\t\t\t\tthis.userStatus = response.headers['x-nextcloud-user-status']\n\t\t\t\tthis.lastETag = response.headers.etag\n\t\t\t\tthis.lastTabId = response.lastTabId\n\t\t\t\tthis.notifications = response.data\n\t\t\t\tthis._setPollingInterval(30000)\n\t\t\t} else if (response.status === 304) {\n\t\t\t\t// 304 - Not modified\n\t\t\t\tthis._setPollingInterval(30000)\n\t\t\t} else if (response.status === 503) {\n\t\t\t\t// 503 - Maintenance mode\n\t\t\t\tconsole.info('Slowing down notifications: instance is in maintenance mode.')\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t} else if (response.status === 404) {\n\t\t\t\t// 404 - App disabled\n\t\t\t\tconsole.info('Slowing down notifications: app is disabled.')\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t} else {\n\t\t\t\tconsole.info('Slowing down notifications: Status ' + response.status)\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t}\n\t\t},\n\n\t\t_backgroundFetch() {\n\t\t\tthis.backgroundFetching = true\n\t\t\tthis._fetch()\n\t\t},\n\n\t\t_setPollingInterval(pollInterval) {\n\t\t\tif (this.interval && 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(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() {\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\tasync requestWebNotificationPermissions() {\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\n\t.fade-collapse-enter,\n\t.fade-collapse-leave-to {\n\t\topacity: 0;\n\t\tmax-height: 0;\n\t}\n\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=7bbc2826&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=7bbc2826&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 \"7bbc2826\",\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\n// Styles\nimport '@nextcloud/dialogs/styles/toast.scss'\n\nVue.prototype.t = t\nVue.prototype.n = n\nVue.prototype.OC = OC\nVue.prototype.OCA = OCA\n\nconst unifiedSearch = document.getElementById('unified-search')\nconst notificationsBell = document.createElement('div')\nnotificationsBell.setAttribute('id', 'notifications')\nunifiedSearch.insertAdjacentHTML('afterend', notificationsBell.outerHTML)\n\nexport default new Vue({\n\tel: '#notifications',\n\trender: h => h(App),\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/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/fails.js","webpack:///./node_modules/@nextcloud/axios/dist/index.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/@nextcloud/router/dist/index.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-object.js","webpack:///./node_modules/@nextcloud/moment/dist/index.js","webpack:///./node_modules/vue/dist/vue.runtime.esm.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/has.js","webpack:///./node_modules/@nextcloud/dialogs/dist/index.es.js","webpack:///../lib/index.ts","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/export.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-length.js","webpack:///./src/Components/Parameters/DefaultParameter.vue?5079","webpack:///./src/Components/Parameters/User.vue?71e6","webpack:///./src/Components/Notification.vue?7753","webpack:///./src/App.vue?0fdf","webpack:///./node_modules/@nextcloud/vue/dist/Directives/Tooltip.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.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-v8-version.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/iterate.js","webpack:///./node_modules/core-js/internals/classof.js","webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///./node_modules/core-js/internals/redefine-all.js","webpack:///./node_modules/core-js/modules/es.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/es.regexp.exec.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/set-global.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/popper.js/dist/esm/popper.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/object-assign.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/@nextcloud/auth/dist/index.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-species-create.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js","webpack:///./node_modules/core-js/internals/engine-user-agent.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/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/is-array-iterator-method.js","webpack:///./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/set-species.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///./node_modules/core-js/modules/es.array.index-of.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.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/core-js/internals/well-known-symbol-wrapped.js","webpack:///./node_modules/core-js/internals/define-well-known-symbol.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/native-url.js","webpack:///./node_modules/core-js/internals/array-from.js","webpack:///./node_modules/core-js/internals/task.js","webpack:///./node_modules/core-js/internals/engine-is-ios.js","webpack:///./node_modules/core-js/internals/new-promise-capability.js","webpack:///./node_modules/charenc/charenc.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/an-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/uid.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-array.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/v8-version.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/scopedstorage.js","webpack:///./node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///./node_modules/@juliushaertl/vue-richtext/dist/vue-richtext.js","webpack:///./node_modules/@nextcloud/vue/dist/Components/UserBubble.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/index.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/own-keys.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/helpers/cookies.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/cancel/CancelToken.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/@nextcloud/auth/dist/requesttoken.js","webpack:///../lib/ProxyBus.ts","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js","webpack:///../lib/SimpleBus.ts","webpack:///./node_modules/core-js/modules/es.array.filter.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/collection-strong.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/@nextcloud/auth/dist/user.js","webpack:///./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./node_modules/@nextcloud/moment/node_modules/node-gettext/lib/gettext.js","webpack:///./node_modules/lodash.get/index.js","webpack:///./node_modules/@nextcloud/moment/node_modules/node-gettext/lib/plurals.js","webpack:///./node_modules/@nextcloud/moment/node_modules/@nextcloud/l10n/dist/index.js","webpack:///./src/Components/Parameters/DefaultParameter.vue?0755","webpack:///./src/Components/Parameters/DefaultParameter.vue?93f3","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/core-js/modules/es.function.name.js","webpack:///./node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js","webpack:///./node_modules/core-js/modules/web.url.js","webpack:///./node_modules/core-js/internals/string-punycode-to-ascii.js","webpack:///./node_modules/core-js/modules/web.url-search-params.js","webpack:///./node_modules/core-js/internals/get-iterator.js","webpack:///./node_modules/core-js/modules/es.symbol.description.js","webpack:///./node_modules/core-js/modules/es.array.slice.js","webpack:///./node_modules/core-js/modules/es.symbol.iterator.js","webpack:///./node_modules/v-click-outside/dist/v-click-outside.umd.js","webpack:///./node_modules/core-js/modules/es.array.from.js","webpack:///./node_modules/core-js/modules/es.promise.js","webpack:///./node_modules/core-js/internals/native-promise-constructor.js","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/microtask.js","webpack:///./node_modules/core-js/internals/promise-resolve.js","webpack:///./node_modules/core-js/internals/host-report-errors.js","webpack:///./node_modules/core-js/internals/perform.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/@nextcloud/capabilities/dist/index.js","webpack:///./node_modules/@nextcloud/initial-state/dist/index.js","webpack:///./node_modules/md5/md5.js","webpack:///./node_modules/crypt/crypt.js","webpack:///./node_modules/is-buffer/index.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/core-js/modules/es.array.includes.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./src/Components/Parameters/User.vue?381d","webpack:///./src/Components/Parameters/User.vue?7b73","webpack:///./src/Components/Notification.vue?6358","webpack:///./src/Components/Notification.vue?6e6a","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/redefine.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/path.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/bind-context.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/a-function.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/user-agent.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/storagebuilder.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-property.js","webpack:///./src/App.vue?ea16","webpack:///./src/App.vue?3fbe","webpack:///./node_modules/@nextcloud/dialogs/styles/toast.scss?ba1a","webpack:///./node_modules/@nextcloud/dialogs/styles/toast.scss","webpack:///./node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./node_modules/@nextcloud/dialogs/styles/close.svg","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./src/Components/Action.vue","webpack:///src/Components/Action.vue","webpack:///./src/Components/Action.vue?0e50","webpack:///./src/Components/Parameters/DefaultParameter.vue?c91f","webpack:///src/Components/Parameters/DefaultParameter.vue","webpack:///./src/Components/Parameters/DefaultParameter.vue","webpack:///./src/Components/Parameters/DefaultParameter.vue?8ec0","webpack:///./src/Components/Parameters/File.vue","webpack:///src/Components/Parameters/File.vue","webpack:///./src/Components/Parameters/File.vue?5133","webpack:///./src/Components/Parameters/User.vue?767a","webpack:///src/Components/Parameters/User.vue","webpack:///./src/Components/Parameters/User.vue","webpack:///./src/Components/Parameters/User.vue?0f26","webpack:///./src/Components/Notification.vue?5486","webpack:///src/Components/Notification.vue","webpack:///./src/Components/Notification.vue","webpack:///./src/Components/Notification.vue?8778","webpack:///./src/services/BrowserStorage.js","webpack:///./src/services/notificationsService.js","webpack:///src/App.vue","webpack:///./src/App.vue?7e76","webpack:///./src/App.vue","webpack:///./src/App.vue?8eea","webpack:///./src/main.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","getOwnPropertyDescriptor","f","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","options","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","TypeError","String","fails","DESCRIPTORS","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","O","P","Attributes","isPlainObject","getPrototypeOf","isArrayBuffer","isBuffer","constructor","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","navigator","product","document","merge","assignValue","thisArg","trim","str","stripBOM","content","charCodeAt","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","unsafe","simple","g","definePropertyModule","createPropertyDescriptor","default","_axios","_auth","client","headers","requesttoken","getRequestToken","cancelableClient","assign","CancelToken","isCancel","onRequestTokenUpdate","_default","IndexedObject","requireObjectCoercible","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","store","wmget","wmhas","wmset","metadata","STATE","getterFor","TYPE","state","type","toInteger","argument","getRootUrl","generateFilePath","imagePath","generateUrl","generateOcsUrl","generateRemoteUrl","linkTo","app","file","service","location","protocol","host","linkToRemoteBase","url","params","allOptions","escape","noRewrite","_build","text","vars","encodeURIComponent","OC","modRewriteWorking","isCore","coreApps","link","substring","appswebroots","encodeURI","webroot","path","aFunction","variable","namespace","method","TO_STRING_TAG","wellKnownSymbol","TAG","configurable","json","charset","Language","translations","msgid","comments","translator","msgstr","reference","addTranslations","setLocale","gettext","emptyObject","freeze","isUndef","v","isDef","isTrue","isPrimitive","_toString","isRegExp","isValidArrayIndex","isPromise","then","catch","JSON","stringify","toNumber","makeMap","expectsLowerCase","list","isReservedAttribute","remove","item","splice","hasOwn","cached","cache","camelizeRE","camelize","_","capitalize","hyphenateRE","hyphenate","ctx","boundFn","_length","start","_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","def","writable","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","id","subs","addSub","sub","removeSub","depend","addDep","notify","update","targetStack","pushTarget","popTarget","pop","VNode","tag","children","elm","context","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","parent","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","node","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","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","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","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","nodeOps","tagName","multiple","setAttribute","createElementNS","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","target$1","klass","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","currentTarget","ownerDocument","updateDOMListeners","change","normalizeEvents","svgContainer","events","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","end","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","selected","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","attr","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","querySelector","query","bitmap","thrower","METHOD_NAME","ACCESSORS","argument0","argument1","activeXDocument","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","close","parentWindow","NullProtoObjectViaActiveX","contentWindow","open","F","Properties","process","commonjsGlobal","createCommonjsModule","basedir","require","commonjsRequire","global_1","descriptors","document$1","EXISTS","ie8DomDefine","PREFERRED_STRING","objectDefineProperty","sharedStore","copyright","postfix","random","nativeSymbol","getOwnPropertySymbols","useSymbolAsUid","Symbol$1","toStringTagSupport","functionToString","has$1","nativeWeakMap","WeakMap$1","store$1","internalState","classofRaw","TO_STRING_TAG$1","CORRECT_ARGUMENTS","classof","tryGet","callee","objectToString","nativePropertyIsEnumerable","propertyIsEnumerable","objectPropertyIsEnumerable","1","V","indexedObject","toIndexedObject","nativeGetOwnPropertyDescriptor","objectGetOwnPropertyDescriptor","getBuiltIn","toLength","min$1","createMethod","IS_INCLUDES","$this","fromIndex","integer","toAbsoluteIndex","arrayIncludes","includes","objectKeysInternal","hiddenKeys$1","objectGetOwnPropertyNames","objectGetOwnPropertySymbols","replacement","feature","detection","POLYFILL","NATIVE","isForced_1","getOwnPropertyDescriptor$1","_export","nativePromiseConstructor","TO_STRING_TAG$2","SPECIES","aFunction$1","iterators","ITERATOR","ArrayPrototype","functionBindContext","ITERATOR$1","callWithSafeIterationClosing","ENTRIES","returnMethod","iterate_1","Result","stopped","iterable","AS_ENTRIES","IS_ITERATOR","iterFn","step","boundFunction","getIteratorMethod","stop","ITERATOR$2","SAFE_CLOSING","iteratorWithReturn","defer","channel","port","SPECIES$1","speciesConstructor","defaultConstructor","S","C","engineUserAgent","engineIsIos","clearImmediate","process$1","MessageChannel","Dispatch","runner","listener","post","postMessage","port2","port1","onmessage","importScripts","flush","head","toggle","promise","task","getOwnPropertyDescriptor$2","macrotask","WebKitMutationObserver","process$2","Promise$1","IS_NODE","queueMicrotaskDescriptor","queueMicrotask","exit","microtask","PromiseCapability","$$resolve","$$reject","newPromiseCapability","promiseResolve","promiseCapability","perform","process$3","versions","v8","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","FilePickerType","engineV8Version","task$1","SPECIES$2","PROMISE","setInternalState","getInternalPromiseState","PromiseConstructor","TypeError$1","document$2","process$4","$fetch","newPromiseCapability$1","newGenericPromiseCapability","IS_NODE$1","DISPATCH_EVENT","FORCED","PromiseRejectionEvent","FakePromise","INCORRECT_ITERATION","SKIP_CLOSING","ITERATION_SUPPORT","checkCorrectnessOfIteration","all","isThenable","notify$1","isReject","notified","chain","reactions","ok","exited","reaction","fail","rejection","onHandleUnhandled","onUnhandled","hostReportErrors","isUnhandled","unwrap","internalReject","internalResolve","wrapper","executor","Constructor","anInstance","redefineAll","onFulfilled","onRejected","fetch","wrap","CONSTRUCTOR_NAME","setSpecies","capability","$promiseResolve","remaining","alreadyCalled","race","FilePicker","title","multiSelect","mimeTypeFilter","modal","directoriesAllowed","mimeTypeFiler","pick","_this","rej","dialogs","filepicker","allowDirectoryChooser","FilePickerBuilder","Choose","setMultiSelect","addMimeTypeFilter","setMimeTypeFilter","setModal","setType","allowDirectories","allow","startAt","build","objectKeys","nativeAssign","defineProperty$1","objectAssign","A","B","chr","T","argumentsLength","__assign","createProperty","propertyKey","SPECIES$3","arraySpeciesCreate","originalArray","SPECIES$4","arrayMethodHasSpeciesSupport","foo","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","defineProperty$2","arrayMethodUsesToLength","$indexOf","nativeIndexOf","NEGATIVE_ZERO","STRICT_METHOD","USES_TO_LENGTH","searchElement","regexpFlags","ignoreCase","multiline","dotAll","unicode","sticky","RE","re1","re2","regexpStickyHelpers","UNSUPPORTED_Y","re","BROKEN_CARET","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","UNSUPPORTED_Y$1","NPCG_INCLUDED","reCopy","charsAdded","strCopy","regexpExec","SPECIES$5","REPLACE_SUPPORTS_NAMED_GROUPS","groups","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","fixRegexpWellKnownSymbolLogic","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","nativeMethod","regexp","arg2","forceStringMethod","stringMethod","regexMethod","createMethod$1","CONVERT_TO_STRING","first","position","size","codeAt","advanceStringIndex","regexpExecAbstract","R","max$1","min$2","floor$1","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","rx","functionalReplace","fullUnicode","results","accumulatedResult","nextSourcePosition","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","MATCH","arrayPush","min$3","SUPPORTS_Y","SPLIT","nativeSplit","internalSplit","lim","isRegexp","lastLength","lastLastIndex","separatorCopy","splitter","unicodeMatching","q","z","whitespaces","whitespace","ltrim","rtrim","createMethod$2","stringTrim","$trim","_typeof","stringTrimForced","toastify","root","Toastify","lib","getAxisOffsetAValue","axis","containsClass","elem","yourClass","className","toastElement","selector","destination","newWindow","gravity","positionLeft","backgroundColor","avatar","stopOnFocus","onClick","buildToast","divElement","background","Node","ELEMENT_NODE","avatarElement","insertAdjacentElement","closeElement","stopPropagation","removeElement","timeOutValue","width","innerWidth","screen","xOffset","yOffset","showToast","rootElement","getElementById","reposition","hideToast","classUsed","topLeftOffsetSize","bottom","topRightOffsetSize","offsetSize","allToasts","getElementsByClassName","height","createMethod$3","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","callbackfn","specificCreate","$map","find","findIndex","HAS_SPECIES_SUPPORT","USES_TO_LENGTH$1","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","rf","reIsDeepProp","reIsPlainProp","reLeadingDot","rePropName","reEscapeChar","reIsHostCtor","freeGlobal","freeSelf","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","hasOwnProperty$1","objectToString$1","reIsNative","Symbol$2","Map","getNative","nativeCreate","symbolProto","symbolToString","Hash","entries","entry","ListCache","MapCache","assocIndexOf","baseGet","isArray$1","isSymbol","isKey","stringToPath","toKey","baseIsNative","isObject$1","isHostObject","toSource","getMapData","__data__","memoize","baseToString","quote","resolver","memoized","Cache","isObjectLike","lodash_get","defaultValue","plurals","ach","examples","plural","sample","nplurals","pluralsText","pluralsFunc","af","ak","am","an","ar","arn","ast","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","he","hi","hne","hr","hu","hy","ja","jbo","jv","ka","kk","km","kn","ko","ku","kw","ky","lb","ln","lo","lt","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","Gettext","catalogs","sourceLocale","debug","eventName","off","eventData","message","setTextDomain","dnpgettext","dgettext","ngettext","msgidPlural","count","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","getLanguageCode","getComment","textdomain","setlocale","addTextdomain","dist","getCanonicalLocale","getLanguage","translate","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","gtBuilder","getGettextBuilder","GettextBuilder","_nodeGettext","_classCallCheck","instance","_defineProperties","_createClass","protoProps","staticProps","language","setLanguage","GettextWrapper","gt","translated","placeholders","subtitudePlaceholders","singular","detectLocale","TRANSLATIONS","addTranslation","ToastType","ERROR","WARNING","INFO","SUCCESS","PERMANENT","UNDO","showMessage","isHTML","onRemove","element","innerText","classes","isNode","toast","showError","bus","ProxyBus","SimpleBus","propertyIsEnumerableModule","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","browser","argv","addListener","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","memo","isOldIE","atob","getTarget","styleTarget","HTMLIFrameElement","contentDocument","stylesInDom","getIndexByIdentifier","identifier","modulesToDom","idCountMap","identifiers","media","sourceMap","references","updater","addStyle","insertStyleElement","attributes","nonce","textStore","replaceText","applyToSingletonTag","styleSheet","cssNode","applyToTag","btoa","unescape","singleton","singletonCounter","styleIndex","removeStyleElement","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","useSourceMap","cssMapping","sourceMapping","base64","sourceURLs","sources","sourceRoot","cssWithMappingToString","mediaQuery","dedupe","alreadyImportedModules","internalObjectKeys","V8_VERSION","addToUnscopables","Iterators","defineIterator","iterated","kind","Arguments","api","locals","19","VTooltip","defaultTemplate","defaultHtml","2","DEBUG","getElementsByTagName","ssrId","4","55","56","NASHORN_BUG","IS_PURE","MAX_SAFE_INTEGER","SEMVER_SPEC_VERSION","MAX_LENGTH","MAX_SAFE_COMPONENT_LENGTH","$","createIteratorConstructor","setPrototypeOf","setToStringTag","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","CurrentIteratorPrototype","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","isArrayIteratorMethod","TO_STRING_TAG_SUPPORT","point","stickyHelpers","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","scheduled","functionToCheck","getStyleComputedProperty","defaultView","getParentNode","nodeName","getScrollParent","_getStyleComputedProp","overflowX","overflowY","getReferenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","getOffsetParent","documentElement","noOffsetParent","offsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","contains","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","scrollTop","scrollLeft","modifier","right","getBordersSize","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","createClass","_extends","getClientRect","offsets","sizes","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerHeight","isFixed","getFixedPositionOffsetParent","parentElement","getBoundaries","popper","padding","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","_ref","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","filteredAreas","_ref2","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","marginBottom","marginRight","getOppositePlacement","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","runModifiers","ends","enabled","isDestroyed","arrowStyles","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","getWindow","setupEventListeners","updateBound","scrollElement","attachToScrollParents","scrollParents","isBody","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isNumeric","setStyles","isFirefox","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","reverse","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","divider","search","splitRegex","ops","op","mergeWithPrevious","reduce","toValue","index2","Defaults","shiftvariation","_data$offsets","isVertical","shiftOffsets","preventOverflow","transformProp","popperStyles","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","center","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","inner","subtractLength","hide","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","applyStyle","onLoad","modifierOptions","Popper","jquery","Utils","PopperUtils","getOwnPropertyDescriptorModule","getOwnPropertySymbolsModule","utils","encode","paramsSerializer","serializedParams","hashmarkIndex","__CANCEL__","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","adapter","XMLHttpRequest","transformRequest","transformResponse","parse","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","status","common","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","requestData","requestHeaders","request","auth","username","password","Authorization","fullPath","baseURL","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onabort","onerror","ontimeout","timeoutErrorMessage","xsrfValue","withCredentials","read","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancelToken","cancel","abort","send","enhanceError","code","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","directMergeKeys","getMergedValue","mergeDeepProperties","axiosKeys","otherKeys","Cancel","_requesttoken","_user","getCurrentUser","$forEach","arrayMethodIsStrict","createToken","isGlobal","NUMERICIDENTIFIER","NUMERICIDENTIFIERLOOSE","NONNUMERICIDENTIFIER","PRERELEASEIDENTIFIER","PRERELEASEIDENTIFIERLOOSE","BUILDIDENTIFIER","MAINVERSION","PRERELEASE","BUILD","FULLPLAIN","MAINVERSIONLOOSE","PRERELEASELOOSE","LOOSEPLAIN","XRANGEIDENTIFIER","XRANGEIDENTIFIERLOOSE","GTLT","XRANGEPLAIN","XRANGEPLAINLOOSE","COERCE","LONETILDE","tildeTrimReplace","LONECARET","caretTrimReplace","comparatorTrimReplace","NODE_DEBUG","compareIdentifiers","SemVer","loose","includePrerelease","LOOSE","FULL","major","minor","prerelease","num","compareMain","comparePre","release","inc","UNSCOPABLES","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","aPossiblePrototype","CORRECT_SETTER","FREEZING","METADATA","setMetadata","objectID","weakData","meta","REQUIRED","fastKey","getWeakData","onFreeze","dummy","Wrapper","NewTarget","NewTargetPrototype","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","DOMIterables","ArrayIteratorMethods","ArrayValues","COLLECTION_NAME","Collection","CollectionPrototype","_defineProperty","enumerableOnly","sym","_objectSpread2","getOwnPropertyDescriptors","SVGAnimatedString","convertToArray","addClasses","newClasses","baseVal","newClass","SVGElement","removeClasses","_listCacheClear","eq_1","_assocIndexOf","_listCacheDelete","_listCacheGet","_listCacheHas","_listCacheSet","_ListCache","_stackClear","_stackDelete","_stackGet","_stackHas","_freeGlobal","_root","_Symbol","nativeObjectToString","symToStringTag","_getRawTag","isOwn","unmasked","nativeObjectToString$1","_objectToString","symToStringTag$1","_baseGetTag","isObject_1","isFunction_1","_coreJsData","_isMasked","_toSource","funcProto$1","objectProto$2","funcToString$1","_baseIsNative","_getValue","_getNative","_Map","_nativeCreate","_hashClear","_hashDelete","hasOwnProperty$2","_hashGet","hasOwnProperty$3","_hashHas","_hashSet","_Hash","_mapCacheClear","_isKeyable","_getMapData","_mapCacheDelete","_mapCacheGet","_mapCacheHas","_mapCacheSet","_MapCache","_stackSet","pairs","LARGE_ARRAY_SIZE","Stack","_Stack","_setCacheAdd","_setCacheHas","SetCache","_SetCache","_arraySome","predicate","_cacheHas","_equalArrays","bitmask","customizer","equalFunc","isPartial","arrLength","othLength","stacked","arrValue","othValue","compared","othIndex","_Uint8Array","Uint8Array","_mapToArray","_setToArray","symbolValueOf","_equalByTag","byteLength","byteOffset","convert","_arrayPush","isArray_1","_baseGetAllKeys","keysFunc","symbolsFunc","_arrayFilter","resIndex","stubArray_1","nativeGetSymbols","_getSymbols","_baseTimes","iteratee","isObjectLike_1","_baseIsArguments","objectProto$6","hasOwnProperty$4","propertyIsEnumerable$1","isArguments_1","stubFalse_1","isBuffer_1","freeExports","freeModule","Buffer","reIsUint","_isIndex","isLength_1","typedArrayTags","_baseIsTypedArray","_baseUnary","_nodeUtil","freeProcess","nodeUtil","types","nodeIsTypedArray","isTypedArray","isTypedArray_1","hasOwnProperty$5","_arrayLikeKeys","inherited","isArr","isArg","isBuff","isType","skipIndexes","objectProto$8","_isPrototype","_overArg","_nativeKeys","hasOwnProperty$6","_baseKeys","isArrayLike_1","keys_1","_getAllKeys","hasOwnProperty$7","_equalObjects","objProps","objLength","skipCtor","objValue","objCtor","othCtor","_DataView","_Promise","_WeakMap","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ctorString","_getTag","hasOwnProperty$8","_baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","_baseIsEqual","baseIsEqual","isEqual_1","DEFAULT_OPTIONS","container","template","openTooltips","Tooltip","_reference","_options","evt","relatedreference","toElement","relatedTarget","_tooltipNode","evt2","relatedreference2","_scheduleHide","_isOpen","_show","_hide","_dispose","_classes","_setContent","classesUpdated","defaultClass","setClasses","getOptions","needPopperUpdate","needRestart","isOpen","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","tooltipGenerator","tooltipNode","autoHide","_this2","asyncContent","_applyContent","_this3","allowHtml","rootNode","titleNode","innerSelector","loadingClass","loadingContent","asyncResult","_disposeTimer","updateClasses","_ensureShown","_this4","_create","_findContainer","_append","popperOptions","arrowSelector","_this5","_noLongerOpen","disposeTime","disposeTimeout","_removeTooltipNode","_this6","_this7","directEvents","oppositeEvents","hideOnTargetClick","usedByTooltip","_scheduleShow","_this8","computedDelay","_scheduleTimer","_this9","_setTooltipNodeEvent","_onDocumentTouch","positions","defaultOptions","defaultPlacement","defaultTargetClass","defaultArrowSelector","defaultInnerSelector","defaultDelay","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","popover","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","typeofOffset","getPlacement","getContent","createTooltip","tooltip","_tooltip","_vueEl","targetClasses","_tooltipTargetClasses","destroyTooltip","_tooltipOldShow","setContent","setOptions","addListeners","onTouchStart","removeListeners","onTouchEnd","onTouchCancel","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","changedTouches","touch","$_vclosepopover_touchPoint","firstTouch","screenY","screenX","vclosepopover","getDefault","MSStream","openPopovers","Element","script","ResizeObserver","disabled","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","cssClass","popoverId","oldVal","popoverNode","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","beforeDestroy","_ref2$force","skipDelay","$_scheduleShow","$_beingShowed","_ref3","$_scheduleHide","$_show","$_disposeTimer","$_getOffset","hidden","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","event2","_ref4","$_restartPopper","$_handleGlobalClose","$_handleResize","handleGlobalClose","_loop","__vue_script__","__vue_render__","_vm","_h","tabindex","visibility","keyup","keyCode","_withStripped","__vue_component__","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","originalRender","beforeCreate","normalizeComponent","_defineProperty$1","_baseAssignValue","_assignMergeValue","_baseFor","fromRight","_createBaseFor","_cloneBuffer","allocUnsafe","isDeep","copy","_cloneArrayBuffer","arrayBuffer","_cloneTypedArray","typedArray","_copyArray","objectCreate","_baseCreate","_getPrototype","_initCloneObject","isArrayLikeObject_1","funcProto$2","objectProto$c","funcToString$2","hasOwnProperty$9","objectCtorString","isPlainObject_1","_safeGet","hasOwnProperty$a","_assignValue","_copyObject","isNew","newValue","_nativeKeysIn","hasOwnProperty$b","_baseKeysIn","isProto","keysIn_1","toPlainObject_1","_baseMergeDeep","srcIndex","mergeFunc","srcValue","isCommon","isTyped","_baseMerge","baseMerge","identity_1","_apply","nativeMax","_overRest","otherArgs","constant_1","_baseSetToString","nativeNow","_setToString","lastCalled","stamp","_shortOut","_baseRest","_isIterateeCall","merge_1","assigner","guard","_createAssigner","installed","finalOptions","insertAt","styleInject","VClosePopover","VPopover","GlobalVue","fixRegExpWellKnownSymbolLogic","regExpExec","moment","symbolMap","numberMap","pluralForm","pluralize","weekdaysParseExact","suffixes","5","8","70","80","7","20","50","3","100","6","9","10","30","60","90","relativeTimeWithPlural","forms","standalone","lastDigit","last2Digits","relativeTimeWithMutation","mutationTable","softMutation","mutation","lastNumber","monthsParseExact","ll","lll","llll","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","words","correctGrammaticalCase","wordKey","relativeTimeMr","monthsNominative","monthsSubjective","12","13","numbersNouns","numberNoun","hundred","ten","one","word","numberAsNoun","processHoursFunction","wrappedWellKnownSymbolModule","URL","searchParams","pathname","href","arrayLike","mapfn","mapping","iteratorMethod","IS_IOS","charenc","utf8","stringToBytes","bin","bytesToString","bytes","decodeURIComponent","fromCharCode","$filter","nativeKeys","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","ScopedStorage","scope","wrapped","persistent","GLOBAL_SCOPE_PERSISTENT","GLOBAL_SCOPE_VOLATILE","setItem","scopeKey","getItem","removeItem","initCompat","ua","msie","rv","edge","getInternetExplorerVersion","compareAndNotify","addResizeHandlers","_resizeObject","removeResizeHandlers","onload","I","N","U","K","X","G","Z","J","H","Q","nt","rt","ot","ut","ct","at","ft","st","dt","ht","vt","yt","bt","xt","Et","St","Ot","wt","jt","Rt","Ct","At","Tt","Pt","It","kt","Nt","$t","Ut","Ft","Mt","Lt","Bt","Dt","flat","Kt","Wt","Xt","Gt","Vt","Yt","Zt","qt","Jt","Ht","Qt","ee","oe","ie","ue","ce","ae","le","fe","pe","ge","ve","ye","me","xe","Ee","we","Oe","je","Re","Ce","Ae","Te","Ie","Pe","ke","Ne","$e","Ue","Fe","Me","Le","Be","De","ze","Ke","We","Xe","Ge","Ve","Ye","Ze","qe","Je","He","Qe","tn","rn","pn","un","rel","required","cn","linkComponent","autolink","dn","hn","ids","_injectStyles","needQuotes","isMobile","handleWindowResize","onIsMobileChanged","hasStatus","userStatus","icon","fetchUserStatus","regeneratorRuntime","mark","prev","getCapabilities","user_status","abrupt","sent","ocs","t0","return","excludeClickOutsideClasses","clickOutsideMiddleware","hasNodeOrAnyParentClass","isFullscreen","_isFullscreen","_onResize","outerHeight","validator","iconIsUrl","action","PopoverMenuItem","download","click","longtext","submit","preventDefault","checked","for","menu","ClickOutside","PopoverMenu","iconClass","showUserStatus","isGuest","displayName","allowPlaceholder","disableTooltip","disableMenu","tooltipMessage","isNoUser","statusColor","menuPosition","avatarUrlLoaded","avatarSrcSetLoaded","userDoesNotExist","isAvatarLoaded","isMenuLoaded","contactsMenuActions","contactsMenuOpenState","canDisplayUserStatus","getUserIdentifier","isDisplayNameDefined","isUserDefined","isUrlDefined","hasMenu","shouldShowPlaceholder","avatarStyle","lineHeight","fontSize","initials","hyperlink","loadAvatarUrl","toggleMenu","fetchContactsMenu","closeMenu","topAction","actions","oc_userconfig","Image","srcset","alt","xmlns","viewBox","fill","stroke","Popover","Avatar","avatarImage","margin","isPopoverComponent","popoverEmpty","isAvatarUrl","isCustomAvatar","isLinkComponent","borderRadius","onOpenChange","$props","getBuilder","appId","_storagebuilder","clearAll","sessionStorage","localStorage","clearStorage","clearNonPersistent","_scopedstorage","_interopRequireDefault","storage","pred","getOwnPropertyNamesModule","Axios","mergeConfig","createInstance","defaultConfig","axios","instanceConfig","promises","spread","InterceptorManager","dispatchRequest","interceptors","interceptor","fulfilled","rejected","getUri","eject","transformData","throwIfCancellationRequested","throwIfRequested","isAxiosError","description","fileName","lineNumber","columnNumber","expires","secure","cookie","toGMTString","isAbsoluteURL","combineURLs","requestedURL","relativeURL","ignoreDuplicateOf","parsed","line","originURL","urlParsingNode","resolveURL","hostname","requestURL","resolvePromise","observers","_eventBus","tokenElement","subscribe","packageJson","er","numeric","anum","bnum","rcompareIdentifiers","collection","collectionStrong","InternalMetadataModule","iterate","inheritIfRequired","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","getConstructor","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","preventExtensions","internalStateGetterFor","define","previous","getEntry","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","isAdmin","uidElement","displayNameElement","isUserAdmin","webpackPolyfill","paths","webpackContext","req","webpackContextResolve","___CSS_LOADER_API_IMPORT___","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","registerImmediate","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","postMessageIsAsynchronous","oldOnMessage","canUsePostMessage","attachEvent","FunctionPrototype","FunctionPrototypeToString","nameRE","nativeObjectCreate","getOwnPropertyNamesExternal","defineWellKnownSymbol","HIDDEN","TO_PRIMITIVE","$Symbol","$stringify","nativeGetOwnPropertyNames","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","QObject","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","$defineProperty","$defineProperties","properties","$getOwnPropertySymbols","$propertyIsEnumerable","$getOwnPropertyDescriptor","$getOwnPropertyNames","IS_OBJECT_PROTOTYPE","keyFor","useSetter","useSimple","space","$replacer","windowNames","getWindowNames","NativeNumber","NumberPrototype","BROKEN_CLASSOF","third","radix","maxCode","digits","NumberWrapper","forcedStringTrimMethod","EOF","USE_NATIVE_URL","arrayFrom","toASCII","URLSearchParamsModule","NativeURL","getInternalSearchParamsState","getState","getInternalURLState","ALPHA","ALPHANUMERIC","DIGIT","HEX_START","OCT","DEC","HEX","FORBIDDEN_HOST_CODE_POINT","FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT","LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE","TAB_AND_NEW_LINE","parseHost","codePoints","parseIPv6","isSpecial","parseIPv4","percentEncode","C0ControlPercentEncodeSet","partsLength","numbers","part","ipv4","numbersSeen","ipv4Piece","swaps","swap","address","pieceIndex","compress","pointer","char","serializeHost","ignore0","ipv6","maxIndex","maxLength","currStart","currLength","findLongestZeroSequence","fragmentPercentEncodeSet","pathPercentEncodeSet","userinfoPercentEncodeSet","specialSchemes","ftp","http","https","wss","scheme","includesCredentials","cannotHaveUsernamePasswordPort","cannotBeABaseURL","isWindowsDriveLetter","startsWithWindowsDriveLetter","shortenURLsPath","pathSize","isSingleDot","segment","SCHEME_START","SCHEME","NO_SCHEME","SPECIAL_RELATIVE_OR_AUTHORITY","PATH_OR_AUTHORITY","RELATIVE","RELATIVE_SLASH","SPECIAL_AUTHORITY_SLASHES","SPECIAL_AUTHORITY_IGNORE_SLASHES","AUTHORITY","HOST","HOSTNAME","PORT","FILE","FILE_SLASH","FILE_HOST","PATH_START","PATH","CANNOT_BE_A_BASE_URL_PATH","QUERY","FRAGMENT","parseURL","stateOverride","bufferCodePoints","failure","seenAt","seenBracket","seenPasswordToken","fragment","codePoint","encodedCodePoints","URLConstructor","baseState","urlString","searchParamsState","updateSearchParams","updateURL","serializeURL","origin","getOrigin","getProtocol","getUsername","getPassword","getHost","getHostname","getPort","getPathname","getSearch","getSearchParams","getHash","URLPrototype","accessorDescriptor","nativeCreateObjectURL","createObjectURL","nativeRevokeObjectURL","revokeObjectURL","blob","regexNonASCII","regexSeparators","OVERFLOW_ERROR","stringFromCharCode","digitToBasic","digit","adapt","delta","numPoints","baseMinusTMin","currentValue","inputLength","extra","ucs2decode","bias","basicLength","handledCPCount","handledCPCountPlusOne","RangeError","qMinusT","baseMinusT","label","encoded","labels","getIterator","Headers","getInternalParamsState","URL_SEARCH_PARAMS","plus","sequences","percentSequence","percentDecode","sequence","deserialize","serialize","parseSearchParams","attribute","validateArgumentsLength","passed","URLSearchParamsIterator","URLSearchParamsConstructor","entryIterator","entryNext","URLSearchParamsPrototype","append","getAll","found","entriesIndex","sliceIndex","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","symbolPrototype","native","desc","nativeSlice","fin","msMaxTouchPoints","middleware","isActive","detectIframe","srcTarget","composedPath","NativePromise","newPromiseCapabilityModule","runtime","Op","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","_sent","dispatchException","record","tryCatch","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","invoke","__await","unwrapped","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isGeneratorFunction","genFun","ctor","awrap","iter","skipTempReset","rootRecord","rval","exception","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","accidentalStrictMode","_initialState","loadState","crypt","md5","encoding","bytesToWords","FF","_ff","_gg","HH","_hh","II","_ii","aa","bb","cc","endian","_blocksize","_digestsize","digestbytes","wordsToBytes","asBytes","asString","bytesToHex","base64map","rotl","rotr","randomBytes","hex","hexToBytes","bytesToBase64","triplet","base64ToBytes","imod4","readFloatLE","isSlowBuffer","_isBuffer","nativeJoin","ES3_STRINGS","$includes","nativeMatch","matchStr","StorageBuilder","_persist","persisted","clearedOnLogout","___CSS_LOADER_GET_URL_IMPORT___","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_REPLACEMENT_0___","scriptExports","functionalTemplate","injectStyles","onClickActionButton","cloudId","notificationId","timestamp","relativeDate","onDismissNotification","subjectRich","preparedSubjectParameters","subject","onClickMessage","collapsed","isCollapsedMessage","messageRich","preparedMessageParameters","clearOnLogout","persist","getNotificationsData","tabId","lastETag","forceRefresh","lastUpdated","BrowserStorage","lastTab","refreshData","requestConfig","shutdown","hasNotifications","notifications","requestWebNotificationPermissions","iconPath","notification_id","object_id","object_type","onDismissAll","webNotificationsGranted","OCA","unifiedSearch","notificationsBell","insertAdjacentHTML","outerHTML","App"],"mappings":"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IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,gBAAiB,IACjB,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,UAAW,IACX,aAAc,IACd,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,UAAW,IACX,aAAc,IACd,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,aAAc,IACd,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OAAQ,IACR,UAAW,IACX,OA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","file":"notifications-main.js?v=338acbcfeac0f7cc50a7","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 = 429);\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","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","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","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","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","'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 plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\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 (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\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\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\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 isPlainObject: isPlainObject,\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 extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\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","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 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 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","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\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","// 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 toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\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","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","\"use strict\";\n\nrequire(\"core-js/modules/es.array.index-of\");\n\nrequire(\"core-js/modules/es.object.assign\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.regexp.to-string\");\n\nrequire(\"core-js/modules/es.string.replace\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRootUrl = exports.generateFilePath = exports.imagePath = exports.generateUrl = exports.generateOcsUrl = exports.generateRemoteUrl = exports.linkTo = void 0;\n\n/// <reference types=\"@nextcloud/typings\" />\n\n/**\n * Get an absolute url to a file in an app\n *\n * @param {string} app the id of the app the file belongs to\n * @param {string} file the file path relative to the app folder\n * @return {string} Absolute URL to a file\n */\nvar linkTo = function linkTo(app, file) {\n return generateFilePath(app, '', file);\n};\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\n\n\nexports.linkTo = linkTo;\n\nvar linkToRemoteBase = function linkToRemoteBase(service) {\n return getRootUrl() + '/remote.php/' + service;\n};\n/**\n * @brief Creates an absolute url for remote use\n * @param {string} service id\n * @return {string} the url\n */\n\n\nvar generateRemoteUrl = function generateRemoteUrl(service) {\n return window.location.protocol + '//' + window.location.host + linkToRemoteBase(service);\n};\n/**\n * Get the base path for the given OCS API service\n *\n * @param {string} service name\n * @param {int} version OCS API version\n * @return {string} OCS API base path\n */\n\n\nexports.generateRemoteUrl = generateRemoteUrl;\n\nvar generateOcsUrl = function generateOcsUrl(service, version) {\n version = version !== 2 ? 1 : 2;\n return window.location.protocol + '//' + window.location.host + getRootUrl() + '/ocs/v' + version + '.php/' + service + '/';\n};\n\nexports.generateOcsUrl = generateOcsUrl;\n\n/**\n * Generate the absolute url for the given relative url, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @return {string} Absolute URL for the given relative URL\n */\nvar generateUrl = function generateUrl(url, params, options) {\n var allOptions = Object.assign({\n escape: true,\n noRewrite: false\n }, options || {});\n\n var _build = function _build(text, vars) {\n vars = vars || {};\n return text.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n\n if (allOptions.escape) {\n return typeof r === 'string' || typeof r === 'number' ? encodeURIComponent(r.toString()) : encodeURIComponent(a);\n } else {\n return typeof r === 'string' || typeof r === 'number' ? r.toString() : a;\n }\n });\n };\n\n if (url.charAt(0) !== '/') {\n url = '/' + url;\n }\n\n if (OC.config.modRewriteWorking === true && !allOptions.noRewrite) {\n return getRootUrl() + _build(url, params || {});\n }\n\n return getRootUrl() + '/index.php' + _build(url, params || {});\n};\n/**\n * Get the absolute path to an image file\n * if no extension is given for the image, it will automatically decide\n * between .png and .svg based on what the browser supports\n *\n * @param {string} app the app id to which the image belongs\n * @param {string} file the name of the image file\n * @return {string}\n */\n\n\nexports.generateUrl = generateUrl;\n\nvar imagePath = function imagePath(app, file) {\n if (file.indexOf('.') === -1) {\n //if no extension is given, use svg\n return generateFilePath(app, 'img', file + '.svg');\n }\n\n return generateFilePath(app, 'img', file);\n};\n/**\n * Get the absolute url for a file in an app\n *\n * @param {string} app the id of the app\n * @param {string} type the type of the file to link to (e.g. css,img,ajax.template)\n * @param {string} file the filename\n * @return {string} Absolute URL for a file in an app\n */\n\n\nexports.imagePath = imagePath;\n\nvar generateFilePath = function generateFilePath(app, type, file) {\n var isCore = OC.coreApps.indexOf(app) !== -1;\n var link = getRootUrl();\n\n if (file.substring(file.length - 3) === 'php' && !isCore) {\n link += '/index.php/apps/' + app;\n\n if (file !== 'index.php') {\n link += '/';\n\n if (type) {\n link += encodeURI(type + '/');\n }\n\n link += file;\n }\n } else if (file.substring(file.length - 3) !== 'php' && !isCore) {\n link = OC.appswebroots[app];\n\n if (type) {\n link += '/' + type + '/';\n }\n\n if (link.substring(link.length - 1) !== '/') {\n link += '/';\n }\n\n link += file;\n } else {\n if ((app === 'settings' || app === 'core' || app === 'search') && type === 'ajax') {\n link += '/index.php/';\n } else {\n link += '/';\n }\n\n if (!isCore) {\n link += 'apps/';\n }\n\n if (app !== '') {\n app += '/';\n link += app;\n }\n\n if (type) {\n link += type + '/';\n }\n\n link += file;\n }\n\n return link;\n};\n/**\n * Return the web root path where this Nextcloud instance\n * is accessible, with a leading slash.\n * For example \"/nextcloud\".\n *\n * @return {string} web root path\n */\n\n\nexports.generateFilePath = generateFilePath;\n\nvar getRootUrl = function getRootUrl() {\n return OC.webroot;\n};\n\nexports.getRootUrl = getRootUrl;\n//# sourceMappingURL=index.js.map","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 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","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","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\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","/*!\n * Vue.js v2.6.12\n * (c) 2014-2020 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 * 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\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\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/* */\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.12';\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 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\n/* */\n\n/* */\n\n/* */\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\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 unnecessary `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\nexport default Vue;\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","// `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","module.exports = false;\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 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 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","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","(function() {\n const env = {\"TRANSLATIONS\":[{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfacer\"]}}}}},{\"locale\":\"br\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Kervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\",\"Language-Team\":\"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"br\",\"Plural-Forms\":\"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\"},\"translations\":{\"\":{\"\":{\"msgid\":\"\",\"comments\":{\"translator\":\"\\nTranslators:\\nKervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Kervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Disober\"]}}}}},{\"locale\":\"ca\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Marc Riera <marcriera@softcatala.org>, 2020\",\"Language-Team\":\"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"ca\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},\"translations\":{\"\":{\"\":{\"msgid\":\"\",\"comments\":{\"translator\":\"\\nTranslators:\\nMarc Riera <marcriera@softcatala.org>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Marc Riera <marcriera@softcatala.org>, 2020\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfés\"]}}}}},{\"locale\":\"cs\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Pavel Borecki <pavel.borecki@gmail.com>, 2020\",\"Language-Team\":\"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"cs\",\"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\":\"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Zpět\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Zpět\"]}}}}},{\"locale\":\"de\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Mark Ziegler <mark.ziegler@rakekniven.de>, 2020\",\"Language-Team\":\"German (https://www.transifex.com/nextcloud/teams/64236/de/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",\"Language\":\"de\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},\"translations\":{\"\":{\"\":{\"msgid\":\"\",\"comments\":{\"translator\":\"\\nTranslators:\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2020\\nLanguage-Team: German (https://www.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Rückgängig\"]}}}}},{\"locale\":\"de_DE\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Mark Ziegler <mark.ziegler@rakekniven.de>, 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\":\"\\nTranslators:\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Rückgängig\"]}}}}},{\"locale\":\"el\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"ByteGet, 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\":\"\\nTranslators:\\nByteGet, 2020\\n\"},\"msgstr\":[\"Last-Translator: ByteGet, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Αναίρεση\"]}}}}},{\"locale\":\"fr\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"John Molakvoæ <skjnldsv@protonmail.com>, 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\":\"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2020\\n\"},\"msgstr\":[\"Last-Translator: John Molakvoæ <skjnldsv@protonmail.com>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Annuler\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfacer\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"ביטול\"]}}}}},{\"locale\":\"it\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Vincenzo Reale <vinx.reale@gmail.com>, 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\":\"\\nTranslators:\\nVincenzo Reale <vinx.reale@gmail.com>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Annulla\"]}}}}},{\"locale\":\"ja_JP\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"323484, 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\":\"\\nTranslators:\\n323484, 2020\\n\"},\"msgstr\":[\"Last-Translator: 323484, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Atšaukti\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Врати\"]}}}}},{\"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\":\"\\nTranslators:\\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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Anullar\"]}}}}},{\"locale\":\"pl\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Robert Szmurło <robert.szmurlo@ee.pw.edu.pl>, 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\":\"\\nTranslators:\\nRobert Szmurło <robert.szmurlo@ee.pw.edu.pl>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Robert Szmurło <robert.szmurlo@ee.pw.edu.pl>, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Cofnij\"]}}}}},{\"locale\":\"pt_BR\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Paulo Schopf, 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\":\"\\nTranslators:\\nPaulo Schopf, 2020\\n\"},\"msgstr\":[\"Last-Translator: Paulo Schopf, 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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Desfazer\"]}}}}},{\"locale\":\"ru\",\"json\":{\"charset\":\"utf-8\",\"headers\":{\"Last-Translator\":\"Andrey Atapin <atab@kirovedu.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\":\"\\nTranslators:\\nAndrey Atapin <atab@kirovedu.ru>, 2020\\n\"},\"msgstr\":[\"Last-Translator: Andrey Atapin <atab@kirovedu.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\"]},\"Undo\":{\"msgid\":\"Undo\",\"comments\":{\"reference\":\"lib/toast.ts:187\"},\"msgstr\":[\"Отменить\"]}}}}}]};\n try {\n if (process) {\n process.env = Object.assign({}, process.env);\n Object.assign(process.env, env);\n return;\n }\n } catch (e) {} // avoid ReferenceError: process is not defined\n globalThis.process = { env:env };\n})();\n\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, basedir, module) {\n\treturn module = {\n\t path: basedir,\n\t exports: {},\n\t require: function (path, base) {\n return commonjsRequire(path, (base === undefined || base === null) ? module.path : base);\n }\n\t}, fn(module, module.exports), module.exports;\n}\n\nfunction commonjsRequire () {\n\tthrow new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');\n}\n\nvar check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global_1 =\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 commonjsGlobal == 'object' && commonjsGlobal) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n\nvar fails = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n\n// Thank's IE8 for his funny defineProperty\nvar descriptors = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n\nvar isObject = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\nvar document$1 = global_1.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document$1) && isObject(document$1.createElement);\n\nvar documentCreateElement = function (it) {\n return EXISTS ? document$1.createElement(it) : {};\n};\n\n// Thank's IE8 for his funny defineProperty\nvar ie8DomDefine = !descriptors && !fails(function () {\n return Object.defineProperty(documentCreateElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n\nvar anObject = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\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\nvar toPrimitive = 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\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nvar f = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (ie8DomDefine) 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\nvar objectDefineProperty = {\n\tf: f\n};\n\nvar createPropertyDescriptor = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\nvar createNonEnumerableProperty = descriptors ? function (object, key, value) {\n return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\nvar setGlobal = function (key, value) {\n try {\n createNonEnumerableProperty(global_1, key, value);\n } catch (error) {\n global_1[key] = value;\n } return value;\n};\n\nvar SHARED = '__core-js_shared__';\nvar store = global_1[SHARED] || setGlobal(SHARED, {});\n\nvar sharedStore = store;\n\nvar shared = createCommonjsModule(function (module) {\n(module.exports = function (key, value) {\n return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n});\n\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar has = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\nvar id = 0;\nvar postfix = Math.random();\n\nvar uid = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n\nvar nativeSymbol = !!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\nvar useSymbolAsUid = nativeSymbol\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol$1 = global_1.Symbol;\nvar createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid;\n\nvar wellKnownSymbol = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (nativeSymbol && has(Symbol$1, name)) WellKnownSymbolsStore[name] = Symbol$1[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nvar toStringTagSupport = String(test) === '[object z]';\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 sharedStore.inspectSource != 'function') {\n sharedStore.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nvar inspectSource = sharedStore.inspectSource;\n\nvar WeakMap = global_1.WeakMap;\n\nvar nativeWeakMap = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n\nvar keys = shared('keys');\n\nvar sharedKey = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n\nvar hiddenKeys = {};\n\nvar WeakMap$1 = global_1.WeakMap;\nvar set, get, has$1;\n\nvar enforce = function (it) {\n return has$1(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 (nativeWeakMap) {\n var store$1 = new WeakMap$1();\n var wmget = store$1.get;\n var wmhas = store$1.has;\n var wmset = store$1.set;\n set = function (it, metadata) {\n wmset.call(store$1, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store$1, it) || {};\n };\n has$1 = function (it) {\n return wmhas.call(store$1, 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 has(it, STATE) ? it[STATE] : {};\n };\n has$1 = function (it) {\n return has(it, STATE);\n };\n}\n\nvar internalState = {\n set: set,\n get: get,\n has: has$1,\n enforce: enforce,\n getterFor: getterFor\n};\n\nvar redefine = createCommonjsModule(function (module) {\nvar getInternalState = internalState.get;\nvar enforceInternalState = internalState.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_1) {\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});\n\nvar toString = {}.toString;\n\nvar classofRaw = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\nvar TO_STRING_TAG$1 = 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`\nvar classof = toStringTagSupport ? 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$1)) == '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\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nvar objectToString = toStringTagSupport ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!toStringTagSupport) {\n redefine(Object.prototype, 'toString', objectToString, { unsafe: true });\n}\n\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\nvar f$1 = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n\nvar objectPropertyIsEnumerable = {\n\tf: f$1\n};\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar indexedObject = 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 classofRaw(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nvar requireObjectCoercible = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n// toObject with fallback for non-array-like ES3 strings\n\n\n\nvar toIndexedObject = function (it) {\n return indexedObject(requireObjectCoercible(it));\n};\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nvar f$2 = descriptors ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (ie8DomDefine) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);\n};\n\nvar objectGetOwnPropertyDescriptor = {\n\tf: f$2\n};\n\nvar path = global_1;\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nvar getBuiltIn = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global_1[namespace])\n : path[namespace] && path[namespace][method] || global_1[namespace] && global_1[namespace][method];\n};\n\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nvar toInteger = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nvar toLength = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n\nvar max = Math.max;\nvar min$1 = 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).\nvar toAbsoluteIndex = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min$1(integer, length);\n};\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\nvar arrayIncludes = {\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\nvar indexOf = arrayIncludes.indexOf;\n\n\nvar objectKeysInternal = 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\n// IE8- don't enum bug keys\nvar enumBugKeys = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n\nvar hiddenKeys$1 = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nvar f$3 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return objectKeysInternal(O, hiddenKeys$1);\n};\n\nvar objectGetOwnPropertyNames = {\n\tf: f$3\n};\n\nvar f$4 = Object.getOwnPropertySymbols;\n\nvar objectGetOwnPropertySymbols = {\n\tf: f$4\n};\n\n// all object keys, includes non-enumerable and symbols\nvar ownKeys = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = objectGetOwnPropertyNames.f(anObject(it));\n var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n\nvar copyConstructorProperties = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = objectDefineProperty.f;\n var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.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\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\nvar isForced_1 = isForced;\n\nvar getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;\n\n\n\n\n\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*/\nvar _export = 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_1;\n } else if (STATIC) {\n target = global_1[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global_1[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor$1(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced_1(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\nvar nativePromiseConstructor = global_1.Promise;\n\nvar redefineAll = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n\nvar defineProperty = objectDefineProperty.f;\n\n\n\nvar TO_STRING_TAG$2 = wellKnownSymbol('toStringTag');\n\nvar setToStringTag = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG$2)) {\n defineProperty(it, TO_STRING_TAG$2, { configurable: true, value: TAG });\n }\n};\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar setSpecies = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = objectDefineProperty.f;\n\n if (descriptors && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n\nvar aFunction$1 = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n\nvar anInstance = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n\nvar iterators = {};\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nvar isArrayIteratorMethod = function (it) {\n return it !== undefined && (iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n\n// optional / simple context binding\nvar functionBindContext = function (fn, that, length) {\n aFunction$1(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\nvar ITERATOR$1 = wellKnownSymbol('iterator');\n\nvar getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR$1]\n || it['@@iterator']\n || iterators[classof(it)];\n};\n\n// call something on iterator step with safe closing on error\nvar callWithSafeIterationClosing = 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\nvar iterate_1 = createCommonjsModule(function (module) {\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 = functionBindContext(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});\n\nvar ITERATOR$2 = 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$2] = 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\nvar checkCorrectnessOfIteration = 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$2] = 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\nvar SPECIES$1 = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nvar speciesConstructor = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES$1]) == undefined ? defaultConstructor : aFunction$1(S);\n};\n\nvar html = getBuiltIn('document', 'documentElement');\n\nvar engineUserAgent = getBuiltIn('navigator', 'userAgent') || '';\n\nvar engineIsIos = /(iphone|ipod|ipad).*applewebkit/i.test(engineUserAgent);\n\nvar location = global_1.location;\nvar set$1 = global_1.setImmediate;\nvar clear = global_1.clearImmediate;\nvar process$1 = global_1.process;\nvar MessageChannel = global_1.MessageChannel;\nvar Dispatch = global_1.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global_1.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set$1 || !clear) {\n set$1 = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classofRaw(process$1) == 'process') {\n defer = function (id) {\n process$1.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !engineIsIos) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = functionBindContext(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global_1.addEventListener &&\n typeof postMessage == 'function' &&\n !global_1.importScripts &&\n !fails(post) &&\n location.protocol !== 'file:'\n ) {\n defer = post;\n global_1.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in documentCreateElement('script')) {\n defer = function (id) {\n html.appendChild(documentCreateElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nvar task = {\n set: set$1,\n clear: clear\n};\n\nvar getOwnPropertyDescriptor$2 = objectGetOwnPropertyDescriptor.f;\n\nvar macrotask = task.set;\n\n\nvar MutationObserver = global_1.MutationObserver || global_1.WebKitMutationObserver;\nvar process$2 = global_1.process;\nvar Promise$1 = global_1.Promise;\nvar IS_NODE = classofRaw(process$2) == 'process';\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor$2(global_1, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process$2.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (IS_NODE) {\n notify = function () {\n process$2.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n } else if (MutationObserver && !engineIsIos) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise$1 && Promise$1.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise$1.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global_1, flush);\n };\n }\n}\n\nvar microtask = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction$1(resolve);\n this.reject = aFunction$1(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nvar f$5 = function (C) {\n return new PromiseCapability(C);\n};\n\nvar newPromiseCapability = {\n\tf: f$5\n};\n\nvar promiseResolve = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n\nvar hostReportErrors = function (a, b) {\n var console = global_1.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n\nvar perform = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n\nvar process$3 = global_1.process;\nvar versions = process$3 && process$3.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 (engineUserAgent) {\n match = engineUserAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = engineUserAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nvar engineV8Version = version && +version;\n\nvar task$1 = task.set;\n\n\n\n\n\n\n\n\n\n\nvar SPECIES$2 = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = internalState.get;\nvar setInternalState = internalState.set;\nvar getInternalPromiseState = internalState.getterFor(PROMISE);\nvar PromiseConstructor = nativePromiseConstructor;\nvar TypeError$1 = global_1.TypeError;\nvar document$2 = global_1.document;\nvar process$4 = global_1.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability$1 = newPromiseCapability.f;\nvar newGenericPromiseCapability = newPromiseCapability$1;\nvar IS_NODE$1 = classofRaw(process$4) == 'process';\nvar DISPATCH_EVENT = !!(document$2 && document$2.createEvent && global_1.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced_1(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (engineV8Version === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE$1 && typeof PromiseRejectionEvent != 'function') return true;\n }\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (engineV8Version >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES$2] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify$1 = function (promise, state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError$1('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(promise, state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document$2.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global_1.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (handler = global_1['on' + name]) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (promise, state) {\n task$1.call(global_1, function () {\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE$1) {\n process$4.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE$1 || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (promise, state) {\n task$1.call(global_1, function () {\n if (IS_NODE$1) {\n process$4.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, promise, state, unwrap) {\n return function (value) {\n fn(promise, state, value, unwrap);\n };\n};\n\nvar internalReject = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify$1(promise, state, true);\n};\n\nvar internalResolve = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (promise === value) throw TypeError$1(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, promise, wrapper, state),\n bind(internalReject, promise, wrapper, state)\n );\n } catch (error) {\n internalReject(promise, wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify$1(promise, state, false);\n }\n } catch (error) {\n internalReject(promise, { done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction$1(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, this, state), bind(internalReject, this, state));\n } catch (error) {\n internalReject(this, state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability$1(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE$1 ? process$4.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify$1(this, state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, promise, state);\n this.reject = bind(internalReject, promise, state);\n };\n newPromiseCapability.f = newPromiseCapability$1 = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if ( typeof nativePromiseConstructor == 'function') {\n nativeThen = nativePromiseConstructor.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(nativePromiseConstructor.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') _export({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global_1, arguments));\n }\n });\n }\n}\n\n_export({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n_export({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability$1(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n_export({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve( this, x);\n }\n});\n\n_export({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability$1(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction$1(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate_1(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability$1(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction$1(C.resolve);\n iterate_1(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n\nvar FilePickerType;\n\n(function (FilePickerType) {\n FilePickerType[FilePickerType[\"Choose\"] = 1] = \"Choose\";\n FilePickerType[FilePickerType[\"Move\"] = 2] = \"Move\";\n FilePickerType[FilePickerType[\"Copy\"] = 3] = \"Copy\";\n FilePickerType[FilePickerType[\"CopyMove\"] = 4] = \"CopyMove\";\n})(FilePickerType || (FilePickerType = {}));\n\nvar FilePicker =\n/** @class */\nfunction () {\n function FilePicker(title, multiSelect, mimeTypeFilter, modal, type, directoriesAllowed, path) {\n this.title = title;\n this.multiSelect = multiSelect;\n this.mimeTypeFiler = mimeTypeFilter;\n this.modal = modal;\n this.type = type;\n this.directoriesAllowed = directoriesAllowed;\n this.path = path;\n }\n\n FilePicker.prototype.pick = function () {\n var _this = this;\n\n return new Promise(function (res, rej) {\n OC.dialogs.filepicker(_this.title, res, _this.multiSelect, _this.mimeTypeFiler, _this.modal, _this.type, _this.path, {\n allowDirectoryChooser: _this.directoriesAllowed\n });\n });\n };\n\n return FilePicker;\n}();\n\nvar FilePickerBuilder =\n/** @class */\nfunction () {\n function FilePickerBuilder(title) {\n this.multiSelect = false;\n this.mimeTypeFiler = [];\n this.modal = true;\n this.type = FilePickerType.Choose;\n this.directoriesAllowed = false;\n this.title = title;\n }\n\n FilePickerBuilder.prototype.setMultiSelect = function (ms) {\n this.multiSelect = ms;\n return this;\n };\n\n FilePickerBuilder.prototype.addMimeTypeFilter = function (filter) {\n this.mimeTypeFiler.push(filter);\n return this;\n };\n\n FilePickerBuilder.prototype.setMimeTypeFilter = function (filter) {\n this.mimeTypeFiler = filter;\n return this;\n };\n\n FilePickerBuilder.prototype.setModal = function (modal) {\n this.modal = modal;\n return this;\n };\n\n FilePickerBuilder.prototype.setType = function (type) {\n this.type = type;\n return this;\n };\n\n FilePickerBuilder.prototype.allowDirectories = function (allow) {\n if (allow === void 0) {\n allow = true;\n }\n\n this.directoriesAllowed = allow;\n return this;\n };\n\n FilePickerBuilder.prototype.startAt = function (path) {\n this.path = path;\n return this;\n };\n\n FilePickerBuilder.prototype.build = function () {\n return new FilePicker(this.title, this.multiSelect, this.mimeTypeFiler, this.modal, this.type, this.directoriesAllowed, this.path);\n };\n\n return FilePickerBuilder;\n}();\nfunction getFilePickerBuilder(title) {\n return new FilePickerBuilder(title);\n}\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nvar objectKeys = Object.keys || function keys(O) {\n return objectKeysInternal(O, enumBugKeys);\n};\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nvar toObject = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n\nvar nativeAssign = Object.assign;\nvar defineProperty$1 = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nvar objectAssign = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (descriptors && nativeAssign({ b: 1 }, nativeAssign(defineProperty$1({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty$1(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 = objectGetOwnPropertySymbols.f;\n var propertyIsEnumerable = objectPropertyIsEnumerable.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\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n_export({ target: 'Object', stat: true, forced: Object.assign !== objectAssign }, {\n assign: objectAssign\n});\n\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nvar isArray = Array.isArray || function isArray(arg) {\n return classofRaw(arg) == 'Array';\n};\n\nvar createProperty = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n\nvar SPECIES$3 = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nvar arraySpeciesCreate = 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$3];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n\nvar SPECIES$4 = wellKnownSymbol('species');\n\nvar arrayMethodHasSpeciesSupport = 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 engineV8Version >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES$4] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\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 = engineV8Version >= 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$1 = !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_export({ target: 'Array', proto: true, forced: FORCED$1 }, {\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\nvar arrayMethodIsStrict = 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\nvar defineProperty$2 = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nvar arrayMethodUsesToLength = 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$2(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n\nvar $indexOf = arrayIncludes.indexOf;\n\n\n\nvar nativeIndexOf = [].indexOf;\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('indexOf');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.indexOf` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n_export({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nvar regexpFlags = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nvar UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nvar BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n\nvar regexpStickyHelpers = {\n\tUNSUPPORTED_Y: UNSUPPORTED_Y,\n\tBROKEN_CARET: BROKEN_CARET\n};\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y$1 = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y$1 && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nvar regexpExec = patchedExec;\n\n_export({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {\n exec: regexpExec\n});\n\n// TODO: Remove from `core-js@4` since it's moved to entry points\n\n\n\n\n\n\n\nvar SPECIES$5 = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nvar fixRegexpWellKnownSymbolLogic = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES$5] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod$1 = 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\nvar stringMultibyte = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod$1(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod$1(true)\n};\n\nvar charAt = stringMultibyte.charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nvar advanceStringIndex = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nvar regexpExecAbstract = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classofRaw(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\nvar max$1 = Math.max;\nvar min$2 = Math.min;\nvar floor$1 = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegexpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regexpExecAbstract(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max$1(min$2(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor$1(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nvar isRegexp = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classofRaw(it) == 'RegExp');\n};\n\nvar arrayPush = [].push;\nvar min$3 = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegexpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegexp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return regexpExecAbstract(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = regexpExecAbstract(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min$3(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n\n// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nvar whitespaces = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod$2 = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nvar stringTrim = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod$2(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod$2(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod$2(3)\n};\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nvar stringTrimForced = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n\nvar $trim = stringTrim.trim;\n\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n_export({ target: 'String', proto: true, forced: stringTrimForced('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar toastify = createCommonjsModule(function (module) {\n /*!\n * Toastify js 1.9.1\n * https://github.com/apvarun/toastify-js\n * @license MIT licensed\n *\n * Copyright (C) 2018 Varun A P\n */\n (function (root, factory) {\n if ( module.exports) {\n module.exports = factory();\n } else {\n root.Toastify = factory();\n }\n })(commonjsGlobal, function (global) {\n // Object initialization\n var Toastify = function Toastify(options) {\n // Returning a new init object\n return new Toastify.lib.init(options);\n },\n // Library version\n version = \"1.9.1\"; // Defining the prototype of the object\n\n\n Toastify.lib = Toastify.prototype = {\n toastify: version,\n constructor: Toastify,\n // Initializing the object with required parameters\n init: function init(options) {\n // Verifying and validating the input object\n if (!options) {\n options = {};\n } // Creating the options object\n\n\n this.options = {};\n this.toastElement = null; // Validating the options\n\n this.options.text = options.text || \"Hi there!\"; // Display message\n\n this.options.node = options.node; // Display content as node\n\n this.options.duration = options.duration === 0 ? 0 : options.duration || 3000; // Display duration\n\n this.options.selector = options.selector; // Parent selector\n\n this.options.callback = options.callback || function () {}; // Callback after display\n\n\n this.options.destination = options.destination; // On-click destination\n\n this.options.newWindow = options.newWindow || false; // Open destination in new window\n\n this.options.close = options.close || false; // Show toast close icon\n\n this.options.gravity = options.gravity === \"bottom\" ? \"toastify-bottom\" : \"toastify-top\"; // toast position - top or bottom\n\n this.options.positionLeft = options.positionLeft || false; // toast position - left or right\n\n this.options.position = options.position || ''; // toast position - left or right\n\n this.options.backgroundColor = options.backgroundColor; // toast background color\n\n this.options.avatar = options.avatar || \"\"; // img element src - url or a path\n\n this.options.className = options.className || \"\"; // additional class names for the toast\n\n this.options.stopOnFocus = options.stopOnFocus === undefined ? true : options.stopOnFocus; // stop timeout on focus\n\n this.options.onClick = options.onClick; // Callback after click\n\n var normalOffset = {\n x: 0,\n y: 0\n };\n this.options.offset = options.offset || normalOffset; // toast offset\n // Returning the current object for chaining functions\n\n return this;\n },\n // Building the DOM element\n buildToast: function buildToast() {\n // Validating if the options are defined\n if (!this.options) {\n throw \"Toastify is not initialized\";\n } // Creating the DOM object\n\n\n var divElement = document.createElement(\"div\");\n divElement.className = \"toastify on \" + this.options.className; // Positioning toast to left or right or center\n\n if (!!this.options.position) {\n divElement.className += \" toastify-\" + this.options.position;\n } else {\n // To be depreciated in further versions\n if (this.options.positionLeft === true) {\n divElement.className += \" toastify-left\";\n console.warn('Property `positionLeft` will be depreciated in further versions. Please use `position` instead.');\n } else {\n // Default position\n divElement.className += \" toastify-right\";\n }\n } // Assigning gravity of element\n\n\n divElement.className += \" \" + this.options.gravity;\n\n if (this.options.backgroundColor) {\n divElement.style.background = this.options.backgroundColor;\n } // Adding the toast message/node\n\n\n if (this.options.node && this.options.node.nodeType === Node.ELEMENT_NODE) {\n // If we have a valid node, we insert it\n divElement.appendChild(this.options.node);\n } else {\n divElement.innerHTML = this.options.text;\n\n if (this.options.avatar !== \"\") {\n var avatarElement = document.createElement(\"img\");\n avatarElement.src = this.options.avatar;\n avatarElement.className = \"toastify-avatar\";\n\n if (this.options.position == \"left\" || this.options.positionLeft === true) {\n // Adding close icon on the left of content\n divElement.appendChild(avatarElement);\n } else {\n // Adding close icon on the right of content\n divElement.insertAdjacentElement(\"afterbegin\", avatarElement);\n }\n }\n } // Adding a close icon to the toast\n\n\n if (this.options.close === true) {\n // Create a span for close element\n var closeElement = document.createElement(\"span\");\n closeElement.innerHTML = \"&#10006;\";\n closeElement.className = \"toast-close\"; // Triggering the removal of toast from DOM on close click\n\n closeElement.addEventListener(\"click\", function (event) {\n event.stopPropagation();\n this.removeElement(this.toastElement);\n window.clearTimeout(this.toastElement.timeOutValue);\n }.bind(this)); //Calculating screen width\n\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width; // Adding the close icon to the toast element\n // Display on the right if screen width is less than or equal to 360px\n\n if ((this.options.position == \"left\" || this.options.positionLeft === true) && width > 360) {\n // Adding close icon on the left of content\n divElement.insertAdjacentElement(\"afterbegin\", closeElement);\n } else {\n // Adding close icon on the right of content\n divElement.appendChild(closeElement);\n }\n } // Clear timeout while toast is focused\n\n\n if (this.options.stopOnFocus && this.options.duration > 0) {\n var self = this; // stop countdown\n\n divElement.addEventListener(\"mouseover\", function (event) {\n window.clearTimeout(divElement.timeOutValue);\n }); // add back the timeout\n\n divElement.addEventListener(\"mouseleave\", function () {\n divElement.timeOutValue = window.setTimeout(function () {\n // Remove the toast from DOM\n self.removeElement(divElement);\n }, self.options.duration);\n });\n } // Adding an on-click destination path\n\n\n if (typeof this.options.destination !== \"undefined\") {\n divElement.addEventListener(\"click\", function (event) {\n event.stopPropagation();\n\n if (this.options.newWindow === true) {\n window.open(this.options.destination, \"_blank\");\n } else {\n window.location = this.options.destination;\n }\n }.bind(this));\n }\n\n if (typeof this.options.onClick === \"function\" && typeof this.options.destination === \"undefined\") {\n divElement.addEventListener(\"click\", function (event) {\n event.stopPropagation();\n this.options.onClick();\n }.bind(this));\n } // Adding offset\n\n\n if (_typeof(this.options.offset) === \"object\") {\n var x = getAxisOffsetAValue(\"x\", this.options);\n var y = getAxisOffsetAValue(\"y\", this.options);\n var xOffset = this.options.position == \"left\" ? x : \"-\".concat(x);\n var yOffset = this.options.gravity == \"toastify-top\" ? y : \"-\".concat(y);\n divElement.style.transform = \"translate(\".concat(xOffset, \", \").concat(yOffset, \")\");\n } // Returning the generated element\n\n\n return divElement;\n },\n // Displaying the toast\n showToast: function showToast() {\n // Creating the DOM object for the toast\n this.toastElement = this.buildToast(); // Getting the root element to with the toast needs to be added\n\n var rootElement;\n\n if (typeof this.options.selector === \"undefined\") {\n rootElement = document.body;\n } else {\n rootElement = document.getElementById(this.options.selector);\n } // Validating if root element is present in DOM\n\n\n if (!rootElement) {\n throw \"Root element is not defined\";\n } // Adding the DOM element\n\n\n rootElement.insertBefore(this.toastElement, rootElement.firstChild); // Repositioning the toasts in case multiple toasts are present\n\n Toastify.reposition();\n\n if (this.options.duration > 0) {\n this.toastElement.timeOutValue = window.setTimeout(function () {\n // Remove the toast from DOM\n this.removeElement(this.toastElement);\n }.bind(this), this.options.duration); // Binding `this` for function invocation\n } // Supporting function chaining\n\n\n return this;\n },\n hideToast: function hideToast() {\n if (this.toastElement.timeOutValue) {\n clearTimeout(this.toastElement.timeOutValue);\n }\n\n this.removeElement(this.toastElement);\n },\n // Removing the element from the DOM\n removeElement: function removeElement(toastElement) {\n // Hiding the element\n // toastElement.classList.remove(\"on\");\n toastElement.className = toastElement.className.replace(\" on\", \"\"); // Removing the element from DOM after transition end\n\n window.setTimeout(function () {\n // remove options node if any\n if (this.options.node && this.options.node.parentNode) {\n this.options.node.parentNode.removeChild(this.options.node);\n } // Remove the elemenf from the DOM, only when the parent node was not removed before.\n\n\n if (toastElement.parentNode) {\n toastElement.parentNode.removeChild(toastElement);\n } // Calling the callback function\n\n\n this.options.callback.call(toastElement); // Repositioning the toasts again\n\n Toastify.reposition();\n }.bind(this), 400); // Binding `this` for function invocation\n }\n }; // Positioning the toasts on the DOM\n\n Toastify.reposition = function () {\n // Top margins with gravity\n var topLeftOffsetSize = {\n top: 15,\n bottom: 15\n };\n var topRightOffsetSize = {\n top: 15,\n bottom: 15\n };\n var offsetSize = {\n top: 15,\n bottom: 15\n }; // Get all toast messages on the DOM\n\n var allToasts = document.getElementsByClassName(\"toastify\");\n var classUsed; // Modifying the position of each toast element\n\n for (var i = 0; i < allToasts.length; i++) {\n // Getting the applied gravity\n if (containsClass(allToasts[i], \"toastify-top\") === true) {\n classUsed = \"toastify-top\";\n } else {\n classUsed = \"toastify-bottom\";\n }\n\n var height = allToasts[i].offsetHeight;\n classUsed = classUsed.substr(9, classUsed.length - 1); // Spacing between toasts\n\n var offset = 15;\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width; // Show toast in center if screen with less than or qual to 360px\n\n if (width <= 360) {\n // Setting the position\n allToasts[i].style[classUsed] = offsetSize[classUsed] + \"px\";\n offsetSize[classUsed] += height + offset;\n } else {\n if (containsClass(allToasts[i], \"toastify-left\") === true) {\n // Setting the position\n allToasts[i].style[classUsed] = topLeftOffsetSize[classUsed] + \"px\";\n topLeftOffsetSize[classUsed] += height + offset;\n } else {\n // Setting the position\n allToasts[i].style[classUsed] = topRightOffsetSize[classUsed] + \"px\";\n topRightOffsetSize[classUsed] += height + offset;\n }\n }\n } // Supporting function chaining\n\n\n return this;\n }; // Helper function to get offset.\n\n\n function getAxisOffsetAValue(axis, options) {\n if (options.offset[axis]) {\n if (isNaN(options.offset[axis])) {\n return options.offset[axis];\n } else {\n return options.offset[axis] + 'px';\n }\n }\n\n return '0px';\n }\n\n function containsClass(elem, yourClass) {\n if (!elem || typeof yourClass !== \"string\") {\n return false;\n } else if (elem.className && elem.className.trim().split(/\\s+/gi).indexOf(yourClass) > -1) {\n return true;\n } else {\n return false;\n }\n } // Setting up the prototype for the init object\n\n\n Toastify.lib.init.prototype = Toastify.lib; // Returning the Toastify function to be assigned to the window object/module\n\n return Toastify;\n });\n});\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod$3 = 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 = functionBindContext(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\nvar arrayIteration = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod$3(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod$3(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod$3(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod$3(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod$3(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod$3(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod$3(6)\n};\n\nvar $map = arrayIteration.map;\n\n\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH$1 = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n_export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH$1 }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? regexpFlags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\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 commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;\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$1 = 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$1 = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty$1).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Symbol$2 = 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$2 ? Symbol$2.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$1.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$1.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$1(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$1(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$1(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$1(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$1 = 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$1(value) ? objectToString$1.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$1(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$1.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$1(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$1(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nvar lodash_get = get$1;\n\nvar plurals = {\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: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 5\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3);\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};\n\nvar gettext = 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 this.debug = 'debug' in options && options.debug === true;\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', new 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 lodash_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\nvar dist = createCommonjsModule(function (module, exports) {\n\n\n\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getLocale = getLocale;\nexports.getCanonicalLocale = getCanonicalLocale;\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\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, '-');\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\n});\n\nvar gettext$1 = createCommonjsModule(function (module, exports) {\n\n\n\n\n\n\n\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getGettextBuilder = getGettextBuilder;\n\nvar _nodeGettext = _interopRequireDefault(gettext);\n\n\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\nvar GettextBuilder = /*#__PURE__*/function () {\n function GettextBuilder() {\n _classCallCheck(this, GettextBuilder);\n\n this.translations = {};\n this.debug = false;\n }\n\n _createClass(GettextBuilder, [{\n key: \"setLanguage\",\n value: function setLanguage(language) {\n this.locale = language;\n return this;\n }\n }, {\n key: \"detectLocale\",\n value: function detectLocale() {\n return this.setLanguage((0, dist.getLanguage)());\n }\n }, {\n key: \"addTranslation\",\n value: function addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n }, {\n key: \"enableDebugMode\",\n value: function enableDebugMode() {\n this.debug = true;\n return this;\n }\n }, {\n key: \"build\",\n value: function build() {\n return new GettextWrapper(this.locale || 'en', this.translations, this.debug);\n }\n }]);\n\n return GettextBuilder;\n}();\n\nvar GettextWrapper = /*#__PURE__*/function () {\n function GettextWrapper(locale, data, debug) {\n _classCallCheck(this, GettextWrapper);\n\n this.gt = new _nodeGettext.default({\n debug: debug,\n sourceLocale: 'en'\n });\n\n for (var key in data) {\n this.gt.addTranslations(key, 'messages', data[key]);\n }\n\n this.gt.setLocale(locale);\n }\n\n _createClass(GettextWrapper, [{\n key: \"subtitudePlaceholders\",\n value: function subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n\n if (typeof r === 'string' || typeof r === 'number') {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n }, {\n key: \"gettext\",\n value: function gettext(original) {\n var placeholders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return this.subtitudePlaceholders(this.gt.gettext(original), placeholders);\n }\n }, {\n key: \"ngettext\",\n value: function ngettext(singular, plural, count) {\n var placeholders = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n return this.subtitudePlaceholders(this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()), placeholders);\n }\n }]);\n\n return GettextWrapper;\n}();\n\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\n\n});\n\nvar gtBuilder = gettext$1.getGettextBuilder().detectLocale();\nprocess.env.TRANSLATIONS.map(function (data) {\n return gtBuilder.addTranslation(data.locale, data.json);\n});\nvar gt = gtBuilder.build();\nvar n = gt.ngettext.bind(gt);\nvar t = gt.gettext.bind(gt);\n\nvar ToastType =\n/** @class */\nfunction () {\n function ToastType() {}\n\n ToastType.ERROR = 'toast-error';\n ToastType.WARNING = 'toast-warning';\n ToastType.INFO = 'toast-info';\n ToastType.SUCCESS = 'toast-success';\n ToastType.PERMANENT = 'toast-error';\n ToastType.UNDO = 'toast-undo';\n return ToastType;\n}();\n/**\r\n * Show a toast message\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\n\nfunction showMessage(data, options) {\n var _a;\n\n var _b;\n\n options = Object.assign({\n timeout: 7,\n isHTML: false,\n type: undefined,\n // An undefined selector defaults to the body element\n selector: undefined,\n onRemove: function onRemove() {},\n onClick: undefined,\n close: true\n }, options);\n\n if (typeof data === 'string' && !options.isHTML) {\n // fime mae sure that text is extracted\n var element = document.createElement('div');\n element.innerHTML = data;\n data = element.innerText;\n }\n\n var classes = (_b = options.type) !== null && _b !== void 0 ? _b : '';\n\n if (typeof options.onClick === 'function') {\n classes += ' toast-with-click ';\n }\n\n var isNode = data instanceof Node;\n var timeout = null;\n\n if (options.timeout) {\n timeout = options.timeout === -1 ? -1 : options.timeout * 1000;\n }\n\n var toast = toastify((_a = {}, _a[!isNode ? 'text' : 'node'] = data, _a.duration = timeout, _a.callback = options.onRemove, _a.onClick = options.onClick, _a.close = options.close, _a.gravity = 'top', _a.selector = options.selector, _a.position = 'right', _a.backgroundColor = '', _a.className = 'dialogs ' + classes, _a));\n toast.showToast();\n return toast;\n}\n/**\r\n * Show a toast message with error styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showError(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.ERROR\n }));\n}\n/**\r\n * Show a toast message with warning styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showWarning(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.WARNING\n }));\n}\n/**\r\n * Show a toast message with info styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showInfo(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.INFO\n }));\n}\n/**\r\n * Show a toast message with success styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param options\r\n */\n\nfunction showSuccess(text, options) {\n return showMessage(text, __assign(__assign({}, options), {\n type: ToastType.SUCCESS\n }));\n}\n/**\r\n * Show a toast message with undo styling\r\n *\r\n * @param text Message to be shown in the toast, any HTML is removed by default\r\n * @param onUndo Function that is called when the undo button is clicked\r\n * @param options\r\n */\n\nfunction showUndo(text, onUndo, options) {\n // onUndo callback is mandatory\n if (!(onUndo instanceof Function)) {\n throw new Error('Please provide a valid onUndo method');\n }\n\n var toast;\n options = Object.assign(options || {}, {\n // force 10 seconds of timeout\n timeout: 10000,\n // remove close button\n close: false\n }); // Generate undo layout\n\n var undoContent = document.createElement('span');\n var undoButton = document.createElement('button');\n undoButton.classList.add('toast-undo-button');\n undoButton.innerText = t('Undo');\n undoContent.innerText = text;\n undoContent.appendChild(undoButton);\n undoButton.addEventListener('click', function (event) {\n event.stopPropagation();\n onUndo(event); // Hide toast\n\n if ((toast === null || toast === void 0 ? void 0 : toast.hideToast) instanceof Function) {\n toast.hideToast();\n }\n });\n toast = showMessage(undoContent, __assign(__assign({}, options), {\n type: ToastType.UNDO\n }));\n return toast;\n}\n\nexport { FilePicker, FilePickerBuilder, getFilePickerBuilder, showError, showInfo, showMessage, showSuccess, showUndo, showWarning };\n//# sourceMappingURL=index.es.js.map\n","import { EventBus } from \"./EventBus\"\nimport { ProxyBus } from \"./ProxyBus\"\nimport { SimpleBus } from \"./SimpleBus\"\n\ndeclare global {\n interface Window {\n OC: any\n _nc_event_bus: any\n }\n}\n\nfunction getBus(): EventBus {\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 }\n\n // Either use an existing event bus instance or create one\n if (typeof window._nc_event_bus !== 'undefined') {\n return new ProxyBus(window._nc_event_bus)\n } else {\n return window._nc_event_bus = new SimpleBus()\n }\n}\n\nconst bus = getBus()\n\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 */\nexport function subscribe(name: string, handler: (string) => void): void {\n bus.subscribe(name, handler)\n}\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 */\nexport function unsubscribe(name: string, handler: (string) => void): void {\n bus.unsubscribe(name, handler)\n}\n\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\nexport function emit(name: string, event: object): void {\n bus.emit(name, event)\n}\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","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","module.exports = {};\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","module.exports = {};\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","\"use strict\";\n\nvar isOldIE = function isOldIE() {\n var memo;\n return function memorize() {\n if (typeof memo === 'undefined') {\n // Test for IE <= 9 as proposed by Browserhacks\n // @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n // Tests for existence of standard globals is to allow style-loader\n // to operate correctly into non-standard environments\n // @see https://github.com/webpack-contrib/style-loader/issues/177\n memo = Boolean(window && document && document.all && !window.atob);\n }\n\n return memo;\n };\n}();\n\nvar getTarget = function getTarget() {\n var memo = {};\n return function memorize(target) {\n if (typeof memo[target] === 'undefined') {\n var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself\n\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n\n memo[target] = styleTarget;\n }\n\n return memo[target];\n };\n}();\n\nvar stylesInDom = [];\n\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n\n for (var i = 0; i < stylesInDom.length; i++) {\n if (stylesInDom[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n\n return result;\n}\n\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var index = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3]\n };\n\n if (index !== -1) {\n stylesInDom[index].references++;\n stylesInDom[index].updater(obj);\n } else {\n stylesInDom.push({\n identifier: identifier,\n updater: addStyle(obj, options),\n references: 1\n });\n }\n\n identifiers.push(identifier);\n }\n\n return identifiers;\n}\n\nfunction insertStyleElement(options) {\n var style = document.createElement('style');\n var attributes = options.attributes || {};\n\n if (typeof attributes.nonce === 'undefined') {\n var nonce = typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n\n if (nonce) {\n attributes.nonce = nonce;\n }\n }\n\n Object.keys(attributes).forEach(function (key) {\n style.setAttribute(key, attributes[key]);\n });\n\n if (typeof options.insert === 'function') {\n options.insert(style);\n } else {\n var target = getTarget(options.insert || 'head');\n\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n\n target.appendChild(style);\n }\n\n return style;\n}\n\nfunction removeStyleElement(style) {\n // istanbul ignore if\n if (style.parentNode === null) {\n return false;\n }\n\n style.parentNode.removeChild(style);\n}\n/* istanbul ignore next */\n\n\nvar replaceText = function replaceText() {\n var textStore = [];\n return function replace(index, replacement) {\n textStore[index] = replacement;\n return textStore.filter(Boolean).join('\\n');\n };\n}();\n\nfunction applyToSingletonTag(style, index, remove, obj) {\n var css = remove ? '' : obj.media ? \"@media \".concat(obj.media, \" {\").concat(obj.css, \"}\") : obj.css; // For old IE\n\n /* istanbul ignore if */\n\n if (style.styleSheet) {\n style.styleSheet.cssText = replaceText(index, css);\n } else {\n var cssNode = document.createTextNode(css);\n var childNodes = style.childNodes;\n\n if (childNodes[index]) {\n style.removeChild(childNodes[index]);\n }\n\n if (childNodes.length) {\n style.insertBefore(cssNode, childNodes[index]);\n } else {\n style.appendChild(cssNode);\n }\n }\n}\n\nfunction applyToTag(style, options, obj) {\n var css = obj.css;\n var media = obj.media;\n var sourceMap = obj.sourceMap;\n\n if (media) {\n style.setAttribute('media', media);\n } else {\n style.removeAttribute('media');\n }\n\n if (sourceMap && btoa) {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n } // For old IE\n\n /* istanbul ignore if */\n\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n while (style.firstChild) {\n style.removeChild(style.firstChild);\n }\n\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar singleton = null;\nvar singletonCounter = 0;\n\nfunction addStyle(obj, options) {\n var style;\n var update;\n var remove;\n\n if (options.singleton) {\n var styleIndex = singletonCounter++;\n style = singleton || (singleton = insertStyleElement(options));\n update = applyToSingletonTag.bind(null, style, styleIndex, false);\n remove = applyToSingletonTag.bind(null, style, styleIndex, true);\n } else {\n style = insertStyleElement(options);\n update = applyToTag.bind(null, style, options);\n\n remove = function remove() {\n removeStyleElement(style);\n };\n }\n\n update(obj);\n return function updateStyle(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap) {\n return;\n }\n\n update(obj = newObj);\n } else {\n remove();\n }\n };\n}\n\nmodule.exports = function (list, options) {\n options = options || {}; // Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n // tags it will allow on a page\n\n if (!options.singleton && typeof options.singleton !== 'boolean') {\n options.singleton = isOldIE();\n }\n\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n\n if (Object.prototype.toString.call(newList) !== '[object Array]') {\n return;\n }\n\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDom[index].references--;\n }\n\n var newLastIdentifiers = modulesToDom(newList, options);\n\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n\n var _index = getIndexByIdentifier(_identifier);\n\n if (stylesInDom[_index].references === 0) {\n stylesInDom[_index].updater();\n\n stylesInDom.splice(_index, 1);\n }\n }\n\n lastIdentifiers = newLastIdentifiers;\n };\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 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","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","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 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","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 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 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","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 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","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\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');\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","'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","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 fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\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 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 api = require(\"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","var api = require(\"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","var api = require(\"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=5c9d3bb9&lang=scss&scoped=true&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","var api = require(\"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var 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=7bbc2826&scoped=true&lang=css&\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"Directives/Tooltip\",[],e):\"object\"==typeof exports?exports[\"Directives/Tooltip\"]=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Directives/Tooltip\"]=e())}(window,(function(){return function(t){var e={};function r(o){if(e[o])return e[o].exports;var n=e[o]={i:o,l:!1,exports:{}};return t[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,o){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var n in t)r.d(o,n,function(e){return t[e]}.bind(null,n));return o},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,\"a\",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p=\"/dist/\",r(r.s=19)}({1:function(t,e,r){\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var r=function(t,e){var r=t[1]||\"\",o=t[3];if(!o)return r;if(e&&\"function\"==typeof btoa){var n=(a=o,l=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),s=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(l),\"/*# \".concat(s,\" */\")),i=o.sources.map((function(t){return\"/*# sourceURL=\".concat(o.sourceRoot||\"\").concat(t,\" */\")}));return[r].concat(i).concat([n]).join(\"\\n\")}var a,l,s;return[r].join(\"\\n\")}(e,t);return e[2]?\"@media \".concat(e[2],\" {\").concat(r,\"}\"):r})).join(\"\")},e.i=function(t,r,o){\"string\"==typeof t&&(t=[[null,t,\"\"]]);var n={};if(o)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(n[a]=!0)}for(var l=0;l<t.length;l++){var s=[].concat(t[l]);o&&n[s[0]]||(r&&(s[2]?s[2]=\"\".concat(r,\" and \").concat(s[2]):s[2]=r),e.push(s))}},e}},19:function(t,e,r){\"use strict\";r.r(e);var o=r(4);r(55);\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.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 */\no.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"b74ff51\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),o.VTooltip.options.defaultHtml=!1,e.default=o.VTooltip},2:function(t,e,r){\"use strict\";function o(t,e){for(var r=[],o={},n=0;n<e.length;n++){var i=e[n],a=i[0],l={id:t+\":\"+n,css:i[1],media:i[2],sourceMap:i[3]};o[a]?o[a].parts.push(l):r.push(o[a]={id:a,parts:[l]})}return r}r.r(e),r.d(e,\"default\",(function(){return f}));var n=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!n)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var i={},a=n&&(document.head||document.getElementsByTagName(\"head\")[0]),l=null,s=0,p=!1,c=function(){},d=null,u=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function f(t,e,r,n){p=r,d=n||{};var a=o(t,e);return v(a),function(e){for(var r=[],n=0;n<a.length;n++){var l=a[n];(s=i[l.id]).refs--,r.push(s)}e?v(a=o(t,e)):a=[];for(n=0;n<r.length;n++){var s;if(0===(s=r[n]).refs){for(var p=0;p<s.parts.length;p++)s.parts[p]();delete i[s.id]}}}}function v(t){for(var e=0;e<t.length;e++){var r=t[e],o=i[r.id];if(o){o.refs++;for(var n=0;n<o.parts.length;n++)o.parts[n](r.parts[n]);for(;n<r.parts.length;n++)o.parts.push(h(r.parts[n]));o.parts.length>r.parts.length&&(o.parts.length=r.parts.length)}else{var a=[];for(n=0;n<r.parts.length;n++)a.push(h(r.parts[n]));i[r.id]={id:r.id,refs:1,parts:a}}}}function b(){var t=document.createElement(\"style\");return t.type=\"text/css\",a.appendChild(t),t}function h(t){var e,r,o=document.querySelector('style[data-vue-ssr-id~=\"'+t.id+'\"]');if(o){if(p)return c;o.parentNode.removeChild(o)}if(u){var n=s++;o=l||(l=b()),e=x.bind(null,o,n,!1),r=x.bind(null,o,n,!0)}else o=b(),e=y.bind(null,o),r=function(){o.parentNode.removeChild(o)};return e(t),function(o){if(o){if(o.css===t.css&&o.media===t.media&&o.sourceMap===t.sourceMap)return;e(t=o)}else r()}}var g,m=(g=[],function(t,e){return g[t]=e,g.filter(Boolean).join(\"\\n\")});function x(t,e,r,o){var n=r?\"\":o.css;if(t.styleSheet)t.styleSheet.cssText=m(e,n);else{var i=document.createTextNode(n),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(i,a[e]):t.appendChild(i)}}function y(t,e){var r=e.css,o=e.media,n=e.sourceMap;if(o&&t.setAttribute(\"media\",o),d.ssrId&&t.setAttribute(\"data-vue-ssr-id\",e.id),n&&(r+=\"\\n/*# sourceURL=\"+n.sources[0]+\" */\",r+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(n))))+\" */\"),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}},4:function(t,e){t.exports=require(\"v-tooltip\")},55:function(t,e,r){var o=r(56);\"string\"==typeof o&&(o=[[t.i,o,\"\"]]),o.locals&&(t.exports=o.locals);(0,r(2).default)(\"941c791e\",o,!0,{})},56:function(t,e,r){(e=r(1)(!1)).push([t.i,\".vue-tooltip[data-v-b74ff51]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-b74ff51][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-b74ff51][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-b74ff51][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-b74ff51] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-b74ff51] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\"]),t.exports=e}})}));\n//# sourceMappingURL=Tooltip.js.map","'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 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 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 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 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 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","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","exports.f = Object.getOwnPropertySymbols;\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","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","'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","// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n /* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\nmodule.exports = {\n SEMVER_SPEC_VERSION,\n MAX_LENGTH,\n MAX_SAFE_INTEGER,\n MAX_SAFE_COMPONENT_LENGTH\n}\n","'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 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 $ = 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 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","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 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 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","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 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","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\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","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 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 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 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 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","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/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","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.<br />\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is <html> the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.<br />\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.<br />\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.<br />\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.<br />\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.<br />\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.<br />\n * It will read the variation of the `placement` property.<br />\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.<br />\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.<br />\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.<br />\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.<br />\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".<br />\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.<br />\n * These can be overridden using the `options` argument of Popper.js.<br />\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.<br />\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","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 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 setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\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 global = require('../internals/global');\n\nmodule.exports = global;\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","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","'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(/%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 maxBodyLength: -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 cookies = require('./../helpers/cookies');\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 if (\n (utils.isBlob(requestData) || utils.isFile(requestData)) &&\n requestData.type\n ) {\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 = unescape(encodeURIComponent(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 // 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) {\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', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n var defaultToConfig2Keys = [\n 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',\n 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'\n ];\n var directMergeKeys = ['validateStatus'];\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n }\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n utils.forEach(directMergeKeys, function merge(prop) {\n if (prop in config2) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys)\n .concat(directMergeKeys);\n\n var otherKeys = Object\n .keys(config1)\n .concat(Object.keys(config2))\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, mergeDeepProperties);\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\";\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';\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 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 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","const { MAX_SAFE_COMPONENT_LENGTH } = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst src = exports.src = []\nconst t = exports.t = {}\nlet R = 0\n\nconst createToken = (name, value, isGlobal) => {\n const index = R++\n debug(index, value)\n t[name] = index\n src[index] = value\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\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\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('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\ncreateToken('NONNUMERICIDENTIFIER', '\\\\d*[a-zA-Z-][a-zA-Z0-9-]*')\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('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\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\ncreateToken('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\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+')\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('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\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('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.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('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.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('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])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('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`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.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.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\.0\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\.0\\.0-0\\\\s*$')\n","const debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n","const debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { re, t } = require('../internal/re')\n\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (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 version.includePrerelease === !!options.includePrerelease) {\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(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const 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((id) => {\n if (/^[0-9]+$/.test(id)) {\n const 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\n format () {\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\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return (\n compareIdentifiers(this.major, other.major) ||\n compareIdentifiers(this.minor, other.minor) ||\n compareIdentifiers(this.patch, other.patch)\n )\n }\n\n comparePre (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 let i = 0\n do {\n const a = this.prerelease[i]\n const 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\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const 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.\n inc (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 (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\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 let 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}\n\nmodule.exports = SemVer\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\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","'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 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 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 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 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","// 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","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","import Popper from 'popper.js';\nimport { ResizeObserver } from 'vue-resize';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nvar SVGAnimatedString = function SVGAnimatedString() {};\n\nif (typeof window !== 'undefined') {\n SVGAnimatedString = window.SVGAnimatedString;\n}\n\nfunction convertToArray(value) {\n if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n return value;\n}\n/**\n * Add classes to an element.\n * This method checks to ensure that the classes don't already exist before adding them.\n * It uses el.className rather than classList in order to be IE friendly.\n * @param {object} el - The element to add the classes to.\n * @param {classes} string - List of space separated classes to be added to the element.\n */\n\nfunction addClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n if (classList.indexOf(newClass) === -1) {\n classList.push(newClass);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\n/**\n * Remove classes from an element.\n * It uses el.className rather than classList in order to be IE friendly.\n * @export\n * @param {any} el The element to remove the classes from.\n * @param {any} classes List of space separated classes to be removed from the element.\n */\n\nfunction removeClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n var index = classList.indexOf(newClass);\n\n if (index !== -1) {\n classList.splice(index, 1);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\nvar supportsPassive = false;\n\nif (typeof window !== 'undefined') {\n supportsPassive = false;\n\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (e) {}\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 this.size = 0;\n}\n\nvar _listCacheClear = listCacheClear;\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\nvar eq_1 = eq;\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_1(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nvar _assocIndexOf = assocIndexOf;\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\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 --this.size;\n return true;\n}\n\nvar _listCacheDelete = listCacheDelete;\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\nvar _listCacheGet = listCacheGet;\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\nvar _listCacheHas = listCacheHas;\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 ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nvar _listCacheSet = listCacheSet;\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 == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\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\nvar _ListCache = ListCache;\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new _ListCache;\n this.size = 0;\n}\n\nvar _stackClear = stackClear;\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\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 stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nvar _stackDelete = stackDelete;\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nvar _stackGet = stackGet;\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\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 stackHas(key) {\n return this.__data__.has(key);\n}\n\nvar _stackHas = stackHas;\n\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;\n\nvar _freeGlobal = freeGlobal;\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\nvar _root = root;\n\n/** Built-in value references. */\nvar Symbol$1 = _root.Symbol;\n\nvar _Symbol = Symbol$1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\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 nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nvar _getRawTag = getRawTag;\n\n/** Used for built-in method references. */\nvar objectProto$1 = Object.prototype;\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 nativeObjectToString$1 = objectProto$1.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString$1.call(value);\n}\n\nvar _objectToString = objectToString;\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag$1 && symToStringTag$1 in Object(value))\n ? _getRawTag(value)\n : _objectToString(value);\n}\n\nvar _baseGetTag = baseGetTag;\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 != null && (type == 'object' || type == 'function');\n}\n\nvar isObject_1 = isObject;\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\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 if (!isObject_1(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = _baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nvar isFunction_1 = isFunction;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = _root['__core-js_shared__'];\n\nvar _coreJsData = coreJsData;\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/**\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\nvar _isMasked = isMasked;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\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\nvar _toSource = toSource;\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 detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto$1 = Function.prototype,\n objectProto$2 = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString$1 = funcProto$1.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$1 = objectProto$2.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString$1.call(hasOwnProperty$1).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\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_1(value) || _isMasked(value)) {\n return false;\n }\n var pattern = isFunction_1(value) ? reIsNative : reIsHostCtor;\n return pattern.test(_toSource(value));\n}\n\nvar _baseIsNative = baseIsNative;\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\nvar _getValue = getValue;\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\nvar _getNative = getNative;\n\n/* Built-in method references that are verified to be native. */\nvar Map = _getNative(_root, 'Map');\n\nvar _Map = Map;\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = _getNative(Object, 'create');\n\nvar _nativeCreate = nativeCreate;\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 this.size = 0;\n}\n\nvar _hashClear = hashClear;\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 var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nvar _hashDelete = hashDelete;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto$3 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$2 = objectProto$3.hasOwnProperty;\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$2.call(data, key) ? data[key] : undefined;\n}\n\nvar _hashGet = hashGet;\n\n/** Used for built-in method references. */\nvar objectProto$4 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$3 = objectProto$4.hasOwnProperty;\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$3.call(data, key);\n}\n\nvar _hashHas = hashHas;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED$1 = '__lodash_hash_undefined__';\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 this.size += this.has(key) ? 0 : 1;\n data[key] = (_nativeCreate && value === undefined) ? HASH_UNDEFINED$1 : value;\n return this;\n}\n\nvar _hashSet = hashSet;\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 == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\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\nvar _Hash = Hash;\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.size = 0;\n this.__data__ = {\n 'hash': new _Hash,\n 'map': new (_Map || _ListCache),\n 'string': new _Hash\n };\n}\n\nvar _mapCacheClear = mapCacheClear;\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\nvar _isKeyable = isKeyable;\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\nvar _getMapData = getMapData;\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 var result = _getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nvar _mapCacheDelete = mapCacheDelete;\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\nvar _mapCacheGet = mapCacheGet;\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\nvar _mapCacheHas = mapCacheHas;\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 var data = _getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nvar _mapCacheSet = mapCacheSet;\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 == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\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\nvar _MapCache = MapCache;\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof _ListCache) {\n var pairs = data.__data__;\n if (!_Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new _MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nvar _stackSet = stackSet;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new _ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = _stackClear;\nStack.prototype['delete'] = _stackDelete;\nStack.prototype.get = _stackGet;\nStack.prototype.has = _stackHas;\nStack.prototype.set = _stackSet;\n\nvar _Stack = Stack;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED$2 = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED$2);\n return this;\n}\n\nvar _setCacheAdd = setCacheAdd;\n\n/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nvar _setCacheHas = setCacheHas;\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new _MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = _setCacheAdd;\nSetCache.prototype.has = _setCacheHas;\n\nvar _SetCache = SetCache;\n\n/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nvar _arraySome = arraySome;\n\n/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\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 cacheHas(cache, key) {\n return cache.has(key);\n}\n\nvar _cacheHas = cacheHas;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(array);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new _SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!_arraySome(other, function(othValue, othIndex) {\n if (!_cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nvar _equalArrays = equalArrays;\n\n/** Built-in value references. */\nvar Uint8Array = _root.Uint8Array;\n\nvar _Uint8Array = Uint8Array;\n\n/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nvar _mapToArray = mapToArray;\n\n/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nvar _setToArray = setToArray;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$1 = 1,\n COMPARE_UNORDERED_FLAG$1 = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = _Symbol ? _Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new _Uint8Array(object), new _Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq_1(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = _mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG$1;\n convert || (convert = _setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG$1;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = _equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nvar _equalByTag = equalByTag;\n\n/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nvar _arrayPush = arrayPush;\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\nvar isArray_1 = isArray;\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray_1(object) ? result : _arrayPush(result, symbolsFunc(object));\n}\n\nvar _baseGetAllKeys = baseGetAllKeys;\n\n/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nvar _arrayFilter = arrayFilter;\n\n/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nvar stubArray_1 = stubArray;\n\n/** Used for built-in method references. */\nvar objectProto$5 = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto$5.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray_1 : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return _arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nvar _getSymbols = getSymbols;\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nvar _baseTimes = baseTimes;\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 != null && typeof value == 'object';\n}\n\nvar isObjectLike_1 = isObjectLike;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike_1(value) && _baseGetTag(value) == argsTag;\n}\n\nvar _baseIsArguments = baseIsArguments;\n\n/** Used for built-in method references. */\nvar objectProto$6 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$4 = objectProto$6.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable$1 = objectProto$6.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` 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 `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = _baseIsArguments(function() { return arguments; }()) ? _baseIsArguments : function(value) {\n return isObjectLike_1(value) && hasOwnProperty$4.call(value, 'callee') &&\n !propertyIsEnumerable$1.call(value, 'callee');\n};\n\nvar isArguments_1 = isArguments;\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nvar stubFalse_1 = stubFalse;\n\nvar isBuffer_1 = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? _root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse_1;\n\nmodule.exports = isBuffer;\n});\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nvar _isIndex = isIndex;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER$1 = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\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 valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER$1;\n}\n\nvar isLength_1 = isLength;\n\n/** `Object#toString` result references. */\nvar argsTag$1 = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag$1 = '[object Boolean]',\n dateTag$1 = '[object Date]',\n errorTag$1 = '[object Error]',\n funcTag$1 = '[object Function]',\n mapTag$1 = '[object Map]',\n numberTag$1 = '[object Number]',\n objectTag = '[object Object]',\n regexpTag$1 = '[object RegExp]',\n setTag$1 = '[object Set]',\n stringTag$1 = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag$1 = '[object ArrayBuffer]',\n dataViewTag$1 = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag$1] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag$1] = typedArrayTags[boolTag$1] =\ntypedArrayTags[dataViewTag$1] = typedArrayTags[dateTag$1] =\ntypedArrayTags[errorTag$1] = typedArrayTags[funcTag$1] =\ntypedArrayTags[mapTag$1] = typedArrayTags[numberTag$1] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag$1] =\ntypedArrayTags[setTag$1] = typedArrayTags[stringTag$1] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike_1(value) &&\n isLength_1(value.length) && !!typedArrayTags[_baseGetTag(value)];\n}\n\nvar _baseIsTypedArray = baseIsTypedArray;\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nvar _baseUnary = baseUnary;\n\nvar _nodeUtil = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && _freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n});\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = _nodeUtil && _nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? _baseUnary(nodeIsTypedArray) : _baseIsTypedArray;\n\nvar isTypedArray_1 = isTypedArray;\n\n/** Used for built-in method references. */\nvar objectProto$7 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$5 = objectProto$7.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray_1(value),\n isArg = !isArr && isArguments_1(value),\n isBuff = !isArr && !isArg && isBuffer_1(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray_1(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? _baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty$5.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n _isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _arrayLikeKeys = arrayLikeKeys;\n\n/** Used for built-in method references. */\nvar objectProto$8 = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto$8;\n\n return value === proto;\n}\n\nvar _isPrototype = isPrototype;\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nvar _overArg = overArg;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = _overArg(Object.keys, Object);\n\nvar _nativeKeys = nativeKeys;\n\n/** Used for built-in method references. */\nvar objectProto$9 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$6 = objectProto$9.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!_isPrototype(object)) {\n return _nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty$6.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _baseKeys = baseKeys;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\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 array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength_1(value.length) && !isFunction_1(value);\n}\n\nvar isArrayLike_1 = isArrayLike;\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike_1(object) ? _arrayLikeKeys(object) : _baseKeys(object);\n}\n\nvar keys_1 = keys;\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return _baseGetAllKeys(object, keys_1, _getSymbols);\n}\n\nvar _getAllKeys = getAllKeys;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$2 = 1;\n\n/** Used for built-in method references. */\nvar objectProto$a = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$7 = objectProto$a.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG$2,\n objProps = _getAllKeys(object),\n objLength = objProps.length,\n othProps = _getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty$7.call(other, key))) {\n return false;\n }\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nvar _equalObjects = equalObjects;\n\n/* Built-in method references that are verified to be native. */\nvar DataView = _getNative(_root, 'DataView');\n\nvar _DataView = DataView;\n\n/* Built-in method references that are verified to be native. */\nvar Promise$1 = _getNative(_root, 'Promise');\n\nvar _Promise = Promise$1;\n\n/* Built-in method references that are verified to be native. */\nvar Set = _getNative(_root, 'Set');\n\nvar _Set = Set;\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = _getNative(_root, 'WeakMap');\n\nvar _WeakMap = WeakMap;\n\n/** `Object#toString` result references. */\nvar mapTag$2 = '[object Map]',\n objectTag$1 = '[object Object]',\n promiseTag = '[object Promise]',\n setTag$2 = '[object Set]',\n weakMapTag$1 = '[object WeakMap]';\n\nvar dataViewTag$2 = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = _toSource(_DataView),\n mapCtorString = _toSource(_Map),\n promiseCtorString = _toSource(_Promise),\n setCtorString = _toSource(_Set),\n weakMapCtorString = _toSource(_WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = _baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((_DataView && getTag(new _DataView(new ArrayBuffer(1))) != dataViewTag$2) ||\n (_Map && getTag(new _Map) != mapTag$2) ||\n (_Promise && getTag(_Promise.resolve()) != promiseTag) ||\n (_Set && getTag(new _Set) != setTag$2) ||\n (_WeakMap && getTag(new _WeakMap) != weakMapTag$1)) {\n getTag = function(value) {\n var result = _baseGetTag(value),\n Ctor = result == objectTag$1 ? value.constructor : undefined,\n ctorString = Ctor ? _toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag$2;\n case mapCtorString: return mapTag$2;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag$2;\n case weakMapCtorString: return weakMapTag$1;\n }\n }\n return result;\n };\n}\n\nvar _getTag = getTag;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$3 = 1;\n\n/** `Object#toString` result references. */\nvar argsTag$2 = '[object Arguments]',\n arrayTag$1 = '[object Array]',\n objectTag$2 = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto$b = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$8 = objectProto$b.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray_1(object),\n othIsArr = isArray_1(other),\n objTag = objIsArr ? arrayTag$1 : _getTag(object),\n othTag = othIsArr ? arrayTag$1 : _getTag(other);\n\n objTag = objTag == argsTag$2 ? objectTag$2 : objTag;\n othTag = othTag == argsTag$2 ? objectTag$2 : othTag;\n\n var objIsObj = objTag == objectTag$2,\n othIsObj = othTag == objectTag$2,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer_1(object)) {\n if (!isBuffer_1(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new _Stack);\n return (objIsArr || isTypedArray_1(object))\n ? _equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG$3)) {\n var objIsWrapped = objIsObj && hasOwnProperty$8.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty$8.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new _Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new _Stack);\n return _equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nvar _baseIsEqualDeep = baseIsEqualDeep;\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike_1(value) && !isObjectLike_1(other))) {\n return value !== value && other !== other;\n }\n return _baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nvar _baseIsEqual = baseIsEqual;\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.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 * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return _baseIsEqual(value, other);\n}\n\nvar isEqual_1 = isEqual;\n\nvar DEFAULT_OPTIONS = {\n container: false,\n delay: 0,\n html: false,\n placement: 'top',\n title: '',\n template: '<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',\n trigger: 'hover focus',\n offset: 0\n};\nvar openTooltips = [];\n\nvar Tooltip =\n/*#__PURE__*/\nfunction () {\n /**\n * Create a new Tooltip.js instance\n * @class Tooltip\n * @param {HTMLElement} reference - The DOM node used as reference of the tooltip (it can be a jQuery element).\n * @param {Object} options\n * @param {String} options.placement=bottom\n * Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -end),\n * left(-start, -end)`\n * @param {HTMLElement|String|false} options.container=false - Append the tooltip to a specific element.\n * @param {Number|Object} options.delay=0\n * Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type.\n * If a number is supplied, delay is applied to both hide/show.\n * Object structure is: `{ show: 500, hide: 100 }`\n * @param {Boolean} options.html=false - Insert HTML into the tooltip. If false, the content will inserted with `innerText`.\n * @param {String|PlacementFunction} options.placement='top' - One of the allowed placements, or a function returning one of them.\n * @param {String} [options.template='<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>']\n * Base HTML to used when creating the tooltip.\n * The tooltip's `title` will be injected into the `.tooltip-inner` or `.tooltip__inner`.\n * `.tooltip-arrow` or `.tooltip__arrow` will become the tooltip's arrow.\n * The outermost wrapper element should have the `.tooltip` class.\n * @param {String|HTMLElement|TitleFunction} options.title='' - Default title value if `title` attribute isn't present.\n * @param {String} [options.trigger='hover focus']\n * How tooltip is triggered - click, hover, focus, manual.\n * You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.\n * @param {HTMLElement} options.boundariesElement\n * The element used as boundaries for the tooltip. For more information refer to Popper.js'\n * [boundariesElement docs](https://popper.js.org/popper-documentation.html)\n * @param {Number|String} options.offset=0 - Offset of the tooltip relative to its reference. For more information refer to Popper.js'\n * [offset docs](https://popper.js.org/popper-documentation.html)\n * @param {Object} options.popperOptions={} - Popper options, will be passed directly to popper instance. For more information refer to Popper.js'\n * [options docs](https://popper.js.org/popper-documentation.html)\n * @return {Object} instance - The generated tooltip instance\n */\n function Tooltip(_reference, _options) {\n var _this = this;\n\n _classCallCheck(this, Tooltip);\n\n _defineProperty(this, \"_events\", []);\n\n _defineProperty(this, \"_setTooltipNodeEvent\", function (evt, reference, delay, options) {\n var relatedreference = evt.relatedreference || evt.toElement || evt.relatedTarget;\n\n var callback = function callback(evt2) {\n var relatedreference2 = evt2.relatedreference || evt2.toElement || evt2.relatedTarget; // Remove event listener after call\n\n _this._tooltipNode.removeEventListener(evt.type, callback); // If the new reference is not the reference element\n\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this._scheduleHide(reference, options.delay, options, evt2);\n }\n };\n\n if (_this._tooltipNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n _this._tooltipNode.addEventListener(evt.type, callback);\n\n return true;\n }\n\n return false;\n });\n\n // apply user options over default ones\n _options = _objectSpread2({}, DEFAULT_OPTIONS, {}, _options);\n _reference.jquery && (_reference = _reference[0]);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this); // cache reference and options\n\n this.reference = _reference;\n this.options = _options; // set initial state\n\n this._isOpen = false;\n\n this._init();\n } //\n // Public methods\n //\n\n /**\n * Reveals an element's tooltip. This is considered a \"manual\" triggering of the tooltip.\n * Tooltips with zero-length titles are never displayed.\n * @method Tooltip#show\n * @memberof Tooltip\n */\n\n\n _createClass(Tooltip, [{\n key: \"show\",\n value: function show() {\n this._show(this.reference, this.options);\n }\n /**\n * Hides an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#hide\n * @memberof Tooltip\n */\n\n }, {\n key: \"hide\",\n value: function hide() {\n this._hide();\n }\n /**\n * Hides and destroys an element’s tooltip.\n * @method Tooltip#dispose\n * @memberof Tooltip\n */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n this._dispose();\n }\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#toggle\n * @memberof Tooltip\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this._isOpen) {\n return this.hide();\n } else {\n return this.show();\n }\n }\n }, {\n key: \"setClasses\",\n value: function setClasses(classes) {\n this._classes = classes;\n }\n }, {\n key: \"setContent\",\n value: function setContent(content) {\n this.options.title = content;\n\n if (this._tooltipNode) {\n this._setContent(content, this.options);\n }\n }\n }, {\n key: \"setOptions\",\n value: function setOptions(options) {\n var classesUpdated = false;\n var classes = options && options.classes || directive.options.defaultClass;\n\n if (!isEqual_1(this._classes, classes)) {\n this.setClasses(classes);\n classesUpdated = true;\n }\n\n options = getOptions(options);\n var needPopperUpdate = false;\n var needRestart = false;\n\n if (this.options.offset !== options.offset || this.options.placement !== options.placement) {\n needPopperUpdate = true;\n }\n\n if (this.options.template !== options.template || this.options.trigger !== options.trigger || this.options.container !== options.container || classesUpdated) {\n needRestart = true;\n }\n\n for (var key in options) {\n this.options[key] = options[key];\n }\n\n if (this._tooltipNode) {\n if (needRestart) {\n var isOpen = this._isOpen;\n this.dispose();\n\n this._init();\n\n if (isOpen) {\n this.show();\n }\n } else if (needPopperUpdate) {\n this.popperInstance.update();\n }\n }\n } //\n // Private methods\n //\n\n }, {\n key: \"_init\",\n value: function _init() {\n // get events list\n var events = typeof this.options.trigger === 'string' ? this.options.trigger.split(' ') : [];\n this._isDisposed = false;\n this._enableDocumentTouch = events.indexOf('manual') === -1;\n events = events.filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }); // set event listeners\n\n this._setEventListeners(this.reference, events, this.options); // title attribute\n\n\n this.$_originalTitle = this.reference.getAttribute('title');\n this.reference.removeAttribute('title');\n this.reference.setAttribute('data-original-title', this.$_originalTitle);\n }\n /**\n * Creates a new tooltip node\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} reference\n * @param {String} template\n * @param {String|HTMLElement|TitleFunction} title\n * @param {Boolean} allowHtml\n * @return {HTMLelement} tooltipNode\n */\n\n }, {\n key: \"_create\",\n value: function _create(reference, template) {\n // create tooltip element\n var tooltipGenerator = window.document.createElement('div');\n tooltipGenerator.innerHTML = template.trim();\n var tooltipNode = tooltipGenerator.childNodes[0]; // add unique ID to our tooltip (needed for accessibility reasons)\n\n tooltipNode.id = \"tooltip_\".concat(Math.random().toString(36).substr(2, 10)); // Initially hide the tooltip\n // The attribute will be switched in a next frame so\n // CSS transitions can play\n\n tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.options.autoHide && this.options.trigger.indexOf('hover') !== -1) {\n tooltipNode.addEventListener('mouseenter', this.hide);\n tooltipNode.addEventListener('click', this.hide);\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this2 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n _this2.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this3 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this3._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this3.options.innerSelector);\n\n if (title.nodeType === 1) {\n // if title is a node, append it only if allowHtml is true\n if (allowHtml) {\n while (titleNode.firstChild) {\n titleNode.removeChild(titleNode.firstChild);\n }\n\n titleNode.appendChild(title);\n }\n } else if (typeof title === 'function') {\n // if title is a function, call it and set innerText or innerHtml depending by `allowHtml` value\n var result = title();\n\n if (result && typeof result.then === 'function') {\n _this3.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this3._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this3._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this3._applyContent(result, options).then(resolve).catch(reject);\n }\n\n return;\n } else {\n // if it's just a simple text, set innerText or innerHtml depending by `allowHtml` value\n allowHtml ? titleNode.innerHTML = title : titleNode.innerText = title;\n }\n\n resolve();\n });\n }\n }, {\n key: \"_show\",\n value: function _show(reference, options) {\n if (options && typeof options.container === 'string') {\n var container = document.querySelector(options.container);\n if (!container) return;\n }\n\n clearTimeout(this._disposeTimer);\n options = Object.assign({}, options);\n delete options.offset;\n var updateClasses = true;\n\n if (this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n updateClasses = false;\n }\n\n var result = this._ensureShown(reference, options);\n\n if (updateClasses && this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n }\n\n addClasses(reference, ['v-tooltip-open']);\n return result;\n }\n }, {\n key: \"_ensureShown\",\n value: function _ensureShown(reference, options) {\n var _this4 = this;\n\n // don't show if it's already visible\n if (this._isOpen) {\n return this;\n }\n\n this._isOpen = true;\n openTooltips.push(this); // if the tooltipNode already exists, just show it\n\n if (this._tooltipNode) {\n this._tooltipNode.style.display = '';\n\n this._tooltipNode.setAttribute('aria-hidden', 'false');\n\n this.popperInstance.enableEventListeners();\n this.popperInstance.update();\n\n if (this.asyncContent) {\n this._setContent(options.title, options);\n }\n\n return this;\n } // get title\n\n\n var title = reference.getAttribute('title') || options.title; // don't show tooltip if no title is defined\n\n if (!title) {\n return this;\n } // create tooltip node\n\n\n var tooltipNode = this._create(reference, options.template);\n\n this._tooltipNode = tooltipNode; // Add `aria-describedby` to our reference element for accessibility reasons\n\n reference.setAttribute('aria-describedby', tooltipNode.id); // append tooltip to container\n\n var container = this._findContainer(options.container, reference);\n\n this._append(tooltipNode, container);\n\n var popperOptions = _objectSpread2({}, options.popperOptions, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread2({}, popperOptions.modifiers, {\n arrow: {\n element: this.options.arrowSelector\n }\n });\n\n if (options.boundariesElement) {\n popperOptions.modifiers.preventOverflow = {\n boundariesElement: options.boundariesElement\n };\n }\n\n this.popperInstance = new Popper(reference, tooltipNode, popperOptions);\n\n this._setContent(title, options); // Fix position\n\n\n requestAnimationFrame(function () {\n if (!_this4._isDisposed && _this4.popperInstance) {\n _this4.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this4._isDisposed) {\n _this4._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this4.dispose();\n }\n });\n } else {\n _this4.dispose();\n }\n });\n return this;\n }\n }, {\n key: \"_noLongerOpen\",\n value: function _noLongerOpen() {\n var index = openTooltips.indexOf(this);\n\n if (index !== -1) {\n openTooltips.splice(index, 1);\n }\n }\n }, {\n key: \"_hide\",\n value: function _hide()\n /* reference, options */\n {\n var _this5 = this;\n\n // don't hide if it's already hidden\n if (!this._isOpen) {\n return this;\n }\n\n this._isOpen = false;\n\n this._noLongerOpen(); // hide tooltipNode\n\n\n this._tooltipNode.style.display = 'none';\n\n this._tooltipNode.setAttribute('aria-hidden', 'true');\n\n this.popperInstance.disableEventListeners();\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this5._tooltipNode) {\n _this5._tooltipNode.removeEventListener('mouseenter', _this5.hide);\n\n _this5._tooltipNode.removeEventListener('click', _this5.hide); // Don't remove popper instance, just the HTML element\n\n\n _this5._removeTooltipNode();\n }\n }, disposeTime);\n }\n\n removeClasses(this.reference, ['v-tooltip-open']);\n return this;\n }\n }, {\n key: \"_removeTooltipNode\",\n value: function _removeTooltipNode() {\n if (!this._tooltipNode) return;\n var parentNode = this._tooltipNode.parentNode;\n\n if (parentNode) {\n parentNode.removeChild(this._tooltipNode);\n this.reference.removeAttribute('aria-describedby');\n }\n\n this._tooltipNode = null;\n }\n }, {\n key: \"_dispose\",\n value: function _dispose() {\n var _this6 = this;\n\n this._isDisposed = true;\n this.reference.removeAttribute('data-original-title');\n\n if (this.$_originalTitle) {\n this.reference.setAttribute('title', this.$_originalTitle);\n } // remove event listeners first to prevent any unexpected behaviour\n\n\n this._events.forEach(function (_ref) {\n var func = _ref.func,\n event = _ref.event;\n\n _this6.reference.removeEventListener(event, func);\n });\n\n this._events = [];\n\n if (this._tooltipNode) {\n this._hide();\n\n this._tooltipNode.removeEventListener('mouseenter', this.hide);\n\n this._tooltipNode.removeEventListener('click', this.hide); // destroy instance\n\n\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n this._removeTooltipNode();\n }\n } else {\n this._noLongerOpen();\n }\n\n return this;\n }\n }, {\n key: \"_findContainer\",\n value: function _findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n }\n /**\n * Append tooltip to container\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} tooltip\n * @param {HTMLElement|String|false} container\n */\n\n }, {\n key: \"_append\",\n value: function _append(tooltipNode, container) {\n container.appendChild(tooltipNode);\n }\n }, {\n key: \"_setEventListeners\",\n value: function _setEventListeners(reference, events, options) {\n var _this7 = this;\n\n var directEvents = [];\n var oppositeEvents = [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n if (_this7.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this7.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(evt) {\n if (_this7._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this7._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this7._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(evt) {\n if (evt.usedByTooltip === true) {\n return;\n }\n\n _this7._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this7._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n }\n }, {\n key: \"_onDocumentTouch\",\n value: function _onDocumentTouch(event) {\n if (this._enableDocumentTouch) {\n this._scheduleHide(this.reference, this.options.delay, this.options, event);\n }\n }\n }, {\n key: \"_scheduleShow\",\n value: function _scheduleShow(reference, delay, options\n /*, evt */\n ) {\n var _this8 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.show || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n return _this8._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this9 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.hide || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n if (_this9._isOpen === false) {\n return;\n }\n\n if (!_this9._tooltipNode.ownerDocument.body.contains(_this9._tooltipNode)) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (evt.type === 'mouseleave') {\n var isSet = _this9._setTooltipNodeEvent(evt, reference, delay, options); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this9._hide(reference, options);\n }, computedDelay);\n }\n }]);\n\n return Tooltip;\n}(); // Hide tooltips on touch devices\n\nif (typeof document !== 'undefined') {\n document.addEventListener('touchstart', function (event) {\n for (var i = 0; i < openTooltips.length; i++) {\n openTooltips[i]._onDocumentTouch(event);\n }\n }, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n}\n/**\n * Placement function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback PlacementFunction\n * @param {HTMLElement} tooltip - tooltip DOM node.\n * @param {HTMLElement} reference - reference DOM node.\n * @return {String} placement - One of the allowed placement options.\n */\n\n/**\n * Title function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback TitleFunction\n * @return {String} placement - The desired title.\n */\n\nvar state = {\n enabled: true\n};\nvar positions = ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end'];\nvar defaultOptions = {\n // Default tooltip placement relative to target element\n defaultPlacement: 'top',\n // Default CSS classes applied to the tooltip element\n defaultClass: 'vue-tooltip-theme',\n // Default CSS classes applied to the target element of the tooltip\n defaultTargetClass: 'has-tooltip',\n // Is the content HTML by default?\n defaultHtml: true,\n // Default HTML template of the tooltip element\n // It must include `tooltip-arrow` & `tooltip-inner` CSS classes (can be configured, see below)\n // Change if the classes conflict with other libraries (for example bootstrap)\n defaultTemplate: '<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',\n // Selector used to get the arrow element in the tooltip template\n defaultArrowSelector: '.tooltip-arrow, .tooltip__arrow',\n // Selector used to get the inner content element in the tooltip template\n defaultInnerSelector: '.tooltip-inner, .tooltip__inner',\n // Delay (ms)\n defaultDelay: 0,\n // Default events that trigger the tooltip\n defaultTrigger: 'hover focus',\n // Default position offset (px)\n defaultOffset: 0,\n // Default container where the tooltip will be appended\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Class added when content is loading\n defaultLoadingClass: 'tooltip-loading',\n // Displayed when tooltip content is loading\n defaultLoadingContent: '...',\n // Hide on mouseover tooltip\n autoHide: true,\n // Close tooltip on click on tooltip target?\n defaultHideOnTargetClick: true,\n // Auto destroy tooltip DOM nodes (ms)\n disposeTimeout: 5000,\n // Options for popover\n popover: {\n defaultPlacement: 'bottom',\n // Use the `popoverClass` prop for theming\n defaultClass: 'vue-popover-theme',\n // Base class (change if conflicts with other libraries)\n defaultBaseClass: 'tooltip popover',\n // Wrapper class (contains arrow and inner)\n defaultWrapperClass: 'wrapper',\n // Inner content class\n defaultInnerClass: 'tooltip-inner popover-inner',\n // Arrow class\n defaultArrowClass: 'tooltip-arrow popover-arrow',\n // Class added when popover is open\n defaultOpenClass: 'open',\n defaultDelay: 0,\n defaultTrigger: 'click',\n defaultOffset: 0,\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Hides if clicked outside of popover\n defaultAutoHide: true,\n // Update popper on content resize\n defaultHandleResize: true\n }\n};\nfunction getOptions(options) {\n var result = {\n placement: typeof options.placement !== 'undefined' ? options.placement : directive.options.defaultPlacement,\n delay: typeof options.delay !== 'undefined' ? options.delay : directive.options.defaultDelay,\n html: typeof options.html !== 'undefined' ? options.html : directive.options.defaultHtml,\n template: typeof options.template !== 'undefined' ? options.template : directive.options.defaultTemplate,\n arrowSelector: typeof options.arrowSelector !== 'undefined' ? options.arrowSelector : directive.options.defaultArrowSelector,\n innerSelector: typeof options.innerSelector !== 'undefined' ? options.innerSelector : directive.options.defaultInnerSelector,\n trigger: typeof options.trigger !== 'undefined' ? options.trigger : directive.options.defaultTrigger,\n offset: typeof options.offset !== 'undefined' ? options.offset : directive.options.defaultOffset,\n container: typeof options.container !== 'undefined' ? options.container : directive.options.defaultContainer,\n boundariesElement: typeof options.boundariesElement !== 'undefined' ? options.boundariesElement : directive.options.defaultBoundariesElement,\n autoHide: typeof options.autoHide !== 'undefined' ? options.autoHide : directive.options.autoHide,\n hideOnTargetClick: typeof options.hideOnTargetClick !== 'undefined' ? options.hideOnTargetClick : directive.options.defaultHideOnTargetClick,\n loadingClass: typeof options.loadingClass !== 'undefined' ? options.loadingClass : directive.options.defaultLoadingClass,\n loadingContent: typeof options.loadingContent !== 'undefined' ? options.loadingContent : directive.options.defaultLoadingContent,\n popperOptions: _objectSpread2({}, typeof options.popperOptions !== 'undefined' ? options.popperOptions : directive.options.defaultPopperOptions)\n };\n\n if (result.offset) {\n var typeofOffset = _typeof(result.offset);\n\n var offset = result.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n if (!result.popperOptions.modifiers) {\n result.popperOptions.modifiers = {};\n }\n\n result.popperOptions.modifiers.offset = {\n offset: offset\n };\n }\n\n if (result.trigger && result.trigger.indexOf('click') !== -1) {\n result.hideOnTargetClick = false;\n }\n\n return result;\n}\nfunction getPlacement(value, modifiers) {\n var placement = value.placement;\n\n for (var i = 0; i < positions.length; i++) {\n var pos = positions[i];\n\n if (modifiers[pos]) {\n placement = pos;\n }\n }\n\n return placement;\n}\nfunction getContent(value) {\n var type = _typeof(value);\n\n if (type === 'string') {\n return value;\n } else if (value && type === 'object') {\n return value.content;\n } else {\n return false;\n }\n}\nfunction createTooltip(el, value) {\n var modifiers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var content = getContent(value);\n var classes = typeof value.classes !== 'undefined' ? value.classes : directive.options.defaultClass;\n\n var opts = _objectSpread2({\n title: content\n }, getOptions(_objectSpread2({}, value, {\n placement: getPlacement(value, modifiers)\n })));\n\n var tooltip = el._tooltip = new Tooltip(el, opts);\n tooltip.setClasses(classes);\n tooltip._vueEl = el; // Class on target\n\n var targetClasses = typeof value.targetClasses !== 'undefined' ? value.targetClasses : directive.options.defaultTargetClass;\n el._tooltipTargetClasses = targetClasses;\n addClasses(el, targetClasses);\n return tooltip;\n}\nfunction destroyTooltip(el) {\n if (el._tooltip) {\n el._tooltip.dispose();\n\n delete el._tooltip;\n delete el._tooltipOldShow;\n }\n\n if (el._tooltipTargetClasses) {\n removeClasses(el, el._tooltipTargetClasses);\n delete el._tooltipTargetClasses;\n }\n}\nfunction bind(el, _ref) {\n var value = _ref.value,\n oldValue = _ref.oldValue,\n modifiers = _ref.modifiers;\n var content = getContent(value);\n\n if (!content || !state.enabled) {\n destroyTooltip(el);\n } else {\n var tooltip;\n\n if (el._tooltip) {\n tooltip = el._tooltip; // Content\n\n tooltip.setContent(content); // Options\n\n tooltip.setOptions(_objectSpread2({}, value, {\n placement: getPlacement(value, modifiers)\n }));\n } else {\n tooltip = createTooltip(el, value, modifiers);\n } // Manual show\n\n\n if (typeof value.show !== 'undefined' && value.show !== el._tooltipOldShow) {\n el._tooltipOldShow = value.show;\n value.show ? tooltip.show() : tooltip.hide();\n }\n }\n}\nvar directive = {\n options: defaultOptions,\n bind: bind,\n update: bind,\n unbind: function unbind(el) {\n destroyTooltip(el);\n }\n};\n\nfunction addListeners(el) {\n el.addEventListener('click', onClick);\n el.addEventListener('touchstart', onTouchStart, supportsPassive ? {\n passive: true\n } : false);\n}\n\nfunction removeListeners(el) {\n el.removeEventListener('click', onClick);\n el.removeEventListener('touchstart', onTouchStart);\n el.removeEventListener('touchend', onTouchEnd);\n el.removeEventListener('touchcancel', onTouchCancel);\n}\n\nfunction onClick(event) {\n var el = event.currentTarget;\n event.closePopover = !el.$_vclosepopover_touch;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n}\n\nfunction onTouchStart(event) {\n if (event.changedTouches.length === 1) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = true;\n var touch = event.changedTouches[0];\n el.$_vclosepopover_touchPoint = touch;\n el.addEventListener('touchend', onTouchEnd);\n el.addEventListener('touchcancel', onTouchCancel);\n }\n}\n\nfunction onTouchEnd(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n\n if (event.changedTouches.length === 1) {\n var touch = event.changedTouches[0];\n var firstTouch = el.$_vclosepopover_touchPoint;\n event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n }\n}\n\nfunction onTouchCancel(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n}\n\nvar vclosepopover = {\n bind: function bind(el, _ref) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n }\n },\n update: function update(el, _ref2) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (value !== oldValue) {\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n } else {\n removeListeners(el);\n }\n }\n },\n unbind: function unbind(el) {\n removeListeners(el);\n }\n};\n\nfunction getDefault(key) {\n var value = directive.options.popover[key];\n\n if (typeof value === 'undefined') {\n return directive.options[key];\n }\n\n return value;\n}\n\nvar isIOS = false;\n\nif (typeof window !== 'undefined' && typeof navigator !== 'undefined') {\n isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;\n}\n\nvar openPopovers = [];\n\nvar Element = function Element() {};\n\nif (typeof window !== 'undefined') {\n Element = window.Element;\n}\n\nvar script = {\n name: 'VPopover',\n components: {\n ResizeObserver: ResizeObserver\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n placement: {\n type: String,\n default: function _default() {\n return getDefault('defaultPlacement');\n }\n },\n delay: {\n type: [String, Number, Object],\n default: function _default() {\n return getDefault('defaultDelay');\n }\n },\n offset: {\n type: [String, Number],\n default: function _default() {\n return getDefault('defaultOffset');\n }\n },\n trigger: {\n type: String,\n default: function _default() {\n return getDefault('defaultTrigger');\n }\n },\n container: {\n type: [String, Object, Element, Boolean],\n default: function _default() {\n return getDefault('defaultContainer');\n }\n },\n boundariesElement: {\n type: [String, Element],\n default: function _default() {\n return getDefault('defaultBoundariesElement');\n }\n },\n popperOptions: {\n type: Object,\n default: function _default() {\n return getDefault('defaultPopperOptions');\n }\n },\n popoverClass: {\n type: [String, Array],\n default: function _default() {\n return getDefault('defaultClass');\n }\n },\n popoverBaseClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultBaseClass;\n }\n },\n popoverInnerClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultInnerClass;\n }\n },\n popoverWrapperClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultWrapperClass;\n }\n },\n popoverArrowClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultArrowClass;\n }\n },\n autoHide: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultAutoHide;\n }\n },\n handleResize: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultHandleResize;\n }\n },\n openGroup: {\n type: String,\n default: null\n },\n openClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultOpenClass;\n }\n }\n },\n data: function data() {\n return {\n isOpen: false,\n id: Math.random().toString(36).substr(2, 10)\n };\n },\n computed: {\n cssClass: function cssClass() {\n return _defineProperty({}, this.openClass, this.isOpen);\n },\n popoverId: function popoverId() {\n return \"popover_\".concat(this.id);\n }\n },\n watch: {\n open: function open(val) {\n if (val) {\n this.show();\n } else {\n this.hide();\n }\n },\n disabled: function disabled(val, oldVal) {\n if (val !== oldVal) {\n if (val) {\n this.hide();\n } else if (this.open) {\n this.show();\n }\n }\n },\n container: function container(val) {\n if (this.isOpen && this.popperInstance) {\n var popoverNode = this.$refs.popover;\n var reference = this.$refs.trigger;\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.popperInstance.scheduleUpdate();\n }\n },\n trigger: function trigger(val) {\n this.$_removeEventListeners();\n this.$_addEventListeners();\n },\n placement: function placement(val) {\n var _this = this;\n\n this.$_updatePopper(function () {\n _this.popperInstance.options.placement = val;\n });\n },\n offset: '$_restartPopper',\n boundariesElement: '$_restartPopper',\n popperOptions: {\n handler: '$_restartPopper',\n deep: true\n }\n },\n created: function created() {\n this.$_isDisposed = false;\n this.$_mounted = false;\n this.$_events = [];\n this.$_preventOpen = false;\n },\n mounted: function mounted() {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n this.$_init();\n\n if (this.open) {\n this.show();\n }\n },\n deactivated: function deactivated() {\n this.hide();\n },\n beforeDestroy: function beforeDestroy() {\n this.dispose();\n },\n methods: {\n show: function show() {\n var _this2 = this;\n\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref2.event,\n _ref2$skipDelay = _ref2.skipDelay,\n _ref2$force = _ref2.force,\n force = _ref2$force === void 0 ? false : _ref2$force;\n\n if (force || !this.disabled) {\n this.$_scheduleShow(event);\n this.$emit('show');\n }\n\n this.$emit('update:open', true);\n this.$_beingShowed = true;\n requestAnimationFrame(function () {\n _this2.$_beingShowed = false;\n });\n },\n hide: function hide() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref3.event,\n _ref3$skipDelay = _ref3.skipDelay;\n\n this.$_scheduleHide(event);\n this.$emit('hide');\n this.$emit('update:open', false);\n },\n dispose: function dispose() {\n this.$_isDisposed = true;\n this.$_removeEventListeners();\n this.hide({\n skipDelay: true\n });\n\n if (this.popperInstance) {\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n }\n }\n\n this.$_mounted = false;\n this.popperInstance = null;\n this.isOpen = false;\n this.$emit('dispose');\n },\n $_init: function $_init() {\n if (this.trigger.indexOf('manual') === -1) {\n this.$_addEventListeners();\n }\n },\n $_show: function $_show() {\n var _this3 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n clearTimeout(this.$_disposeTimer); // Already open\n\n if (this.isOpen) {\n return;\n } // Popper is already initialized\n\n\n if (this.popperInstance) {\n this.isOpen = true;\n this.popperInstance.enableEventListeners();\n this.popperInstance.scheduleUpdate();\n }\n\n if (!this.$_mounted) {\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.$_mounted = true;\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread2({}, this.popperOptions, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread2({}, popperOptions.modifiers, {\n arrow: _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.arrow, {\n element: this.$refs.arrow\n })\n });\n\n if (this.offset) {\n var offset = this.$_getOffset();\n popperOptions.modifiers.offset = _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.offset, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.preventOverflow, {\n boundariesElement: this.boundariesElement\n });\n }\n\n this.popperInstance = new Popper(reference, popoverNode, popperOptions); // Fix position\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed && _this3.popperInstance) {\n _this3.popperInstance.scheduleUpdate(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed) {\n _this3.isOpen = true;\n } else {\n _this3.dispose();\n }\n });\n } else {\n _this3.dispose();\n }\n });\n }\n\n var openGroup = this.openGroup;\n\n if (openGroup) {\n var popover;\n\n for (var i = 0; i < openPopovers.length; i++) {\n popover = openPopovers[i];\n\n if (popover.openGroup !== openGroup) {\n popover.hide();\n popover.$emit('close-group');\n }\n }\n }\n\n openPopovers.push(this);\n this.$emit('apply-show');\n },\n $_hide: function $_hide() {\n var _this4 = this;\n\n // Already hidden\n if (!this.isOpen) {\n return;\n }\n\n var index = openPopovers.indexOf(this);\n\n if (index !== -1) {\n openPopovers.splice(index, 1);\n }\n\n this.isOpen = false;\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this.$_disposeTimer);\n var disposeTime = directive.options.popover.disposeTimeout || directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this.$_disposeTimer = setTimeout(function () {\n var popoverNode = _this4.$refs.popover;\n\n if (popoverNode) {\n // Don't remove popper instance, just the HTML element\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n _this4.$_mounted = false;\n }\n }, disposeTime);\n }\n\n this.$emit('apply-hide');\n },\n $_findContainer: function $_findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n },\n $_getOffset: function $_getOffset() {\n var typeofOffset = _typeof(this.offset);\n\n var offset = this.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n return offset;\n },\n $_addEventListeners: function $_addEventListeners() {\n var _this5 = this;\n\n var reference = this.$refs.trigger;\n var directEvents = [];\n var oppositeEvents = [];\n var events = typeof this.trigger === 'string' ? this.trigger.split(' ').filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }) : [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(event) {\n if (_this5.isOpen) {\n return;\n }\n\n event.usedByTooltip = true;\n !_this5.$_preventOpen && _this5.show({\n event: event\n });\n _this5.hidden = false;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(event) {\n if (event.usedByTooltip) {\n return;\n }\n\n _this5.hide({\n event: event\n });\n\n _this5.hidden = true;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n },\n $_scheduleShow: function $_scheduleShow() {\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_show();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.show || this.delay || 0);\n this.$_scheduleTimer = setTimeout(this.$_show.bind(this), computedDelay);\n }\n },\n $_scheduleHide: function $_scheduleHide() {\n var _this6 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_hide();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.hide || this.delay || 0);\n this.$_scheduleTimer = setTimeout(function () {\n if (!_this6.isOpen) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (event && event.type === 'mouseleave') {\n var isSet = _this6.$_setTooltipNodeEvent(event); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this6.$_hide();\n }, computedDelay);\n }\n },\n $_setTooltipNodeEvent: function $_setTooltipNodeEvent(event) {\n var _this7 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n var relatedreference = event.relatedreference || event.toElement || event.relatedTarget;\n\n var callback = function callback(event2) {\n var relatedreference2 = event2.relatedreference || event2.toElement || event2.relatedTarget; // Remove event listener after call\n\n popoverNode.removeEventListener(event.type, callback); // If the new reference is not the reference element\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this7.hide({\n event: event2\n });\n }\n };\n\n if (popoverNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n popoverNode.addEventListener(event.type, callback);\n return true;\n }\n\n return false;\n },\n $_removeEventListeners: function $_removeEventListeners() {\n var reference = this.$refs.trigger;\n this.$_events.forEach(function (_ref4) {\n var func = _ref4.func,\n event = _ref4.event;\n reference.removeEventListener(event, func);\n });\n this.$_events = [];\n },\n $_updatePopper: function $_updatePopper(cb) {\n if (this.popperInstance) {\n cb();\n if (this.isOpen) this.popperInstance.scheduleUpdate();\n }\n },\n $_restartPopper: function $_restartPopper() {\n if (this.popperInstance) {\n var isOpen = this.isOpen;\n this.dispose();\n this.$_isDisposed = false;\n this.$_init();\n\n if (isOpen) {\n this.show({\n skipDelay: true,\n force: true\n });\n }\n }\n },\n $_handleGlobalClose: function $_handleGlobalClose(event) {\n var _this8 = this;\n\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (this.$_beingShowed) return;\n this.hide({\n event: event\n });\n\n if (event.closePopover) {\n this.$emit('close-directive');\n } else {\n this.$emit('auto-hide');\n }\n\n if (touch) {\n this.$_preventOpen = true;\n setTimeout(function () {\n _this8.$_preventOpen = false;\n }, 300);\n }\n },\n $_handleResize: function $_handleResize() {\n if (this.isOpen && this.popperInstance) {\n this.popperInstance.scheduleUpdate();\n this.$emit('resize');\n }\n }\n }\n};\n\nif (typeof document !== 'undefined' && typeof window !== 'undefined') {\n if (isIOS) {\n document.addEventListener('touchend', handleGlobalTouchend, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n } else {\n window.addEventListener('click', handleGlobalClick, true);\n }\n}\n\nfunction handleGlobalClick(event) {\n handleGlobalClose(event);\n}\n\nfunction handleGlobalTouchend(event) {\n handleGlobalClose(event, true);\n}\n\nfunction handleGlobalClose(event) {\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var _loop = function _loop(i) {\n var popover = openPopovers[i];\n\n if (popover.$refs.popover) {\n var contains = popover.$refs.popover.contains(event.target);\n requestAnimationFrame(function () {\n if (event.closeAllPopover || event.closePopover && contains || popover.autoHide && !contains) {\n popover.$_handleGlobalClose(event, touch);\n }\n });\n }\n };\n\n // Delay so that close directive has time to set values\n for (var i = 0; i < openPopovers.length; i++) {\n _loop(i);\n }\n}\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"v-popover\",\n class: _vm.cssClass\n }, [_c(\"div\", {\n ref: \"trigger\",\n staticClass: \"trigger\",\n staticStyle: {\n display: \"inline-block\"\n },\n attrs: {\n \"aria-describedby\": _vm.popoverId,\n tabindex: _vm.trigger.indexOf(\"focus\") !== -1 ? 0 : undefined\n }\n }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _c(\"div\", {\n ref: \"popover\",\n class: [_vm.popoverBaseClass, _vm.popoverClass, _vm.cssClass],\n style: {\n visibility: _vm.isOpen ? \"visible\" : \"hidden\"\n },\n attrs: {\n id: _vm.popoverId,\n \"aria-hidden\": _vm.isOpen ? \"false\" : \"true\",\n tabindex: _vm.autoHide ? 0 : undefined\n },\n on: {\n keyup: function keyup($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) {\n return null;\n }\n\n _vm.autoHide && _vm.hide();\n }\n }\n }, [_c(\"div\", {\n class: _vm.popoverWrapperClass\n }, [_c(\"div\", {\n ref: \"inner\",\n class: _vm.popoverInnerClass,\n staticStyle: {\n position: \"relative\"\n }\n }, [_c(\"div\", [_vm._t(\"popover\")], 2), _vm._v(\" \"), _vm.handleResize ? _c(\"ResizeObserver\", {\n on: {\n notify: _vm.$_handleResize\n }\n }) : _vm._e()], 1), _vm._v(\" \"), _c(\"div\", {\n ref: \"arrow\",\n class: _vm.popoverArrowClass\n })])])]);\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nvar defineProperty = (function() {\n try {\n var func = _getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nvar _defineProperty$1 = defineProperty;\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && _defineProperty$1) {\n _defineProperty$1(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nvar _baseAssignValue = baseAssignValue;\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq_1(object[key], value)) ||\n (value === undefined && !(key in object))) {\n _baseAssignValue(object, key, value);\n }\n}\n\nvar _assignMergeValue = assignMergeValue;\n\n/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nvar _createBaseFor = createBaseFor;\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = _createBaseFor();\n\nvar _baseFor = baseFor;\n\nvar _cloneBuffer = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? _root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n});\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new _Uint8Array(result).set(new _Uint8Array(arrayBuffer));\n return result;\n}\n\nvar _cloneArrayBuffer = cloneArrayBuffer;\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? _cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nvar _cloneTypedArray = cloneTypedArray;\n\n/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nvar _copyArray = copyArray;\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject_1(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nvar _baseCreate = baseCreate;\n\n/** Built-in value references. */\nvar getPrototype = _overArg(Object.getPrototypeOf, Object);\n\nvar _getPrototype = getPrototype;\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !_isPrototype(object))\n ? _baseCreate(_getPrototype(object))\n : {};\n}\n\nvar _initCloneObject = initCloneObject;\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an 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 an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike_1(value) && isArrayLike_1(value);\n}\n\nvar isArrayLikeObject_1 = isArrayLikeObject;\n\n/** `Object#toString` result references. */\nvar objectTag$3 = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto$2 = Function.prototype,\n objectProto$c = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString$2 = funcProto$2.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$9 = objectProto$c.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString$2.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike_1(value) || _baseGetTag(value) != objectTag$3) {\n return false;\n }\n var proto = _getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty$9.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString$2.call(Ctor) == objectCtorString;\n}\n\nvar isPlainObject_1 = isPlainObject;\n\n/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\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 safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nvar _safeGet = safeGet;\n\n/** Used for built-in method references. */\nvar objectProto$d = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$a = objectProto$d.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty$a.call(object, key) && eq_1(objValue, value)) ||\n (value === undefined && !(key in object))) {\n _baseAssignValue(object, key, value);\n }\n}\n\nvar _assignValue = assignValue;\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n _baseAssignValue(object, key, newValue);\n } else {\n _assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nvar _copyObject = copyObject;\n\n/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _nativeKeysIn = nativeKeysIn;\n\n/** Used for built-in method references. */\nvar objectProto$e = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$b = objectProto$e.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject_1(object)) {\n return _nativeKeysIn(object);\n }\n var isProto = _isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty$b.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _baseKeysIn = baseKeysIn;\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike_1(object) ? _arrayLikeKeys(object, true) : _baseKeysIn(object);\n}\n\nvar keysIn_1 = keysIn;\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return _copyObject(value, keysIn_1(value));\n}\n\nvar toPlainObject_1 = toPlainObject;\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = _safeGet(object, key),\n srcValue = _safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n _assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray_1(srcValue),\n isBuff = !isArr && isBuffer_1(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray_1(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray_1(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject_1(objValue)) {\n newValue = _copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = _cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = _cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject_1(srcValue) || isArguments_1(srcValue)) {\n newValue = objValue;\n if (isArguments_1(objValue)) {\n newValue = toPlainObject_1(objValue);\n }\n else if (!isObject_1(objValue) || isFunction_1(objValue)) {\n newValue = _initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n _assignMergeValue(object, key, newValue);\n}\n\nvar _baseMergeDeep = baseMergeDeep;\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n _baseFor(source, function(srcValue, key) {\n stack || (stack = new _Stack);\n if (isObject_1(srcValue)) {\n _baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(_safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n _assignMergeValue(object, key, newValue);\n }\n }, keysIn_1);\n}\n\nvar _baseMerge = baseMerge;\n\n/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nvar identity_1 = identity;\n\n/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nvar _apply = apply;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return _apply(func, this, otherArgs);\n };\n}\n\nvar _overRest = overRest;\n\n/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nvar constant_1 = constant;\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !_defineProperty$1 ? identity_1 : function(func, string) {\n return _defineProperty$1(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant_1(string),\n 'writable': true\n });\n};\n\nvar _baseSetToString = baseSetToString;\n\n/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nvar _shortOut = shortOut;\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = _shortOut(_baseSetToString);\n\nvar _setToString = setToString;\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return _setToString(_overRest(func, start, identity_1), func + '');\n}\n\nvar _baseRest = baseRest;\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject_1(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike_1(object) && _isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq_1(object[index], value);\n }\n return false;\n}\n\nvar _isIterateeCall = isIterateeCall;\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return _baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && _isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nvar _createAssigner = createAssigner;\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = _createAssigner(function(object, source, srcIndex) {\n _baseMerge(object, source, srcIndex);\n});\n\nvar merge_1 = merge;\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \".resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css);\n\nfunction install(Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (install.installed) return;\n install.installed = true;\n var finalOptions = {};\n merge_1(finalOptions, defaultOptions, options);\n plugin.options = finalOptions;\n directive.options = finalOptions;\n Vue.directive('tooltip', directive);\n Vue.directive('close-popover', vclosepopover);\n Vue.component('v-popover', __vue_component__);\n}\nvar VTooltip = directive;\nvar VClosePopover = vclosepopover;\nvar VPopover = __vue_component__;\nvar plugin = {\n install: install,\n\n get enabled() {\n return state.enabled;\n },\n\n set enabled(value) {\n state.enabled = value;\n }\n\n}; // Auto-install\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { VClosePopover, VPopover, VTooltip, createTooltip, destroyTooltip, install };\n","'use strict';\nvar $ = require('../internals/export');\nvar $indexOf = require('../internals/array-includes').indexOf;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar nativeIndexOf = [].indexOf;\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('indexOf');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.indexOf` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\nvar flags = require('../internals/regexp-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\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 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","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classof(process) == 'process') {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n !fails(post) &&\n location.protocol !== 'file:'\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar fails = require('../internals/fails');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = HAS_SPECIES_SUPPORT && !fails(function () {\n [].filter.call({ length: -1, 0: 1 }, function (it) { throw it; });\n});\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 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 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 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","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.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\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","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 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","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 bind = require('../internals/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 global = require('../internals/global');\nvar userAgent = require('../internals/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 $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar fails = require('../internals/fails');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = HAS_SPECIES_SUPPORT && !fails(function () {\n [].map.call({ length: -1, 0: 1 }, function (it) { throw it; });\n});\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\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.map\");\n\nrequire(\"core-js/modules/es.object.keys\");\n\nrequire(\"core-js/modules/es.string.starts-with\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = 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 ScopedStorage =\n/*#__PURE__*/\nfunction () {\n function ScopedStorage(scope, wrapped, persistent) {\n _classCallCheck(this, ScopedStorage);\n\n _defineProperty(this, \"scope\", void 0);\n\n _defineProperty(this, \"wrapped\", void 0);\n\n this.scope = \"\".concat(persistent ? ScopedStorage.GLOBAL_SCOPE_PERSISTENT : ScopedStorage.GLOBAL_SCOPE_VOLATILE, \"_\").concat(btoa(scope), \"_\");\n this.wrapped = wrapped;\n }\n\n _createClass(ScopedStorage, [{\n key: \"scopeKey\",\n value: function scopeKey(key) {\n return \"\".concat(this.scope).concat(key);\n }\n }, {\n key: \"setItem\",\n value: function setItem(key, value) {\n this.wrapped.setItem(this.scopeKey(key), value);\n }\n }, {\n key: \"getItem\",\n value: function getItem(key) {\n return this.wrapped.getItem(this.scopeKey(key));\n }\n }, {\n key: \"removeItem\",\n value: function removeItem(key) {\n this.wrapped.removeItem(this.scopeKey(key));\n }\n }, {\n key: \"clear\",\n value: function clear() {\n var _this = this;\n\n Object.keys(this.wrapped).filter(function (key) {\n return key.startsWith(_this.scope);\n }).map(this.wrapped.removeItem.bind(this.wrapped));\n }\n }]);\n\n return ScopedStorage;\n}();\n\nexports.default = ScopedStorage;\n\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_VOLATILE\", 'nextcloud_vol');\n\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_PERSISTENT\", 'nextcloud_per');\n//# sourceMappingURL=scopedstorage.js.map","function getInternetExplorerVersion() {\n\tvar ua = window.navigator.userAgent;\n\n\tvar msie = ua.indexOf('MSIE ');\n\tif (msie > 0) {\n\t\t// IE 10 or older => return version number\n\t\treturn parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n\t}\n\n\tvar trident = ua.indexOf('Trident/');\n\tif (trident > 0) {\n\t\t// IE 11 => return version number\n\t\tvar rv = ua.indexOf('rv:');\n\t\treturn parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n\t}\n\n\tvar edge = ua.indexOf('Edge/');\n\tif (edge > 0) {\n\t\t// Edge (IE 12+) => return version number\n\t\treturn parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n\t}\n\n\t// other browser\n\treturn -1;\n}\n\nvar isIE = void 0;\n\nfunction initCompat() {\n\tif (!initCompat.init) {\n\t\tinitCompat.init = true;\n\t\tisIE = getInternetExplorerVersion() !== -1;\n\t}\n}\n\nvar ResizeObserver = { render: function render() {\n\t\tvar _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { staticClass: \"resize-observer\", attrs: { \"tabindex\": \"-1\" } });\n\t}, staticRenderFns: [], _scopeId: 'data-v-b329ee4c',\n\tname: 'resize-observer',\n\n\tmethods: {\n\t\tcompareAndNotify: function compareAndNotify() {\n\t\t\tif (this._w !== this.$el.offsetWidth || this._h !== this.$el.offsetHeight) {\n\t\t\t\tthis._w = this.$el.offsetWidth;\n\t\t\t\tthis._h = this.$el.offsetHeight;\n\t\t\t\tthis.$emit('notify');\n\t\t\t}\n\t\t},\n\t\taddResizeHandlers: function addResizeHandlers() {\n\t\t\tthis._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\t\t\tthis.compareAndNotify();\n\t\t},\n\t\tremoveResizeHandlers: function removeResizeHandlers() {\n\t\t\tif (this._resizeObject && this._resizeObject.onload) {\n\t\t\t\tif (!isIE && this._resizeObject.contentDocument) {\n\t\t\t\t\tthis._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n\t\t\t\t}\n\t\t\t\tdelete this._resizeObject.onload;\n\t\t\t}\n\t\t}\n\t},\n\n\tmounted: function mounted() {\n\t\tvar _this = this;\n\n\t\tinitCompat();\n\t\tthis.$nextTick(function () {\n\t\t\t_this._w = _this.$el.offsetWidth;\n\t\t\t_this._h = _this.$el.offsetHeight;\n\t\t});\n\t\tvar object = document.createElement('object');\n\t\tthis._resizeObject = object;\n\t\tobject.setAttribute('aria-hidden', 'true');\n\t\tobject.setAttribute('tabindex', -1);\n\t\tobject.onload = this.addResizeHandlers;\n\t\tobject.type = 'text/html';\n\t\tif (isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t\tobject.data = 'about:blank';\n\t\tif (!isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tthis.removeResizeHandlers();\n\t}\n};\n\n// Install the components\nfunction install(Vue) {\n\tVue.component('resize-observer', ResizeObserver);\n\tVue.component('ResizeObserver', ResizeObserver);\n}\n\n// Plugin\nvar plugin = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.4.5\",\n\tinstall: install\n};\n\n// Auto-install\nvar GlobalVue = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n\tGlobalVue = global.Vue;\n}\nif (GlobalVue) {\n\tGlobalVue.use(plugin);\n}\n\nexport { install, ResizeObserver };\nexport default plugin;\n","var t=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function e(t,e){return t(e={exports:{}},e.exports),e.exports}var n=function(t){return t&&t.Math==Math&&t},r=n(\"object\"==typeof globalThis&&globalThis)||n(\"object\"==typeof window&&window)||n(\"object\"==typeof self&&self)||n(\"object\"==typeof t&&t)||Function(\"return this\")(),o=function(t){try{return!!t()}catch(t){return!0}},i=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),u={}.propertyIsEnumerable,c=Object.getOwnPropertyDescriptor,a={f:c&&!u.call({1:2},1)?function(t){var e=c(this,t);return!!e&&e.enumerable}:u},l=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},f={}.toString,s=function(t){return f.call(t).slice(8,-1)},p=\"\".split,d=o((function(){return!Object(\"z\").propertyIsEnumerable(0)}))?function(t){return\"String\"==s(t)?p.call(t,\"\"):Object(t)}:Object,h=function(t){if(null==t)throw TypeError(\"Can't call method on \"+t);return t},g=function(t){return d(h(t))},v=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t},y=function(t,e){if(!v(t))return t;var n,r;if(e&&\"function\"==typeof(n=t.toString)&&!v(r=n.call(t)))return r;if(\"function\"==typeof(n=t.valueOf)&&!v(r=n.call(t)))return r;if(!e&&\"function\"==typeof(n=t.toString)&&!v(r=n.call(t)))return r;throw TypeError(\"Can't convert object to primitive value\")},m={}.hasOwnProperty,b=function(t,e){return m.call(t,e)},x=r.document,S=v(x)&&v(x.createElement),E=function(t){return S?x.createElement(t):{}},w=!i&&!o((function(){return 7!=Object.defineProperty(E(\"div\"),\"a\",{get:function(){return 7}}).a})),O=Object.getOwnPropertyDescriptor,_={f:i?O:function(t,e){if(t=g(t),e=y(e,!0),w)try{return O(t,e)}catch(t){}if(b(t,e))return l(!a.f.call(t,e),t[e])}},j=function(t){if(!v(t))throw TypeError(String(t)+\" is not an object\");return t},R=Object.defineProperty,C={f:i?R:function(t,e,n){if(j(t),e=y(e,!0),j(n),w)try{return R(t,e,n)}catch(t){}if(\"get\"in n||\"set\"in n)throw TypeError(\"Accessors not supported\");return\"value\"in n&&(t[e]=n.value),t}},A=i?function(t,e,n){return C.f(t,e,l(1,n))}:function(t,e,n){return t[e]=n,t},T=function(t,e){try{A(r,t,e)}catch(n){r[t]=e}return e},I=r[\"__core-js_shared__\"]||T(\"__core-js_shared__\",{}),P=Function.toString;\"function\"!=typeof I.inspectSource&&(I.inspectSource=function(t){return P.call(t)});var k,N,$,U=I.inspectSource,F=r.WeakMap,M=\"function\"==typeof F&&/native code/.test(U(F)),L=e((function(t){(t.exports=function(t,e){return I[t]||(I[t]=void 0!==e?e:{})})(\"versions\",[]).push({version:\"3.6.5\",mode:\"global\",copyright:\"© 2020 Denis Pushkarev (zloirock.ru)\"})})),B=0,D=Math.random(),z=function(t){return\"Symbol(\"+String(void 0===t?\"\":t)+\")_\"+(++B+D).toString(36)},K=L(\"keys\"),W=function(t){return K[t]||(K[t]=z(t))},X={},G=r.WeakMap;if(M){var V=new G,Y=V.get,Z=V.has,q=V.set;k=function(t,e){return q.call(V,t,e),e},N=function(t){return Y.call(V,t)||{}},$=function(t){return Z.call(V,t)}}else{var J=W(\"state\");X[J]=!0,k=function(t,e){return A(t,J,e),e},N=function(t){return b(t,J)?t[J]:{}},$=function(t){return b(t,J)}}var H={set:k,get:N,has:$,enforce:function(t){return $(t)?N(t):k(t,{})},getterFor:function(t){return function(e){var n;if(!v(e)||(n=N(e)).type!==t)throw TypeError(\"Incompatible receiver, \"+t+\" required\");return n}}},Q=e((function(t){var e=H.get,n=H.enforce,o=String(String).split(\"String\");(t.exports=function(t,e,i,u){var c=!!u&&!!u.unsafe,a=!!u&&!!u.enumerable,l=!!u&&!!u.noTargetGet;\"function\"==typeof i&&(\"string\"!=typeof e||b(i,\"name\")||A(i,\"name\",e),n(i).source=o.join(\"string\"==typeof e?e:\"\")),t!==r?(c?!l&&t[e]&&(a=!0):delete t[e],a?t[e]=i:A(t,e,i)):a?t[e]=i:T(e,i)})(Function.prototype,\"toString\",(function(){return\"function\"==typeof this&&e(this).source||U(this)}))})),tt=r,et=function(t){return\"function\"==typeof t?t:void 0},nt=function(t,e){return arguments.length<2?et(tt[t])||et(r[t]):tt[t]&&tt[t][e]||r[t]&&r[t][e]},rt=Math.ceil,ot=Math.floor,it=function(t){return isNaN(t=+t)?0:(t>0?ot:rt)(t)},ut=Math.min,ct=function(t){return t>0?ut(it(t),9007199254740991):0},at=Math.max,lt=Math.min,ft=function(t){return function(e,n,r){var o,i=g(e),u=ct(i.length),c=function(t,e){var n=it(t);return n<0?at(n+e,0):lt(n,e)}(r,u);if(t&&n!=n){for(;u>c;)if((o=i[c++])!=o)return!0}else for(;u>c;c++)if((t||c in i)&&i[c]===n)return t||c||0;return!t&&-1}},st={includes:ft(!0),indexOf:ft(!1)}.indexOf,pt=function(t,e){var n,r=g(t),o=0,i=[];for(n in r)!b(X,n)&&b(r,n)&&i.push(n);for(;e.length>o;)b(r,n=e[o++])&&(~st(i,n)||i.push(n));return i},dt=[\"constructor\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"toLocaleString\",\"toString\",\"valueOf\"],ht=dt.concat(\"length\",\"prototype\"),gt={f:Object.getOwnPropertyNames||function(t){return pt(t,ht)}},vt={f:Object.getOwnPropertySymbols},yt=nt(\"Reflect\",\"ownKeys\")||function(t){var e=gt.f(j(t)),n=vt.f;return n?e.concat(n(t)):e},mt=function(t,e){for(var n=yt(e),r=C.f,o=_.f,i=0;i<n.length;i++){var u=n[i];b(t,u)||r(t,u,o(e,u))}},bt=/#|\\.prototype\\./,xt=function(t,e){var n=Et[St(t)];return n==Ot||n!=wt&&(\"function\"==typeof e?o(e):!!e)},St=xt.normalize=function(t){return String(t).replace(bt,\".\").toLowerCase()},Et=xt.data={},wt=xt.NATIVE=\"N\",Ot=xt.POLYFILL=\"P\",_t=xt,jt=_.f,Rt=function(t,e){var n,o,i,u,c,a=t.target,l=t.global,f=t.stat;if(n=l?r:f?r[a]||T(a,{}):(r[a]||{}).prototype)for(o in e){if(u=e[o],i=t.noTargetGet?(c=jt(n,o))&&c.value:n[o],!_t(l?o:a+(f?\".\":\"#\")+o,t.forced)&&void 0!==i){if(typeof u==typeof i)continue;mt(u,i)}(t.sham||i&&i.sham)&&A(u,\"sham\",!0),Q(n,o,u,t)}},Ct=Array.isArray||function(t){return\"Array\"==s(t)},At=function(t){if(\"function\"!=typeof t)throw TypeError(String(t)+\" is not a function\");return t},Tt=function(t,e,n){if(At(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}},It=function(t,e,n,r,o,i,u,c){for(var a,l=o,f=0,s=!!u&&Tt(u,c,3);f<r;){if(f in n){if(a=s?s(n[f],f,e):n[f],i>0&&Ct(a))l=It(t,e,a,ct(a.length),l,i-1)-1;else{if(l>=9007199254740991)throw TypeError(\"Exceed the acceptable array length\");t[l]=a}l++}f++}return l},Pt=It,kt=function(t){return Object(h(t))},Nt=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())})),$t=Nt&&!Symbol.sham&&\"symbol\"==typeof Symbol.iterator,Ut=L(\"wks\"),Ft=r.Symbol,Mt=$t?Ft:Ft&&Ft.withoutSetter||z,Lt=function(t){return b(Ut,t)||(Nt&&b(Ft,t)?Ut[t]=Ft[t]:Ut[t]=Mt(\"Symbol.\"+t)),Ut[t]},Bt=Lt(\"species\"),Dt=function(t,e){var n;return Ct(t)&&(\"function\"!=typeof(n=t.constructor)||n!==Array&&!Ct(n.prototype)?v(n)&&null===(n=n[Bt])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)};Rt({target:\"Array\",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=kt(this),n=ct(e.length),r=Dt(e,0);return r.length=Pt(r,e,e,n,0,void 0===t?1:it(t)),r}});var zt,Kt,Wt=[].join,Xt=d!=Object,Gt=(zt=\",\",!!(Kt=[][\"join\"])&&o((function(){Kt.call(null,zt||function(){throw 1},1)})));Rt({target:\"Array\",proto:!0,forced:Xt||!Gt},{join:function(t){return Wt.call(g(this),void 0===t?\",\":t)}});var Vt,Yt,Zt=[].push,qt=function(t){var e=1==t,n=2==t,r=3==t,o=4==t,i=6==t,u=5==t||i;return function(c,a,l,f){for(var s,p,h=kt(c),g=d(h),v=Tt(a,l,3),y=ct(g.length),m=0,b=f||Dt,x=e?b(c,y):n?b(c,0):void 0;y>m;m++)if((u||m in g)&&(p=v(s=g[m],m,h),t))if(e)x[m]=p;else if(p)switch(t){case 3:return!0;case 5:return s;case 6:return m;case 2:Zt.call(x,s)}else if(o)return!1;return i?-1:r||o?o:x}},Jt={forEach:qt(0),map:qt(1),filter:qt(2),some:qt(3),every:qt(4),find:qt(5),findIndex:qt(6)},Ht=nt(\"navigator\",\"userAgent\")||\"\",Qt=r.process,te=Qt&&Qt.versions,ee=te&&te.v8;ee?Yt=(Vt=ee.split(\".\"))[0]+Vt[1]:Ht&&(!(Vt=Ht.match(/Edge\\/(\\d+)/))||Vt[1]>=74)&&(Vt=Ht.match(/Chrome\\/(\\d+)/))&&(Yt=Vt[1]);var ne=Yt&&+Yt,re=Lt(\"species\"),oe=Object.defineProperty,ie={},ue=function(t){throw t},ce=Jt.map,ae=function(t){return ne>=51||!o((function(){var e=[];return(e.constructor={})[re]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}(\"map\"),le=function(t,e){if(b(ie,t))return ie[t];e||(e={});var n=[][t],r=!!b(e,\"ACCESSORS\")&&e.ACCESSORS,u=b(e,0)?e[0]:ue,c=b(e,1)?e[1]:void 0;return ie[t]=!!n&&!o((function(){if(r&&!i)return!0;var t={length:-1};r?oe(t,1,{enumerable:!0,get:ue}):t[1]=1,n.call(t,u,c)}))}(\"map\");Rt({target:\"Array\",proto:!0,forced:!ae||!le},{map:function(t){return ce(this,t,arguments.length>1?arguments[1]:void 0)}});var fe,se=Object.keys||function(t){return pt(t,dt)},pe=i?Object.defineProperties:function(t,e){j(t);for(var n,r=se(e),o=r.length,i=0;o>i;)C.f(t,n=r[i++],e[n]);return t},de=nt(\"document\",\"documentElement\"),he=W(\"IE_PROTO\"),ge=function(){},ve=function(t){return\"<script>\"+t+\"<\\/script>\"},ye=function(){try{fe=document.domain&&new ActiveXObject(\"htmlfile\")}catch(t){}var t,e;ye=fe?function(t){t.write(ve(\"\")),t.close();var e=t.parentWindow.Object;return t=null,e}(fe):((e=E(\"iframe\")).style.display=\"none\",de.appendChild(e),e.src=String(\"javascript:\"),(t=e.contentWindow.document).open(),t.write(ve(\"document.F=Object\")),t.close(),t.F);for(var n=dt.length;n--;)delete ye.prototype[dt[n]];return ye()};X[he]=!0;var me=Object.create||function(t,e){var n;return null!==t?(ge.prototype=j(t),n=new ge,ge.prototype=null,n[he]=t):n=ye(),void 0===e?n:pe(n,e)},be=Lt(\"unscopables\"),xe=Array.prototype;null==xe[be]&&C.f(xe,be,{configurable:!0,value:me(null)});var Se;Se=\"flat\",xe[be][Se]=!0;var Ee=function(){var t=j(this),e=\"\";return t.global&&(e+=\"g\"),t.ignoreCase&&(e+=\"i\"),t.multiline&&(e+=\"m\"),t.dotAll&&(e+=\"s\"),t.unicode&&(e+=\"u\"),t.sticky&&(e+=\"y\"),e};function we(t,e){return RegExp(t,e)}var Oe,_e,je={UNSUPPORTED_Y:o((function(){var t=we(\"a\",\"y\");return t.lastIndex=2,null!=t.exec(\"abcd\")})),BROKEN_CARET:o((function(){var t=we(\"^r\",\"gy\");return t.lastIndex=2,null!=t.exec(\"str\")}))},Re=RegExp.prototype.exec,Ce=String.prototype.replace,Ae=Re,Te=(Oe=/a/,_e=/b*/g,Re.call(Oe,\"a\"),Re.call(_e,\"a\"),0!==Oe.lastIndex||0!==_e.lastIndex),Ie=je.UNSUPPORTED_Y||je.BROKEN_CARET,Pe=void 0!==/()??/.exec(\"\")[1];(Te||Pe||Ie)&&(Ae=function(t){var e,n,r,o,i=this,u=Ie&&i.sticky,c=Ee.call(i),a=i.source,l=0,f=t;return u&&(-1===(c=c.replace(\"y\",\"\")).indexOf(\"g\")&&(c+=\"g\"),f=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&\"\\n\"!==t[i.lastIndex-1])&&(a=\"(?: \"+a+\")\",f=\" \"+f,l++),n=new RegExp(\"^(?:\"+a+\")\",c)),Pe&&(n=new RegExp(\"^\"+a+\"$(?!\\\\s)\",c)),Te&&(e=i.lastIndex),r=Re.call(u?n:i,f),u?r?(r.input=r.input.slice(l),r[0]=r[0].slice(l),r.index=i.lastIndex,i.lastIndex+=r[0].length):i.lastIndex=0:Te&&r&&(i.lastIndex=i.global?r.index+r[0].length:e),Pe&&r&&r.length>1&&Ce.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r});var ke=Ae;Rt({target:\"RegExp\",proto:!0,forced:/./.exec!==ke},{exec:ke});var Ne=Lt(\"species\"),$e=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:\"7\"},t},\"7\"!==\"\".replace(t,\"$<a>\")})),Ue=\"$0\"===\"a\".replace(/./,\"$0\"),Fe=Lt(\"replace\"),Me=!!/./[Fe]&&\"\"===/./[Fe](\"a\",\"$0\"),Le=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n=\"ab\".split(t);return 2!==n.length||\"a\"!==n[0]||\"b\"!==n[1]})),Be=function(t,e,n,r){var i=Lt(t),u=!o((function(){var e={};return e[i]=function(){return 7},7!=\"\"[t](e)})),c=u&&!o((function(){var e=!1,n=/a/;return\"split\"===t&&((n={}).constructor={},n.constructor[Ne]=function(){return n},n.flags=\"\",n[i]=/./[i]),n.exec=function(){return e=!0,null},n[i](\"\"),!e}));if(!u||!c||\"replace\"===t&&(!$e||!Ue||Me)||\"split\"===t&&!Le){var a=/./[i],l=n(i,\"\"[t],(function(t,e,n,r,o){return e.exec===ke?u&&!o?{done:!0,value:a.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:Ue,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Me}),f=l[0],s=l[1];Q(String.prototype,t,f),Q(RegExp.prototype,i,2==e?function(t,e){return s.call(t,this,e)}:function(t){return s.call(t,this)})}r&&A(RegExp.prototype[i],\"sham\",!0)},De=function(t){return function(e,n){var r,o,i=String(h(e)),u=it(n),c=i.length;return u<0||u>=c?t?\"\":void 0:(r=i.charCodeAt(u))<55296||r>56319||u+1===c||(o=i.charCodeAt(u+1))<56320||o>57343?t?i.charAt(u):r:t?i.slice(u,u+2):o-56320+(r-55296<<10)+65536}},ze={codeAt:De(!1),charAt:De(!0)}.charAt,Ke=function(t,e,n){return e+(n?ze(t,e).length:1)},We=function(t,e){var n=t.exec;if(\"function\"==typeof n){var r=n.call(t,e);if(\"object\"!=typeof r)throw TypeError(\"RegExp exec method returned something other than an Object or null\");return r}if(\"RegExp\"!==s(t))throw TypeError(\"RegExp#exec called on incompatible receiver\");return ke.call(t,e)};Be(\"match\",1,(function(t,e,n){return[function(e){var n=h(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var o=j(t),i=String(this);if(!o.global)return We(o,i);var u=o.unicode;o.lastIndex=0;for(var c,a=[],l=0;null!==(c=We(o,i));){var f=String(c[0]);a[l]=f,\"\"===f&&(o.lastIndex=Ke(i,ct(o.lastIndex),u)),l++}return 0===l?null:a}]}));var Xe=Lt(\"match\"),Ge=Lt(\"species\"),Ve=[].push,Ye=Math.min,Ze=!o((function(){return!RegExp(4294967295,\"y\")}));Be(\"split\",2,(function(t,e,n){var r;return r=\"c\"==\"abbc\".split(/(b)*/)[1]||4!=\"test\".split(/(?:)/,-1).length||2!=\"ab\".split(/(?:ab)*/).length||4!=\".\".split(/(.?)(.?)/).length||\".\".split(/()()/).length>1||\"\".split(/.?/).length?function(t,n){var r,o,i=String(h(this)),u=void 0===n?4294967295:n>>>0;if(0===u)return[];if(void 0===t)return[i];if(!v(r=t)||!(void 0!==(o=r[Xe])?o:\"RegExp\"==s(r)))return e.call(i,t,u);for(var c,a,l,f=[],p=(t.ignoreCase?\"i\":\"\")+(t.multiline?\"m\":\"\")+(t.unicode?\"u\":\"\")+(t.sticky?\"y\":\"\"),d=0,g=new RegExp(t.source,p+\"g\");(c=ke.call(g,i))&&!((a=g.lastIndex)>d&&(f.push(i.slice(d,c.index)),c.length>1&&c.index<i.length&&Ve.apply(f,c.slice(1)),l=c[0].length,d=a,f.length>=u));)g.lastIndex===c.index&&g.lastIndex++;return d===i.length?!l&&g.test(\"\")||f.push(\"\"):f.push(i.slice(d)),f.length>u?f.slice(0,u):f}:\"0\".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=h(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var i=n(r,t,this,o,r!==e);if(i.done)return i.value;var u=j(t),c=String(this),a=function(t,e){var n,r=j(t).constructor;return void 0===r||null==(n=j(r)[Ge])?e:At(n)}(u,RegExp),l=u.unicode,f=(u.ignoreCase?\"i\":\"\")+(u.multiline?\"m\":\"\")+(u.unicode?\"u\":\"\")+(Ze?\"y\":\"g\"),s=new a(Ze?u:\"^(?:\"+u.source+\")\",f),p=void 0===o?4294967295:o>>>0;if(0===p)return[];if(0===c.length)return null===We(s,c)?[c]:[];for(var d=0,h=0,g=[];h<c.length;){s.lastIndex=Ze?h:0;var v,y=We(s,Ze?c:c.slice(h));if(null===y||(v=Ye(ct(s.lastIndex+(Ze?0:h)),c.length))===d)h=Ke(c,h,l);else{if(g.push(c.slice(d,h)),g.length===p)return g;for(var m=1;m<=y.length-1;m++)if(g.push(y[m]),g.length===p)return g;h=d=v}}return g.push(c.slice(d)),g}]}),!Ze);var qe=\"\\t\\n\\v\\f\\r                 \\u2028\\u2029\\ufeff\",Je=\"[\"+qe+\"]\",He=RegExp(\"^\"+Je+Je+\"*\"),Qe=RegExp(Je+Je+\"*$\"),tn=function(t){return function(e){var n=String(h(e));return 1&t&&(n=n.replace(He,\"\")),2&t&&(n=n.replace(Qe,\"\")),n}},en={start:tn(1),end:tn(2),trim:tn(3)},nn=en.trim;function rn(t){return(rn=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t})(t)}function on(t,e,n,r,o,i,u,c,a,l){\"boolean\"!=typeof u&&(a=c,c=u,u=!1);const f=\"function\"==typeof n?n.options:n;let s;if(t&&t.render&&(f.render=t.render,f.staticRenderFns=t.staticRenderFns,f._compiled=!0,o&&(f.functional=!0)),r&&(f._scopeId=r),i?(s=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,a(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},f._ssrRegister=s):e&&(s=u?function(t){e.call(this,l(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,c(t))}),s)if(f.functional){const t=f.render;f.render=function(e,n){return s.call(n),t(e,n)}}else{const t=f.beforeCreate;f.beforeCreate=t?[].concat(t,s):[s]}return n}Rt({target:\"String\",proto:!0,forced:function(t){return o((function(){return!!qe[t]()||\"​…᠎\"!=\"​…᠎\"[t]()||qe[t].name!==t}))}(\"trim\")},{trim:function(){return nn(this)}});const un=on({render:function(t,e){return(0,e._c)(\"a\",{staticClass:\"external\",attrs:{href:e.props.href.trim(),rel:\"noopener noreferrer\",target:\"_blank\"}},[e._v(e._s(e.props.href.trim()))])},staticRenderFns:[]},undefined,{name:\"Link\",functional:!0,props:{href:{type:String,required:!0}}},undefined,true,undefined,!1,void 0,void 0,void 0);var cn=/(\\s|\\(|^)((https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/gi,an=function(t,e){var n=t.h,r=t.context;return r.props.autolink&&(e=function(t,e){for(var n=cn.exec(t),r=[],o=0;null!==n;){var i=n[2],u=void 0,c=t.substring(o,n.index+n[1].length);\" \"===i[0]&&(c+=i[0],i=i.substring(1).trim());var a=i[i.length-1];(\".\"===a||\",\"===a||\";\"===a||\"(\"===n[0][0]&&\")\"===a)&&(i=i.substring(0,i.length-1),u=a),r.push(c),r.push({component:e,props:{href:i}}),u&&r.push(u),o=n.index+n[0].length,n=cn.exec(t)}return r.push(t.substring(o)),t===r.map((function(t){return\"string\"==typeof t?t:t.props.href})).join(\"\")?r:(console.error(\"Failed to reassemble the chunked text: \"+t),t)}(e,r.props.linkComponent)),Array.isArray(e)?e.map((function(t){if(\"string\"==typeof t)return t;var e=t.component,r=t.props;return n(e,{props:r,class:\"rich-text--component\"})})):e},ln={name:\"RichText\",functional:!0,props:{text:{type:String,default:\"\"},arguments:{type:Object,default:function(){return{}}},linkComponent:{type:Object,default:function(){return un}},autolink:{type:Boolean,default:!1}},render:function(t,e){var n=e.props.text.split(/(\\{[a-z\\-_.0-9]+\\})/gi).map((function(n,r,o){var i=n.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);if(!i)return an({h:t,context:e},n);var u=i[1],c=e.props.arguments[u];if(\"object\"===rn(c)){var a=c.component,l=c.props;return t(a,{props:l,class:\"rich-text--component\"})}return c?t(\"span\",{class:\"rich-text--fallback\"},c):n}));return t(\"div\",{class:\"rich-text--wrapper\"},n.flat())}};const fn=\"undefined\"!=typeof navigator&&/msie [6-9]\\\\b/.test(navigator.userAgent.toLowerCase());function sn(t){return(t,e)=>function(t,e){const n=fn?e.media||\"default\":t,r=dn[n]||(dn[n]={ids:new Set,styles:[]});if(!r.ids.has(t)){r.ids.add(t);let n=e.source;if(e.map&&(n+=\"\\n/*# sourceURL=\"+e.map.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(e.map))))+\" */\"),r.element||(r.element=document.createElement(\"style\"),r.element.type=\"text/css\",e.media&&r.element.setAttribute(\"media\",e.media),void 0===pn&&(pn=document.head||document.getElementsByTagName(\"head\")[0]),pn.appendChild(r.element)),\"styleSheet\"in r.element)r.styles.push(n),r.element.styleSheet.cssText=r.styles.filter(Boolean).join(\"\\n\");else{const t=r.ids.size-1,e=document.createTextNode(n),o=r.element.childNodes;o[t]&&r.element.removeChild(o[t]),o.length?r.element.insertBefore(e,o[t]):r.element.appendChild(e)}}}(t,e)}let pn;const dn={};const hn=on({},(function(t){t&&t(\"data-v-252db2c7_0\",{source:'.rich-text--fallback[data-v-252db2c7],.rich-text-component[data-v-252db2c7]{display:inline}a.external[data-v-252db2c7]:after{content:\" ↗\"}',map:void 0,media:void 0})}),ln,\"data-v-252db2c7\",undefined,undefined,!1,sn,void 0,void 0);export default hn;\n","!function(A,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(\"Components/UserBubble\",[],t):\"object\"==typeof exports?exports[\"Components/UserBubble\"]=t():(A.NextcloudVue=A.NextcloudVue||{},A.NextcloudVue[\"Components/UserBubble\"]=t())}(window,(function(){return function(A){var t={};function e(a){if(t[a])return t[a].exports;var i=t[a]={i:a,l:!1,exports:{}};return A[a].call(i.exports,i,i.exports,e),i.l=!0,i.exports}return e.m=A,e.c=t,e.d=function(A,t,a){e.o(A,t)||Object.defineProperty(A,t,{enumerable:!0,get:a})},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,t){if(1&t&&(A=e(A)),8&t)return A;if(4&t&&\"object\"==typeof A&&A&&A.__esModule)return A;var a=Object.create(null);if(e.r(a),Object.defineProperty(a,\"default\",{enumerable:!0,value:A}),2&t&&\"string\"!=typeof A)for(var i in A)e.d(a,i,function(t){return A[t]}.bind(null,i));return a},e.n=function(A){var t=A&&A.__esModule?function(){return A.default}:function(){return A};return e.d(t,\"a\",t),t},e.o=function(A,t){return Object.prototype.hasOwnProperty.call(A,t)},e.p=\"/dist/\",e(e.s=200)}([function(A,t,e){\"use strict\";function a(A,t,e,a,i,n,o,r){var s,c=\"function\"==typeof A?A.options:A;if(t&&(c.render=t,c.staticRenderFns=e,c._compiled=!0),a&&(c.functional=!0),n&&(c._scopeId=\"data-v-\"+n),o?(s=function(A){(A=A||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(A=__VUE_SSR_CONTEXT__),i&&i.call(this,A),A&&A._registeredComponents&&A._registeredComponents.add(o)},c._ssrRegister=s):i&&(s=r?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),s)if(c.functional){c._injectStyles=s;var l=c.render;c.render=function(A,t){return s.call(t),l(A,t)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,s):[s]}return{exports:A,options:c}}e.d(t,\"a\",(function(){return a}))},function(A,t,e){\"use strict\";A.exports=function(A){var t=[];return t.toString=function(){return this.map((function(t){var e=function(A,t){var e=A[1]||\"\",a=A[3];if(!a)return e;if(t&&\"function\"==typeof btoa){var i=(o=a,r=btoa(unescape(encodeURIComponent(JSON.stringify(o)))),s=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(r),\"/*# \".concat(s,\" */\")),n=a.sources.map((function(A){return\"/*# sourceURL=\".concat(a.sourceRoot||\"\").concat(A,\" */\")}));return[e].concat(n).concat([i]).join(\"\\n\")}var o,r,s;return[e].join(\"\\n\")}(t,A);return t[2]?\"@media \".concat(t[2],\" {\").concat(e,\"}\"):e})).join(\"\")},t.i=function(A,e,a){\"string\"==typeof A&&(A=[[null,A,\"\"]]);var i={};if(a)for(var n=0;n<this.length;n++){var o=this[n][0];null!=o&&(i[o]=!0)}for(var r=0;r<A.length;r++){var s=[].concat(A[r]);a&&i[s[0]]||(e&&(s[2]?s[2]=\"\".concat(e,\" and \").concat(s[2]):s[2]=e),t.push(s))}},t}},function(A,t,e){\"use strict\";function a(A,t){for(var e=[],a={},i=0;i<t.length;i++){var n=t[i],o=n[0],r={id:A+\":\"+i,css:n[1],media:n[2],sourceMap:n[3]};a[o]?a[o].parts.push(r):e.push(a[o]={id:o,parts:[r]})}return e}e.r(t),e.d(t,\"default\",(function(){return g}));var i=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!i)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var n={},o=i&&(document.head||document.getElementsByTagName(\"head\")[0]),r=null,s=0,c=!1,l=function(){},d=null,u=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function g(A,t,e,i){c=e,d=i||{};var o=a(A,t);return p(o),function(t){for(var e=[],i=0;i<o.length;i++){var r=o[i];(s=n[r.id]).refs--,e.push(s)}t?p(o=a(A,t)):o=[];for(i=0;i<e.length;i++){var s;if(0===(s=e[i]).refs){for(var c=0;c<s.parts.length;c++)s.parts[c]();delete n[s.id]}}}}function p(A){for(var t=0;t<A.length;t++){var e=A[t],a=n[e.id];if(a){a.refs++;for(var i=0;i<a.parts.length;i++)a.parts[i](e.parts[i]);for(;i<e.parts.length;i++)a.parts.push(v(e.parts[i]));a.parts.length>e.parts.length&&(a.parts.length=e.parts.length)}else{var o=[];for(i=0;i<e.parts.length;i++)o.push(v(e.parts[i]));n[e.id]={id:e.id,refs:1,parts:o}}}}function M(){var A=document.createElement(\"style\");return A.type=\"text/css\",o.appendChild(A),A}function v(A){var t,e,a=document.querySelector('style[data-vue-ssr-id~=\"'+A.id+'\"]');if(a){if(c)return l;a.parentNode.removeChild(a)}if(u){var i=s++;a=r||(r=M()),t=I.bind(null,a,i,!1),e=I.bind(null,a,i,!0)}else a=M(),t=f.bind(null,a),e=function(){a.parentNode.removeChild(a)};return t(A),function(a){if(a){if(a.css===A.css&&a.media===A.media&&a.sourceMap===A.sourceMap)return;t(A=a)}else e()}}var m,b=(m=[],function(A,t){return m[A]=t,m.filter(Boolean).join(\"\\n\")});function I(A,t,e,a){var i=e?\"\":a.css;if(A.styleSheet)A.styleSheet.cssText=b(t,i);else{var n=document.createTextNode(i),o=A.childNodes;o[t]&&A.removeChild(o[t]),o.length?A.insertBefore(n,o[t]):A.appendChild(n)}}function f(A,t){var e=t.css,a=t.media,i=t.sourceMap;if(a&&A.setAttribute(\"media\",a),d.ssrId&&A.setAttribute(\"data-vue-ssr-id\",t.id),i&&(e+=\"\\n/*# sourceURL=\"+i.sources[0]+\" */\",e+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+\" */\"),A.styleSheet)A.styleSheet.cssText=e;else{for(;A.firstChild;)A.removeChild(A.firstChild);A.appendChild(document.createTextNode(e))}}},function(A,t){A.exports=require(\"core-js/modules/es.object.to-string\")},function(A,t){A.exports=require(\"v-tooltip\")},function(A,t){A.exports=require(\"vue\")},,function(A,t){A.exports=require(\"core-js/modules/es.function.name\")},function(A,t){A.exports=require(\"core-js/modules/es.array.iterator\")},function(A,t){A.exports=require(\"core-js/modules/es.string.iterator\")},function(A,t){A.exports=require(\"core-js/modules/web.dom-collections.iterator\")},function(A,t){A.exports=require(\"core-js/modules/es.array.map\")},function(A,t){A.exports=require(\"core-js/modules/es.regexp.to-string\")},function(A,t,e){\"use strict\";A.exports=function(A,t){return t||(t={}),\"string\"!=typeof(A=A&&A.__esModule?A.default:A)?A:(/^['\"].*['\"]$/.test(A)&&(A=A.slice(1,-1)),t.hash&&(A+=t.hash),/[\"'() \\t\\n]/.test(A)||t.needQuotes?'\"'.concat(A.replace(/\"/g,'\\\\\"').replace(/\\n/g,\"\\\\n\"),'\"'):A)}},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:application/vnd.ms-fontobject;base64,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\"},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:font/woff;base64,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PAE55eh8gAAAAQAAAAEAAGHLsHFfDzz1AAsTiAAAAADbgSQ2AAAAANswSDf/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtYjc0ZmY1MVJlZ3VsYXJpY29uZm9udC12dWUtYjc0ZmY1MWljb25mb250LXZ1ZS1iNzRmZjUxVmVyc2lvbiAxLjBpY29uZm9udC12dWUtYjc0ZmY1MUdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtAGIANwA0AGYAZgA1ADEAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:font/ttf;base64,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AAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtYjc0ZmY1MVJlZ3VsYXJpY29uZm9udC12dWUtYjc0ZmY1MWljb25mb250LXZ1ZS1iNzRmZjUxVmVyc2lvbiAxLjBpY29uZm9udC12dWUtYjc0ZmY1MUdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtAGIANwA0AGYAZgA1ADEAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AYgA3ADQAZgBmADUAMQBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(A,t,e){\"use strict\";e.r(t),t.default=\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlLWI3NGZmNTEiIGhvcml6LWFkdi14PSI1MDAwIj48Zm9udC1mYWNlIGZvbnQtZmFtaWx5PSJpY29uZm9udC12dWUtYjc0ZmY1MSIgZm9udC13ZWlnaHQ9IjQwMCIgZm9udC1zdHJldGNoPSJub3JtYWwiIHVuaXRzLXBlci1lbT0iNTAwMCIgcGFub3NlLTE9IjIgMCA1IDMgMCAwIDAgMCAwIDAiIGFzY2VudD0iNTAwMCIgZGVzY2VudD0iMCIgeC1oZWlnaHQ9IjAiIGJib3g9Ii0zMiAwIDUwMTEgNTAwMCIgdW5kZXJsaW5lLXRoaWNrbmVzcz0iMCIgdW5kZXJsaW5lLXBvc2l0aW9uPSI1MCIgdW5pY29kZS1yYW5nZT0iVStlYTAxLWVhMTIiIC8+PG1pc3NpbmctZ2x5cGggaG9yaXotYWR2LXg9IjAiICAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1sZWZ0LWRvdWJsZSIgdW5pY29kZT0iJiN4ZWEwMTsiIGQ9Ik0zNzUwIDM5MDYgbC0xNDA2IC0xNDA2IGwxNDA2IC0xNDA2IGwwIDMxMiBsLTEwOTQgMTA5NCBsMTA5NCAxMDk0IGwwIDMxMiBaTTIzNDQgMzkwNiBsLTE0MDYgLTE0MDYgbDE0MDYgLTE0MDYgbDAgMzEyIGwtMTA5NCAxMDk0IGwxMDk0IDEwOTQgbDAgMzEyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LWxlZnQiIHVuaWNvZGU9IiYjeGVhMDI7IiBkPSJNMTU2MyAyNTAwIGwxODc1IC0xODc1IGwwIC0zMTIgbC0yMTg4IDIxODcgbDIxODggMjE4OCBsMCAtMzEzIGwtMTg3NSAtMTg3NSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1yaWdodC1kb3VibGUiIHVuaWNvZGU9IiYjeGVhMDM7IiBkPSJNMTI1MCAxMDk0IGwxNDA2IDE0MDYgbC0xNDA2IDE0MDYgbDAgLTMxMiBsMTA5NCAtMTA5NCBsLTEwOTQgLTEwOTQgbDAgLTMxMiBaTTI2NTYgMTA5NCBsMTQwNyAxNDA2IGwtMTQwNyAxNDA2IGwwIC0zMTIgbDEwOTQgLTEwOTQgbC0xMDk0IC0xMDk0IGwwIC0zMTIgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctcmlnaHQiIHVuaWNvZGU9IiYjeGVhMDQ7IiBkPSJNMzQzOCAyNTAwIGwtMTg3NSAxODc1IGwwIDMxMyBsMjE4NyAtMjE4OCBsLTIxODcgLTIxODcgbDAgMzEyIGwxODc1IDE4NzUgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYnJlYWRjcnVtYiIgdW5pY29kZT0iJiN4ZWEwNTsiIGQ9Ik0xNDggNTAwMCBsLTE0OCAtODUgbDEzOTQgLTI0MTUgbC0xMzk0IC0yNDE1IGwxNDggLTg1IGwxNDQzIDI1MDAgbC0xNDQzIDI1MDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY2hlY2ttYXJrIiB1bmljb2RlPSImI3hlYTA2OyIgZD0iTTQwNDUgMzk3MSBsLTIwNjEgLTIwNjEgbC0xMDI5IDEwMjkgbC00NDIgLTQ0MSBsMTQ3MSAtMTQ3MSBsMjUwMyAyNTAyIGwtNDQyIDQ0MiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJjbG9zZSIgdW5pY29kZT0iJiN4ZWEwNzsiIGQ9Ik00Mzc1IDExNTYgbC01MzEgLTUzMSBsLTEzNDQgMTM0NCBsLTEzNDQgLTEzNDQgbC01MzEgNTMxIGwxMzQ0IDEzNDQgbC0xMzQ0IDEzNDQgbDUzMSA1MzEgbDEzNDQgLTEzNDQgbDEzNDQgMTM0NCBsNTMxIC01MzEgbC0xMzQ0IC0xMzQ0IGwxMzQ0IC0xMzQ0IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNvbmZpcm0iIHVuaWNvZGU9IiYjeGVhMDg7IiBkPSJNMjY1NiA0ODQ0IHEtMTAxIDAgLTE4MCAtNTcgcS03NCAtNTIgLTEwOSAtMTM4IHEtMzUgLTg2IC0xOSAtMTc1IHExOCAtOTYgOTAgLTE2NyBsMTQ5NSAtMTQ5NCBsLTM2MTYgMCBxLTc3IDEgLTEzOSAtMjYgcS01OCAtMjQgLTk5IC03MCBxLTM5IC00NCAtNTkgLTEwMSBxLTIwIC01NiAtMjAgLTExNiBxMCAtNjAgMjAgLTExNiBxMjAgLTU3IDU5IC0xMDEgcTQxIC00NiA5OSAtNzAgcTYyIC0yNyAxMzkgLTI1IGwzNjE2IDAgbC0xNDk1IC0xNDk1IHEtNTUgLTUzIC04MSAtMTE2IHEtMjQgLTU5IC0yMSAtMTIxIHEzIC01OCAzMCAtMTEzIHEyNSAtNTQgNjggLTk3IHE0MyAtNDMgOTYgLTY4IHE1NSAtMjYgMTE0IC0yOSBxNjIgLTMgMTIwIDIxIHE2MyAyNSAxMTYgODEgbDIwMjkgMjAyOCBxNTkgNjAgODAgMTQxIHEyMSA4MCAxIDE1OSBxLTIxIDgyIC04MSAxNDIgbC0yMDI5IDIwMjggcS00NCA0NSAtMTAyIDcwIHEtNTggMjUgLTEyMiAyNSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJpbmZvIiB1bmljb2RlPSImI3hlYTA5OyIgZD0iTTI0MjIgNDY4OCBxLTExMSAwIC0yMTMgLTQzIHEtOTggLTQyIC0xNzQgLTExNy41IHEtNzYgLTc1LjUgLTExNyAtMTc0LjUgcS00MyAtMTAxIC00MyAtMjEyLjUgcTAgLTExMS41IDQzIC0yMTIuNSBxNDEgLTk4IDExNyAtMTc0IHE3NiAtNzYgMTc0IC0xMTcgcTEwMiAtNDMgMjEzIC00MyBxMTExIDAgMjEzIDQzIHE5OCA0MSAxNzMuNSAxMTcgcTc1LjUgNzYgMTE3LjUgMTc0IHE0MyAxMDEgNDMgMjEyLjUgcTAgMTExLjUgLTQzIDIxMi41IHEtNDIgOTkgLTExNy41IDE3NC41IHEtNzUuNSA3NS41IC0xNzMuNSAxMTcuNSBxLTEwMiA0MyAtMjEzIDQzIFpNMTU2MyAzMTI1IHEtODYgMCAtMTU4IC00MyBxLTcxIC00MSAtMTEyIC0xMTIgcS00MyAtNzIgLTQzIC0xNTcuNSBxMCAtODUuNSA0MyAtMTU3LjUgcTQxIC03MSAxMTIgLTExMiBxNzIgLTQzIDE1OCAtNDMgbDYyNSAwIGwwIC0xNTYyIGwtNjI1IDAgcS04NiAwIC0xNTggLTQzIHEtNzEgLTQxIC0xMTIgLTExMiBxLTQzIC03MyAtNDMgLTE1OCBxMCAtODUgNDMgLTE1OCBxNDEgLTcxIDExMiAtMTEyIHE3MiAtNDMgMTU4IC00MiBsMTg3NSAwIHE4NSAwIDE1NyA0MiBxNzEgNDEgMTEyIDExMiBxNDMgNzMgNDMgMTU4IHEwIDg1IC00MyAxNTggcS00MSA3MSAtMTEyIDExMiBxLTcyIDQzIC0xNTcgNDMgbC02MjUgMCBsMCAxODc1IHEwIDg1IC00MyAxNTcgcS00MSA3MSAtMTEyIDExMiBxLTczIDQzIC0xNTggNDMgbC05MzcgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtZW51IiB1bmljb2RlPSImI3hlYTBhOyIgZD0iTTYyNSA0Mzc1IGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMjgxMyBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFpNNjI1IDEyNTAgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtb3JlIiB1bmljb2RlPSImI3hlYTBiOyIgZD0iTTc4MSAzMDQ3IHExMTIgMCAyMTMgLTQzIHE5OCAtNDIgMTc0IC0xMTcuNSBxNzYgLTc1LjUgMTE3IC0xNzMuNSBxNDMgLTEwMiA0MyAtMjEzIHEwIC0xMTEgLTQzIC0yMTMgcS00MSAtOTggLTExNyAtMTczLjUgcS03NiAtNzUuNSAtMTc0IC0xMTcuNSBxLTEwMSAtNDMgLTIxMi41IC00MyBxLTExMS41IDAgLTIxMy41IDQzIHEtOTggNDIgLTE3My41IDExNy41IHEtNzUuNSA3NS41IC0xMTcuNSAxNzMuNSBxLTQzIDEwMiAtNDMgMjEzIHEwIDExMSA0MyAyMTMgcTQyIDk4IDExNy41IDE3My41IHE3NS41IDc1LjUgMTczLjUgMTE3LjUgcTEwMiA0MyAyMTMgNDMgWk0yNTAwIDMwNDcgcTExMSAwIDIxMyAtNDMgcTk4IC00MiAxNzMuNSAtMTE3LjUgcTc1LjUgLTc1LjUgMTE3LjUgLTE3My41IHE0MyAtMTAyIDQzIC0yMTMgcTAgLTExMSAtNDMgLTIxMyBxLTQyIC05OCAtMTE3LjUgLTE3My41IHEtNzUuNSAtNzUuNSAtMTczLjUgLTExNy41IHEtMTAyIC00MyAtMjEzIC00MyBxLTExMSAwIC0yMTMgNDMgcS05OCA0MiAtMTczLjUgMTE3LjUgcS03NS41IDc1LjUgLTExNy41IDE3My41IHEtNDMgMTAyIC00MyAyMTMgcTAgMTExIDQzIDIxMyBxNDIgOTggMTE3LjUgMTczLjUgcTc1LjUgNzUuNSAxNzMuNSAxMTcuNSBxMTAyIDQzIDIxMyA0MyBaTTQyMTkgMzA0NyBxMTExIDAgMjEzIC00MyBxOTggLTQyIDE3My41IC0xMTcuNSBxNzUuNSAtNzUuNSAxMTcuNSAtMTczLjUgcTQzIC0xMDIgNDMgLTIxMyBxMCAtMTExIC00MyAtMjEzIHEtNDIgLTk4IC0xMTcuNSAtMTczLjUgcS03NS41IC03NS41IC0xNzMuNSAtMTE3LjUgcS0xMDIgLTQzIC0yMTMuNSAtNDMgcS0xMTEuNSAwIC0yMTIuNSA0MyBxLTk4IDQyIC0xNzQgMTE3LjUgcS03NiA3NS41IC0xMTcgMTczLjUgcS00MyAxMDIgLTQzIDIxMyBxMCAxMTEgNDMgMjEzIHE0MSA5OCAxMTcgMTczLjUgcTc2IDc1LjUgMTc0IDExNy41IHExMDEgNDMgMjEzIDQzIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InBhdXNlIiB1bmljb2RlPSImI3hlYTBjOyIgZD0iTTkzOCA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaTTI4MTMgNDA2MyBsMCAtMzEyNSBsMTI1MCAwIGwwIDMxMjUgbC0xMjUwIDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGxheSIgdW5pY29kZT0iJiN4ZWEwZDsiIGQ9Ik02MjUgNDM3NSBsMzc1MCAtMTg3NSBsLTM3NTAgLTE4NzUgbDAgMzc1MCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJ0cmlhbmdsZS1zIiB1bmljb2RlPSImI3hlYTBlOyIgZD0iTTEyNTAgMzEyNSBsMTI1MCAtMTI1MCBsMTI1MCAxMjQ4IGwtMjUwMCAyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWF3YXkiIHVuaWNvZGU9IiYjeGVhMGY7IiBkPSJNMjE1NiA0OTY5IHEtMzYwIC00NiAtNjk1IC0xOTcgcS0zMjYgLTE0NyAtNjAxIC0zODAgcS0yNzQgLTIzMSAtNDcyIC01MjggcS0yMDIgLTMwMSAtMzA5IC02NDIgcS0xMTAgLTM1MyAtMTEwIC03MjIgcTAgLTQwNiAxMjggLTc4OCBxMTIzIC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTM2OSAwIDcyMiAxMDcgcTM0MiAxMDQgNjQ0IDMwMSBxMjk4IDE5NCA1MzMgNDYzIHEyMzYgMjcwIDM4OSA1OTMgcTE1NiAzMzEgMjEyIDY5MiBxLTE4OCAtMjA0IC00MjMuNSAtMzUxIHEtMjM1LjUgLTE0NyAtNDk4LjUgLTIyNSBxLTI2OSAtODAgLTU0NyAtODAgcS0zMjIgMCAtNjI4IDEwMyBxLTI5NSA5OSAtNTQ4IDI4NiBxLTI1MSAxODQgLTQzNSA0MzUgcS0xODcgMjUzIC0yODYgNTQ4IHEtMTAzIDMwNiAtMTAzIDYyOCBxMCAyOTMgODAgNTY4IHE3OCAyNjkgMjI1LjUgNDk4LjUgcTE0Ny41IDIyOS41IDM1MC41IDQwMi41IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWRuZCIgdW5pY29kZT0iJiN4ZWExMDsiIGQ9Ik0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFpNMTU2MyAyOTY5IGwxODc1IDAgcTkxIDAgMTc4IC0zOCBxODQgLTM3IDE1MCAtMTAzIHE2NiAtNjYgMTAyIC0xNDkgcTM4IC04NyAzOCAtMTc5IHEwIC05MiAtMzggLTE3OSBxLTM2IC04MyAtMTAyIC0xNDkgcS02NiAtNjYgLTE1MCAtMTAzIHEtODcgLTM4IC0xNzggLTM4IGwtMTg3NSAwIHEtOTIgMCAtMTc5IDM4IHEtODQgMzcgLTE1MCAxMDMgcS02NiA2NiAtMTAyIDE0OSBxLTM4IDg3IC0zOCAxNzkgcTAgOTIgMzggMTc5IHEzNiA4MyAxMDIgMTQ5IHE2NiA2NiAxNTAgMTAzIHE4NyAzOCAxNzkgMzggWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtaW52aXNpYmxlIiB1bmljb2RlPSImI3hlYTExOyIgZD0iTTI1MDAgNTAwMCBxLTQwNiAwIC03ODggLTEyOCBxLTM3MCAtMTI0IC02ODYgLTM1NiBxLTMxMyAtMjI5IC01NDIgLTU0MiBxLTIzMiAtMzE2IC0zNTYgLTY4NiBxLTEyOCAtMzgyIC0xMjggLTc4OCBxMCAtNDA2IDEyOCAtNzg4IHExMjQgLTM3MCAzNTYgLTY4NiBxMjI5IC0zMTMgNTQyIC01NDIgcTMxNiAtMjMyIDY4NiAtMzU2IHEzODIgLTEyOCA3ODggLTEyOCBxNDA2IDAgNzg4IDEyOCBxMzcwIDEyNCA2ODYgMzU2IHEzMTMgMjI5IDU0MiA1NDIgcTIzMiAzMTYgMzU2IDY4NiBxMTI4IDM4MiAxMjggNzg4IHEwIDQwNiAtMTI4IDc4OCBxLTEyNCAzNzAgLTM1NiA2ODYgcS0yMjkgMzEzIC01NDIgNTQyIHEtMzE2IDIzMiAtNjg2IDM1NiBxLTM4MiAxMjggLTc4OCAxMjggWk0yNTAwIDQwMDAgcTMxMSAwIDU5MCAtMTE2IHEyNzEgLTExMiA0NzYuNSAtMzE3LjUgcTIwNS41IC0yMDUuNSAzMTcuNSAtNDc2LjUgcTExNiAtMjc5IDExNiAtNTkwIHEwIC0zMTEgLTExNiAtNTkwIHEtMTEyIC0yNzEgLTMxNy41IC00NzYuNSBxLTIwNS41IC0yMDUuNSAtNDc2LjUgLTMxNy41IHEtMjc5IC0xMTYgLTU5MCAtMTE2IHEtMzExIDAgLTU5MCAxMTYgcS0yNzEgMTEyIC00NzYuNSAzMTcuNSBxLTIwNS41IDIwNS41IC0zMTcuNSA0NzYuNSBxLTExNiAyNzkgLTExNiA1OTAgcTAgMzExIDExNiA1OTAgcTExMiAyNzEgMzE3LjUgNDc2LjUgcTIwNS41IDIwNS41IDQ3Ni41IDMxNy41IHEyNzkgMTE2IDU5MCAxMTYgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtb25saW5lIiB1bmljb2RlPSImI3hlYTEyOyIgZD0iTTE1MDAgMTUwMCBsMjAwMCAwIGwwIDIwMDAgbC0yMDAwIDAgbDAgLTIwMDAgWk0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFoiIC8+PC9mb250PjwvZGVmcz48L3N2Zz4=\"},function(A,t,e){var a=e(67);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"7a7fb996\",a,!0,{})},function(A,t,e){\"use strict\";e.r(t);var a=e(4);e(55);\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.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 */\na.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"b74ff51\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),a.VTooltip.options.defaultHtml=!1,t.default=a.VTooltip},function(A,t){A.exports=require(\"core-js/modules/es.array.index-of\")},function(A,t){A.exports=require(\"core-js/modules/es.regexp.exec\")},,function(A,t){A.exports=require(\"@nextcloud/router\")},function(A,t){},function(A,t){A.exports=require(\"core-js/modules/es.symbol\")},function(A,t){A.exports=require(\"core-js/modules/es.array.concat\")},,,function(A,t){A.exports=require(\"core-js/modules/es.number.constructor\")},function(A,t){A.exports=require(\"core-js/modules/es.string.trim\")},function(A,t){A.exports=require(\"core-js/modules/web.url\")},function(A,t){A.exports=require(\"@nextcloud/axios\")},function(A,t){A.exports=require(\"@nextcloud/auth\")},function(A,t,e){\"use strict\";e.r(t);var a={name:\"Popover\",components:{VPopover:e(4).VPopover}},i=(e(66),e(0)),n=e(24),o=e.n(n),r=Object(i.a)(a,(function(){var A=this.$createElement,t=this._self._c||A;return t(\"VPopover\",this._g(this._b({attrs:{\"popover-base-class\":\"popover\",\"popover-wrapper-class\":\"popover__wrapper\",\"popover-arrow-class\":\"popover__arrow\",\"popover-inner-class\":\"popover__inner\"}},\"VPopover\",this.$attrs,!1),this.$listeners),[this._t(\"trigger\"),this._v(\" \"),t(\"template\",{slot:\"popover\"},[this._t(\"default\")],2)],2)}),[],!1,null,null,null);\"function\"==typeof o.a&&o()(r);var s=r.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\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 */t.default=s},,,function(A,t){A.exports=require(\"core-js/modules/es.string.replace\")},function(A,t){A.exports=require(\"core-js/modules/es.symbol.description\")},function(A,t){A.exports=require(\"core-js/modules/es.array.slice\")},,function(A,t,e){var a=e(96);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"2c4a49e8\",a,!0,{})},function(A,t,e){var a=e(98);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"482a1b4c\",a,!0,{})},function(A,t,e){var a=e(100);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"93093140\",a,!0,{})},,function(A,t){A.exports=require(\"core-js/modules/es.symbol.iterator\")},function(A,t,e){\"use strict\";e.r(t);var a=e(5),i=new(e.n(a).a)({data:function(){return{isMobile:!1}},watch:{isMobile:function(A){this.$emit(\"changed\",A)}},created:function(){window.addEventListener(\"resize\",this.handleWindowResize),this.handleWindowResize()},beforeDestroy:function(){window.removeEventListener(\"resize\",this.handleWindowResize)},methods:{handleWindowResize:function(){this.isMobile=document.documentElement.clientWidth<1024}}});t.default={data:function(){return{isMobile:!1}},mounted:function(){i.$on(\"changed\",this.onIsMobileChanged),this.isMobile=i.isMobile},beforeDestroy:function(){i.$off(\"changed\",this.onIsMobileChanged)},methods:{onIsMobileChanged:function(A){this.isMobile=A}}}},function(A,t){A.exports=require(\"v-click-outside\")},function(A,t,e){\"use strict\";e.d(t,\"a\",(function(){return a.default})),e.d(t,\"b\",(function(){return i.default})),e.d(t,\"c\",(function(){return n.default})),e.d(t,\"d\",(function(){return u}));var a=e(62),i=e(63),n=e(46),o=(e(3),e(59),e(60),e(32)),r=e.n(o),s=e(23),c=e(72),l=e(33);function d(A,t,e,a,i,n,o){try{var r=A[n](o),s=r.value}catch(A){return void e(A)}r.done?t(s):Promise.resolve(s).then(a,i)}\n/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\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 */var u={data:function(){return{hasStatus:!1,userStatus:{status:null,message:null,icon:null}}},methods:{fetchUserStatus:function(A){var t,e=this;return(t=regeneratorRuntime.mark((function t(){var a,i,n,o,d,u,g,p,M;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=Object(c.getCapabilities)(),Object.prototype.hasOwnProperty.call(a,\"user_status\")&&a.user_status.enabled){t.next=3;break}return t.abrupt(\"return\");case 3:if(Object(l.getCurrentUser)()){t.next=5;break}return t.abrupt(\"return\");case 5:return t.prev=5,t.next=8,r.a.get(Object(s.generateOcsUrl)(\"apps/user_status/api/v1\",2)+\"statuses/\".concat(encodeURIComponent(A)));case 8:i=t.sent,n=i.data,o=n.ocs.data,d=o.status,u=o.message,g=o.icon,e.userStatus.status=d,e.userStatus.message=u||\"\",e.userStatus.icon=g||\"\",e.hasStatus=!0,t.next=22;break;case 17:if(t.prev=17,t.t0=t.catch(5),404!==t.t0.response.status||0!==(null===(p=t.t0.response.data.ocs)||void 0===p||null===(M=p.data)||void 0===M?void 0:M.length)){t.next=21;break}return t.abrupt(\"return\");case 21:console.error(t.t0);case 22:case\"end\":return t.stop()}}),t,null,[[5,17]])})),function(){var A=this,e=arguments;return new Promise((function(a,i){var n=t.apply(A,e);function o(A){d(n,a,i,o,r,\"next\",A)}function r(A){d(n,a,i,o,r,\"throw\",A)}o(void 0)}))})()}}};\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */},function(A,t,e){var a=e(106);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"2cc33a90\",a,!0,{})},,function(A,t){A.exports=require(\"core-js/modules/es.array.from\")},,function(A,t){},,function(A,t,e){var a=e(56);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"941c791e\",a,!0,{})},function(A,t,e){(t=e(1)(!1)).push([A.i,\".vue-tooltip[data-v-b74ff51]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-b74ff51][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-b74ff51][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-b74ff51][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-b74ff51][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-b74ff51] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-b74ff51] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";e(26);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */\nfunction a(A,t,e){this.r=A,this.g=t,this.b=e}function i(A,t,e){var i=[];i.push(t);for(var n=function(A,t){var e=new Array(3);return e[0]=(t[1].r-t[0].r)/A,e[1]=(t[1].g-t[0].g)/A,e[2]=(t[1].b-t[0].b)/A,e}(A,[t,e]),o=1;o<A;o++){var r=parseInt(t.r+n[0]*o,10),s=parseInt(t.g+n[1]*o,10),c=parseInt(t.b+n[2]*o,10);i.push(new a(r,s,c))}return i}t.a=function(A){A||(A=6);var t=new a(182,70,157),e=new a(221,203,85),n=new a(0,130,201),o=i(A,t,e),r=i(A,e,n),s=i(A,n,t);return o.concat(r).concat(s)}},,function(A,t){A.exports=require(\"core-js/modules/es.promise\")},function(A,t){A.exports=require(\"regenerator-runtime/runtime\")},function(A,t){},function(A,t,e){\"use strict\";e.r(t);e(25),e(38),e(45),e(51),e(8),e(39),e(7),e(3),e(12),e(9),e(10);function a(A,t){var e;if(\"undefined\"==typeof Symbol||null==A[Symbol.iterator]){if(Array.isArray(A)||(e=function(A,t){if(!A)return;if(\"string\"==typeof A)return i(A,t);var e=Object.prototype.toString.call(A).slice(8,-1);\"Object\"===e&&A.constructor&&(e=A.constructor.name);if(\"Map\"===e||\"Set\"===e)return Array.from(A);if(\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return i(A,t)}(A))||t&&A&&\"number\"==typeof A.length){e&&(A=e);var a=0,n=function(){};return{s:n,n:function(){return a>=A.length?{done:!0}:{done:!1,value:A[a++]}},e:function(A){throw A},f:n}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var o,r=!0,s=!1;return{s:function(){e=A[Symbol.iterator]()},n:function(){var A=e.next();return r=A.done,A},e:function(A){s=!0,o=A},f:function(){try{r||null==e.return||e.return()}finally{if(s)throw o}}}}function i(A,t){(null==t||t>A.length)&&(t=A.length);for(var e=0,a=new Array(t);e<t;e++)a[e]=A[e];return a}\n/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\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 */t.default={props:{excludeClickOutsideClasses:{type:String|Array,default:function(){return[]}}},methods:{clickOutsideMiddleware:function(A){var t=Array.isArray(this.excludeClickOutsideClasses)?this.excludeClickOutsideClasses:[this.excludeClickOutsideClasses];return 0===t.length||!this.hasNodeOrAnyParentClass(A.target,t)},hasNodeOrAnyParentClass:function(A,t){var e,i=a(t);try{for(i.s();!(e=i.n()).done;){var n=e.value;if(A.classList.contains(n))return!0}}catch(A){i.e(A)}finally{i.f()}return!!A.parentElement&&this.hasNodeOrAnyParentClass(A.parentElement,t)}}}},function(A,t,e){\"use strict\";e.r(t),\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */t.default={data:function(){return{isFullscreen:this._isFullscreen()}},beforeMount:function(){window.addEventListener(\"resize\",this._onResize)},beforeDestroy:function(){window.removeEventListener(\"resize\",this._onResize)},methods:{_onResize:function(){this.isFullscreen=this._isFullscreen()},_isFullscreen:function(){return window.outerHeight===screen.height}}}},,,function(A,t,e){\"use strict\";var a=e(18);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\".popover{z-index:100000;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.popover__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius);background:var(--color-main-background)}.popover__arrow{position:absolute;z-index:1;width:0;height:0;margin:10px;border-style:solid;border-color:var(--color-main-background)}.popover[x-placement^='top']{margin-bottom:10px}.popover[x-placement^='top'] .popover__arrow{bottom:-10px;left:calc(50% - $arrow-width);margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent !important;border-bottom-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='bottom']{margin-top:10px}.popover[x-placement^='bottom'] .popover__arrow{top:-10px;left:calc(50% - $arrow-width);margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent !important;border-right-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='right']{margin-left:10px}.popover[x-placement^='right'] .popover__arrow{top:calc(50% - $arrow-width);left:-10px;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent !important;border-bottom-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='left']{margin-right:10px}.popover[x-placement^='left'] .popover__arrow{top:calc(50% - $arrow-width);right:-10px;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent !important;border-right-color:transparent !important;border-bottom-color:transparent !important}.popover[aria-hidden='true']{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.popover[aria-hidden='false']{visibility:visible;transition:opacity var(--animation-quick);opacity:1}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";e.r(t);e(20),e(8),e(3),e(12),e(9),e(10),e(31);var a={name:\"PopoverMenuItem\",props:{item:{type:Object,required:!0,default:function(){return{key:\"nextcloud-link\",href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}},validator:function(A){return!A.input||-1!==[\"text\",\"checkbox\"].indexOf(A.input)}}},computed:{key:function(){return this.item.key?this.item.key:Math.round(16*Math.random()*1e6).toString(16)},iconIsUrl:function(){try{return new URL(this.item.icon),!0}catch(A){return!1}}},methods:{action:function(A){this.item.action&&this.item.action(A)}}},i=(e(95),e(97),e(0)),n={name:\"PopoverMenu\",components:{PopoverMenuItem:Object(i.a)(a,(function(){var A=this,t=A.$createElement,e=A._self._c||t;return e(\"li\",[A.item.href?e(\"a\",{staticClass:\"focusable\",attrs:{href:A.item.href?A.item.href:\"#\",target:A.item.target?A.item.target:\"\",download:A.item.download,rel:\"noreferrer noopener\"},on:{click:A.action}},[A.iconIsUrl?e(\"img\",{attrs:{src:A.item.icon}}):e(\"span\",{class:A.item.icon}),A._v(\" \"),A.item.text&&A.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),A._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\\t\")])]):A.item.text?e(\"span\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\")]):A.item.longtext?e(\"p\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\")]):A._e()]):A.item.input?e(\"span\",{staticClass:\"menuitem\",class:{active:A.item.active}},[\"checkbox\"!==A.item.input?e(\"span\",{class:A.item.icon}):A._e(),A._v(\" \"),\"text\"===A.item.input?e(\"form\",{class:A.item.input,on:{submit:function(t){return t.preventDefault(),A.item.action(t)}}},[e(\"input\",{attrs:{type:A.item.input,placeholder:A.item.text,required:\"\"},domProps:{value:A.item.value}}),A._v(\" \"),e(\"input\",{staticClass:\"icon-confirm\",attrs:{type:\"submit\",value:\"\"}})]):[\"checkbox\"===A.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:A.item.model,expression:\"item.model\"}],class:A.item.input,attrs:{id:A.key,type:\"checkbox\"},domProps:{checked:Array.isArray(A.item.model)?A._i(A.item.model,null)>-1:A.item.model},on:{change:[function(t){var e=A.item.model,a=t.target,i=!!a.checked;if(Array.isArray(e)){var n=A._i(e,null);a.checked?n<0&&A.$set(A.item,\"model\",e.concat([null])):n>-1&&A.$set(A.item,\"model\",e.slice(0,n).concat(e.slice(n+1)))}else A.$set(A.item,\"model\",i)},A.item.action]}}):\"radio\"===A.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:A.item.model,expression:\"item.model\"}],class:A.item.input,attrs:{id:A.key,type:\"radio\"},domProps:{checked:A._q(A.item.model,null)},on:{change:[function(t){return A.$set(A.item,\"model\",null)},A.item.action]}}):e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:A.item.model,expression:\"item.model\"}],class:A.item.input,attrs:{id:A.key,type:A.item.input},domProps:{value:A.item.model},on:{change:A.item.action,input:function(t){t.target.composing||A.$set(A.item,\"model\",t.target.value)}}}),A._v(\" \"),e(\"label\",{attrs:{for:A.key},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),A.item.action(t)}}},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")])]],2):A.item.action?e(\"button\",{staticClass:\"menuitem focusable\",class:{active:A.item.active},attrs:{disabled:A.item.disabled},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),A.item.action(t)}}},[e(\"span\",{class:A.item.icon}),A._v(\" \"),A.item.text&&A.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),A._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\\t\")])]):A.item.text?e(\"span\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\")]):A.item.longtext?e(\"p\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\")]):A._e()]):e(\"span\",{staticClass:\"menuitem\",class:{active:A.item.active}},[e(\"span\",{class:A.item.icon}),A._v(\" \"),A.item.text&&A.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),A._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[A._v(\"\\n\\t\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\\t\")])]):A.item.text?e(\"span\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.text)+\"\\n\\t\\t\")]):A.item.longtext?e(\"p\",[A._v(\"\\n\\t\\t\\t\"+A._s(A.item.longtext)+\"\\n\\t\\t\")]):A._e()])])}),[],!1,null,\"3ad7b73b\",null).exports},props:{menu:{type:Array,default:function(){return[{href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}]},required:!0}}},o=(e(99),e(53)),r=e.n(o),s=Object(i.a)(n,(function(){var A=this.$createElement,t=this._self._c||A;return t(\"ul\",this._l(this.menu,(function(A,e){return t(\"PopoverMenuItem\",{key:e,attrs:{item:A}})})),1)}),[],!1,null,\"81c2afc0\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */t.default=c},,,function(A,t,e){\"use strict\";e.r(t);e(26),e(86),e(80),e(11),e(29),e(3),e(59),e(60);var a=e(47),i=e(68),n=e(33),o=e(32),r=e.n(o),s=e(23),c=e(19),l=e(77),d=e(48);function u(A,t,e,a,i,n,o){try{var r=A[n](o),s=r.value}catch(A){return void e(A)}r.done?t(s):Promise.resolve(s).then(a,i)}function g(A){return function(){var t=this,e=arguments;return new Promise((function(a,i){var n=A.apply(t,e);function o(A){u(n,a,i,o,r,\"next\",A)}function r(A){u(n,a,i,o,r,\"throw\",A)}o(void 0)}))}}var p={name:\"Avatar\",directives:{tooltip:c.default,ClickOutside:a.directive},components:{PopoverMenu:i.default},mixins:[d.d],props:{url:{type:String,default:void 0},iconClass:{type:String,default:void 0},user:{type:String,default:void 0},showUserStatus:{type:Boolean,default:!0},isGuest:{type:Boolean,default:!1},displayName:{type:String,default:void 0},size:{type:Number,default:32},allowPlaceholder:{type:Boolean,default:!0},disableTooltip:{type:Boolean,default:!1},disableMenu:{type:Boolean,default:!1},tooltipMessage:{type:String,default:null},isNoUser:{type:Boolean,default:!1},status:{type:String,default:null,validator:function(A){switch(A){case\"positive\":case\"negative\":case\"neutral\":return!0}return!1}},statusColor:{type:[Number,String],default:null,validator:function(A){return/^([a-f0-9]{3}){1,2}$/i.test(A)}},menuPosition:{type:String,default:\"center\"}},data:function(){return{avatarUrlLoaded:null,avatarSrcSetLoaded:null,userDoesNotExist:!1,isAvatarLoaded:!1,isMenuLoaded:!1,contactsMenuActions:[],contactsMenuOpenState:!1}},computed:{canDisplayUserStatus:function(){return this.showUserStatus&&this.hasStatus&&[\"online\",\"away\",\"dnd\"].includes(this.userStatus.status)},getUserIdentifier:function(){return this.isDisplayNameDefined?this.displayName:this.isUserDefined?this.user:\"\"},isUserDefined:function(){return void 0!==this.user},isDisplayNameDefined:function(){return void 0!==this.displayName},isUrlDefined:function(){return void 0!==this.url},hasMenu:function(){var A;return!this.disableMenu&&(this.isMenuLoaded?this.menu.length>0:!(this.user===(null===(A=Object(n.getCurrentUser)())||void 0===A?void 0:A.uid)||this.userDoesNotExist||this.url))},shouldShowPlaceholder:function(){return this.allowPlaceholder&&this.userDoesNotExist},avatarStyle:function(){var A={width:this.size+\"px\",height:this.size+\"px\",lineHeight:this.size+\"px\",fontSize:Math.round(.55*this.size)+\"px\"};if(!this.iconClass&&!this.avatarSrcSetLoaded){var t=Object(l.default)(this.getUserIdentifier);A.backgroundColor=\"rgb(\"+t.r+\", \"+t.g+\", \"+t.b+\")\"}return A},tooltip:function(){return!this.disableTooltip&&(this.tooltipMessage?this.tooltipMessage:this.displayName)},initials:function(){return this.shouldShowPlaceholder?this.getUserIdentifier.charAt(0).toUpperCase():\"?\"},menu:function(){var A,t,e,a=this.contactsMenuActions.map((function(A){return{href:A.hyperlink,icon:A.icon,text:A.title}}));return this.showUserStatus&&(this.userStatus.icon||this.userStatus.message)?[{href:\"#\",icon:\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><text x='0' y='14' font-size='14'>\".concat((A=this.userStatus.icon,t=document.createTextNode(A),e=document.createElement(\"p\"),e.appendChild(t),e.innerHTML),\"</text></svg>\"),text:\"\".concat(this.userStatus.message)}].concat(a):a}},watch:{url:function(){this.userDoesNotExist=!1,this.loadAvatarUrl()},user:function(){this.userDoesNotExist=!1,this.isMenuLoaded=!1,this.loadAvatarUrl()}},mounted:function(){this.loadAvatarUrl(),this.showUserStatus&&this.user&&!this.isNoUser&&this.fetchUserStatus(this.user)},methods:{toggleMenu:function(){var A=this;return g(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(A.hasMenu){t.next=2;break}return t.abrupt(\"return\");case 2:if(A.contactsMenuOpenState){t.next=5;break}return t.next=5,A.fetchContactsMenu();case 5:A.contactsMenuOpenState=!A.contactsMenuOpenState;case 6:case\"end\":return t.stop()}}),t)})))()},closeMenu:function(){this.contactsMenuOpenState=!1},fetchContactsMenu:function(){var A=this;return g(regeneratorRuntime.mark((function t(){var e,a,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,e=encodeURIComponent(A.user),t.next=4,r.a.post(Object(s.generateUrl)(\"contactsmenu/findOne\"),\"shareType=0&shareWith=\".concat(e));case 4:a=t.sent,i=a.data,A.contactsMenuActions=i.topAction?[i.topAction].concat(i.actions):i.actions,t.next=12;break;case 9:t.prev=9,t.t0=t.catch(0),A.contactsMenuOpenState=!1;case 12:A.isMenuLoaded=!0;case 13:case\"end\":return t.stop()}}),t,null,[[0,9]])})))()},loadAvatarUrl:function(){var A=this;if(this.isAvatarLoaded=!1,!this.isUrlDefined&&(!this.isUserDefined||this.isNoUser))return this.isAvatarLoaded=!0,void(this.userDoesNotExist=!0);var t=function(t,e){var a,i=\"/avatar/{user}/{size}\";A.isGuest&&(i=\"/avatar/guest/{user}/{size}\");var o=Object(s.generateUrl)(i,{user:t,size:e});return t===(null===(a=Object(n.getCurrentUser)())||void 0===a?void 0:a.uid)&&\"undefined\"!=typeof oc_userconfig&&(o+=\"?v=\"+oc_userconfig.avatar.version),o},e=t(this.user,this.size);this.isUrlDefined&&(e=this.url);var a=[e+\" 1x\",t(this.user,2*this.size)+\" 2x\",t(this.user,4*this.size)+\" 4x\"].join(\", \"),i=new Image;i.onload=function(){A.avatarUrlLoaded=e,A.isUrlDefined||(A.avatarSrcSetLoaded=a),A.isAvatarLoaded=!0},i.onerror=function(){A.userDoesNotExist=!0,A.isAvatarLoaded=!0},this.isUrlDefined||(i.srcset=a),i.src=e}}},M=(e(105),e(0)),v=e(61),m=e.n(v),b=Object(M.a)(p,(function(){var A=this,t=A.$createElement,e=A._self._c||t;return e(\"div\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:A.tooltip,expression:\"tooltip\"},{name:\"click-outside\",rawName:\"v-click-outside\",value:A.closeMenu,expression:\"closeMenu\"}],staticClass:\"avatardiv popovermenu-wrapper\",class:{\"avatardiv--unknown\":A.userDoesNotExist,\"avatardiv--with-menu\":A.hasMenu},style:A.avatarStyle,on:{click:A.toggleMenu}},[A.iconClass?e(\"div\",{staticClass:\"avatar-class-icon\",class:A.iconClass}):A.isAvatarLoaded&&!A.userDoesNotExist?e(\"img\",{attrs:{src:A.avatarUrlLoaded,srcset:A.avatarSrcSetLoaded,alt:\"\"}}):A._e(),A._v(\" \"),A.hasMenu?e(\"div\",{staticClass:\"icon-more\"}):A._e(),A._v(\" \"),A.canDisplayUserStatus?e(\"div\",{staticClass:\"avatardiv__user-status\",class:\"avatardiv__user-status--\"+A.userStatus.status}):A.status?e(\"div\",{staticClass:\"avatardiv__status\",class:\"avatardiv__status--\"+A.status,style:{backgroundColor:\"#\"+A.statusColor}},[\"neutral\"===A.status?e(\"svg\",{attrs:{xmlns:\"http://www.w3.org/2000/svg\",width:\"12\",height:\"11\",viewBox:\"0 0 3.175 2.91\"}},[e(\"path\",{style:{fill:\"#\"+A.statusColor},attrs:{d:\"M3.21 3.043H.494l.679-1.177.68-1.176.678 1.176z\",stroke:\"#fff\",\"stroke-width\":\".265\",\"stroke-linecap\":\"square\"}})]):A._e()]):A._e(),A._v(\" \"),A.userDoesNotExist?e(\"div\",{staticClass:\"unknown\"},[A._v(\"\\n\\t\\t\"+A._s(A.initials)+\"\\n\\t\")]):A._e(),A._v(\" \"),A.hasMenu?e(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:A.contactsMenuOpenState,expression:\"contactsMenuOpenState\"}],staticClass:\"popovermenu\",class:\"menu-\"+A.menuPosition},[e(\"PopoverMenu\",{attrs:{\"is-open\":A.contactsMenuOpenState,menu:A.menu}})],1):A._e()])}),[],!1,null,\"296c073c\",null);\"function\"==typeof m.a&&m()(b);var I=b.exports;\n/**\n * @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\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 */t.default=I},function(A,t){A.exports=require(\"@nextcloud/capabilities\")},function(A,t){A.exports=require(\"md5\")},,,,function(A,t,e){\"use strict\";e.r(t);e(21),e(101),e(37);var a=e(73),i=e.n(a),n=e(57),o=function(A){var t=A.toLowerCase();null===t.match(/^([0-9a-f]{4}-?){8}$/)&&(t=i()(t)),t=t.replace(/[^0-9a-f]/g,\"\");return Object(n.a)(6)[function(A,t){for(var e=0,a=[],i=0;i<A.length;i++)a.push(parseInt(A.charAt(i),16)%16);for(var n in a)e+=a[n];return parseInt(parseInt(e,10)%t,10)}(t,18)]};t.default=o},,,function(A,t){A.exports=require(\"core-js/modules/es.array.join\")},,,,,,function(A,t){A.exports=require(\"core-js/modules/es.array.includes\")},,,,,,,,,function(A,t,e){\"use strict\";var a=e(41);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\"\\nbutton.menuitem[data-v-3ad7b73b] {\\n\\ttext-align: left;\\n}\\nbutton.menuitem *[data-v-3ad7b73b] {\\n\\tcursor: pointer;\\n}\\nbutton.menuitem[data-v-3ad7b73b]:disabled {\\n\\topacity: 0.5 !important;\\n\\tcursor: default;\\n}\\nbutton.menuitem:disabled *[data-v-3ad7b73b] {\\n\\tcursor: default;\\n}\\n.menuitem.active[data-v-3ad7b73b] {\\n\\tbox-shadow: inset 2px 0 var(--color-primary);\\n\\tborder-radius: 0;\\n}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";var a=e(42);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\"li[data-v-3ad7b73b]{display:flex;flex:0 0 auto}li.hidden[data-v-3ad7b73b]{display:none}li>button[data-v-3ad7b73b],li>a[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]{cursor:pointer;line-height:44px;border:0;border-radius:0;background-color:transparent;display:flex;align-items:flex-start;height:auto;margin:0;padding:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap;opacity:.7}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{min-width:0;min-height:0;background-position:14px center;background-size:16px}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b]{padding:22px 0 22px 44px}li>button:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child{margin-left:44px}li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{padding:0 14px 0 44px}li>button[data-v-3ad7b73b]:not(:disabled):hover,li>button[data-v-3ad7b73b]:not(:disabled):focus,li>button:not(:disabled).active[data-v-3ad7b73b],li>a[data-v-3ad7b73b]:not(:disabled):hover,li>a[data-v-3ad7b73b]:not(:disabled):focus,li>a:not(:disabled).active[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]:not(:disabled):hover,li>.menuitem[data-v-3ad7b73b]:not(:disabled):focus,li>.menuitem:not(:disabled).active[data-v-3ad7b73b]{opacity:1 !important}li>button.action[data-v-3ad7b73b],li>a.action[data-v-3ad7b73b],li>.menuitem.action[data-v-3ad7b73b]{padding:inherit !important}li>button>span[data-v-3ad7b73b],li>a>span[data-v-3ad7b73b],li>.menuitem>span[data-v-3ad7b73b]{cursor:pointer;white-space:nowrap}li>button>p[data-v-3ad7b73b],li>a>p[data-v-3ad7b73b],li>.menuitem>p[data-v-3ad7b73b]{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}li>button>select[data-v-3ad7b73b],li>a>select[data-v-3ad7b73b],li>.menuitem>select[data-v-3ad7b73b]{margin:0;margin-left:6px}li>button[data-v-3ad7b73b]:not(:empty),li>a[data-v-3ad7b73b]:not(:empty),li>.menuitem[data-v-3ad7b73b]:not(:empty){padding-right:14px !important}li>button>img[data-v-3ad7b73b],li>a>img[data-v-3ad7b73b],li>.menuitem>img[data-v-3ad7b73b]{width:44px;padding:14px}li>button>input.radio+label[data-v-3ad7b73b],li>button>input.checkbox+label[data-v-3ad7b73b],li>a>input.radio+label[data-v-3ad7b73b],li>a>input.checkbox+label[data-v-3ad7b73b],li>.menuitem>input.radio+label[data-v-3ad7b73b],li>.menuitem>input.checkbox+label[data-v-3ad7b73b]{padding:0 !important;width:100%}li>button>input.checkbox+label[data-v-3ad7b73b]::before,li>a>input.checkbox+label[data-v-3ad7b73b]::before,li>.menuitem>input.checkbox+label[data-v-3ad7b73b]::before{margin:-2px 13px 0}li>button>input.radio+label[data-v-3ad7b73b]::before,li>a>input.radio+label[data-v-3ad7b73b]::before,li>.menuitem>input.radio+label[data-v-3ad7b73b]::before{margin:-2px 12px 0}li>button>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>a>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>.menuitem>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}li>button form[data-v-3ad7b73b],li>a form[data-v-3ad7b73b],li>.menuitem form[data-v-3ad7b73b]{display:flex;flex:1 1 auto}li>button form[data-v-3ad7b73b]:not(:first-child),li>a form[data-v-3ad7b73b]:not(:first-child),li>.menuitem form[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li>button>span.hidden+form[data-v-3ad7b73b],li>button>span[style*='display:none']+form[data-v-3ad7b73b],li>a>span.hidden+form[data-v-3ad7b73b],li>a>span[style*='display:none']+form[data-v-3ad7b73b],li>.menuitem>span.hidden+form[data-v-3ad7b73b],li>.menuitem>span[style*='display:none']+form[data-v-3ad7b73b]{margin-left:0}li>button input[data-v-3ad7b73b],li>a input[data-v-3ad7b73b],li>.menuitem input[data-v-3ad7b73b]{min-width:44px;max-height:40px;margin:2px 0;flex:1 1 auto}li>button input[data-v-3ad7b73b]:not(:first-child),li>a input[data-v-3ad7b73b]:not(:first-child),li>.menuitem input[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li:not(.hidden):not([style*='display:none']):first-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>input[data-v-3ad7b73b]{margin-top:12px}li:not(.hidden):not([style*='display:none']):last-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>input[data-v-3ad7b73b]{margin-bottom:12px}li>button[data-v-3ad7b73b]{padding:0}li>button span[data-v-3ad7b73b]{opacity:1}\\n\",\"\"]),A.exports=t},function(A,t,e){\"use strict\";var a=e(43);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\"ul[data-v-81c2afc0]{display:flex;flex-direction:column}\\n\",\"\"]),A.exports=t},function(A,t){A.exports=require(\"core-js/modules/es.string.match\")},,,,function(A,t,e){\"use strict\";var a=e(49);e.n(a).a},function(A,t,e){var a=e(1),i=e(13),n=e(14),o=e(15),r=e(16),s=e(17);t=a(!1);var c=i(n),l=i(o),d=i(r),u=i(s);t.push([A.i,'@font-face{font-family:\"iconfont-vue-b74ff51\";src:url('+c+\");src:url(\"+c+') format(\"embedded-opentype\"),url('+l+') format(\"woff\"),url('+d+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-296c073c]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.arrow-left[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.arrow-right-double[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.arrow-right[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.breadcrumb[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.checkmark[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.close[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.confirm[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.info[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.menu[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.more[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.pause[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.play[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.triangle-s[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-away[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-dnd[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-invisible[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.icon.user-status-online[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";content:\"\"}.avatardiv[data-v-296c073c]{position:relative;display:inline-block}.avatardiv--unknown[data-v-296c073c]{position:relative;background-color:var(--color-text-maxcontrast)}.avatardiv[data-v-296c073c]:not(.avatardiv--unknown){background-color:#fff !important;box-shadow:0 0 5px rgba(0,0,0,0.05) inset}body.theme--dark .avatardiv[data-v-296c073c]:not(.avatardiv--unknown){background-color:#000 !important}.avatardiv--with-menu[data-v-296c073c]{cursor:pointer}.avatardiv--with-menu .icon-more[data-v-296c073c]{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:inherit;height:inherit;cursor:pointer;opacity:0;background:none;font-size:18px}.avatardiv--with-menu .icon-more[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv--with-menu .icon-more[data-v-296c073c]::before{display:block}.avatardiv--with-menu:focus .icon-more[data-v-296c073c],.avatardiv--with-menu:hover .icon-more[data-v-296c073c]{opacity:1}.avatardiv--with-menu:focus img[data-v-296c073c],.avatardiv--with-menu:hover img[data-v-296c073c]{opacity:0.3}.avatardiv--with-menu .icon-more[data-v-296c073c],.avatardiv--with-menu img[data-v-296c073c]{transition:opacity var(--animation-quick)}.avatardiv>.unknown[data-v-296c073c]{position:absolute;top:0;left:0;display:block;width:100%;text-align:center;font-weight:normal;color:var(--color-main-background)}.avatardiv img[data-v-296c073c]{width:100%;height:100%}.avatardiv .avatardiv__status[data-v-296c073c]{position:absolute;top:22px;left:22px;width:10px;height:10px;border:1px solid rgba(255,255,255,0.5);background-clip:content-box}.avatardiv .avatardiv__status--positive[data-v-296c073c]{border-radius:50%;background-color:var(--color-success)}.avatardiv .avatardiv__status--negative[data-v-296c073c]{background-color:var(--color-error)}.avatardiv .avatardiv__status--neutral[data-v-296c073c]{border:none;background-color:transparent !important}.avatardiv .avatardiv__status--neutral svg[data-v-296c073c]{position:absolute;top:-3px;left:-2px}.avatardiv .avatardiv__status--neutral svg path[data-v-296c073c]{fill:#aaa}.avatardiv .avatardiv__user-status[data-v-296c073c]{position:absolute;right:-4px;bottom:-4px;height:18px;width:18px;line-height:14px;font-size:14px;border:2px solid var(--color-main-background);background-color:var(--color-main-background);border-radius:50%}.acli:hover .avatardiv .avatardiv__user-status[data-v-296c073c]{border-color:var(--color-background-hover);background-color:var(--color-background-hover)}.acli.active .avatardiv .avatardiv__user-status[data-v-296c073c]{border-color:var(--color-primary-light);background-color:var(--color-primary-light)}.avatardiv .avatardiv__user-status--online[data-v-296c073c]{color:#49b382}.avatardiv .avatardiv__user-status--online[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .avatardiv__user-status--dnd[data-v-296c073c]{background-color:#ffffff;color:#ed484c}.avatardiv .avatardiv__user-status--dnd[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .avatardiv__user-status--away[data-v-296c073c]{color:#f4a331}.avatardiv .avatardiv__user-status--away[data-v-296c073c]:before{font-family:\"iconfont-vue-b74ff51\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .popovermenu-wrapper[data-v-296c073c]{position:relative;display:inline-block}.avatardiv .popovermenu[data-v-296c073c]{display:block;margin:0;font-size:14px}.avatar-class-icon[data-v-296c073c]{border-radius:50%;background-color:var(--color-background-darker);height:100%}\\n',\"\"]),A.exports=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(A,t,e){var a=e(277);\"string\"==typeof a&&(a=[[A.i,a,\"\"]]),a.locals&&(A.exports=a.locals);(0,e(2).default)(\"eb4debd2\",a,!0,{})},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(A,t){},,,,,,,,,,,,,,,,,,,,,,,,function(A,t,e){\"use strict\";e.r(t);e(8),e(29),e(3),e(9),e(30),e(10),e(31);var a=e(34),i=e(71),n={name:\"UserBubble\",components:{Popover:a.default,Avatar:i.default},props:{avatarImage:{type:String,default:void 0},user:{type:String,default:void 0},displayName:{type:String,required:!0},showUserStatus:{type:Boolean,default:!1},url:{type:String,default:void 0,validator:function(A){try{return!!(A=new URL(A))}catch(A){return!1}}},open:{type:Boolean,default:!1},primary:{type:Boolean,default:!1},size:{type:Number,default:20},margin:{type:Number,default:2}},computed:{isPopoverComponent:function(){return this.popoverEmpty?\"div\":\"Popover\"},isAvatarUrl:function(){if(!this.avatarImage)return!1;try{return!!new URL(this.avatarImage)}catch(A){return!1}},isCustomAvatar:function(){return!!this.avatarImage},isLinkComponent:function(){return this.url&&\"\"!==this.url.trim()?{is:\"a\",href:this.url}:{is:\"div\"}},popoverEmpty:function(){return!(\"default\"in this.$slots)},styles:function(){return{content:{height:this.size+\"px\",lineHeight:this.size+\"px\",borderRadius:this.size/2+\"px\"},avatar:{marginLeft:this.margin+\"px\"}}}},methods:{onOpenChange:function(A){this.$emit(\"update:open\",A)},onClick:function(A){this.$emit(\"click\",A)}}},o=(e(276),e(0)),r=e(176),s=e.n(r),c=Object(o.a)(n,(function(){var A=this,t=A.$createElement,e=A._self._c||t;return e(A.isPopoverComponent,{tag:\"Popover\",staticClass:\"user-bubble__wrapper\",attrs:{trigger:\"hover focus\",open:A.open},on:{\"update:open\":A.onOpenChange}},[e(\"div\",A._b({staticClass:\"user-bubble__content\",class:A.primary?\"user-bubble__content--primary\":\"\",style:A.styles.content,attrs:{slot:\"trigger\"},on:{click:A.onClick},slot:\"trigger\"},\"div\",A.isLinkComponent,!1),[e(\"Avatar\",A._b({staticClass:\"user-bubble__avatar\",style:A.styles.avatar,attrs:{url:A.isCustomAvatar&&A.isAvatarUrl?A.avatarImage:void 0,\"icon-class\":A.isCustomAvatar&&!A.isAvatarUrl?A.avatarImage:void 0,user:A.user,\"display-name\":A.displayName,size:A.size-2*A.margin,\"disable-tooltip\":!0,\"disable-menu\":!0}},\"Avatar\",A.$props,!1)),A._v(\" \"),e(\"h6\",{staticClass:\"user-bubble__title\"},[A._v(\"\\n\\t\\t\\t\"+A._s(A.displayName||A.user)+\"\\n\\t\\t\")]),A._v(\" \"),A.$slots.title?e(\"span\",{staticClass:\"user-bubble__secondary\"},[A._t(\"title\")],2):A._e()],1),A._v(\" \"),A._t(\"default\")],2)}),[],!1,null,\"4442f088\",null);\"function\"==typeof s.a&&s()(c);var l=c.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\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 */t.default=l},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(A,t,e){\"use strict\";var a=e(144);e.n(a).a},function(A,t,e){(t=e(1)(!1)).push([A.i,\".user-bubble__wrapper[data-v-4442f088]{display:inline-block;vertical-align:middle;min-width:0;max-width:100%}.user-bubble__content[data-v-4442f088]{display:inline-flex;max-width:100%;background-color:var(--color-background-dark)}.user-bubble__content--primary[data-v-4442f088]{color:var(--color-primary-text);background-color:var(--color-primary-element)}.user-bubble__content[data-v-4442f088]>:last-child{padding-right:8px}.user-bubble__avatar[data-v-4442f088]{align-self:center}.user-bubble__title[data-v-4442f088]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.user-bubble__title[data-v-4442f088],.user-bubble__secondary[data-v-4442f088]{padding:0;padding-left:4px}\\n\",\"\"]),A.exports=t}])}));\n//# sourceMappingURL=UserBubble.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.map\");\n\nrequire(\"core-js/modules/es.object.keys\");\n\nrequire(\"core-js/modules/es.string.starts-with\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getBuilder = getBuilder;\nexports.clearAll = clearAll;\nexports.clearNonPersistent = clearNonPersistent;\n\nvar _storagebuilder = _interopRequireDefault(require(\"./storagebuilder\"));\n\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getBuilder(appId) {\n return new _storagebuilder.default(appId);\n}\n\nfunction clearStorage(storage, pred) {\n Object.keys(storage).filter(function (k) {\n return pred ? pred(k) : true;\n }).map(storage.removeItem.bind(storage));\n}\n\nfunction clearAll() {\n var storages = [window.sessionStorage, window.localStorage];\n storages.map(function (s) {\n return clearStorage(s);\n });\n}\n\nfunction clearNonPersistent() {\n var storages = [window.sessionStorage, window.localStorage];\n storages.map(function (s) {\n return clearStorage(s, function (k) {\n return !k.startsWith(_scopedstorage.default.GLOBAL_SCOPE_PERSISTENT);\n });\n });\n}\n//# sourceMappingURL=index.js.map","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 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","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(mergeConfig(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(mergeConfig(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 (!response.status || !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 toJSON() {\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 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 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 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\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","import valid from \"semver/functions/valid\";\nimport major from \"semver/functions/major\";\n\nimport packageJson from \"../package.json\";\nimport { Event } from \"./Event.js\";\nimport { EventBus } from \"./EventBus.js\";\nimport { EventHandler } from \"./EventHandler.js\";\n\nexport class ProxyBus implements EventBus {\n\n private bus: EventBus;\n\n constructor(bus: EventBus) {\n if (typeof bus.getVersion !== 'function' || !valid(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version')\n } else if (major(bus.getVersion()) !== 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 getVersion(): string {\n return packageJson.version\n }\n\n subscribe(name: string, handler: EventHandler): void {\n this.bus.subscribe(name, handler);\n }\n\n unsubscribe(name: string, handler: EventHandler): void {\n this.bus.unsubscribe(name, handler);\n }\n\n emit(name: string, event: Event): void {\n this.bus.emit(name, event);\n }\n\n}\n","const parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n","const {MAX_LENGTH} = require('../internal/constants')\nconst { re, t } = require('../internal/re')\nconst SemVer = require('../classes/semver')\n\nconst 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 const 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\nmodule.exports = parse\n","const numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n const anum = numeric.test(a)\n const 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\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers\n}\n","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","import packageJson from \"../package.json\";\nimport { Event } from \"./Event.js\";\nimport { EventBus } from \"./EventBus.js\";\nimport { EventHandler } from \"./EventHandler.js\";\n\nexport class SimpleBus implements EventBus {\n\n private handlers = new Map<string, EventHandler[]>();\n\n getVersion(): string {\n return packageJson.version\n }\n\n subscribe(name: string, handler: EventHandler): void {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n\n unsubscribe(name: string, handler: EventHandler): void {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(h => h != handler));\n }\n\n emit(name: string, event: Event): void {\n (this.handlers.get(name) || []).forEach(h => {\n try {\n h(event)\n } catch (e) {\n console.error('could not invoke event listener', e)\n }\n })\n }\n\n}\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 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","'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","'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","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","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCurrentUser = getCurrentUser;\n/// <reference types=\"@nextcloud/typings\" />\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;\nvar isAdmin = typeof OC === 'undefined' ? false : OC.isUserAdmin();\n\nfunction getCurrentUser() {\n if (uid === null) {\n return null;\n }\n\n return {\n uid: uid,\n displayName: displayName,\n isAdmin: isAdmin\n };\n}\n//# sourceMappingURL=user.js.map","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","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\": 151,\n\t\"./af.js\": 151,\n\t\"./ar\": 152,\n\t\"./ar-dz\": 153,\n\t\"./ar-dz.js\": 153,\n\t\"./ar-kw\": 154,\n\t\"./ar-kw.js\": 154,\n\t\"./ar-ly\": 155,\n\t\"./ar-ly.js\": 155,\n\t\"./ar-ma\": 156,\n\t\"./ar-ma.js\": 156,\n\t\"./ar-sa\": 157,\n\t\"./ar-sa.js\": 157,\n\t\"./ar-tn\": 158,\n\t\"./ar-tn.js\": 158,\n\t\"./ar.js\": 152,\n\t\"./az\": 159,\n\t\"./az.js\": 159,\n\t\"./be\": 160,\n\t\"./be.js\": 160,\n\t\"./bg\": 161,\n\t\"./bg.js\": 161,\n\t\"./bm\": 162,\n\t\"./bm.js\": 162,\n\t\"./bn\": 163,\n\t\"./bn.js\": 163,\n\t\"./bo\": 164,\n\t\"./bo.js\": 164,\n\t\"./br\": 165,\n\t\"./br.js\": 165,\n\t\"./bs\": 166,\n\t\"./bs.js\": 166,\n\t\"./ca\": 167,\n\t\"./ca.js\": 167,\n\t\"./cs\": 168,\n\t\"./cs.js\": 168,\n\t\"./cv\": 169,\n\t\"./cv.js\": 169,\n\t\"./cy\": 170,\n\t\"./cy.js\": 170,\n\t\"./da\": 171,\n\t\"./da.js\": 171,\n\t\"./de\": 172,\n\t\"./de-at\": 173,\n\t\"./de-at.js\": 173,\n\t\"./de-ch\": 174,\n\t\"./de-ch.js\": 174,\n\t\"./de.js\": 172,\n\t\"./dv\": 175,\n\t\"./dv.js\": 175,\n\t\"./el\": 176,\n\t\"./el.js\": 176,\n\t\"./en-SG\": 177,\n\t\"./en-SG.js\": 177,\n\t\"./en-au\": 178,\n\t\"./en-au.js\": 178,\n\t\"./en-ca\": 179,\n\t\"./en-ca.js\": 179,\n\t\"./en-gb\": 180,\n\t\"./en-gb.js\": 180,\n\t\"./en-ie\": 181,\n\t\"./en-ie.js\": 181,\n\t\"./en-il\": 182,\n\t\"./en-il.js\": 182,\n\t\"./en-nz\": 183,\n\t\"./en-nz.js\": 183,\n\t\"./eo\": 184,\n\t\"./eo.js\": 184,\n\t\"./es\": 185,\n\t\"./es-do\": 186,\n\t\"./es-do.js\": 186,\n\t\"./es-us\": 187,\n\t\"./es-us.js\": 187,\n\t\"./es.js\": 185,\n\t\"./et\": 188,\n\t\"./et.js\": 188,\n\t\"./eu\": 189,\n\t\"./eu.js\": 189,\n\t\"./fa\": 190,\n\t\"./fa.js\": 190,\n\t\"./fi\": 191,\n\t\"./fi.js\": 191,\n\t\"./fo\": 192,\n\t\"./fo.js\": 192,\n\t\"./fr\": 193,\n\t\"./fr-ca\": 194,\n\t\"./fr-ca.js\": 194,\n\t\"./fr-ch\": 195,\n\t\"./fr-ch.js\": 195,\n\t\"./fr.js\": 193,\n\t\"./fy\": 196,\n\t\"./fy.js\": 196,\n\t\"./ga\": 197,\n\t\"./ga.js\": 197,\n\t\"./gd\": 198,\n\t\"./gd.js\": 198,\n\t\"./gl\": 199,\n\t\"./gl.js\": 199,\n\t\"./gom-latn\": 200,\n\t\"./gom-latn.js\": 200,\n\t\"./gu\": 201,\n\t\"./gu.js\": 201,\n\t\"./he\": 202,\n\t\"./he.js\": 202,\n\t\"./hi\": 203,\n\t\"./hi.js\": 203,\n\t\"./hr\": 204,\n\t\"./hr.js\": 204,\n\t\"./hu\": 205,\n\t\"./hu.js\": 205,\n\t\"./hy-am\": 206,\n\t\"./hy-am.js\": 206,\n\t\"./id\": 207,\n\t\"./id.js\": 207,\n\t\"./is\": 208,\n\t\"./is.js\": 208,\n\t\"./it\": 209,\n\t\"./it-ch\": 210,\n\t\"./it-ch.js\": 210,\n\t\"./it.js\": 209,\n\t\"./ja\": 211,\n\t\"./ja.js\": 211,\n\t\"./jv\": 212,\n\t\"./jv.js\": 212,\n\t\"./ka\": 213,\n\t\"./ka.js\": 213,\n\t\"./kk\": 214,\n\t\"./kk.js\": 214,\n\t\"./km\": 215,\n\t\"./km.js\": 215,\n\t\"./kn\": 216,\n\t\"./kn.js\": 216,\n\t\"./ko\": 217,\n\t\"./ko.js\": 217,\n\t\"./ku\": 218,\n\t\"./ku.js\": 218,\n\t\"./ky\": 219,\n\t\"./ky.js\": 219,\n\t\"./lb\": 220,\n\t\"./lb.js\": 220,\n\t\"./lo\": 221,\n\t\"./lo.js\": 221,\n\t\"./lt\": 222,\n\t\"./lt.js\": 222,\n\t\"./lv\": 223,\n\t\"./lv.js\": 223,\n\t\"./me\": 224,\n\t\"./me.js\": 224,\n\t\"./mi\": 225,\n\t\"./mi.js\": 225,\n\t\"./mk\": 226,\n\t\"./mk.js\": 226,\n\t\"./ml\": 227,\n\t\"./ml.js\": 227,\n\t\"./mn\": 228,\n\t\"./mn.js\": 228,\n\t\"./mr\": 229,\n\t\"./mr.js\": 229,\n\t\"./ms\": 230,\n\t\"./ms-my\": 231,\n\t\"./ms-my.js\": 231,\n\t\"./ms.js\": 230,\n\t\"./mt\": 232,\n\t\"./mt.js\": 232,\n\t\"./my\": 233,\n\t\"./my.js\": 233,\n\t\"./nb\": 234,\n\t\"./nb.js\": 234,\n\t\"./ne\": 235,\n\t\"./ne.js\": 235,\n\t\"./nl\": 236,\n\t\"./nl-be\": 237,\n\t\"./nl-be.js\": 237,\n\t\"./nl.js\": 236,\n\t\"./nn\": 238,\n\t\"./nn.js\": 238,\n\t\"./pa-in\": 239,\n\t\"./pa-in.js\": 239,\n\t\"./pl\": 240,\n\t\"./pl.js\": 240,\n\t\"./pt\": 241,\n\t\"./pt-br\": 242,\n\t\"./pt-br.js\": 242,\n\t\"./pt.js\": 241,\n\t\"./ro\": 243,\n\t\"./ro.js\": 243,\n\t\"./ru\": 244,\n\t\"./ru.js\": 244,\n\t\"./sd\": 245,\n\t\"./sd.js\": 245,\n\t\"./se\": 246,\n\t\"./se.js\": 246,\n\t\"./si\": 247,\n\t\"./si.js\": 247,\n\t\"./sk\": 248,\n\t\"./sk.js\": 248,\n\t\"./sl\": 249,\n\t\"./sl.js\": 249,\n\t\"./sq\": 250,\n\t\"./sq.js\": 250,\n\t\"./sr\": 251,\n\t\"./sr-cyrl\": 252,\n\t\"./sr-cyrl.js\": 252,\n\t\"./sr.js\": 251,\n\t\"./ss\": 253,\n\t\"./ss.js\": 253,\n\t\"./sv\": 254,\n\t\"./sv.js\": 254,\n\t\"./sw\": 255,\n\t\"./sw.js\": 255,\n\t\"./ta\": 256,\n\t\"./ta.js\": 256,\n\t\"./te\": 257,\n\t\"./te.js\": 257,\n\t\"./tet\": 258,\n\t\"./tet.js\": 258,\n\t\"./tg\": 259,\n\t\"./tg.js\": 259,\n\t\"./th\": 260,\n\t\"./th.js\": 260,\n\t\"./tl-ph\": 261,\n\t\"./tl-ph.js\": 261,\n\t\"./tlh\": 262,\n\t\"./tlh.js\": 262,\n\t\"./tr\": 263,\n\t\"./tr.js\": 263,\n\t\"./tzl\": 264,\n\t\"./tzl.js\": 264,\n\t\"./tzm\": 265,\n\t\"./tzm-latn\": 266,\n\t\"./tzm-latn.js\": 266,\n\t\"./tzm.js\": 265,\n\t\"./ug-cn\": 267,\n\t\"./ug-cn.js\": 267,\n\t\"./uk\": 268,\n\t\"./uk.js\": 268,\n\t\"./ur\": 269,\n\t\"./ur.js\": 269,\n\t\"./uz\": 270,\n\t\"./uz-latn\": 271,\n\t\"./uz-latn.js\": 271,\n\t\"./uz.js\": 270,\n\t\"./vi\": 272,\n\t\"./vi.js\": 272,\n\t\"./x-pseudo\": 273,\n\t\"./x-pseudo.js\": 273,\n\t\"./yo\": 274,\n\t\"./yo.js\": 274,\n\t\"./zh-cn\": 275,\n\t\"./zh-cn.js\": 275,\n\t\"./zh-hk\": 276,\n\t\"./zh-hk.js\": 276,\n\t\"./zh-tw\": 277,\n\t\"./zh-tw.js\": 277\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 = 353;","'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/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\"","// 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, \".external[data-v-49ca75ce]:after{content:' ↗'}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\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","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.github.io/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.github.io/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar defineProperties = require('../internals/object-define-properties');\nvar redefine = require('../internals/redefine');\nvar anInstance = require('../internals/an-instance');\nvar has = require('../internals/has');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar URLSearchParamsModule = require('../modules/web.url-search-params');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar NativeURL = global.URL;\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar floor = Math.floor;\nvar pow = Math.pow;\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[A-Za-z]/;\nvar ALPHANUMERIC = /[\\d+-.A-Za-z]/;\nvar DIGIT = /\\d/;\nvar HEX_START = /^(0x|0X)/;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\dA-Fa-f]+$/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT = /[\\u0000\\u0009\\u000A\\u000D #%/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\u0000\\u0009\\u000A\\u000D #/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u001F ]+|[\\u0000-\\u001F ]+$/g;\n// eslint-disable-next-line no-control-regex\nvar TAB_AND_NEW_LINE = /[\\u0009\\u000A\\u000D]/g;\nvar EOF;\n\nvar parseHost = function (url, input) {\n var result, codePoints, index;\n if (input.charAt(0) == '[') {\n if (input.charAt(input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(input.slice(1, -1));\n if (!result) return INVALID_HOST;\n url.host = result;\n // opaque host\n } else if (!isSpecial(url)) {\n if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n url.host = result;\n } else {\n input = toASCII(input);\n if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n url.host = result;\n }\n};\n\nvar parseIPv4 = function (input) {\n var parts = input.split('.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.pop();\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && part.charAt(0) == '0') {\n radix = HEX_START.test(part) ? 16 : 8;\n part = part.slice(radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;\n number = parseInt(part, radix);\n }\n numbers.push(number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = numbers.pop();\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// eslint-disable-next-line max-statements\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var char = function () {\n return input.charAt(pointer);\n };\n\n if (char() == ':') {\n if (input.charAt(1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (char()) {\n if (pieceIndex == 8) return;\n if (char() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && HEX.test(char())) {\n value = value * 16 + parseInt(char(), 16);\n pointer++;\n length++;\n }\n if (char() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (char()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (char() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!DIGIT.test(char())) return;\n while (DIGIT.test(char())) {\n number = parseInt(char(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (char() == ':') {\n pointer++;\n if (!char()) return;\n } else if (char()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n result.unshift(host % 256);\n host = floor(host / 256);\n } return result.join('.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += host[index].toString(16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (char, set) {\n var code = codeAt(char, 0);\n return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);\n};\n\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\nvar isSpecial = function (url) {\n return has(specialSchemes, url.scheme);\n};\n\nvar includesCredentials = function (url) {\n return url.username != '' || url.password != '';\n};\n\nvar cannotHaveUsernamePasswordPort = function (url) {\n return !url.host || url.cannotBeABaseURL || url.scheme == 'file';\n};\n\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && ALPHA.test(string.charAt(0))\n && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));\n};\n\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (\n string.length == 2 ||\n ((third = string.charAt(2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\nvar shortenURLsPath = function (url) {\n var path = url.path;\n var pathSize = path.length;\n if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.pop();\n }\n};\n\nvar isSingleDot = function (segment) {\n return segment === '.' || segment.toLowerCase() === '%2e';\n};\n\nvar isDoubleDot = function (segment) {\n segment = segment.toLowerCase();\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\n// eslint-disable-next-line max-statements\nvar parseURL = function (url, input, stateOverride, base) {\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, char, bufferCodePoints, failure;\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = input.replace(TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n char = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (char && ALPHA.test(char)) {\n buffer += char.toLowerCase();\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {\n buffer += char.toLowerCase();\n } else if (char == ':') {\n if (stateOverride && (\n (isSpecial(url) != has(specialSchemes, buffer)) ||\n (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (isSpecial(url) && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (isSpecial(url)) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n url.path.push('');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && char == '#') {\n url.scheme = base.scheme;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (char == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (char == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (char == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '/' || (char == '\\\\' && isSpecial(url))) {\n state = RELATIVE_SLASH;\n } else if (char == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.path.pop();\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (isSpecial(url) && (char == '/' || char == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (char == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (char != '/' && char != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (char == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += char;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (char == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (isSpecial(url) && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (char == '[') seenBracket = true;\n else if (char == ']') seenBracket = false;\n buffer += char;\n } break;\n\n case PORT:\n if (DIGIT.test(char)) {\n buffer += char;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url)) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (char == '/' || char == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (char == EOF) {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '?') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n url.host = base.host;\n url.path = base.path.slice();\n shortenURLsPath(url);\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (char == '/' || char == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (char == EOF || char == '/' || char == '\\\\' || char == '?' || char == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = parseHost(url, buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += char;\n break;\n\n case PATH_START:\n if (isSpecial(url)) {\n state = PATH;\n if (char != '/' && char != '\\\\') continue;\n } else if (!stateOverride && char == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n state = PATH;\n if (char != '/') continue;\n } break;\n\n case PATH:\n if (\n char == EOF || char == '/' ||\n (char == '\\\\' && isSpecial(url)) ||\n (!stateOverride && (char == '?' || char == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n shortenURLsPath(url);\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else if (isSingleDot(buffer)) {\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = buffer.charAt(0) + ':'; // normalize windows drive letter\n }\n url.path.push(buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n url.path.shift();\n }\n }\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(char, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n if (char == \"'\" && isSpecial(url)) url.query += '%27';\n else if (char == '#') url.query += '%23';\n else url.query += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLConstructor, 'URL');\n var base = arguments.length > 1 ? arguments[1] : undefined;\n var urlString = String(url);\n var state = setInternalState(that, { type: 'URL' });\n var baseState, failure;\n if (base !== undefined) {\n if (base instanceof URLConstructor) baseState = getInternalURLState(base);\n else {\n failure = parseURL(baseState = {}, String(base));\n if (failure) throw TypeError(failure);\n }\n }\n failure = parseURL(state, urlString, null, baseState);\n if (failure) throw TypeError(failure);\n var searchParams = state.searchParams = new URLSearchParams();\n var searchParamsState = getInternalSearchParamsState(searchParams);\n searchParamsState.updateSearchParams(state.query);\n searchParamsState.updateURL = function () {\n state.query = String(searchParams) || null;\n };\n if (!DESCRIPTORS) {\n that.href = serializeURL.call(that);\n that.origin = getOrigin.call(that);\n that.protocol = getProtocol.call(that);\n that.username = getUsername.call(that);\n that.password = getPassword.call(that);\n that.host = getHost.call(that);\n that.hostname = getHostname.call(that);\n that.port = getPort.call(that);\n that.pathname = getPathname.call(that);\n that.search = getSearch.call(that);\n that.searchParams = getSearchParams.call(that);\n that.hash = getHash.call(that);\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar serializeURL = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (includesCredentials(url)) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n};\n\nvar getOrigin = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var port = url.port;\n if (scheme == 'blob') try {\n return new URL(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !isSpecial(url)) return 'null';\n return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');\n};\n\nvar getProtocol = function () {\n return getInternalURLState(this).scheme + ':';\n};\n\nvar getUsername = function () {\n return getInternalURLState(this).username;\n};\n\nvar getPassword = function () {\n return getInternalURLState(this).password;\n};\n\nvar getHost = function () {\n var url = getInternalURLState(this);\n var host = url.host;\n var port = url.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n};\n\nvar getHostname = function () {\n var host = getInternalURLState(this).host;\n return host === null ? '' : serializeHost(host);\n};\n\nvar getPort = function () {\n var port = getInternalURLState(this).port;\n return port === null ? '' : String(port);\n};\n\nvar getPathname = function () {\n var url = getInternalURLState(this);\n var path = url.path;\n return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n};\n\nvar getSearch = function () {\n var query = getInternalURLState(this).query;\n return query ? '?' + query : '';\n};\n\nvar getSearchParams = function () {\n return getInternalURLState(this).searchParams;\n};\n\nvar getHash = function () {\n var fragment = getInternalURLState(this).fragment;\n return fragment ? '#' + fragment : '';\n};\n\nvar accessorDescriptor = function (getter, setter) {\n return { get: getter, set: setter, configurable: true, enumerable: true };\n};\n\nif (DESCRIPTORS) {\n defineProperties(URLPrototype, {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n href: accessorDescriptor(serializeURL, function (href) {\n var url = getInternalURLState(this);\n var urlString = String(href);\n var failure = parseURL(url, urlString);\n if (failure) throw TypeError(failure);\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n origin: accessorDescriptor(getOrigin),\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n protocol: accessorDescriptor(getProtocol, function (protocol) {\n var url = getInternalURLState(this);\n parseURL(url, String(protocol) + ':', SCHEME_START);\n }),\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n username: accessorDescriptor(getUsername, function (username) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(username));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n password: accessorDescriptor(getPassword, function (password) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(password));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n host: accessorDescriptor(getHost, function (host) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(host), HOST);\n }),\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n hostname: accessorDescriptor(getHostname, function (hostname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(hostname), HOSTNAME);\n }),\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n port: accessorDescriptor(getPort, function (port) {\n var url = getInternalURLState(this);\n if (cannotHaveUsernamePasswordPort(url)) return;\n port = String(port);\n if (port == '') url.port = null;\n else parseURL(url, port, PORT);\n }),\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n pathname: accessorDescriptor(getPathname, function (pathname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n url.path = [];\n parseURL(url, pathname + '', PATH_START);\n }),\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n search: accessorDescriptor(getSearch, function (search) {\n var url = getInternalURLState(this);\n search = String(search);\n if (search == '') {\n url.query = null;\n } else {\n if ('?' == search.charAt(0)) search = search.slice(1);\n url.query = '';\n parseURL(url, search, QUERY);\n }\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n searchParams: accessorDescriptor(getSearchParams),\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n hash: accessorDescriptor(getHash, function (hash) {\n var url = getInternalURLState(this);\n hash = String(hash);\n if (hash == '') {\n url.fragment = null;\n return;\n }\n if ('#' == hash.charAt(0)) hash = hash.slice(1);\n url.fragment = '';\n parseURL(url, hash, FRAGMENT);\n })\n });\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\nredefine(URLPrototype, 'toJSON', function toJSON() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\nredefine(URLPrototype, 'toString', function toString() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {\n return nativeCreateObjectURL.apply(NativeURL, arguments);\n });\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {\n return nativeRevokeObjectURL.apply(NativeURL, arguments);\n });\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\nvar floor = Math.floor;\nvar stringFromCharCode = String.fromCharCode;\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n for (; delta > baseMinusTMin * tMax >> 1; k += base) {\n delta = floor(delta / baseMinusTMin);\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\n// eslint-disable-next-line max-statements\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n output.push(stringFromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n output.push(delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's <n,i> state to <m,0>, but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n for (var k = base; /* no condition */; k += base) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n }\n\n output.push(stringFromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n ++handledCPCount;\n }\n }\n\n ++delta;\n ++n;\n }\n return output.join('');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = input.toLowerCase().replace(regexSeparators, '\\u002E').split('.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);\n }\n return encoded.join('.');\n};\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $fetch = getBuiltIn('fetch');\nvar Headers = getBuiltIn('Headers');\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = it.replace(plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = result.replace(percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replace[match];\n};\n\nvar serialize = function (it) {\n return encodeURIComponent(it).replace(find, replacer);\n};\n\nvar parseSearchParams = function (result, query) {\n if (query) {\n var attributes = query.split('&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = attribute.split('=');\n result.push({\n key: deserialize(entry.shift()),\n value: deserialize(entry.join('='))\n });\n }\n }\n }\n};\n\nvar updateSearchParams = function (query) {\n this.entries.length = 0;\n parseSearchParams(this.entries, query);\n};\n\nvar validateArgumentsLength = function (passed, required) {\n if (passed < required) throw TypeError('Not enough arguments');\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n});\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n var that = this;\n var entries = [];\n var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;\n\n setInternalState(that, {\n type: URL_SEARCH_PARAMS,\n entries: entries,\n updateURL: function () { /* empty */ },\n updateSearchParams: updateSearchParams\n });\n\n if (init !== undefined) {\n if (isObject(init)) {\n iteratorMethod = getIteratorMethod(init);\n if (typeof iteratorMethod === 'function') {\n iterator = iteratorMethod.call(init);\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = entryNext.call(entryIterator)).done ||\n (second = entryNext.call(entryIterator)).done ||\n !entryNext.call(entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n entries.push({ key: first.value + '', value: second.value + '' });\n }\n } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });\n } else {\n parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');\n }\n }\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\nredefineAll(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.appent` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n state.entries.push({ key: name + '', value: value + '' });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) entries.splice(index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) result.push(entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = name + '';\n var val = value + '';\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) entries.splice(index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) entries.push({ key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n var entries = state.entries;\n // Array#sort is not stable in some engines\n var slice = entries.slice();\n var entry, entriesIndex, sliceIndex;\n entries.length = 0;\n for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {\n entry = slice[sliceIndex];\n for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {\n if (entries[entriesIndex].key > entry.key) {\n entries.splice(entriesIndex, 0, entry);\n break;\n }\n }\n if (entriesIndex === sliceIndex) entries.push(entry);\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\nredefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\nredefine(URLSearchParamsPrototype, 'toString', function toString() {\n var entries = getInternalParamsState(this).entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n result.push(serialize(entry.key) + '=' + serialize(entry.value));\n } return result.join('&');\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` for correct work with polyfilled `URLSearchParams`\n// https://github.com/zloirock/core-js/issues/674\nif (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {\n $({ global: true, enumerable: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n var args = [input];\n var init, body, headers;\n if (arguments.length > 1) {\n init = arguments[1];\n if (isObject(init)) {\n body = init.body;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headers.has('content-type')) {\n headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n init = create(init, {\n body: createPropertyDescriptor(0, String(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n }\n args.push(init);\n } return $fetch.apply(this, args);\n }\n });\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","var anObject = require('../internals/an-object');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nmodule.exports = function (it) {\n var iteratorMethod = getIteratorMethod(it);\n if (typeof iteratorMethod != 'function') {\n throw TypeError(String(it) + ' is not iterable');\n } return anObject(iteratorMethod.call(it));\n};\n","// `Symbol.prototype.description` getter\n// https://tc39.github.io/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 });\n\nvar SPECIES = wellKnownSymbol('species');\nvar nativeSlice = [].slice;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === Array || Constructor === undefined) {\n return nativeSlice.call(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","var defineWellKnownSymbol = require('../internals/define-well-known-symbol');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.github.io/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=e||self)[\"v-click-outside\"]=n()}(this,function(){var e=\"undefined\"!=typeof window,n=\"undefined\"!=typeof navigator,t=e&&(\"ontouchstart\"in window||n&&navigator.msMaxTouchPoints>0)?[\"touchstart\"]:[\"click\"];function i(e){var n=e.event,t=e.handler;(0,e.middleware)(n)&&t(n)}function r(e,n){var r=function(e){var n=\"function\"==typeof e;if(!n&&\"object\"!=typeof e)throw new Error(\"v-click-outside: Binding value must be a function or an object\");return{handler:n?e:e.handler,middleware:e.middleware||function(e){return e},events:e.events||t,isActive:!(!1===e.isActive),detectIframe:!(!1===e.detectIframe)}}(n.value),d=r.handler,o=r.middleware,a=r.detectIframe;if(r.isActive){if(e[\"__v-click-outside\"]=r.events.map(function(n){return{event:n,srcTarget:document.documentElement,handler:function(n){return function(e){var n=e.el,t=e.event,r=e.handler,d=e.middleware,o=t.path||t.composedPath&&t.composedPath();(o?o.indexOf(n)<0:!n.contains(t.target))&&i({event:t,handler:r,middleware:d})}({el:e,event:n,handler:d,middleware:o})}}}),a){var c={event:\"blur\",srcTarget:window,handler:function(n){return function(e){var n=e.el,t=e.event,r=e.handler,d=e.middleware;setTimeout(function(){var e=document.activeElement;\"IFRAME\"!==e.tagName||n.contains(e)||i({event:t,handler:r,middleware:d})},0)}({el:e,event:n,handler:d,middleware:o})}};e[\"__v-click-outside\"]=[].concat(e[\"__v-click-outside\"],[c])}e[\"__v-click-outside\"].forEach(function(n){var t=n.event,i=n.srcTarget,r=n.handler;return setTimeout(function(){e[\"__v-click-outside\"]&&i.addEventListener(t,r,!1)},0)})}}function d(e){(e[\"__v-click-outside\"]||[]).forEach(function(e){return e.srcTarget.removeEventListener(e.event,e.handler,!1)}),delete e[\"__v-click-outside\"]}var o=e?{bind:r,update:function(e,n){var t=n.value,i=n.oldValue;JSON.stringify(t)!==JSON.stringify(i)&&(d(e),r(e,{value:t}))},unbind:d}:{};return{install:function(e){e.directive(\"click-outside\",o)},directive:o}});\n//# sourceMappingURL=v-click-outside.umd.js.map\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar classof = require('../internals/classof-raw');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar PromiseConstructor = NativePromise;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar IS_NODE = classof(process) == 'process';\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (V8_VERSION === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE && typeof PromiseRejectionEvent != 'function') return true;\n }\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (promise, state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(promise, state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (handler = global['on' + name]) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (promise, state) {\n task.call(global, function () {\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (promise, state) {\n task.call(global, function () {\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, promise, state, unwrap) {\n return function (value) {\n fn(promise, state, value, unwrap);\n };\n};\n\nvar internalReject = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(promise, state, true);\n};\n\nvar internalResolve = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, promise, wrapper, state),\n bind(internalReject, promise, wrapper, state)\n );\n } catch (error) {\n internalReject(promise, wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(promise, state, false);\n }\n } catch (error) {\n internalReject(promise, { done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, this, state), bind(internalReject, this, state));\n } catch (error) {\n internalReject(this, state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(this, state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, promise, state);\n this.reject = bind(internalReject, promise, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function') {\n nativeThen = NativePromise.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));\n }\n });\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar classof = require('../internals/classof-raw');\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar IS_NODE = classof(process) == 'process';\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n } else if (MutationObserver && !IS_IOS) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCapabilities = getCapabilities;\n\nvar _initialState = require(\"@nextcloud/initial-state\");\n\nfunction getCapabilities() {\n try {\n return (0, _initialState.loadState)('core', 'capabilities');\n } catch (error) {\n console.debug('Could not find capabilities initial state fall back to _oc_capabilities');\n\n if (!('_oc_capabilities' in window)) {\n return {};\n }\n\n return window['_oc_capabilities'];\n }\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.loadState = loadState;\n\n/**\n * @param app app ID, e.g. \"mail\"\n * @param key name of the property\n * @throws if the key can't be found\n */\nfunction loadState(app, key) {\n var elem = document.querySelector(\"#initial-state-\".concat(app, \"-\").concat(key));\n\n if (elem === null) {\n throw new Error(\"Could not find initial state \".concat(key, \" of \").concat(app));\n }\n\n try {\n return JSON.parse(atob(elem.value));\n } catch (e) {\n throw new Error(\"Could not parse initial state \".concat(key, \" of \").concat(app));\n }\n}\n//# sourceMappingURL=index.js.map","(function(){\r\n var crypt = require('crypt'),\r\n utf8 = require('charenc').utf8,\r\n isBuffer = require('is-buffer'),\r\n bin = require('charenc').bin,\r\n\r\n // The core\r\n md5 = function (message, options) {\r\n // Convert to byte array\r\n if (message.constructor == String)\r\n if (options && options.encoding === 'binary')\r\n message = bin.stringToBytes(message);\r\n else\r\n message = utf8.stringToBytes(message);\r\n else if (isBuffer(message))\r\n message = Array.prototype.slice.call(message, 0);\r\n else if (!Array.isArray(message) && message.constructor !== Uint8Array)\r\n message = message.toString();\r\n // else, assume byte array already\r\n\r\n var m = crypt.bytesToWords(message),\r\n l = message.length * 8,\r\n a = 1732584193,\r\n b = -271733879,\r\n c = -1732584194,\r\n d = 271733878;\r\n\r\n // Swap endian\r\n for (var i = 0; i < m.length; i++) {\r\n m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF |\r\n ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00;\r\n }\r\n\r\n // Padding\r\n m[l >>> 5] |= 0x80 << (l % 32);\r\n m[(((l + 64) >>> 9) << 4) + 14] = l;\r\n\r\n // Method shortcuts\r\n var FF = md5._ff,\r\n GG = md5._gg,\r\n HH = md5._hh,\r\n II = md5._ii;\r\n\r\n for (var i = 0; i < m.length; i += 16) {\r\n\r\n var aa = a,\r\n bb = b,\r\n cc = c,\r\n dd = d;\r\n\r\n a = FF(a, b, c, d, m[i+ 0], 7, -680876936);\r\n d = FF(d, a, b, c, m[i+ 1], 12, -389564586);\r\n c = FF(c, d, a, b, m[i+ 2], 17, 606105819);\r\n b = FF(b, c, d, a, m[i+ 3], 22, -1044525330);\r\n a = FF(a, b, c, d, m[i+ 4], 7, -176418897);\r\n d = FF(d, a, b, c, m[i+ 5], 12, 1200080426);\r\n c = FF(c, d, a, b, m[i+ 6], 17, -1473231341);\r\n b = FF(b, c, d, a, m[i+ 7], 22, -45705983);\r\n a = FF(a, b, c, d, m[i+ 8], 7, 1770035416);\r\n d = FF(d, a, b, c, m[i+ 9], 12, -1958414417);\r\n c = FF(c, d, a, b, m[i+10], 17, -42063);\r\n b = FF(b, c, d, a, m[i+11], 22, -1990404162);\r\n a = FF(a, b, c, d, m[i+12], 7, 1804603682);\r\n d = FF(d, a, b, c, m[i+13], 12, -40341101);\r\n c = FF(c, d, a, b, m[i+14], 17, -1502002290);\r\n b = FF(b, c, d, a, m[i+15], 22, 1236535329);\r\n\r\n a = GG(a, b, c, d, m[i+ 1], 5, -165796510);\r\n d = GG(d, a, b, c, m[i+ 6], 9, -1069501632);\r\n c = GG(c, d, a, b, m[i+11], 14, 643717713);\r\n b = GG(b, c, d, a, m[i+ 0], 20, -373897302);\r\n a = GG(a, b, c, d, m[i+ 5], 5, -701558691);\r\n d = GG(d, a, b, c, m[i+10], 9, 38016083);\r\n c = GG(c, d, a, b, m[i+15], 14, -660478335);\r\n b = GG(b, c, d, a, m[i+ 4], 20, -405537848);\r\n a = GG(a, b, c, d, m[i+ 9], 5, 568446438);\r\n d = GG(d, a, b, c, m[i+14], 9, -1019803690);\r\n c = GG(c, d, a, b, m[i+ 3], 14, -187363961);\r\n b = GG(b, c, d, a, m[i+ 8], 20, 1163531501);\r\n a = GG(a, b, c, d, m[i+13], 5, -1444681467);\r\n d = GG(d, a, b, c, m[i+ 2], 9, -51403784);\r\n c = GG(c, d, a, b, m[i+ 7], 14, 1735328473);\r\n b = GG(b, c, d, a, m[i+12], 20, -1926607734);\r\n\r\n a = HH(a, b, c, d, m[i+ 5], 4, -378558);\r\n d = HH(d, a, b, c, m[i+ 8], 11, -2022574463);\r\n c = HH(c, d, a, b, m[i+11], 16, 1839030562);\r\n b = HH(b, c, d, a, m[i+14], 23, -35309556);\r\n a = HH(a, b, c, d, m[i+ 1], 4, -1530992060);\r\n d = HH(d, a, b, c, m[i+ 4], 11, 1272893353);\r\n c = HH(c, d, a, b, m[i+ 7], 16, -155497632);\r\n b = HH(b, c, d, a, m[i+10], 23, -1094730640);\r\n a = HH(a, b, c, d, m[i+13], 4, 681279174);\r\n d = HH(d, a, b, c, m[i+ 0], 11, -358537222);\r\n c = HH(c, d, a, b, m[i+ 3], 16, -722521979);\r\n b = HH(b, c, d, a, m[i+ 6], 23, 76029189);\r\n a = HH(a, b, c, d, m[i+ 9], 4, -640364487);\r\n d = HH(d, a, b, c, m[i+12], 11, -421815835);\r\n c = HH(c, d, a, b, m[i+15], 16, 530742520);\r\n b = HH(b, c, d, a, m[i+ 2], 23, -995338651);\r\n\r\n a = II(a, b, c, d, m[i+ 0], 6, -198630844);\r\n d = II(d, a, b, c, m[i+ 7], 10, 1126891415);\r\n c = II(c, d, a, b, m[i+14], 15, -1416354905);\r\n b = II(b, c, d, a, m[i+ 5], 21, -57434055);\r\n a = II(a, b, c, d, m[i+12], 6, 1700485571);\r\n d = II(d, a, b, c, m[i+ 3], 10, -1894986606);\r\n c = II(c, d, a, b, m[i+10], 15, -1051523);\r\n b = II(b, c, d, a, m[i+ 1], 21, -2054922799);\r\n a = II(a, b, c, d, m[i+ 8], 6, 1873313359);\r\n d = II(d, a, b, c, m[i+15], 10, -30611744);\r\n c = II(c, d, a, b, m[i+ 6], 15, -1560198380);\r\n b = II(b, c, d, a, m[i+13], 21, 1309151649);\r\n a = II(a, b, c, d, m[i+ 4], 6, -145523070);\r\n d = II(d, a, b, c, m[i+11], 10, -1120210379);\r\n c = II(c, d, a, b, m[i+ 2], 15, 718787259);\r\n b = II(b, c, d, a, m[i+ 9], 21, -343485551);\r\n\r\n a = (a + aa) >>> 0;\r\n b = (b + bb) >>> 0;\r\n c = (c + cc) >>> 0;\r\n d = (d + dd) >>> 0;\r\n }\r\n\r\n return crypt.endian([a, b, c, d]);\r\n };\r\n\r\n // Auxiliary functions\r\n md5._ff = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & c | ~b & d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._gg = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & d | c & ~d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._hh = function (a, b, c, d, x, s, t) {\r\n var n = a + (b ^ c ^ d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._ii = function (a, b, c, d, x, s, t) {\r\n var n = a + (c ^ (b | ~d)) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n\r\n // Package private blocksize\r\n md5._blocksize = 16;\r\n md5._digestsize = 16;\r\n\r\n module.exports = function (message, options) {\r\n if (message === undefined || message === null)\r\n throw new Error('Illegal argument ' + message);\r\n\r\n var digestbytes = crypt.wordsToBytes(md5(message, options));\r\n return options && options.asBytes ? digestbytes :\r\n options && options.asString ? bin.bytesToString(digestbytes) :\r\n crypt.bytesToHex(digestbytes);\r\n };\r\n\r\n})();\r\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","import mod from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\"","// 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, \".mention[data-v-0fd54af1]{display:contents;white-space:nowrap}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","import mod from \"-!../../node_modules/style-loader/dist/cjs.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=5c9d3bb9&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=5c9d3bb9&lang=scss&scoped=true&\"","// 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, \"[data-v-5c9d3bb9] .rich-text--wrapper{white-space:pre-wrap;word-break:break-word}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\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 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 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","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","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 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","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","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 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","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","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\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","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\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 StorageBuilder =\n/*#__PURE__*/\nfunction () {\n function StorageBuilder(appId) {\n _classCallCheck(this, StorageBuilder);\n\n _defineProperty(this, \"appId\", void 0);\n\n _defineProperty(this, \"persisted\", false);\n\n _defineProperty(this, \"clearedOnLogout\", false);\n\n this.appId = appId;\n }\n\n _createClass(StorageBuilder, [{\n key: \"persist\",\n value: function persist() {\n var _persist = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n this.persisted = _persist;\n return this;\n }\n }, {\n key: \"clearOnLogout\",\n value: function clearOnLogout() {\n var clear = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n this.clearedOnLogout = clear;\n return this;\n }\n }, {\n key: \"build\",\n value: function build() {\n return new _scopedstorage.default(this.appId, this.persisted ? window.localStorage : window.sessionStorage, !this.clearedOnLogout);\n }\n }]);\n\n return StorageBuilder;\n}();\n\nexports.default = StorageBuilder;\n//# sourceMappingURL=storagebuilder.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/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","import mod from \"-!../node_modules/style-loader/dist/cjs.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=7bbc2826&scoped=true&lang=css&\"; export default mod; export * from \"-!../node_modules/style-loader/dist/cjs.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=7bbc2826&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-7bbc2826],\\n.fade-leave-active[data-v-7bbc2826],\\n.fade-collapse-enter-active[data-v-7bbc2826],\\n.fade-collapse-leave-active[data-v-7bbc2826] {\\n\\ttransition: opacity var(--animation-quick), max-height var(--animation-quick);\\n}\\n.fade-collapse-enter[data-v-7bbc2826],\\n.fade-collapse-leave-to[data-v-7bbc2826] {\\n\\topacity: 0;\\n\\tmax-height: 0;\\n}\\n.fade-enter[data-v-7bbc2826],\\n.fade-leave-to[data-v-7bbc2826] {\\n\\topacity: 0;\\n}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var api = require(\"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../css-loader/dist/cjs.js!../../../sass-loader/dist/cjs.js!./toast.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_GET_URL_IMPORT___ = require(\"../../../css-loader/dist/runtime/getUrl.js\");\nvar ___CSS_LOADER_URL_IMPORT_0___ = require(\"./close.svg\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\nexports.push([module.id, \".toastify.dialogs{min-width:200px;background:none;background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 6px 0 var(--color-box-shadow);padding:12px;padding-right:34px;margin-top:45px;position:fixed;z-index:9000;border-radius:var(--border-radius)}.toastify.dialogs .toast-undo-button,.toastify.dialogs .toast-close{position:absolute;top:0;right:0;overflow:hidden;box-sizing:border-box;min-width:44px;height:100%;padding:12px;white-space:nowrap;background-repeat:no-repeat;background-position:center;background-color:transparent;min-height:0}.toastify.dialogs .toast-undo-button.toast-close,.toastify.dialogs .toast-close.toast-close{background-image:url(\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \");text-indent:200%;opacity:.4}.toastify.dialogs .toast-undo-button.toast-undo-button,.toastify.dialogs .toast-close.toast-undo-button{margin:3px;height:calc(100% - 2 * 3px)}.toastify.dialogs .toast-undo-button:hover,.toastify.dialogs .toast-undo-button:focus,.toastify.dialogs .toast-undo-button:active,.toastify.dialogs .toast-close:hover,.toastify.dialogs .toast-close:focus,.toastify.dialogs .toast-close:active{cursor:pointer;opacity:1}.toastify.dialogs.toastify-top{right:10px}.toastify.dialogs.toast-with-click{cursor:pointer}.toastify.dialogs.toast-error{border-left:3px solid var(--color-error)}.toastify.dialogs.toast-info{border-left:3px solid var(--color-primary)}.toastify.dialogs.toast-warning{border-left:3px solid var(--color-warning)}.toastify.dialogs.toast-success{border-left:3px solid var(--color-success)}.toastify.dialogs.toast-undo{border-left:3px solid var(--color-success)}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n // eslint-disable-next-line no-param-reassign\n options = {};\n } // eslint-disable-next-line no-underscore-dangle, no-param-reassign\n\n\n url = url && url.__esModule ? url.default : url;\n\n if (typeof url !== 'string') {\n return url;\n } // If url is already wrapped in quotes, remove them\n\n\n if (/^['\"].*['\"]$/.test(url)) {\n // eslint-disable-next-line no-param-reassign\n url = url.slice(1, -1);\n }\n\n if (options.hash) {\n // eslint-disable-next-line no-param-reassign\n url += options.hash;\n } // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n\n\n if (/[\"'() \\t\\n]/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, '\\\\n'), \"\\\"\");\n }\n\n return url;\n};","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=\"","/* 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=5788e320&\"\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'\nimport { showError } from '@nextcloud/dialogs'\n\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\twindow.location = 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,\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\tshowError(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 }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultParameter.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!./DefaultParameter.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2019 Joas Schilling <coding@schilljs.com>\n -\n - @author 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<template>\n\t<a v-if=\"link\"\n\t\t:href=\"link\"\n\t\tclass=\"external\"\n\t\ttarget=\"_blank\"\n\t\trel=\"noopener noreferrer\">\n\t\t<strong>{{ name }}</strong>\n\t</a>\n\t<strong v-else>{{ name }}</strong>\n</template>\n\n<script>\nexport default {\n\tname: 'DefaultParameter',\n\tprops: {\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tid: {\n\t\t\ttype: [Number, String],\n\t\t\trequired: true,\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.external:after {\n\tcontent: ' ↗';\n}\n</style>\n","import { render, staticRenderFns } from \"./DefaultParameter.vue?vue&type=template&id=49ca75ce&scoped=true&\"\nimport script from \"./DefaultParameter.vue?vue&type=script&lang=js&\"\nexport * from \"./DefaultParameter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DefaultParameter.vue?vue&type=style&index=0&id=49ca75ce&lang=scss&scoped=true&\"\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 \"49ca75ce\",\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.link)?_c('a',{staticClass:\"external\",attrs:{\"href\":_vm.link,\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('strong',[_vm._v(_vm._s(_vm.name))])]):_c('strong',[_vm._v(_vm._s(_vm.name))])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=2980f23f&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.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","<!--\n - @copyright Copyright (c) 2019 Joas Schilling <coding@schilljs.com>\n -\n - @author 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<template>\n\t<a\n\t\tv-tooltip.bottom=\"title\"\n\t\tclass=\"filename\"\n\t\t:href=\"link\">{{ name }}</a>\n</template>\n\n<script>\nimport Tooltip from '@nextcloud/vue/dist/Directives/Tooltip'\n\nexport default {\n\tname: 'File',\n\n\tdirectives: {\n\t\ttooltip: Tooltip,\n\t},\n\n\tprops: {\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tid: {\n\t\t\ttype: [Number, String],\n\t\t\trequired: true,\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tpath: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tlink: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tcomputed: {\n\t\ttitle() {\n\t\t\tconst lastSlashPosition = this.path.lastIndexOf('/')\n\t\t\tconst firstSlashPosition = this.path.indexOf('/')\n\t\t\tconst path = this.path.substring(firstSlashPosition === 0 ? 1 : 0, lastSlashPosition)\n\n\t\t\tif (path.length === 0) {\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\treturn t('notifications', 'in {path}', {\n\t\t\t\tpath,\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('a',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.bottom\",value:(_vm.title),expression:\"title\",modifiers:{\"bottom\":true}}],staticClass:\"filename\",attrs:{\"href\":_vm.link}},[_vm._v(_vm._s(_vm.name))])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./User.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!./User.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2019 Joas Schilling <coding@schilljs.com>\n -\n - @author 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<template>\n\t<div class=\"mention\">\n\t\t<UserBubble v-if=\"!cloudId\"\n\t\t\t:display-name=\"name\"\n\t\t\t:user=\"id\" />\n\t\t<strong v-else\n\t\t\t:title=\"cloudId\">\n\t\t\t{{ name }}\n\t\t</strong>\n\t</div>\n</template>\n\n<script>\n\nimport UserBubble from '@nextcloud/vue/dist/Components/UserBubble'\n\nexport default {\n\tname: 'User',\n\n\tcomponents: {\n\t\tUserBubble,\n\t},\n\n\tprops: {\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tserver: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tcloudId() {\n\t\t\treturn this.server ? (this.id + '@' + this.server) : ''\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mention {\n\tdisplay: contents;\n\twhite-space: nowrap;\n}\n</style>\n","import { render, staticRenderFns } from \"./User.vue?vue&type=template&id=0fd54af1&scoped=true&\"\nimport script from \"./User.vue?vue&type=script&lang=js&\"\nexport * from \"./User.vue?vue&type=script&lang=js&\"\nimport style0 from \"./User.vue?vue&type=style&index=0&id=0fd54af1&lang=scss&scoped=true&\"\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 \"0fd54af1\",\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 _c('div',{staticClass:\"mention\"},[(!_vm.cloudId)?_c('UserBubble',{attrs:{\"display-name\":_vm.name,\"user\":_vm.id}}):_c('strong',{attrs:{\"title\":_vm.cloudId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.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!./Notification.vue?vue&type=script&lang=js&\"","<template>\n\t<div class=\"notification\" :data-id=\"notificationId\" :data-timestamp=\"timestamp\">\n\t\t<div class=\"notification-heading\">\n\t\t\t<span\n\t\t\t\tv-tooltip.bottom=\"absoluteDate\"\n\t\t\t\tclass=\"notification-time live-relative-timestamp\"\n\t\t\t\t:data-timestamp=\"timestamp\">{{ 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<RichText\n\t\t\t\tv-if=\"subjectRich\"\n\t\t\t\t:text=\"subjectRich\"\n\t\t\t\t:arguments=\"preparedSubjectParameters\" />\n\t\t\t<span v-else class=\"subject\">{{ subject }}</span>\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<RichText\n\t\t\t\tv-if=\"subjectRich\"\n\t\t\t\t:text=\"subjectRich\"\n\t\t\t\t:arguments=\"preparedSubjectParameters\" />\n\t\t\t<span v-else class=\"subject\">{{ subject }}</span>\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 }\">\n\t\t\t\t<RichText\n\t\t\t\t\tv-if=\"messageRich\"\n\t\t\t\t\t:text=\"messageRich\"\n\t\t\t\t\t:arguments=\"preparedMessageParameters\"\n\t\t\t\t\t:autolink=\"true\" />\n\t\t\t\t<span v-else>{{ message }}</span>\n\t\t\t</div>\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 Tooltip from '@nextcloud/vue/dist/Directives/Tooltip'\nimport { showError } from '@nextcloud/dialogs'\nimport Action from './Action'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport moment from '@nextcloud/moment'\nimport RichText from '@juliushaertl/vue-richtext'\nimport DefaultParameter from './Parameters/DefaultParameter'\nimport File from './Parameters/File'\nimport User from './Parameters/User'\n\nexport default {\n\tname: 'Notification',\n\n\tcomponents: {\n\t\tAction,\n\t\tRichText,\n\t},\n\n\tdirectives: {\n\t\ttooltip: Tooltip,\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() {\n\t\t\treturn (new Date(this.datetime)).valueOf()\n\t\t},\n\t\tabsoluteDate() {\n\t\t\treturn moment(this.timestamp).format('LLL')\n\t\t},\n\t\trelativeDate() {\n\t\t\tconst diff = moment().diff(moment(this.timestamp))\n\t\t\tif (diff >= 0 && diff < 45000) {\n\t\t\t\treturn t('core', 'seconds ago')\n\t\t\t}\n\t\t\treturn moment(this.timestamp).fromNow()\n\t\t},\n\t\tuseLink() {\n\t\t\tif (!this.link) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tlet parametersHaveLink = false\n\t\t\tObject.keys(this.subjectRichParameters).forEach(p => {\n\t\t\t\tif (p.link) {\n\t\t\t\t\tparametersHaveLink = true\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn parametersHaveLink\n\t\t},\n\n\t\tpreparedSubjectParameters() {\n\t\t\treturn this.prepareParameters(this.subjectRichParameters)\n\t\t},\n\n\t\tpreparedMessageParameters() {\n\t\t\treturn this.prepareParameters(this.messageRichParameters)\n\t\t},\n\n\t\tisCollapsedMessage() {\n\t\t\treturn this.message.length > 200 && !this.showFullMessage\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis._$el = $(this.$el)\n\n\t\t// Parents: TransitionGroup > NotificationsList\n\t\tif (this.$parent.$parent.showBrowserNotifications) {\n\t\t\tthis._createWebNotification()\n\t\t}\n\t},\n\n\tmethods: {\n\t\tprepareParameters(parameters) {\n\t\t\tconst richParameters = {}\n\t\t\tObject.keys(parameters).forEach(p => {\n\t\t\t\tconst type = parameters[p].type\n\t\t\t\tif (type === 'user') {\n\t\t\t\t\trichParameters[p] = {\n\t\t\t\t\t\tcomponent: User,\n\t\t\t\t\t\tprops: parameters[p],\n\t\t\t\t\t}\n\t\t\t\t} else if (type === 'file') {\n\t\t\t\t\trichParameters[p] = {\n\t\t\t\t\t\tcomponent: File,\n\t\t\t\t\t\tprops: parameters[p],\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\trichParameters[p] = {\n\t\t\t\t\t\tcomponent: DefaultParameter,\n\t\t\t\t\t\tprops: parameters[p],\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn richParameters\n\t\t},\n\n\t\tonClickMessage(e) {\n\t\t\tif (e.target.classList.contains('rich-text--wrapper')) {\n\t\t\t\t// Vue RichText\n\t\t\t\tthis.showFullMessage = !this.showFullMessage\n\t\t\t} else if (!this.messageRich && !!this.message) {\n\t\t\t\t// Plain text\n\t\t\t\tthis.showFullMessage = !this.showFullMessage\n\t\t\t}\n\t\t},\n\n\t\tonDismissNotification() {\n\t\t\taxios\n\t\t\t\t.delete(generateOcsUrl('apps/notifications/api/v2', 2) + 'notifications/' + this.notificationId)\n\t\t\t\t.then(() => {\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\tshowError(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() {\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\n<style lang=\"scss\" scoped>\n::v-deep .rich-text--wrapper {\n\twhite-space: pre-wrap;\n\tword-break: break-word;\n}\n</style>\n","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=5c9d3bb9&scoped=true&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&id=5c9d3bb9&lang=scss&scoped=true&\"\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 \"5c9d3bb9\",\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 _c('div',{staticClass:\"notification\",attrs:{\"data-id\":_vm.notificationId,\"data-timestamp\":_vm.timestamp}},[_c('div',{staticClass:\"notification-heading\"},[_c('span',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.bottom\",value:(_vm.absoluteDate),expression:\"absoluteDate\",modifiers:{\"bottom\":true}}],staticClass:\"notification-time live-relative-timestamp\",attrs:{\"data-timestamp\":_vm.timestamp}},[_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(\" \"),(_vm.subjectRich)?_c('RichText',{attrs:{\"text\":_vm.subjectRich,\"arguments\":_vm.preparedSubjectParameters}}):_c('span',{staticClass:\"subject\"},[_vm._v(_vm._s(_vm.subject))])],1):_c('div',{staticClass:\"notification-subject\"},[(_vm.icon)?_c('span',{staticClass:\"image\"},[_c('img',{staticClass:\"notification-icon\",attrs:{\"src\":_vm.icon}})]):_vm._e(),_vm._v(\" \"),(_vm.subjectRich)?_c('RichText',{attrs:{\"text\":_vm.subjectRich,\"arguments\":_vm.preparedSubjectParameters}}):_c('span',{staticClass:\"subject\"},[_vm._v(_vm._s(_vm.subject))])],1),_vm._v(\" \"),(_vm.message)?_c('div',{staticClass:\"notification-message\",on:{\"click\":_vm.onClickMessage}},[_c('div',{staticClass:\"message-container\",class:{ collapsed: _vm.isCollapsedMessage }},[(_vm.messageRich)?_c('RichText',{attrs:{\"text\":_vm.messageRich,\"arguments\":_vm.preparedMessageParameters,\"autolink\":true}}):_c('span',[_vm._v(_vm._s(_vm.message))])],1),_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 }","/**\n * @copyright Copyright (c) 2020 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 { getBuilder } from '@nextcloud/browser-storage'\n\nexport default getBuilder('notifications').clearOnLogout().persist().build()\n","/**\n * @copyright Copyright (c) 2020 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 moment from '@nextcloud/moment'\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport BrowserStorage from './BrowserStorage'\n\nconst getNotificationsData = async(tabId, lastETag, forceRefresh) => {\n\tconst lastUpdated = parseInt(BrowserStorage.getItem('lastUpdated'), 10)\n\tconst lastTab = BrowserStorage.getItem('tabId')\n\tconst now = moment().format('X')\n\n\tif (forceRefresh\n\t\t// Allow the same tab to refresh with less than the timeout,\n\t\t|| (lastTab === tabId && lastUpdated + 25 < now)\n\t\t// and at the same time give it some more time against other tabs.\n\t\t|| lastUpdated + 35 < now) {\n\t\tBrowserStorage.setItem('tabId', tabId)\n\t\tBrowserStorage.setItem('lastUpdated', now)\n\t\t// console.debug('Refetching data in ' + tabId + ' (prev: ' + lastTab + ' age: ' + (now - lastUpdated) + ')')\n\t\tawait refreshData(lastETag)\n\t// } else {\n\t// console.debug('Reusing data in ' + tabId + ' (prev: ' + lastTab + ' age: ' + (now - lastUpdated) + ')')\n\t}\n\n\treturn {\n\t\tstatus: parseInt(BrowserStorage.getItem('status'), 10),\n\t\theaders: JSON.parse(BrowserStorage.getItem('headers') || '[]'),\n\t\tdata: JSON.parse(BrowserStorage.getItem('data') || '[]'),\n\t\ttabId: BrowserStorage.getItem('tabId'),\n\t\tlastUpdated: parseInt(BrowserStorage.getItem('lastUpdated'), 10),\n\t}\n}\n\nconst refreshData = async(lastETag) => {\n\tlet requestConfig = {}\n\tif (lastETag) {\n\t\trequestConfig = {\n\t\t\theaders: {\n\t\t\t\t'If-None-Match': lastETag,\n\t\t\t},\n\t\t}\n\t}\n\n\ttry {\n\t\tconst response = await axios.get(generateOcsUrl('apps/notifications/api/v2', 2) + 'notifications', requestConfig)\n\n\t\tBrowserStorage.setItem('status', '' + response.status)\n\t\tif (response.status !== 204) {\n\t\t\tBrowserStorage.setItem('headers', JSON.stringify(response.headers))\n\t\t\tBrowserStorage.setItem('data', JSON.stringify(response.data.ocs.data))\n\t\t}\n\t} catch (error) {\n\t\tBrowserStorage.setItem('status', '' + error.response.status)\n\t}\n}\n\nexport {\n\tgetNotificationsData,\n}\n","<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, unsubscribe } from '@nextcloud/event-bus'\nimport { showError } from '@nextcloud/dialogs'\nimport { imagePath, generateOcsUrl } from '@nextcloud/router'\nimport { getNotificationsData } from './services/notificationsService'\n\nexport default {\n\tname: 'App',\n\n\tcomponents: {\n\t\tNotification,\n\t},\n\n\tdata() {\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\t\t\tlastTabId: null,\n\t\t\tuserStatus: null,\n\t\t\ttabId: 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() {\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 imagePath('notifications', iconPath)\n\t\t},\n\n\t\tshowBrowserNotifications() {\n\t\t\treturn this.backgroundFetching\n\t\t\t\t&& this.webNotificationsGranted\n\t\t\t\t&& this.userStatus !== 'dnd'\n\t\t\t\t&& this.tabId !== this.lastTabId\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.tabId = OC.requestToken || ('' + Math.random())\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', this.handleNetworkOffline)\n\t\tsubscribe('networkOnline', this.handleNetworkOnline)\n\t},\n\n\tbeforeDestroy() {\n\t\tunsubscribe('networkOffline', this.handleNetworkOffline)\n\t\tunsubscribe('networkOnline', this.handleNetworkOnline)\n\t},\n\n\tupdated() {\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\thandleNetworkOffline() {\n\t\t\tthis._setPollingInterval(300000)\n\t\t},\n\n\t\thandleNetworkOnline() {\n\t\t\tthis._fetch()\n\t\t\tthis._setPollingInterval(30000)\n\t\t\tthis.setupBackgroundFetcher()\n\t\t},\n\n\t\tsetupBackgroundFetcher() {\n\t\t\tif (OC.config.session_keepalive) {\n\t\t\t\tthis.interval = window.setInterval(this._backgroundFetch.bind(this), this.pollInterval)\n\t\t\t}\n\t\t},\n\n\t\tonDismissAll() {\n\t\t\taxios\n\t\t\t\t.delete(generateOcsUrl('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\tshowError(t('notifications', 'Failed to dismiss all notifications'))\n\t\t\t\t})\n\t\t},\n\t\tonRemove(index) {\n\t\t\tthis.notifications.splice(index, 1)\n\t\t},\n\n\t\tinvertedTheme() {\n\t\t\treturn OCA.Theming && OCA.Theming.inverted\n\t\t},\n\n\t\tisRedThemed() {\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(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\tasync _fetch() {\n\t\t\tconst response = await getNotificationsData(this.tabId, this.lastETag, !this.backgroundFetching)\n\n\t\t\tif (response.status === 204) {\n\t\t\t\t// 204 No Content - Intercept when no notifiers are there.\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t} else if (response.status === 200) {\n\t\t\t\tthis.userStatus = response.headers['x-nextcloud-user-status']\n\t\t\t\tthis.lastETag = response.headers.etag\n\t\t\t\tthis.lastTabId = response.lastTabId\n\t\t\t\tthis.notifications = response.data\n\t\t\t\tthis._setPollingInterval(30000)\n\t\t\t} else if (response.status === 304) {\n\t\t\t\t// 304 - Not modified\n\t\t\t\tthis._setPollingInterval(30000)\n\t\t\t} else if (response.status === 503) {\n\t\t\t\t// 503 - Maintenance mode\n\t\t\t\tconsole.info('Slowing down notifications: instance is in maintenance mode.')\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t} else if (response.status === 404) {\n\t\t\t\t// 404 - App disabled\n\t\t\t\tconsole.info('Slowing down notifications: app is disabled.')\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t} else {\n\t\t\t\tconsole.info('Slowing down notifications: Status ' + response.status)\n\t\t\t\tthis._setPollingInterval(300000)\n\t\t\t}\n\t\t},\n\n\t\t_backgroundFetch() {\n\t\t\tthis.backgroundFetching = true\n\t\t\tthis._fetch()\n\t\t},\n\n\t\t_setPollingInterval(pollInterval) {\n\t\t\tif (this.interval && 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(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() {\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\tasync requestWebNotificationPermissions() {\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\n\t.fade-collapse-enter,\n\t.fade-collapse-leave-to {\n\t\topacity: 0;\n\t\tmax-height: 0;\n\t}\n\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=7bbc2826&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=7bbc2826&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 \"7bbc2826\",\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\n// Styles\nimport '@nextcloud/dialogs/styles/toast.scss'\n\nVue.prototype.t = t\nVue.prototype.n = n\nVue.prototype.OC = OC\nVue.prototype.OCA = OCA\n\nconst unifiedSearch = document.getElementById('unified-search')\nconst notificationsBell = document.createElement('div')\nnotificationsBell.setAttribute('id', 'notifications')\nunifiedSearch.insertAdjacentHTML('afterend', notificationsBell.outerHTML)\n\nexport default new Vue({\n\tel: '#notifications',\n\trender: h => h(App),\n})\n"],"sourceRoot":""} \ No newline at end of file
diff --git a/src/Components/Notification.vue b/src/Components/Notification.vue
index 6526d5d..8dfa688 100644
--- a/src/Components/Notification.vue
+++ b/src/Components/Notification.vue
@@ -241,6 +241,10 @@ export default {
onClickMessage(e) {
if (e.target.classList.contains('rich-text--wrapper')) {
+ // Vue RichText
+ this.showFullMessage = !this.showFullMessage
+ } else if (!this.messageRich && !!this.message) {
+ // Plain text
this.showFullMessage = !this.showFullMessage
}
},